STORY LOOP FURRY PORN GAMES C SERVICES [?] [R] RND POPULAR | Archived flashes: 229494 |
/disc/ · /res/ — /show/ · /fap/ · /gg/ · /swf/ | P0001 · P2575 · P5149 |
This is the info page for Flash #11707 |
0% |
Yeti Bubbles is an action-based puzzler that puts players to the task of tossing colored bubbles up to a stack of other colored bubbles. By linking three or more of the same colors together, those bubbles will disappear from the bin. If those bubbles were supporting other bubbles in the stack, their removal may cause the dangling chain to fall out of play to give the player more room to work with. The added twist is that the stack is on a constant downwards move, and if any bubble in the stack crosses the line at the bottom, the game is over. |
99999 |
99999 |
51 |
51 |
51 |
99 |
ActionScript [AS1/AS2]
Instance of Symbol 5 MovieClip in Frame 2on (press) { this._parent.more_pressed(); }Instance of Symbol 12 MovieClip in Frame 2on (press) { this._parent.more_pressed(); }Frame 3stot = this.getBytesTotal(); sloa = this.getBytesLoaded(); if (stot != 0) { per = Math.floor((sloa / stot) * 100); } else { per = 0; } mc_bar.mc._x = mc_bar.mc._width * (-1 + (sloa / stot)); txtPer = String(per) + "%"; if (((sloa >= 1) && (stot >= 1)) && (sloa == stot)) { gotoAndStop ("main"); inMenuFirst(); } else { gotoAndPlay (2); }Instance of Symbol 135 MovieClip "mc_sloop" in Frame 6onClipEvent (load) { var soundControl = new Sound(this); }Instance of Symbol 140 MovieClip "btn_sound" in Frame 6onClipEvent (load) { if (this._parent.stopSoundFlag) { this.gotoAndStop(2); } }Frame 10this.stop();Instance of Symbol 161 MovieClip "mc_control" in Frame 10onClipEvent (load) { this._parent.initLevel(); } onClipEvent (enterFrame) { this._parent.processGame(); } onClipEvent (mouseMove) { this._parent.myMouseMove(); updateAfterEvent(); } onClipEvent (mouseDown) { with (this._parent) { if ((_xmouse < (btn_sound._x + (btn_sound._width / 2))) && (_ymouse > (btn_sound._y - (btn_sound._height / 2)))) { return(undefined); } } this._parent.myMouseDown(); updateAfterEvent(); } onClipEvent (keyDown) { this._parent.myKeyDown(); updateAfterEvent(); }Symbol 1 MovieClip Frame 1#initclip 1 function soundOff() { mc_sloop.gotoAndStop(3); stopSoundFlag = true; } function soundOn() { mc_sloop.gotoAndStop(2); stopSoundFlag = false; } function new_game_pressed() { this.gotoAndStop("menu"); } function how_to_play_pressed() { this.gotoAndStop("rules"); } function more_pressed() { getURL ("http://www.justfreegames.com?WT.mc_id=FlashYetiBubbles", "_blank"); } function back_pressed() { this.gotoAndStop("main"); } function arcade_mode_pressed() { arcadeGame = true; gameStart(); } function classic_mode_pressed() { arcadeGame = false; gameStart(); } function inMenuFirst() { mc_sloop.gotoAndStop(2); } function gameStart() { level = 0; scores = 0; nextLevel(); } function nextLevel() { level++; this.gotoAndStop("reset"); this.gotoAndStop("game"); } function newGame() { this.gotoAndStop("main"); } function playSnd(lib_snd) { s = new Sound(this); s.attachSound(lib_snd); s.start(); } function initLevel() { txtLevel = level; txtScores = scores; lastTimer = getTimer(); if (arcadeGame) { mc_grid.init(levARowCount[level - 1], levColorCount[level - 1], levBonusCount[level - 1], mc_fall, mc_pusher, mc_trace); mc_ind.init(levAScores[level - 1]); levelSpeed = 1.6 + (0.05 * (level - 1)); } else { mc_grid.init(levCRowCount[level - 1], levColorCount[level - 1], levBonusCount[level - 1], mc_fall, mc_pusher, mc_trace); mc_ind.init(1); increaseK = levIncreaseK[level - 1]; } prevBonusNum = -1; shotBonusCount = _root.myRandom(maxShotBonusNum) + 1; generateNextBall(); generateNextBall(); mc_move_ball.mc_grid = mc_grid; var _local2; var _local1; _local2 = 0; while (_local2 < sightBallCount) { _local1 = mc_trace.attachMovie("lib_trace", "" + _local2, _local2); _local1._xscale = (_local1._yscale = 85); _local1._alpha = 75; _local1._visible = false; _local2++; } _local1 = mc_trace.attachMovie("lib_trace2", "" + sightBallCount, sightBallCount); _local1._xscale = (_local1._yscale = 115); _local1._alpha = 75; _local1._visible = false; drawSight(); redrawSight = true; winFlag = false; overFlag = false; if (timeCounter == null) { timeCounter = new CTimeCounter(); back1 = new CBackground(); back2 = new CBackground(); back3 = new CBackground(); } back1.init(mc_water.mc1, 10); back2.init(mc_water.mc2, 40); back3.init(mc_water.mc3, 20); mc_msg.gotoAndStop("stEmpty"); resetSounds(); gameState = 0; } function processGame() { var newTimer; var dTime; var _local1; var n; newTimer = getTimer(); dTime = newTimer - lastTimer; txtFps = 1 / (dTime / 1000); lastTimer = newTimer; back1.process(dTime); back2.process(dTime); back3.process(dTime); mc_pinguin.process(dTime); mc_yeti.process(dTime); mc_gun.processKeys(dTime); if (gameState == 1) { if (mc_msg.a1._visible == false) { n = levColorCount[level]; _local1 = 1; while (_local1 <= n) { mc_msg["a" + _local1].setColor(_local1); mc_msg["a" + _local1]._visible = true; _local1++; } n = levBonusCount[level]; _local1 = 1; while (_local1 <= n) { mc_msg["b" + _local1].setColor(_local1); mc_msg["b" + _local1].setBonus(_local1, 2); mc_msg["b" + _local1]._visible = true; _local1++; } } } if (gameState != 0) { } else { processFallBalls(dTime); if (mc_grid.fillBallsCount > 0) { var scr = (scrBall * mc_grid.fillBallsCount); if (mc_grid.doubleScores > 0) { sndScoreX2orX4 = true; scr = scr * (2 * mc_grid.doubleScores); } scores = scores + scr; txtScores = scores; if (mc_grid.bonusJumpUp > 0) { _local1 = 0; while (_local1 < mc_grid.bonusJumpUp) { if (arcadeGame) { mc_grid.jumpUpWithoutPusher(); } else { mc_grid.jumpUp(); } _local1++; } } if (arcadeGame) { mc_ind.addValue(mc_grid.fillBallsCount); if (mc_ind.isFull()) { mc_grid.fallAllBalls(); win(); } } correctAllColors(); } if ((mc_grid.fallBallsCount + mc_grid.fillBallsCount) > 4) { mc_yeti.toCool(); } mc_grid.fillBallsCount = 0; mc_grid.fallBallsCount = 0; mc_grid.doubleScores = 0; mc_grid.bonusJumpUp = 0; if (overFlag) { if (!timeCounter.process(dTime)) { mc_msg.btn._visible = true; var fallBalls = false; var str; for (str in mc_fall) { fallBalls = true; break; } if (!fallBalls) { gameState = 2; } } } if (winFlag) { if (!timeCounter.process(dTime)) { var fallBalls = false; var str; for (str in mc_fall) { fallBalls = true; break; } if (!fallBalls) { mc_gun.disable(); mc_pusher._visible = false; if (level < 10) { mc_msg.gotoAndStop("stWin"); mc_msg.txtLevel = level + 1; _local1 = 1; while (_local1 <= 8) { mc_msg["a" + _local1]._visible = false; _local1++; } _local1 = 1; while (_local1 <= 8) { mc_msg["b" + _local1]._visible = false; _local1++; } gameState = 1; } else { mc_msg.gotoAndStop("stCompleted"); gameState = 3; } } } } else { if (mc_move_ball._visible == false) { mc_gun.processTime(dTime); } if (mc_gun.autoShot()) { myMouseDown(); } mc_grid.process(dTime); var r = ((shotSpeed * dTime) / 1000); n = Math.ceil(r / (CGrid.BALL_RAD / 2)); var ballStep = (r / n); var p; var mc; var levelStep = (((levelSpeed * dTime) / 1000) / n); _local1 = 0; while (_local1 < n) { if (arcadeGame) { if (!mc_grid.bonusFreeze) { mc_grid.moveDown(levelStep); } } if (mc_move_ball._visible) { mc_move_ball.doStep(ballStep); if (((mc = mc_grid.checkForEnd(mc_move_ball))) != null) { if (mc_grid.fillBallsCount > 0) { sndBubbleCollisionR = true; } else { sndBubbleCollision = true; } mc_move_ball.hide(); if (!arcadeGame) { if (!mc_grid.bonusFreeze) { mc_ind.addValue(increaseK); if (mc_ind.isFull()) { mc_grid.jumpDown(); mc_ind.reset(); } } var _local3 = true; var _local2; _local2 = 0; while (_local2 < mc_grid.maxColorNum) { if (mc_grid.colorCountArr[_local2] > 0) { _local3 = false; break; } _local2++; } if (_local3) { win(); } } } } _local1++; } if (overFlag) { } else { if (arcadeGame && (!winFlag)) { mc_grid.checkAddRow(); } if (redrawSight) { drawSight(); } redrawSight = true; if (mc_grid.getDownY() >= 350) { overFlag = true; mc_gun.disable(); mc_trace._visible = false; mc_msg.gotoAndStop("stOver"); mc_msg.btn._visible = false; timeCounter.setTime(1000); mc_gun.resetNumber(); mc_grid.fallAllBalls(); } playSounds(); } } } } function myMouseMove() { mc_gun.myMouseMove(); mc_gun.process(this._xmouse); drawSight(); redrawSight = false; } function myMouseDown() { if ((winFlag || (overFlag)) || (gameState != 0)) { return(undefined); } if (mc_move_ball._visible == false) { startBall(); sndGunFire = true; } } function myKeyDown() { if (Key.isDown(32)) { if (gameState == 1) { nextLevel(); } else if (gameState == 2) { newGame(); } else { myMouseDown(); } } } function win() { winFlag = true; timeCounter.setTime(relaxTime); mc_gun.resetNumber(); mc_trace._visible = false; } function processFallBalls(dTime) { var _local3 = dTime; var _local1; var _local2; for (_local2 in mc_fall) { _local1 = mc_fall[_local2]; _local1.process(_local3); if (_local1._y > 400) { _local1.removeMovieClip(); } } } function generateNextBall() { var _local3; var _local1 = 0; var _local2 = 0; mc_gun.setColor(mc_next.colorNum); mc_gun.setBonus(mc_next.bonusNum, mc_next.bonusColorNum); _local3 = _root.myRandom(mc_grid.maxColorNum) + 1; _local3 = correctColor(_local3); if (mc_grid.maxBonusNum > 0) { shotBonusCount--; if (shotBonusCount <= 0) { _local1 = _root.myRandom(mc_grid.maxBonusNum) + 1; if ((_local1 == prevBonusNum) && (_local1 != CBall.BONUS_COLOR)) { if (Math.random() > 0.5) { _local1++; if (_local1 > mc_grid.maxBonusNum) { _local1 = 1; } } else { _local1--; if (_local1 < 1) { _local1 = mc_grid.maxBonusNum; } } } if (_local1 == CBall.BONUS_COLOR) { _local2 = _root.myRandom(mc_grid.maxColorNum) + 1; if (_local3 == _local2) { if (Math.random() > 0.5) { _local2++; if (_local2 > mc_grid.maxColorNum) { _local2 = 1; } } else { _local2--; if (_local2 < 1) { _local2 = mc_grid.maxColorNum; } } } } prevBonusNum = _local1; shotBonusCount = _root.myRandom(maxShotBonusNum) + 1; } } mc_next.setColor(_local3); mc_next.setBonus(_local1, _local2); } function correctAllColors() { var colorNum; mc_gun.setColor(correctColor(mc_gun.colorNum)); mc_next.setColor(correctColor(mc_next.colorNum)); } function correctColor(c) { var _local1 = c; if (arcadeGame == false) { var _local2; var _local3 = _root.myRandom(2); _local2 = 0; while (_local2 < mc_grid.maxColorNum) { if (mc_grid.colorCountArr[_local1 - 1] > 0) { break; } if (_local3 == 1) { _local1++; if (_local1 > mc_grid.maxColorNum) { _local1 = 1; } } else { _local1--; if (_local1 < 1) { _local1 = mc_grid.maxColorNum; } } _local2++; } } return(_local1); } function startBall() { var _local1 = (mc_gun._rotation / 180) * Math.PI; mc_move_ball.startMove(mc_gun._x, mc_gun._y, Math.sin(_local1), -Math.cos(_local1)); mc_move_ball.setColor(mc_gun.colorNum); mc_move_ball.setBonus(mc_gun.bonusNum, mc_gun.bonusColorNum); generateNextBall(); mc_gun.doShot(); } function drawSight() { var u = ((mc_gun._rotation / 180) * Math.PI); mc_grid.getFirstBall(mc_gun._x, mc_gun._y, Math.sin(u), -Math.cos(u)); mc_trace._x = mc_grid._x; mc_trace._y = mc_grid._y; var _local1; var n = (mc_grid.points.length - 1); var dx; var dy; var dr; var x0; var y0; var step = 28; var _local2; var m; var count = 0; var _local3 = step; var mc; var curTraceNum = 0; _local1 = 1; while (_local1 < n) { dx = mc_grid.points[_local1].x - ((x0 = mc_grid.points[_local1 - 1].x)); dy = mc_grid.points[_local1].y - ((y0 = mc_grid.points[_local1 - 1].y)); dr = Math.sqrt((dx * dx) + (dy * dy)); dx = dx / dr; dy = dy / dr; m = Math.floor((dr - _local3) / step); _local2 = 0; while (_local2 <= m) { mc = mc_trace["" + curTraceNum]; mc._visible = true; curTraceNum++; count++; mc._x = x0 + (dx * (_local3 + (step * _local2))); mc._y = y0 + (dy * (_local3 + (step * _local2))); _local2++; } _local3 = (dr - (m * step)) - _local3; _local3 = step - _local3; _local1++; } _local1 = curTraceNum; while (_local1 < sightBallCount) { mc_trace["" + _local1]._visible = false; _local1++; } mc = mc_trace["" + sightBallCount]; mc._visible = true; mc._x = mc_grid.points[n].x; mc._y = mc_grid.points[n].y; } function playSounds() { if (sndBubbleLevelUp) { playSnd("snd_BubbleLevelUp"); resetSounds(); } else if (snd8bonus) { playSnd("snd_8bonus"); resetSounds(); } else if (sndExplosionTNT) { playSnd("snd_ExplosionTNT"); resetSounds(); } else if (sndFreeze) { playSnd("snd_Freeze"); resetSounds(); } else if (sndScoreX2orX4) { playSnd("snd_ScoreX2orX4"); resetSounds(); } else if (sndAutoFire) { playSnd("snd_AutoFire"); resetSounds(); } else if (sndBubbleCollision) { playSnd("snd_BubbleCollision"); resetSounds(); } else if (sndBubbleCollisionR) { playSnd("snd_BubbleCollisionR"); resetSounds(); } else if (sndPingvin) { playSnd("snd_Pingvin"); resetSounds(); } else if (sndGunFire) { playSnd("snd_GunFire"); resetSounds(); } } function resetSounds() { snd8bonus = (sndAutoFire = (sndBubbleCollision = (sndBubbleCollisionR = (sndBubbleLevelUp = (sndExplosionTNT = (sndFreeze = (sndGunFire = (sndPingvin = (sndScoreX2orX4 = false))))))))); } var author = "Galimov Ruslan rigal@mail.ru"; var copyright = "www.sunnygames.com"; fscommand ("showmenu", "false"); fscommand ("trapallkeys", "true"); var lastTimer; var level; var stopSoundFlag = false; _root.myRandom = function (n) { return(Math.floor((n - 1E-6) * Math.random())); }; var scores; var scrBall = 3; var gameState; var shotSpeed = 600; var levCRowCount = [7, 7, 7, 7, 8, 8, 8, 9, 9, 9]; var levARowCount = [6, 6, 7, 6, 7, 7, 6, 7, 7, 7]; var levAScores = [70, 80, 90, 100, 110, 120, 130, 140, 150, 160]; var levIncreaseK = [0.1001, 0.12001, 0.125001, 0.143001, 0.143001, 0.143001, 0.143001, 0.143001, 0.143001, 0.143001]; var levColorCount = [4, 4, 4, 5, 5, 5, 6, 7, 7, 8]; var levBonusCount = [0, 1, 2, 3, 4, 5, 6, 7, 8, 8]; var arcadeGame = false; var increaseK; var levelSpeed; var prevBonusNum; var shotBonusCount; var maxShotBonusNum = 10; var redrawSight = true; var sightBallCount = 70; var timeCounter = null; var winFlag; var overFlag; var relaxTime = 1500; var back1; var back2; var back3; var snd8bonus; var sndAutoFire; var sndBubbleCollision; var sndBubbleCollisionR; var sndBubbleLevelUp; var sndExplosionTNT; var sndFreeze; var sndGunFire; var sndPingvin; var sndScoreX2orX4; #endinitclipSymbol 49 MovieClip Frame 1this.stop();Symbol 67 MovieClip Frame 1this.stop();Symbol 93 MovieClip [lib_ball] Frame 1#initclip 13 Object.registerClass("lib_ball", CBall); #endinitclipSymbol 93 MovieClip [lib_ball] Frame 13this.removeMovieClip();Symbol 93 MovieClip [lib_ball] Frame 28this.removeMovieClip();Symbol 99 MovieClip [lib_fall] Frame 1#initclip 12 Object.registerClass("lib_fall", CFallMovie); #endinitclipSymbol 113 MovieClip Frame 1this.stop();Symbol 324 MovieClip [__Packages.CTimeCounter] Frame 0class CTimeCounter { var curTime; function CTimeCounter () { } function setTime(time) { curTime = time; } function process(dTime) { curTime = curTime - dTime; return(curTime > 0); } function endTime() { curTime = 0; } }Symbol 325 MovieClip [__Packages.CBall] Frame 0class CBall extends MovieClip { var mc; function CBall () { super() var _local1 = this; _local1.marked = false; _local1.bonusNum = 0; _local1.stop(); _local1.mc.mc_freeze._visible = false; } function setColor(num) { var _local1 = this; _local1.colorNum = num; _local1.mc.gotoAndStop(_local1.colorNum); } function setBonus(bonusNum_, bonusColorNum_) { var _local1 = this; _local1.bonusNum = bonusNum_; _local1.bonusColorNum = bonusColorNum_; _local1.mc.mc_bonus.gotoAndStop(1 + _local1.bonusNum); if (_local1.bonusNum == BONUS_COLOR) { _local1.mc.mc_bonus.mc.gotoAndStop(_local1.bonusColorNum); } } function isMyColor(c) { var _local1 = this; return((c == _local1.colorNum) || ((_local1.bonusNum == BONUS_COLOR) && (c == _local1.bonusColorNum))); } function freeze() { mc.mc_freeze._visible = true; } function unFreeze() { mc.mc_freeze._visible = false; } static var BONUS_COLOR = 1; }Symbol 326 MovieClip [__Packages.CBackground] Frame 0class CBackground { function CBackground () { } function init(mc_, speed_) { var _local1 = this; _local1.mc = mc_; _local1.speed = speed_; _local1.sX = _local1.mc._x; } function process(dTime) { var _local1 = this; var _local2 = (_local1.speed * dTime) / 1000; _local1.mc._x = _local1.mc._x - _local2; if (_local1.mc._x <= (_local1.sX - _local1.period)) { _local1.mc._x = _local1.mc._x + _local1.period; } } var period = 129; }Symbol 327 MovieClip [__Packages.CGrid] Frame 0class CGrid extends MovieClip { var ball_array, mc_trace, bonusFreeze, freezeTime, _x, _y, fillBallsCount, fallBallsCount, doubleScores, bonusJumpUp, attachMovie, colorCountArr, fieldWidth; function CGrid () { super(); ball_array = new Array(); } function init(rowCount, maxColorNum_, maxBonusNum_, mc_fall_, mc_pusher_, mc_trace_) { var _local1 = this; _local1.maxColorNum = maxColorNum_; _local1.maxBonusNum = maxBonusNum_; _local1.mc_fall = mc_fall_; _local1.fallDepth = 0; _local1.mc_pusher = mc_pusher_; _local1.pusherDY = _local1._y - _local1.mc_pusher._y; _local1.mc_trace = mc_trace_; _local1.mc_trace._visible = false; _local1.traceTime = 0; _local1.bonusFreeze = false; _local1.beginY = (_local1.floatY = _local1._y); _local1.colorCountArr = new Array(_local1.maxColorNum); var _local3; var j; var row_array; var _local2; _local3 = 0; while (_local3 < _local1.maxColorNum) { _local1.colorCountArr[_local3] = 0; _local3++; } _local1.ballDepth = 0; _local3 = 0; while (_local3 < rowCount) { row_array = new Array(); j = 0; while (j < COLS) { _local2 = _local1.attachMovie("lib_ball", "" + _local1.ballDepth, _local1.ballDepth); _local1.ballDepth++; _local2._x = ((_local3 % 2) * BALL_RAD) + (j * BALL_DIAM); _local2._y = _local3 * BALL_DY; _local2.setColor(_root.myRandom(_local1.maxColorNum) + 1); row_array.push(_local2); _local1.colorCountArr[_local2.colorNum - 1]++; j++; } _local1.ball_array.push(row_array); _local3++; } _local1.addRowCount = 0; _local1.fieldWidth = ((COLS - 1) * BALL_DIAM) + BALL_RAD; _local1.calcNeighboursXY(); } function process(dTime) { var _local1 = this; if (_local1.mc_trace._visible) { _local1.traceTime = _local1.traceTime - dTime; if (_local1.traceTime <= 0) { _local1.disableTrace(); } } if (_local1.bonusFreeze) { _local1.freezeTime = _local1.freezeTime - dTime; if (_local1.freezeTime <= 0) { _local1.disableFreeze(); } } } function enableTrace() { var _local1 = this; if (_local1.mc_trace._visible) { _local1.traceTime = _local1.traceTime + _local1.TRACE_TIME; } else { _local1.mc_trace._visible = true; _local1.traceTime = _local1.TRACE_TIME; } } function disableTrace() { mc_trace._visible = false; } function enableFreeze() { _root.sndFreeze = true; if (bonusFreeze) { freezeTime = freezeTime + FREEZE_TIME; } else { bonusFreeze = true; freezeTime = FREEZE_TIME; var _local1; var _local3; var ROWS = ball_array.length; var _local2; _local3 = 0; while (_local3 < ROWS) { _local1 = 0; while (_local1 < COLS) { _local2 = ball_array[_local3][_local1]; if (_local2 != null) { _local2.freeze(); } _local1++; } _local3++; } } } function disableFreeze() { bonusFreeze = false; var _local1; var _local3; var ROWS = ball_array.length; var _local2; _local3 = 0; while (_local3 < ROWS) { _local1 = 0; while (_local1 < COLS) { _local2 = ball_array[_local3][_local1]; if (_local2 != null) { _local2.unFreeze(); } _local1++; } _local3++; } } function moveDown(step) { var _local1 = this; if (_local1.ball_array.length < 6) { step = step * (7 - _local1.ball_array.length); } _local1.floatY = _local1.floatY + step; _local1._y = _local1.floatY; } function jumpDown() { var _local1 = this; _local1.floatY = _local1.floatY + BALL_DY; _local1._y = _local1.floatY; _local1.mc_pusher._y = _local1.floatY - _local1.pusherDY; } function jumpUp() { var _local1 = this; if (Math.abs(_local1._y - _local1.beginY) > 2) { _local1.floatY = _local1.floatY - BALL_DY; if (_local1.floatY < _local1.beginY) { _local1.floatY = _local1.beginY; } _local1._y = _local1.floatY; _local1.mc_pusher._y = _local1.floatY - _local1.pusherDY; } _root.sndBubbleLevelUp = true; } function jumpUpWithoutPusher() { var _local1 = this; _local1.floatY = _local1.floatY - BALL_DY; _local1._y = _local1.floatY; _root.sndBubbleLevelUp = true; } function jumpToStartPos() { var _local1 = this; _local1._y = (_local1.floatY = _local1.beginY); _local1.mc_pusher._y = _local1.floatY - _local1.pusherDY; } function checkAddRow() { var _local1 = this; var _local2 = Math.floor((_local1.floatY - _local1.beginY) / BALL_DY) + 1; if (_local2 > _local1.addRowCount) { _local1.addRow(); } } function addRow() { var _local1 = this; var row_array = new Array(); var _local3; var _local2; _local1.addRowCount++; _local3 = 0; while (_local3 < COLS) { _local2 = _local1.attachMovie("lib_ball", "" + _local1.ballDepth, _local1.ballDepth); _local1.ballDepth++; _local2._x = (Math.abs(_local1.addRowCount % 2) * BALL_RAD) + (_local3 * BALL_DIAM); _local2._y = (-_local1.addRowCount) * BALL_DY; _local2.setColor(_root.myRandom(_local1.maxColorNum) + 1); row_array.push(_local2); _local1.colorCountArr[_local2.colorNum - 1]++; _local3++; } _local1.ball_array.splice(0, 0, row_array); } function getDownY() { var _local1 = this; return((_local1._y + ((((-_local1.addRowCount) + _local1.ball_array.length) - 1) * BALL_DY)) + BALL_RAD); } function calcNeighboursXY() { var _local1; var col; var row; var x; var y; var col2; var _local2; var x2; var _local3; col = 2; row = 2; x = ((row % 2) * BALL_RAD) + (col * BALL_DIAM); y = row * BALL_DY; _local1 = 0; while (_local1 < 6) { col2 = col + neighbours[_local1][0]; _local2 = row + neighbours[_local1][1]; x2 = ((_local2 % 2) * BALL_RAD) + (col2 * BALL_DIAM); _local3 = _local2 * BALL_DY; neighboursXY[_local1][0] = x2 - x; neighboursXY[_local1][1] = _local3 - y; _local1++; } col = 1; row = 1; x = ((row % 2) * BALL_RAD) + (col * BALL_DIAM); y = row * BALL_DY; _local1 = 0; while (_local1 < 6) { col2 = col + neighbours2[_local1][0]; _local2 = row + neighbours2[_local1][1]; x2 = ((_local2 % 2) * BALL_RAD) + (col2 * BALL_DIAM); _local3 = _local2 * BALL_DY; neighboursXY2[_local1][0] = x2 - x; neighboursXY2[_local1][1] = _local3 - y; _local1++; } } function getFirstBall(x0, y0, dx, dy) { var _local1 = y0; var n = ball_array.length; var topY = ((-addRowCount) * BALL_DY); x0 = x0 - _x; _local1 = _local1 - _y; var x1; var y1; x1 = x0 + (1000 * dx); y1 = _local1 + (1000 * dy); var _local3; var _local2; var C; var d; _local3 = _local1 - y1; _local2 = x1 - x0; C = (x0 * (y1 - _local1)) - (_local1 * (x1 - x0)); d = Math.sqrt((_local3 * _local3) + (_local2 * _local2)); _local3 = _local3 / d; _local2 = _local2 / d; C = C / d; while (points.pop() != undefined) { } points.push({x:x0, y:_local1}); var p1; var p2; var p3; while (true) { p1 = getBoundsIntersection(dx, dy, _local3, _local2, C); p2 = getBallIntersection(p1.x, p1.y, x0, _local1, _local3, _local2, C); if (p2 != null) { p3 = getFirstEmptyNeighbour(p2.col, p2.row, x0, _local1, x1, y1, _local3, _local2, C); if (_local3 > Math.abs(_local2)) { points.push({x:(-((_local2 * p3.y) + C)) / _local3, y:p3.y}); } else { points.push({x:p3.x, y:(-((_local3 * p3.x) + C)) / _local2}); } points.push({x:p3.x, y:p3.y}); return; } x0 = p1.x; _local1 = p1.y; dx = -dx; x1 = x0 + (1000 * dx); y1 = _local1 + (1000 * dy); _local3 = _local1 - y1; _local2 = x1 - x0; C = (x0 * (y1 - _local1)) - (_local1 * (x1 - x0)); d = Math.sqrt((_local3 * _local3) + (_local2 * _local2)); _local3 = _local3 / d; _local2 = _local2 / d; C = C / d; points.push({x:x0, y:_local1}); if (_local1 < (((-addRowCount) * BALL_DY) + 2)) { points.push({x:x0, y:_local1}); return; } } } function checkForEnd(mc_move_ball) { fillBallsCount = 0; fallBallsCount = 0; doubleScores = 0; bonusJumpUp = 0; var x; var y; x = (mc_move_ball.sX + (mc_move_ball.curR * mc_move_ball.vx)) - _x; y = (mc_move_ball.sY + (mc_move_ball.curR * mc_move_ball.vy)) - _y; var row; var col; row = Math.round((y + (addRowCount * BALL_DY)) / BALL_DY); col = Math.round((x - ((Math.abs(row + addRowCount) % 2) * BALL_RAD)) / BALL_DIAM); if (col < 0) { col = 0; } else if (col >= COLS) { col = COLS - 1; } var _local2; var _local3; var upRow; var downRow; var leftCol; var rightCol; var minCol; var minRow; var minR = 500000; var dx; var dy; var dr; var _local1; if (row <= ball_array.length) { upRow = row - 1; downRow = row + 1; leftCol = col - 1; rightCol = col + 1; if (upRow < 0) { upRow = 0; } if (downRow > (ball_array.length - 1)) { downRow = ball_array.length - 1; } _local2 = downRow; while (_local2 >= upRow) { _local3 = leftCol; while (_local3 <= rightCol) { _local1 = ball_array[_local2][_local3]; if (_local1 != null) { dx = _local1._x - x; dy = _local1._y - y; dr = Math.sqrt((dx * dx) + (dy * dy)); if (dr <= BALL_DIAM_I) { minR = dr; minCol = _local3; minRow = _local2; } } _local3++; } _local2--; } if (minR < 500000) { var p; var x0 = (x - ((mc_move_ball.curR * mc_move_ball.vx) * 100)); var y0 = (y - ((mc_move_ball.curR * mc_move_ball.vy) * 100)); var A; var B; var C; var d; A = y0 - y; B = x - x0; C = (x0 * (y - y0)) - (y0 * (x - x0)); d = Math.sqrt((A * A) + (B * B)); A = A / d; B = B / d; C = C / d; p = getFirstEmptyNeighbour(minCol, minRow, x0, y0, x, y, A, B, C); if (p.col == -1) { p = getFirstEmptyNeighbourForPoint(minCol, minRow, x, y); } if (p.row == ball_array.length) { var arr = new Array(COLS); _local2 = 0; while (_local2 < COLS) { arr[_local2] = null; _local2++; } ball_array.push(arr); } _local1 = attachMovie("lib_ball", "" + ballDepth, ballDepth); ballDepth++; _local1._x = ((Math.abs(p.row + addRowCount) % 2) * BALL_RAD) + (p.col * BALL_DIAM); _local1._y = (p.row * BALL_DY) - (addRowCount * BALL_DY); _local1.setColor(mc_move_ball.colorNum); _local1.setBonus(mc_move_ball.bonusNum, mc_move_ball.bonusColorNum); if (bonusFreeze) { _local1.freeze(); } ball_array[p.row][p.col] = _local1; colorCountArr[_local1.colorNum - 1]++; checkBonus(p.col, p.row, _local1); if (ball_array[p.row][p.col] != null) { checkMovingOff(_local1, p.col, p.row); } return(_local1); } } var upY = (((-addRowCount) * BALL_DY) + (BALL_DY / 2)); if (y <= upY) { _local1 = attachMovie("lib_ball", "" + ballDepth, ballDepth); ballDepth++; _local1._x = ((Math.abs(row + addRowCount) % 2) * BALL_RAD) + (col * BALL_DIAM); _local1._y = (row * BALL_DY) - (addRowCount * BALL_DY); _local1.setColor(mc_move_ball.colorNum); _local1.setBonus(mc_move_ball.bonusNum, mc_move_ball.bonusColorNum); if (bonusFreeze) { _local1.freeze(); } ball_array[row][col] = _local1; colorCountArr[_local1.colorNum - 1]++; checkBonus(col, row, _local1); if (ball_array[row][col] != null) { checkMovingOff(_local1, col, row); } return(_local1); } return(null); } function checkBonus(col, row, mc) { var _local1 = mc; if (_local1.bonusNum > 0) { switch (_local1.bonusNum) { case 7 : bang(col, row, _local1); _root.sndExplosionTNT = true; return; case 8 : colorize(col, row, _local1); _root.snd8bonus = true; } } } function bang(col, row, mc) { var _local1 = mc; var res_array = new Array(); var n_array; var n2_array; var ncol; var nrow; var _local2; var _local3; var ROWS = ball_array.length; var i; var j; if ((Math.abs(row + addRowCount) % 2) == 0) { n_array = neighbours; } else { n_array = neighbours2; } _local1.marked = true; res_array.push({col:col, row:row}); i = 0; while (i < 6) { ncol = col + n_array[i][0]; nrow = row + n_array[i][1]; if ((((ncol >= 0) && (ncol < COLS)) && (nrow >= 0)) && (nrow < ROWS)) { _local1 = ball_array[nrow][ncol]; if ((_local1 != null) && (_local1.marked == false)) { _local1.marked = true; res_array.push({col:ncol, row:nrow}); } if ((Math.abs(nrow + addRowCount) % 2) == 0) { n2_array = neighbours; } else { n2_array = neighbours2; } j = 0; while (j < 6) { _local2 = ncol + n2_array[j][0]; _local3 = nrow + n2_array[j][1]; if ((((((_local2 >= 0) && (_local2 < COLS)) && (_local3 >= 0)) && (_local3 < ROWS)) && ((_local1 = ball_array[_local3][_local2]) != null)) && (_local1.marked == false)) { _local1.marked = true; res_array.push({col:_local2, row:_local3}); } j++; } } i++; } var res = 0; var n = res_array.length; i = 0; while (i < n) { col = res_array[i].col; row = res_array[i].row; _local1 = ball_array[row][col]; if (_local1 != null) { colorCountArr[_local1.colorNum - 1]--; checkLongBonus(_local1); _local1.gotoAndPlay("bang" + (_root.myRandom(4) + 1)); res++; ball_array[row][col] = null; } i++; } delete res_array; fillBallsCount = res; checkPendingBalls(); checkOddRows(); } function colorize(col, row, mc) { var _local1 = mc; var res_array = new Array(); var n_array; var n2_array; var ncol; var nrow; var _local2; var _local3; var ROWS = ball_array.length; var i; var j; var colorNum = _local1.colorNum; if ((Math.abs(row + addRowCount) % 2) == 0) { n_array = neighbours; } else { n_array = neighbours2; } _local1.setBonus(0, 0); _local1.marked = true; res_array.push({col:col, row:row}); i = 5; while (i >= 0) { ncol = col + n_array[i][0]; nrow = row + n_array[i][1]; if ((((((ncol >= 0) && (ncol < COLS)) && (nrow >= 0)) && (nrow < ROWS)) && ((_local1 = ball_array[nrow][ncol]) != null)) && (_local1.marked == false)) { _local1.marked = true; res_array.push({col:ncol, row:nrow}); if ((Math.abs(nrow + addRowCount) % 2) == 0) { n2_array = neighbours; } else { n2_array = neighbours2; } j = 5; while (j >= 0) { _local2 = ncol + n2_array[j][0]; _local3 = nrow + n2_array[j][1]; if ((((((_local2 >= 0) && (_local2 < COLS)) && (_local3 >= 0)) && (_local3 < ROWS)) && ((_local1 = ball_array[_local3][_local2]) != null)) && (_local1.marked == false)) { _local1.marked = true; res_array.push({col:_local2, row:_local3}); break; } j--; } break; } i--; } var res = 0; var n = res_array.length; i = 0; while (i < n) { col = res_array[i].col; row = res_array[i].row; _local1 = ball_array[row][col]; if (_local1 != null) { _local1.marked = false; colorCountArr[_local1.colorNum - 1]--; _local1.setColor(colorNum); colorCountArr[colorNum - 1]++; } i++; } delete res_array; } function checkLongBonus(mc) { var _local1 = this; if (mc.bonusNum > 0) { switch (mc.bonusNum) { case 2 : _local1.enableTrace(); _root.sndBubbleLevelUp = true; return; case 3 : _local1.doubleScores = _local1.doubleScores + 1; return; case 4 : _local1.bonusJumpUp = _local1.bonusJumpUp + 1; return; case 5 : _local1.enableFreeze(); return; case 6 : _local1.doubleScores = _local1.doubleScores + 2; } } } function getBoundsIntersection(dx, dy, A, B, C) { var _local2 = 0; var _local3 = -30000; var x2 = 0; var _local1 = -30000; if (Math.abs(dx) > 0.15) { if (dx > 0) { _local2 = fieldWidth; } else { _local2 = 0; } _local3 = (-((A * _local2) + C)) / B; } _local1 = (-addRowCount) * BALL_DY; x2 = (-((B * _local1) + C)) / A; if (_local1 > _local3) { return({x:x2, y:_local1}); } return({x:_local2, y:_local3}); } function getBallIntersection(x1, y1, x0, y0, A, B, C) { var topY = ((-addRowCount) * BALL_DY); var upY = (y1 - BALL_DIAM); var upRow = (Math.round((upY - topY) / BALL_DY) - 1); var downRow = (Math.round((y0 - topY) / BALL_DY) + 1); if (upRow < 0) { upRow = 0; } if (downRow > (ball_array.length - 1)) { downRow = ball_array.length - 1; } var minR = 500000; var minCol = -1; var minRow = -1; var i; var j; var _local1; var _local3; var _local2; var dr; var dr2; var r1; var r; _local3 = x1 - x0; _local2 = y1 - y0; dr2 = (_local3 * _local3) + (_local2 * _local2); i = downRow; while (i >= upRow) { j = 0; while (j < COLS) { _local1 = ball_array[i][j]; if ((_local1 != null) && (((r1 = Math.abs(((A * _local1._x) + (B * _local1._y)) + C))) <= BALL_DIAM_I)) { _local3 = _local1._x - x0; _local2 = _local1._y - y0; dr = (_local3 * _local3) + (_local2 * _local2); r = Math.sqrt(dr) + r1; if (r < minR) { if (dr > dr2) { _local3 = _local1._x - x1; _local2 = _local1._y - y1; if (((dr = (_local3 * _local3) + (_local2 * _local2))) <= (BALL_DIAM_I * BALL_DIAM_I)) { minR = Math.sqrt(dr) + Math.sqrt(dr2); minCol = j; minRow = i; } } else { minR = r; minCol = j; minRow = i; } } } j++; } i--; } if (minCol != -1) { return({col:minCol, row:minRow}); } return(null); } function getFirstEmptyNeighbour(col, row, x0, y0, x1, y1, A, B, C) { var _local1; var minR = 500000; var minCol = -1; var minRow; var minX; var minY; var x; var y; var n_array; var nXY_array; var _local2; var nrow; var nx; var _local3; var dx; var dy; var dr; var iP = {x:0, y:0, R:0}; if ((Math.abs(row + addRowCount) % 2) == 0) { n_array = neighbours; nXY_array = neighboursXY; } else { n_array = neighbours2; nXY_array = neighboursXY2; } x = ((Math.abs(addRowCount + row) % 2) * BALL_RAD) + (col * BALL_DIAM); y = (row * BALL_DY) - (addRowCount * BALL_DY); _local1 = 0; while (_local1 < 6) { _local2 = col + n_array[_local1][0]; nrow = row + n_array[_local1][1]; if (((_local2 >= 0) && (nrow >= 0)) && (_local2 < COLS)) { nx = x + nXY_array[_local1][0]; _local3 = y + nXY_array[_local1][1]; if (Math.abs(((A * nx) + (B * _local3)) + C) <= BALL_RAD_B) { getCircleIntersection(x0, y0, x1, y1, nx, _local3, BALL_RAD_B, BALL_RAD_B * BALL_RAD_B, iP); if (iP.R < minR) { minR = iP.R; minCol = _local2; minRow = nrow; minX = nx; minY = _local3; } } } _local1++; } return({x:minX, y:minY, col:minCol, row:minRow}); } function getFirstEmptyNeighbourForPoint(col, row, x0, y0) { var _local1; var minR = 500000; var minCol; var minRow; var minX; var minY; var x; var y; var n_array; var nXY_array; var _local2; var nrow; var nx; var ny; var dx; var _local3; var dr; if ((Math.abs(row + addRowCount) % 2) == 0) { n_array = neighbours; nXY_array = neighboursXY; } else { n_array = neighbours2; nXY_array = neighboursXY2; } x = ((Math.abs(addRowCount + row) % 2) * BALL_RAD) + (col * BALL_DIAM); y = (row * BALL_DY) - (addRowCount * BALL_DY); _local1 = 0; while (_local1 < 6) { _local2 = col + n_array[_local1][0]; nrow = row + n_array[_local1][1]; if (((_local2 >= 0) && (nrow >= 0)) && (_local2 < COLS)) { nx = x + nXY_array[_local1][0]; ny = y + nXY_array[_local1][1]; dx = nx - x0; _local3 = ny - y0; dr = (dx * dx) + (_local3 * _local3); if (dr < minR) { minR = dr; minCol = _local2; minRow = nrow; minX = nx; minY = ny; } } _local1++; } return({x:minX, y:minY, col:minCol, row:minRow}); } function getCircleIntersection(x1, y1, x2, y2, x0, y0, R, R2, iP) { var _local2 = x1; var _local3 = y1; var A; var _local1; var C; var _a; var _b; var _c; var D; var sqrtD; var CBx0; var CBy0; var xx1; var yy1; var xx2; var yy2; var t1; var t2; var minR1 = 500000; var minR2 = 500000; if (Math.abs(x2 - _local2) < 1) { (A = _local2 - x2); _local1 = y2 - _local3; (C = (_local2 * (_local3 - y2)) - (_local3 * (_local2 - x2))); (_a = 1 + ((A * A) / (_local1 * _local1))); (_b = (-2 * y0) + (((2 * A) / _local1) * ((CBx0 = (C / _local1) + x0)))); (_c = ((y0 * y0) + (CBx0 * CBx0)) - R2); D = (_b * _b) - ((4 * _a) * _c); if (D >= 0) { sqrtD = Math.sqrt(D); yy1 = ((-_b) + sqrtD) / (2 * _a); t1 = (yy1 - _local3) / _local1; if ((t1 >= -0.05) && (t1 <= 1.05)) { xx1 = (-((A * yy1) + C)) / _local1; minR1 = ((xx1 - _local2) * (xx1 - _local2)) + ((yy1 - _local3) * (yy1 - _local3)); } yy2 = ((-_b) - sqrtD) / (2 * _a); t2 = (yy2 - _local3) / _local1; if ((t2 >= -0.05) && (t2 <= 1.05)) { xx2 = (-((A * yy2) + C)) / _local1; minR2 = ((xx2 - _local2) * (xx2 - _local2)) + ((yy2 - _local3) * (yy2 - _local3)); } if (minR1 < minR2) { (iP.x = xx1); (iP.y = yy1); (iP.R = Math.sqrt(minR1)); } else { if (minR2 == 500000) { return(false); } (iP.x = xx2); (iP.y = yy2); (iP.R = Math.sqrt(minR2)); } return(true); } } else { (A = _local3 - y2); _local1 = x2 - _local2; (C = (_local3 * (_local2 - x2)) - (_local2 * (_local3 - y2))); (_a = 1 + ((A * A) / (_local1 * _local1))); (_b = (-2 * x0) + (((2 * A) / _local1) * ((CBy0 = (C / _local1) + y0)))); (_c = ((x0 * x0) + (CBy0 * CBy0)) - R2); D = (_b * _b) - ((4 * _a) * _c); if (D >= 0) { sqrtD = Math.sqrt(D); xx1 = ((-_b) + sqrtD) / (2 * _a); t1 = (xx1 - _local2) / _local1; if ((t1 >= -0.05) && (t1 <= 1.05)) { yy1 = (-((A * xx1) + C)) / _local1; minR1 = ((xx1 - _local2) * (xx1 - _local2)) + ((yy1 - _local3) * (yy1 - _local3)); } xx2 = ((-_b) - sqrtD) / (2 * _a); t2 = (xx2 - _local2) / _local1; if ((t2 >= -0.05) && (t2 <= 1.05)) { yy2 = (-((A * xx2) + C)) / _local1; minR2 = ((xx2 - _local2) * (xx2 - _local2)) + ((yy2 - _local3) * (yy2 - _local3)); } if (minR1 < minR2) { (iP.x = xx1); (iP.y = yy1); (iP.R = Math.sqrt(minR1)); } else { if (minR2 == 500000) { return(false); } (iP.x = xx2); (iP.y = yy2); (iP.R = Math.sqrt(minR2)); } return(true); } } return(false); } function checkMovingOff(mc_ball, col, row) { var _local3 = this; var res1_array = null; var res2_array = null; mc_ball.marked = true; res1_array = _local3.tryRemoveColor(col, row, mc_ball.colorNum); if (mc_ball.bonusNum == CBall.BONUS_COLOR) { res2_array = _local3.tryRemoveColor(col, row, mc_ball.bonusColorNum); if (res1_array == null) { res1_array = res2_array; } else if (res2_array != null) { res1_array = res1_array.concat(res2_array); } } mc_ball.marked = false; if (res1_array != null) { if (mc_ball.bonusColorNum > 0) { _root.sndBubbleLevelUp = true; } res1_array.push({col:col, row:row, mc:mc_ball}); var res = 0; var n = res1_array.length; var _local2; var _local1; _local2 = 0; while (_local2 < n) { col = res1_array[_local2].col; row = res1_array[_local2].row; _local1 = _local3.ball_array[row][col]; if (_local1 != null) { _local3.colorCountArr[_local1.colorNum - 1]--; _local3.checkLongBonus(_local1); _local1.gotoAndPlay(2); res++; _local3.ball_array[row][col] = null; } _local2++; } _local3.checkPendingBalls(); _local3.checkOddRows(); _local3.fillBallsCount = res; return(res); } return(0); } function fallAllBalls() { var _local3 = this; var col; var row; var _local1; var _local2; var ROWS = _local3.ball_array.length; var i = 0; var mc_f; mc_f = _local3.mc_fall.attachMovie("lib_fall", "" + _local3.fallDepth, _local3.fallDepth); _local3.fallDepth++; row = 0; while (row < ROWS) { col = 0; while (col < COLS) { _local1 = _local3.ball_array[row][col]; if (_local1 != null) { _local3.ball_array[row][col] = null; _local2 = _local1; _local1 = mc_f.attachMovie("lib_ball", "" + i, i); i++; _local1.setColor(_local2.colorNum); _local1.setBonus(_local2.bonusNum, _local2.bonusColorNum); _local1._x = ((_local3._x + _local2._x) + random(8)) - 4; _local1._y = ((_local3._y + _local2._y) + random(8)) - 4; _local3.colorCountArr[_local2.colorNum - 1]--; _local2.removeMovieClip(); } col++; } row++; } if (i == 0) { mc_f.removeMovieClip(); } } function checkPendingBalls() { var _local2 = this; var res_array = new Array(); var p_idx = 0; var n_array; var _local3; var k; var col; var row; var ncol; var nrow; var _local1; var ROWS = _local2.ball_array.length; var foundFlag; while (true) { foundFlag = false; k = 0; while (k < COLS) { _local1 = _local2.ball_array[0][k]; if ((_local1 != null) && (_local1.marked == false)) { _local2.stack_arr[p_idx] = {col:k, row:0}; p_idx++; _local1.marked = true; foundFlag = true; break; } k++; } if (foundFlag == false) { break; } while (p_idx > 0) { p_idx--; col = _local2.stack_arr[p_idx].col; row = _local2.stack_arr[p_idx].row; if ((Math.abs(row + _local2.addRowCount) % 2) == 0) { n_array = neighbours; } else { n_array = neighbours2; } _local3 = 0; while (_local3 < 6) { ncol = col + n_array[_local3][0]; nrow = row + n_array[_local3][1]; if ((((((ncol >= 0) && (ncol < COLS)) && (nrow >= 0)) && (nrow < ROWS)) && ((_local1 = _local2.ball_array[nrow][ncol]) != null)) && (_local1.marked == false)) { _local1.marked = true; _local2.stack_arr[p_idx] = {col:ncol, row:nrow}; p_idx++; } _local3++; } } } row = 0; while (row < ROWS) { col = 0; while (col < COLS) { _local1 = _local2.ball_array[row][col]; if (_local1 != null) { if (_local1.marked) { _local1.marked = false; } else { res_array.push(_local1); _local2.ball_array[row][col] = null; } } col++; } row++; } if (res_array.length > 0) { var mc_f; var n = res_array.length; var old; _local2.fallBallsCount = n; mc_f = _local2.mc_fall.attachMovie("lib_fall", "" + _local2.fallDepth, _local2.fallDepth); _local2.fallDepth++; _local3 = 0; while (_local3 < n) { _local1 = mc_f.attachMovie("lib_ball", "" + _local3, _local3); old = res_array[_local3]; _local1.setColor(old.colorNum); _local1.setBonus(old.bonusNum, old.bonusColorNum); _local1._x = ((_local2._x + old._x) + random(8)) - 4; _local1._y = ((_local2._y + old._y) + random(8)) - 4; _local2.colorCountArr[old.colorNum - 1]--; old.removeMovieClip(); _local3++; } } delete res_array; } function checkOddRows() { var _local2 = this; var _local1; var _local3; while (true) { if (_local2.ball_array.length == 1) { return; } _local3 = _local2.ball_array.length - 1; _local1 = 0; while (_local1 < COLS) { if (_local2.ball_array[_local3][_local1] != null) { return; } _local1++; } _local2.ball_array.pop(); } } function tryRemoveColor(col, row, colorNum) { var res_array = new Array(); var p_idx = 0; var n_array; var _local1; var _local2; var _local3; var mc; var ROWS = ball_array.length; stack_arr[p_idx] = {col:col, row:row}; p_idx++; while (p_idx > 0) { p_idx--; col = stack_arr[p_idx].col; row = stack_arr[p_idx].row; if ((Math.abs(row + addRowCount) % 2) == 0) { n_array = neighbours; } else { n_array = neighbours2; } _local1 = 0; while (_local1 < 6) { _local2 = col + n_array[_local1][0]; _local3 = row + n_array[_local1][1]; if (((((((_local2 >= 0) && (_local2 < COLS)) && (_local3 >= 0)) && (_local3 < ROWS)) && (((mc = ball_array[_local3][_local2])) != null)) && (mc.marked == false)) && (mc.isMyColor(colorNum))) { mc.marked = true; res_array.push({col:_local2, row:_local3, mc:mc}); stack_arr[p_idx] = {col:_local2, row:_local3}; p_idx++; } _local1++; } } var n = res_array.length; _local1 = 0; while (_local1 < n) { res_array[_local1].mc.marked = false; _local1++; } if (n < 2) { delete res_array; return(null); } return(res_array); } static var COLS = 11; static var BALL_RAD = 14; static var BALL_RAD_I = BALL_RAD - 1; static var BALL_RAD_B = BALL_RAD + 1.5; static var BALL_DIAM = 28; static var BALL_DIAM_I = BALL_DIAM - 8.5; static var BALL_DY = 25; var addRowCount = 0; var ballDepth = 0; var maxColorNum = 8; var maxBonusNum = 8; var points = new Array(); var stack_arr = new Array(200); static var neighbours = [[-1, 1], [0, 1], [-1, 0], [1, 0], [-1, -1], [0, -1]]; static var neighbours2 = [[0, 1], [1, 1], [-1, 0], [1, 0], [1, -1], [0, -1]]; static var neighboursXY = [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]; static var neighboursXY2 = [[0, 0], [0, 0], [0, 0], [0, 0], [0, 0], [0, 0]]; var TRACE_TIME = 30000; var FREEZE_TIME = 10000; }Symbol 328 MovieClip [__Packages.CFallMovie] Frame 0class CFallMovie extends MovieClip { var time, state; function CFallMovie () { super(); time = 0; state = 0; } function process(dTime) { var _local1 = this; var _local3 = dTime; if (_local1.state == 0) { _local1.time = _local1.time + _local3; var _local2 = -180 + ((_local1.acc * _local1.time) / 1000); if (_local2 < _local1.maxSpeed) { _local1._y = _local1._y + ((_local2 * _local3) / 1000); } else { _local1._y = _local1._y + ((_local1.maxSpeed * _local3) / 1000); _local1.state = 1; } } else { _local1._y = _local1._y + ((_local1.maxSpeed * _local3) / 1000); } } var maxSpeed = 700; var acc = 600; }Symbol 329 MovieClip [__Packages.CPinguin] Frame 0class CPinguin extends MovieClip { var state; function CPinguin () { super(); toStayDown(); } function process(dTime) { var _local1 = this; var _local2 = dTime; _local1.curTime = _local1.curTime - _local2; if (_local1.state == 0) { if (_local1.curTime < 0) { _local1.toUp(); } } else if (_local1.state == 1) { _local1._y = _local1._y - ((_local1.speed * _local2) / 1000); if (_local1._y <= 400) { _local1._y = 400; _local1.toStayUp(); } } else if (_local1.state == 2) { if (_local1.curTime < 0) { _local1.toDown(); } } else if (_local1.state == 3) { _local1._y = _local1._y + ((_local1.speed * _local2) / 1000); if (_local1._y > (400 + _local1._height)) { _local1.toStayDown(); } } } function toUp() { var _local1 = this; _local1.state = 1; _local1._y = 400 + _local1._height; _local1._visible = true; if (Math.random() > 0.5) { _local1._xscale = Math.abs(_local1._xscale); _local1._x = 135 + random(45); } else { _local1._xscale = -Math.abs(_local1._xscale); _local1._x = 330 + random(40); } _root.sndPingvin = true; } function toStayUp() { var _local1 = this; _local1.state = 2; _local1.curTime = _local1.timeOnUp; } function toDown() { state = 3; } function toStayDown() { var _local1 = this; _local1.state = 0; _local1._visible = false; _local1.curTime = _local1.minTimeNone + random(_local1.maxTimeNone - _local1.minTimeNone); } var speed = 40; var minTimeNone = 3000; var maxTimeNone = 18000; var timeOnUp = 7000; }Symbol 330 MovieClip [__Packages.CYeti] Frame 0class CYeti extends MovieClip { var state, gotoAndStop; function CYeti () { super(); toStay(); } function process(dTime) { var _local1 = this; if (_local1.state == 0) { _local1.curTime = _local1.curTime - dTime; if (_local1.curTime < 0) { _local1.toChesh(); } } } function toStay() { var _local1 = this; _local1.state = 0; _local1.gotoAndStop("stay"); _local1.curTime = _local1.minStayTime + random(_local1.maxStayTime - _local1.minStayTime); } function endChesh() { toStay(); } function endCool() { toStay(); } function toCool() { state = 2; gotoAndStop("cool"); } function toChesh() { state = 1; gotoAndStop("chesh"); } var minStayTime = 3000; var maxStayTime = 10000; }Symbol 331 MovieClip [__Packages.CIndicator] Frame 0class CIndicator extends MovieClip { var curValue, maxValue; function CIndicator () { super(); } function init(maxValue_) { var _local1 = this; _local1.maxValue = maxValue_; _local1.curValue = 0; _local1.startY = _local1.mc_mask._y; _local1.updateView(); } function addValue(val) { var _local1 = this; _local1.curValue = _local1.curValue + val; if (_local1.curValue > _local1.maxValue) { _local1.curValue = _local1.maxValue; } _local1.updateView(); } function reset() { curValue = 0; updateView(); } function isFull() { return(curValue >= maxValue); } function updateView() { var _local1 = this; _local1.mc_mask._y = (_local1.startY + _local1.mc_mask._height) - ((_local1.curValue / _local1.maxValue) * _local1.mc_mask._height); } }Symbol 332 MovieClip [__Packages.CGun] Frame 0class CGun extends MovieClip { var txtNumber, curWaitTime, mouseControl, disableFlag; function CGun () { super() var _local1 = this; _local1.bonusNum = 0; _local1.hideMouse = false; _local1.curWaitTime = _local1.WAIT_TIME * 2; _local1.txtNumber = ""; _local1.disableFlag = false; _local1.mouseControl = false; _local1.prevLeft = (_local1.prevRight = false); _local1.keySpeed = _local1.keyAcc; } function setColor(num) { var _local1 = this; _local1.colorNum = num; _local1.gotoAndStop(_local1.colorNum); } function setBonus(bonusNum_, bonusColorNum_) { var _local1 = this; _local1.bonusNum = bonusNum_; _local1.bonusColorNum = bonusColorNum_; _local1.mc_bonus.gotoAndStop(1 + _local1.bonusNum); if (_local1.bonusNum == CBall.BONUS_COLOR) { _local1.mc_bonus.mc.gotoAndStop(_local1.bonusColorNum); } } function processTime(dTime) { var _local1 = this; var _local3; var _local2; _local3 = Math.ceil(_local1.curWaitTime / 1000); _local1.curWaitTime = _local1.curWaitTime - dTime; if (_local1.curWaitTime <= 0) { _local1.curWaitTime = 0; } _local2 = Math.ceil((_local1.curWaitTime / 1000) + 0.01); if ((_local2 != _local3) && (_local2 <= 3)) { _local1.txtNumber = "" + _local2; _root.sndAutoFire = true; } } function processKeys(dTime) { var _local1 = this; var _local3 = Key.isDown(37); var rightKey = Key.isDown(39); if (_local3 || (rightKey)) { if (_local1.mouseControl) { _local1.mouseControl = false; if (_local1.hideMouse) { _local1.hideMouse = false; Mouse.show(); } } var _local2 = dTime / 1000; _local1.keySpeed = _local1.keySpeed + _local1.keyAcc; if (_local1.keySpeed > _local1.maxKeySpeed) { _local1.keySpeed = _local1.maxKeySpeed; } if (_local3) { if (!_local1.prevLeft) { _local1.keySpeed = _local1.keyAcc; _local1.prevLeft = true; _local1.prevRight = false; } _local1._rotation = _local1._rotation - (_local2 * _local1.keySpeed); if (_local1._rotation < (-MAX_UGOL)) { _local1._rotation = -MAX_UGOL; } } else { if (!_local1.prevRight) { _local1.keySpeed = _local1.keyAcc / 2; _local1.prevLeft = false; _local1.prevRight = true; } _local1._rotation = _local1._rotation + (_local2 * _local1.keySpeed); if (_local1._rotation > MAX_UGOL) { _local1._rotation = MAX_UGOL; } } } else { _local1.prevLeft = (_local1.prevRight = false); } } function doShot() { var _local1 = this; _local1.curWaitTime = _local1.WAIT_TIME; _local1.resetNumber(); } function resetNumber() { txtNumber = ""; } function autoShot() { return(curWaitTime == 0); } function process(xMouse) { var _local2 = this; if (_local2.mouseControl) { var _local1 = xMouse - _local2._x; if (!_local2.disableFlag) { if ((_local1 > 170) || (_local1 < -170)) { if (_local2.hideMouse) { _local2.hideMouse = false; Mouse.show(); } } else if (!_local2.hideMouse) { _local2.hideMouse = true; Mouse.hide(); } } _local1 = _local1 / 130; if (_local1 > 1) { _local1 = 1; } else if (_local1 < -1) { _local1 = -1; } _local2._rotation = _local1 * MAX_UGOL; } } function myMouseMove() { mouseControl = true; } function disable() { disableFlag = true; Mouse.show(); } function getShotPoint() { var _local2 = this; var _local1 = {x:_local2.mc_point._x, y:_local2.mc_point._y}; _local2.localToGlobal(_local1); _local2._parent.globalToLocal(_local1); return(_local1); } static var MAX_UGOL = 80; var WAIT_TIME = 6400; var maxKeySpeed = 85; var keyAcc = 12; }Symbol 333 MovieClip [__Packages.CMoveBall] Frame 0class CMoveBall extends CBall { var _visible, state; function CMoveBall () { super(); hide(); } function startMove(x, y, vx_, vy_) { var _local1 = this; _local1._x = (_local1.sX = x); _local1._y = (_local1.sY = y); _local1.vx = vx_; _local1.vy = vy_; _local1.curR = 0; _local1.calcEndPoint(); _local1.show(); } function doStep(step) { var _local1 = this; _local1.curR = _local1.curR + step; if (_local1.curR >= _local1.commonR) { _local1.sX = _local1.eX; _local1.sY = _local1.eY; _local1.curR = 0; _local1.vx = -_local1.vx; _local1.calcEndPoint(); } _local1._x = _local1.sX + (_local1.curR * _local1.vx); _local1._y = _local1.sY + (_local1.curR * _local1.vy); } function calcEndPoint() { var _local1 = this; var _local3; var _local2; var C; var d; _local1.sX = _local1.sX - _local1.mc_grid._x; _local1.sY = _local1.sY - _local1.mc_grid._y; _local1.eX = _local1.sX + (1000 * _local1.vx); _local1.eY = _local1.sY + (1000 * _local1.vy); _local3 = _local1.sY - _local1.eY; _local2 = _local1.eX - _local1.sX; C = (_local1.sX * (_local1.eY - _local1.sY)) - (_local1.sY * (_local1.eX - _local1.sX)); d = Math.sqrt((_local3 * _local3) + (_local2 * _local2)); _local3 = _local3 / d; _local2 = _local2 / d; C = C / d; var p = _local1.mc_grid.getBoundsIntersection(_local1.vx, _local1.vy, _local3, _local2, C); _local1.eX = p.x; _local1.eY = p.y; _local1.commonR = Math.sqrt(((_local1.eX - _local1.sX) * (_local1.eX - _local1.sX)) + ((_local1.eY - _local1.sY) * (_local1.eY - _local1.sY))); _local1.sX = _local1.sX + _local1.mc_grid._x; _local1.sY = _local1.sY + _local1.mc_grid._y; _local1.eX = _local1.eX + _local1.mc_grid._x; _local1.eY = _local1.eY + _local1.mc_grid._y; } function show() { _visible = true; state = 1; } function hide() { _visible = false; state = 0; } }Symbol 123 Buttonon (release) { more_pressed(); }Symbol 128 Buttonon (release) { new_game_pressed(); }Symbol 133 Buttonon (release) { how_to_play_pressed(); }Symbol 135 MovieClip Frame 1stop();Symbol 137 Buttonon (press) { this._parent.soundOff(); this.gotoAndStop(2); }Symbol 139 Buttonon (press) { this._parent.soundOn(); this.gotoAndStop(1); }Symbol 140 MovieClip Frame 1this.stop();Symbol 145 Buttonon (release) { arcade_mode_pressed(); }Symbol 150 Buttonon (release) { classic_mode_pressed(); }Symbol 155 Buttonon (release) { back_pressed(); }Symbol 162 MovieClip Frame 1this.stop();Symbol 163 MovieClip [lib_ball_move] Frame 1#initclip 19 Object.registerClass("lib_ball_move", CMoveBall); #endinitclipSymbol 164 MovieClip [mc_grid] Frame 1#initclip 14 Object.registerClass("mc_grid", CGrid); #endinitclipSymbol 178 MovieClip [lib_pinguin_] Frame 1#initclip 15 Object.registerClass("lib_pinguin_", CPinguin); #endinitclipSymbol 216 MovieClip Frame 33this._parent.endChesh();Symbol 252 MovieClip Frame 35this._parent.endCool();Symbol 253 MovieClip [lib_yeti] Frame 1#initclip 16 Object.registerClass("lib_yeti", CYeti); #endinitclip this.stop();Symbol 258 MovieClip [lib_ind] Frame 1#initclip 17 Object.registerClass("lib_ind", CIndicator); #endinitclipSymbol 290 MovieClip Frame 1this.stop();Symbol 308 MovieClip [mc_gun_] Frame 1#initclip 18 Object.registerClass("mc_gun_", CGun); #endinitclip this.stop();Symbol 316 Buttonon (release) { this._parent.nextLevel(); }Symbol 318 Buttonon (release) { this._parent.newGame(); }
Library Items
Symbol 1 MovieClip | Used by:Timeline | |
Symbol 2 Graphic | Used by:Timeline | |
Symbol 3 Bitmap | Used by:4 | |
Symbol 4 Graphic | Uses:3 | Used by:5 |
Symbol 5 MovieClip | Uses:4 | Used by:Timeline |
Symbol 6 Bitmap | Used by:7 | |
Symbol 7 Graphic | Uses:6 | Used by:Timeline |
Symbol 8 Font | Used by:9 | |
Symbol 9 EditableText | Uses:8 | Used by:Timeline |
Symbol 10 Bitmap | Used by:11 | |
Symbol 11 Graphic | Uses:10 | Used by:12 |
Symbol 12 MovieClip | Uses:11 | Used by:Timeline |
Symbol 13 Graphic | Used by:14 137 139 | |
Symbol 14 MovieClip | Uses:13 | Used by:15 |
Symbol 15 MovieClip | Uses:14 | Used by:Timeline |
Symbol 16 Bitmap | Used by:17 | |
Symbol 17 Graphic | Uses:16 | Used by:67 162 |
Symbol 18 Bitmap | Used by:19 | |
Symbol 19 Graphic | Uses:18 | Used by:34 |
Symbol 20 Bitmap | Used by:21 | |
Symbol 21 Graphic | Uses:20 | Used by:34 |
Symbol 22 Bitmap | Used by:23 | |
Symbol 23 Graphic | Uses:22 | Used by:34 |
Symbol 24 Bitmap | Used by:25 | |
Symbol 25 Graphic | Uses:24 | Used by:34 |
Symbol 26 Bitmap | Used by:27 | |
Symbol 27 Graphic | Uses:26 | Used by:34 |
Symbol 28 Bitmap | Used by:29 | |
Symbol 29 Graphic | Uses:28 | Used by:34 |
Symbol 30 Bitmap | Used by:31 | |
Symbol 31 Graphic | Uses:30 | Used by:34 |
Symbol 32 Bitmap | Used by:33 | |
Symbol 33 Graphic | Uses:32 | Used by:34 |
Symbol 34 MovieClip | Uses:19 21 23 25 27 29 31 33 | Used by:49 |
Symbol 35 Bitmap | Used by:36 282 | |
Symbol 36 Graphic | Uses:35 | Used by:49 |
Symbol 37 Bitmap | Used by:38 283 | |
Symbol 38 Graphic | Uses:37 | Used by:49 |
Symbol 39 Bitmap | Used by:40 284 | |
Symbol 40 Graphic | Uses:39 | Used by:49 |
Symbol 41 Bitmap | Used by:42 285 | |
Symbol 42 Graphic | Uses:41 | Used by:49 |
Symbol 43 Bitmap | Used by:44 286 | |
Symbol 44 Graphic | Uses:43 | Used by:49 |
Symbol 45 Bitmap | Used by:46 | |
Symbol 46 Graphic | Uses:45 | Used by:49 |
Symbol 47 Bitmap | Used by:48 289 | |
Symbol 48 Graphic | Uses:47 | Used by:49 |
Symbol 49 MovieClip | Uses:34 36 38 40 42 44 46 48 | Used by:67 162 |
Symbol 50 Bitmap | Used by:51 | |
Symbol 51 Graphic | Uses:50 | Used by:52 |
Symbol 52 MovieClip | Uses:51 | Used by:67 162 |
Symbol 53 Bitmap | Used by:54 | |
Symbol 54 Graphic | Uses:53 | Used by:67 162 |
Symbol 55 Bitmap | Used by:56 | |
Symbol 56 Graphic | Uses:55 | Used by:67 162 |
Symbol 57 Bitmap | Used by:58 | |
Symbol 58 Graphic | Uses:57 | Used by:67 162 |
Symbol 59 Bitmap | Used by:60 | |
Symbol 60 Graphic | Uses:59 | Used by:67 162 |
Symbol 61 Bitmap | Used by:62 | |
Symbol 62 Graphic | Uses:61 | Used by:67 162 |
Symbol 63 Bitmap | Used by:64 | |
Symbol 64 Graphic | Uses:63 | Used by:67 162 |
Symbol 65 Bitmap | Used by:66 | |
Symbol 66 Graphic | Uses:65 | Used by:67 162 |
Symbol 67 MovieClip | Uses:17 49 52 54 56 58 60 62 64 66 | Used by:93 |
Symbol 68 Bitmap | Used by:69 70 71 72 | |
Symbol 69 Graphic | Uses:68 | Used by:93 |
Symbol 70 Graphic | Uses:68 | Used by:93 |
Symbol 71 Graphic | Uses:68 | Used by:93 |
Symbol 72 Graphic | Uses:68 | Used by:93 |
Symbol 73 Bitmap | Used by:74 | |
Symbol 74 Graphic | Uses:73 | Used by:93 |
Symbol 75 Bitmap | Used by:76 | |
Symbol 76 Graphic | Uses:75 | Used by:93 |
Symbol 77 Bitmap | Used by:78 | |
Symbol 78 Graphic | Uses:77 | Used by:93 |
Symbol 79 Bitmap | Used by:80 | |
Symbol 80 Graphic | Uses:79 | Used by:93 |
Symbol 81 Bitmap | Used by:82 | |
Symbol 82 Graphic | Uses:81 | Used by:93 |
Symbol 83 Bitmap | Used by:84 | |
Symbol 84 Graphic | Uses:83 | Used by:93 |
Symbol 85 Bitmap | Used by:86 | |
Symbol 86 Graphic | Uses:85 | Used by:93 |
Symbol 87 Bitmap | Used by:88 | |
Symbol 88 Graphic | Uses:87 | Used by:93 |
Symbol 89 Bitmap | Used by:90 | |
Symbol 90 Graphic | Uses:89 | Used by:93 |
Symbol 91 Bitmap | Used by:92 | |
Symbol 92 Graphic | Uses:91 | Used by:93 |
Symbol 93 MovieClip [lib_ball] | Uses:67 69 70 71 72 74 76 78 80 82 84 86 88 90 92 | Used by:323 Timeline |
Symbol 94 Bitmap | Used by:95 | |
Symbol 95 Graphic | Uses:94 | Used by:96 |
Symbol 96 MovieClip [lib_trace] | Uses:95 | Used by:Timeline |
Symbol 97 Graphic | Used by:98 | |
Symbol 98 MovieClip [lib_trace2] | Uses:97 | Used by:Timeline |
Symbol 99 MovieClip [lib_fall] | Used by:Timeline | |
Symbol 100 Bitmap | Used by:101 | |
Symbol 101 Graphic | Uses:100 | Used by:102 |
Symbol 102 MovieClip | Uses:101 | Used by:Timeline |
Symbol 103 Sound [snd_ScoreX2orX4] | Used by:113 | |
Symbol 104 Sound [snd_Pingvin] | Used by:113 | |
Symbol 105 Sound [snd_GunFire] | Used by:113 | |
Symbol 106 Sound [snd_Freeze] | Used by:113 | |
Symbol 107 Sound [snd_ExplosionTNT] | Used by:113 | |
Symbol 108 Sound [snd_BubbleLevelUp] | Used by:113 | |
Symbol 109 Sound [snd_BubbleCollisionR] | Used by:113 | |
Symbol 110 Sound [snd_BubbleCollision] | Used by:113 | |
Symbol 111 Sound [snd_AutoFire] | Used by:113 | |
Symbol 112 Sound [snd_8bonus] | Used by:113 | |
Symbol 113 MovieClip | Uses:103 104 105 106 107 108 109 110 111 112 | Used by:Timeline |
Symbol 324 MovieClip [__Packages.CTimeCounter] | ||
Symbol 325 MovieClip [__Packages.CBall] | ||
Symbol 326 MovieClip [__Packages.CBackground] | ||
Symbol 327 MovieClip [__Packages.CGrid] | ||
Symbol 328 MovieClip [__Packages.CFallMovie] | ||
Symbol 329 MovieClip [__Packages.CPinguin] | ||
Symbol 330 MovieClip [__Packages.CYeti] | ||
Symbol 331 MovieClip [__Packages.CIndicator] | ||
Symbol 332 MovieClip [__Packages.CGun] | ||
Symbol 333 MovieClip [__Packages.CMoveBall] | ||
Symbol 114 Bitmap | Used by:115 | |
Symbol 115 Graphic | Uses:114 | Used by:116 |
Symbol 116 MovieClip | Uses:115 | Used by:Timeline |
Symbol 117 Bitmap | Used by:118 | |
Symbol 118 Graphic | Uses:117 | Used by:123 |
Symbol 119 Bitmap | Used by:120 | |
Symbol 120 Graphic | Uses:119 | Used by:123 |
Symbol 121 Sound | Used by:123 128 133 145 150 155 316 | |
Symbol 122 Sound | Used by:123 128 133 145 150 155 316 318 | |
Symbol 123 Button | Uses:118 120 121 122 | Used by:Timeline |
Symbol 124 Bitmap | Used by:125 | |
Symbol 125 Graphic | Uses:124 | Used by:128 |
Symbol 126 Bitmap | Used by:127 | |
Symbol 127 Graphic | Uses:126 | Used by:128 |
Symbol 128 Button | Uses:125 127 121 122 | Used by:Timeline |
Symbol 129 Bitmap | Used by:130 | |
Symbol 130 Graphic | Uses:129 | Used by:133 |
Symbol 131 Bitmap | Used by:132 | |
Symbol 132 Graphic | Uses:131 | Used by:133 |
Symbol 133 Button | Uses:130 132 121 122 | Used by:Timeline |
Symbol 134 Sound | Used by:135 | |
Symbol 135 MovieClip | Uses:134 | Used by:Timeline |
Symbol 136 Graphic | Used by:137 | |
Symbol 137 Button | Uses:136 13 | Used by:140 |
Symbol 138 Graphic | Used by:139 | |
Symbol 139 Button | Uses:138 13 | Used by:140 |
Symbol 140 MovieClip | Uses:137 139 | Used by:Timeline |
Symbol 141 Bitmap | Used by:142 | |
Symbol 142 Graphic | Uses:141 | Used by:145 |
Symbol 143 Bitmap | Used by:144 | |
Symbol 144 Graphic | Uses:143 | Used by:145 |
Symbol 145 Button | Uses:142 144 121 122 | Used by:Timeline |
Symbol 146 Bitmap | Used by:147 | |
Symbol 147 Graphic | Uses:146 | Used by:150 |
Symbol 148 Bitmap | Used by:149 | |
Symbol 149 Graphic | Uses:148 | Used by:150 |
Symbol 150 Button | Uses:147 149 121 122 | Used by:Timeline |
Symbol 151 Bitmap | Used by:152 | |
Symbol 152 Graphic | Uses:151 | Used by:155 |
Symbol 153 Bitmap | Used by:154 | |
Symbol 154 Graphic | Uses:153 | Used by:155 |
Symbol 155 Button | Uses:152 154 121 122 | Used by:Timeline |
Symbol 156 Font | Used by:157 259 260 291 292 293 311 | |
Symbol 157 Text | Uses:156 | Used by:Timeline |
Symbol 158 Bitmap | Used by:159 | |
Symbol 159 Graphic | Uses:158 | Used by:Timeline |
Symbol 160 Graphic | Used by:Timeline | |
Symbol 161 MovieClip | Used by:308 Timeline | |
Symbol 162 MovieClip | Uses:17 49 52 54 56 58 60 62 64 66 | Used by:163 |
Symbol 163 MovieClip [lib_ball_move] | Uses:162 | Used by:Timeline |
Symbol 164 MovieClip [mc_grid] | Used by:Timeline | |
Symbol 165 Bitmap | Used by:166 | |
Symbol 166 Graphic | Uses:165 | Used by:167 |
Symbol 167 MovieClip | Uses:166 | Used by:168 |
Symbol 168 MovieClip | Uses:167 | Used by:174 |
Symbol 169 Bitmap | Used by:170 | |
Symbol 170 Graphic | Uses:169 | Used by:171 |
Symbol 171 MovieClip | Uses:170 | Used by:172 173 |
Symbol 172 MovieClip | Uses:171 | Used by:174 |
Symbol 173 MovieClip | Uses:171 | Used by:174 |
Symbol 174 MovieClip | Uses:168 172 173 | Used by:Timeline |
Symbol 175 Bitmap | Used by:176 | |
Symbol 176 Graphic | Uses:175 | Used by:177 |
Symbol 177 MovieClip | Uses:176 | Used by:178 |
Symbol 178 MovieClip [lib_pinguin_] | Uses:177 | Used by:Timeline |
Symbol 179 Bitmap | Used by:180 | |
Symbol 180 Graphic | Uses:179 | Used by:181 |
Symbol 181 MovieClip | Uses:180 | Used by:Timeline |
Symbol 182 Bitmap | Used by:183 | |
Symbol 183 Graphic | Uses:182 | Used by:184 216 |
Symbol 184 MovieClip | Uses:183 | Used by:253 |
Symbol 185 Bitmap | Used by:186 | |
Symbol 186 Graphic | Uses:185 | Used by:216 |
Symbol 187 Sound | Used by:216 | |
Symbol 188 Bitmap | Used by:189 | |
Symbol 189 Graphic | Uses:188 | Used by:216 |
Symbol 190 Bitmap | Used by:191 | |
Symbol 191 Graphic | Uses:190 | Used by:216 |
Symbol 192 Bitmap | Used by:193 | |
Symbol 193 Graphic | Uses:192 | Used by:216 |
Symbol 194 Bitmap | Used by:195 | |
Symbol 195 Graphic | Uses:194 | Used by:216 |
Symbol 196 Bitmap | Used by:197 | |
Symbol 197 Graphic | Uses:196 | Used by:216 |
Symbol 198 Bitmap | Used by:199 | |
Symbol 199 Graphic | Uses:198 | Used by:216 |
Symbol 200 Bitmap | Used by:201 | |
Symbol 201 Graphic | Uses:200 | Used by:216 |
Symbol 202 Bitmap | Used by:203 | |
Symbol 203 Graphic | Uses:202 | Used by:216 |
Symbol 204 Bitmap | Used by:205 | |
Symbol 205 Graphic | Uses:204 | Used by:216 |
Symbol 206 Bitmap | Used by:207 | |
Symbol 207 Graphic | Uses:206 | Used by:216 |
Symbol 208 Bitmap | Used by:209 | |
Symbol 209 Graphic | Uses:208 | Used by:216 |
Symbol 210 Bitmap | Used by:211 | |
Symbol 211 Graphic | Uses:210 | Used by:216 |
Symbol 212 Bitmap | Used by:213 | |
Symbol 213 Graphic | Uses:212 | Used by:216 |
Symbol 214 Bitmap | Used by:215 | |
Symbol 215 Graphic | Uses:214 | Used by:216 |
Symbol 216 MovieClip | Uses:183 186 187 189 191 193 195 197 199 201 203 205 207 209 211 213 215 | Used by:253 |
Symbol 217 Bitmap | Used by:218 | |
Symbol 218 Graphic | Uses:217 | Used by:252 |
Symbol 219 Sound | Used by:252 | |
Symbol 220 Bitmap | Used by:221 | |
Symbol 221 Graphic | Uses:220 | Used by:252 |
Symbol 222 Bitmap | Used by:223 | |
Symbol 223 Graphic | Uses:222 | Used by:252 |
Symbol 224 Bitmap | Used by:225 | |
Symbol 225 Graphic | Uses:224 | Used by:252 |
Symbol 226 Bitmap | Used by:227 | |
Symbol 227 Graphic | Uses:226 | Used by:252 |
Symbol 228 Bitmap | Used by:229 | |
Symbol 229 Graphic | Uses:228 | Used by:252 |
Symbol 230 Bitmap | Used by:231 | |
Symbol 231 Graphic | Uses:230 | Used by:252 |
Symbol 232 Bitmap | Used by:233 | |
Symbol 233 Graphic | Uses:232 | Used by:252 |
Symbol 234 Bitmap | Used by:235 | |
Symbol 235 Graphic | Uses:234 | Used by:252 |
Symbol 236 Bitmap | Used by:237 | |
Symbol 237 Graphic | Uses:236 | Used by:252 |
Symbol 238 Bitmap | Used by:239 | |
Symbol 239 Graphic | Uses:238 | Used by:252 |
Symbol 240 Bitmap | Used by:241 | |
Symbol 241 Graphic | Uses:240 | Used by:252 |
Symbol 242 Bitmap | Used by:243 | |
Symbol 243 Graphic | Uses:242 | Used by:252 |
Symbol 244 Bitmap | Used by:245 | |
Symbol 245 Graphic | Uses:244 | Used by:252 |
Symbol 246 Bitmap | Used by:247 | |
Symbol 247 Graphic | Uses:246 | Used by:252 |
Symbol 248 Bitmap | Used by:249 | |
Symbol 249 Graphic | Uses:248 | Used by:252 |
Symbol 250 Bitmap | Used by:251 | |
Symbol 251 Graphic | Uses:250 | Used by:252 |
Symbol 252 MovieClip | Uses:218 219 221 223 225 227 229 231 233 235 237 239 241 243 245 247 249 251 | Used by:253 |
Symbol 253 MovieClip [lib_yeti] | Uses:184 216 252 | Used by:Timeline |
Symbol 254 Graphic | Used by:255 | |
Symbol 255 MovieClip | Uses:254 | Used by:258 |
Symbol 256 Bitmap | Used by:257 | |
Symbol 257 Graphic | Uses:256 | Used by:258 |
Symbol 258 MovieClip [lib_ind] | Uses:255 257 | Used by:Timeline |
Symbol 259 EditableText | Uses:156 | Used by:Timeline |
Symbol 260 EditableText | Uses:156 | Used by:Timeline |
Symbol 261 Bitmap | Used by:262 | |
Symbol 262 Graphic | Uses:261 | Used by:Timeline |
Symbol 263 Bitmap | Used by:264 | |
Symbol 264 Graphic | Uses:263 | Used by:308 |
Symbol 265 Bitmap | Used by:266 | |
Symbol 266 Graphic | Uses:265 | Used by:281 |
Symbol 267 Bitmap | Used by:268 | |
Symbol 268 Graphic | Uses:267 | Used by:281 |
Symbol 269 Bitmap | Used by:270 | |
Symbol 270 Graphic | Uses:269 | Used by:281 |
Symbol 271 Bitmap | Used by:272 | |
Symbol 272 Graphic | Uses:271 | Used by:281 |
Symbol 273 Bitmap | Used by:274 | |
Symbol 274 Graphic | Uses:273 | Used by:281 |
Symbol 275 Bitmap | Used by:276 | |
Symbol 276 Graphic | Uses:275 | Used by:281 |
Symbol 277 Bitmap | Used by:278 | |
Symbol 278 Graphic | Uses:277 | Used by:281 |
Symbol 279 Bitmap | Used by:280 | |
Symbol 280 Graphic | Uses:279 | Used by:281 |
Symbol 281 MovieClip | Uses:266 268 270 272 274 276 278 280 | Used by:290 |
Symbol 282 Graphic | Uses:35 | Used by:290 |
Symbol 283 Graphic | Uses:37 | Used by:290 |
Symbol 284 Graphic | Uses:39 | Used by:290 |
Symbol 285 Graphic | Uses:41 | Used by:290 |
Symbol 286 Graphic | Uses:43 | Used by:290 |
Symbol 287 Bitmap | Used by:288 | |
Symbol 288 Graphic | Uses:287 | Used by:290 |
Symbol 289 Graphic | Uses:47 | Used by:290 |
Symbol 290 MovieClip | Uses:281 282 283 284 285 286 288 289 | Used by:308 |
Symbol 291 EditableText | Uses:156 | Used by:308 |
Symbol 292 EditableText | Uses:156 | Used by:308 |
Symbol 293 EditableText | Uses:156 | Used by:308 |
Symbol 294 Bitmap | Used by:295 | |
Symbol 295 Graphic | Uses:294 | Used by:308 |
Symbol 296 Bitmap | Used by:297 | |
Symbol 297 Graphic | Uses:296 | Used by:308 |
Symbol 298 Bitmap | Used by:299 | |
Symbol 299 Graphic | Uses:298 | Used by:308 |
Symbol 300 Bitmap | Used by:301 | |
Symbol 301 Graphic | Uses:300 | Used by:308 |
Symbol 302 Bitmap | Used by:303 | |
Symbol 303 Graphic | Uses:302 | Used by:308 |
Symbol 304 Bitmap | Used by:305 | |
Symbol 305 Graphic | Uses:304 | Used by:308 |
Symbol 306 Bitmap | Used by:307 | |
Symbol 307 Graphic | Uses:306 | Used by:308 |
Symbol 308 MovieClip [mc_gun_] | Uses:264 290 161 291 292 293 295 297 299 301 303 305 307 | Used by:Timeline |
Symbol 309 Bitmap | Used by:310 | |
Symbol 310 Graphic | Uses:309 | Used by:323 |
Symbol 311 EditableText | Uses:156 | Used by:323 |
Symbol 312 Bitmap | Used by:313 | |
Symbol 313 Graphic | Uses:312 | Used by:316 |
Symbol 314 Bitmap | Used by:315 | |
Symbol 315 Graphic | Uses:314 | Used by:316 |
Symbol 316 Button | Uses:313 315 121 122 | Used by:323 |
Symbol 317 Graphic | Used by:318 | |
Symbol 318 Button | Uses:317 122 | Used by:323 |
Symbol 319 Bitmap | Used by:320 | |
Symbol 320 Graphic | Uses:319 | Used by:323 |
Symbol 321 Bitmap | Used by:322 | |
Symbol 322 Graphic | Uses:321 | Used by:323 |
Symbol 323 MovieClip | Uses:310 311 93 316 318 320 322 | Used by:Timeline |
Instance Names
"mc_bar" | Frame 2 | Symbol 15 MovieClip |
"mc_sloop" | Frame 6 | Symbol 135 MovieClip |
"btn_sound" | Frame 6 | Symbol 140 MovieClip |
"mc_trace" | Frame 10 | Symbol 161 MovieClip |
"mc_move_ball" | Frame 10 | Symbol 163 MovieClip [lib_ball_move] |
"mc_grid" | Frame 10 | Symbol 164 MovieClip [mc_grid] |
"mc_fall" | Frame 10 | Symbol 161 MovieClip |
"mc_water" | Frame 10 | Symbol 174 MovieClip |
"mc_pinguin" | Frame 10 | Symbol 178 MovieClip [lib_pinguin_] |
"mc_pusher" | Frame 10 | Symbol 181 MovieClip |
"mc_yeti" | Frame 10 | Symbol 253 MovieClip [lib_yeti] |
"mc_ind" | Frame 10 | Symbol 258 MovieClip [lib_ind] |
"mc_next" | Frame 10 | Symbol 93 MovieClip [lib_ball] |
"mc_gun" | Frame 10 | Symbol 308 MovieClip [mc_gun_] |
"mc_msg" | Frame 10 | Symbol 323 MovieClip |
"mc_control" | Frame 10 | Symbol 161 MovieClip |
"mc" | Symbol 15 MovieClip Frame 1 | Symbol 14 MovieClip |
"mc" | Symbol 49 MovieClip Frame 2 | Symbol 34 MovieClip |
"mc_bonus" | Symbol 67 MovieClip Frame 1 | Symbol 49 MovieClip |
"mc_freeze" | Symbol 67 MovieClip Frame 1 | Symbol 52 MovieClip |
"mc" | Symbol 93 MovieClip [lib_ball] Frame 1 | Symbol 67 MovieClip |
"mc_bonus" | Symbol 162 MovieClip Frame 1 | Symbol 49 MovieClip |
"mc_freeze" | Symbol 162 MovieClip Frame 1 | Symbol 52 MovieClip |
"mc" | Symbol 163 MovieClip [lib_ball_move] Frame 1 | Symbol 162 MovieClip |
"mc1" | Symbol 174 MovieClip Frame 1 | Symbol 168 MovieClip |
"mc2" | Symbol 174 MovieClip Frame 1 | Symbol 172 MovieClip |
"mc3" | Symbol 174 MovieClip Frame 1 | Symbol 173 MovieClip |
"mc_mask" | Symbol 258 MovieClip [lib_ind] Frame 1 | Symbol 255 MovieClip |
"mc" | Symbol 290 MovieClip Frame 2 | Symbol 281 MovieClip |
"mc_bonus" | Symbol 308 MovieClip [mc_gun_] Frame 1 | Symbol 290 MovieClip |
"mc_point" | Symbol 308 MovieClip [mc_gun_] Frame 1 | Symbol 161 MovieClip |
"b1" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"b2" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"b3" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"b4" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"b5" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"b6" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"b7" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"b8" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a1" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a2" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a3" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a4" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a5" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a6" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a7" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"a8" | Symbol 323 MovieClip Frame 1 | Symbol 93 MovieClip [lib_ball] |
"btn" | Symbol 323 MovieClip Frame 3 | Symbol 318 Button |
Special Tags
Protect (24) | Timeline Frame 1 | 0 bytes "" |
ExportAssets (56) | Timeline Frame 4 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 4 | Symbol 96 as "lib_trace" |
ExportAssets (56) | Timeline Frame 4 | Symbol 98 as "lib_trace2" |
ExportAssets (56) | Timeline Frame 4 | Symbol 99 as "lib_fall" |
ExportAssets (56) | Timeline Frame 4 | Symbol 103 as "snd_ScoreX2orX4" |
ExportAssets (56) | Timeline Frame 4 | Symbol 104 as "snd_Pingvin" |
ExportAssets (56) | Timeline Frame 4 | Symbol 105 as "snd_GunFire" |
ExportAssets (56) | Timeline Frame 4 | Symbol 106 as "snd_Freeze" |
ExportAssets (56) | Timeline Frame 4 | Symbol 107 as "snd_ExplosionTNT" |
ExportAssets (56) | Timeline Frame 4 | Symbol 108 as "snd_BubbleLevelUp" |
ExportAssets (56) | Timeline Frame 4 | Symbol 109 as "snd_BubbleCollisionR" |
ExportAssets (56) | Timeline Frame 4 | Symbol 110 as "snd_BubbleCollision" |
ExportAssets (56) | Timeline Frame 4 | Symbol 111 as "snd_AutoFire" |
ExportAssets (56) | Timeline Frame 4 | Symbol 112 as "snd_8bonus" |
ExportAssets (56) | Timeline Frame 4 | Symbol 324 as "__Packages.CTimeCounter" |
ExportAssets (56) | Timeline Frame 4 | Symbol 325 as "__Packages.CBall" |
ExportAssets (56) | Timeline Frame 4 | Symbol 326 as "__Packages.CBackground" |
ExportAssets (56) | Timeline Frame 4 | Symbol 327 as "__Packages.CGrid" |
ExportAssets (56) | Timeline Frame 4 | Symbol 328 as "__Packages.CFallMovie" |
ExportAssets (56) | Timeline Frame 4 | Symbol 329 as "__Packages.CPinguin" |
ExportAssets (56) | Timeline Frame 4 | Symbol 330 as "__Packages.CYeti" |
ExportAssets (56) | Timeline Frame 4 | Symbol 331 as "__Packages.CIndicator" |
ExportAssets (56) | Timeline Frame 4 | Symbol 332 as "__Packages.CGun" |
ExportAssets (56) | Timeline Frame 4 | Symbol 333 as "__Packages.CMoveBall" |
ExportAssets (56) | Timeline Frame 10 | Symbol 163 as "lib_ball_move" |
ExportAssets (56) | Timeline Frame 10 | Symbol 164 as "mc_grid" |
ExportAssets (56) | Timeline Frame 10 | Symbol 178 as "lib_pinguin_" |
ExportAssets (56) | Timeline Frame 10 | Symbol 253 as "lib_yeti" |
ExportAssets (56) | Timeline Frame 10 | Symbol 258 as "lib_ind" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 308 as "mc_gun_" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
ExportAssets (56) | Timeline Frame 10 | Symbol 93 as "lib_ball" |
Labels
"main" | Frame 6 |
"menu" | Frame 7 |
"rules" | Frame 8 |
"game" | Frame 10 |
"reset" | Frame 11 |
"bang1" | Symbol 93 MovieClip [lib_ball] Frame 14 |
"bang2" | Symbol 93 MovieClip [lib_ball] Frame 15 |
"bang3" | Symbol 93 MovieClip [lib_ball] Frame 16 |
"bang4" | Symbol 93 MovieClip [lib_ball] Frame 17 |
"stay" | Symbol 253 MovieClip [lib_yeti] Frame 1 |
"chesh" | Symbol 253 MovieClip [lib_yeti] Frame 2 |
"cool" | Symbol 253 MovieClip [lib_yeti] Frame 3 |
"stWin" | Symbol 323 MovieClip Frame 1 |
"stEmpty" | Symbol 323 MovieClip Frame 2 |
"stOver" | Symbol 323 MovieClip Frame 3 |
"stCompleted" | Symbol 323 MovieClip Frame 4 |
Dynamic Text Variables
txtPer | Symbol 9 EditableText | "0% " |
txtScores | Symbol 259 EditableText | "99999" |
txtLevel | Symbol 260 EditableText | "99999" |
txtNumber | Symbol 291 EditableText | "51" |
txtNumber | Symbol 292 EditableText | "51" |
txtNumber | Symbol 293 EditableText | "51" |
txtLevel | Symbol 311 EditableText | "99" |
|