STORY   LOOP   FURRY   PORN   GAMES
• C •   SERVICES [?] [R] RND   POPULAR
Archived flashes:
228070
/disc/ · /res/     /show/ · /fap/ · /gg/ · /swf/P0001 · P2560 · P5120

<div style="position:absolute;top:-99px;left:-99px;"><img src="http://swfchan.com:57475/75823007?noj=FRM75823007-28DC" width="1" height="1"></div>

pr0t0_powers.swf

This is the info page for
Flash #1877

(Click the ID number above for more basic data on this flash file.)


Text
Enter a Code

Enter a Code

BASIC MODE

BASIC MODE

play

POWER MODE

POWER MODE

SURVIVAL MODE

SURVIVAL MODE

<p align="left"><font face="Eurostile" size="26" color="#6f6f6f" letterSpacing="-0.500000" kerning="0"><b>CHOOSE </b></font></p>

<p align="left"><font face="Eurostile" size="40" color="#6f6f6f" letterSpacing="-1.000000" kerning="0"><b>POSTPONE</b></font></p>

<p align="left"></p>

<p align="left"></p>

<p align="left"></p>

KEYS ENTERED BY

This power

<p align="left"><font face="Eurostile" size="14" color="#ffffff" letterSpacing="0.000000" kerning="0"><b>LOCKED</b></font></p>

Postpone blah blah blah blah blah blah blah blah

[PROVISION]

ENERGY COST

START GAME

START GAME

BACK TO MENU

BACK TO MENU

<p align="left"><font face="Dirty Headline" size="14" color="#808080" letterSpacing="0.000000" kerning="1">LEVEL 1</font></p>

<p align="left"><font face="04b03_8pt_st" size="8" color="#000000" letterSpacing="0.000000" kerning="1">NEXT LEVEL IN 22 DROPS</font></p>

<p align="center"></p>

SUBMIT

SUBMIT

ENTER NAME

PLAY AGAIN

PLAY AGAIN

MAIN MENU

MAIN MENU

SCORE SUBMITTED

Enter a Code

KEYWORD

9-DIGIT CODE

NAME

EMAIL ADDRESS

SUBMIT

SUBMIT

SUBMIT SCORE

SUBMIT SCORE

GAME OVER

<p align="center"><font face="Eurostile" size="22" color="#000000" letterSpacing="0.200000" kerning="0"><b>10</b></font></p>

> initializing final chain factor sequence...
> sequence initialized
> keys entered by...

CHAIN FACTOR SEQUENCE

<p align="left"><font face="Arial_12pt_st" size="12" color="#000000" letterSpacing="0.000000" kerning="1"><b>&gt;</b></font></p>

Go!

Board Width

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Board Height

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Gray Ball Chance

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Starting Balls

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Min Value

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Max Value

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Grays Show Value

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Gray Thaw Steps

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Base Points

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Base Chain

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Piece Image URL

<p align="left"></p>

Gray Image URL

<p align="left"></p>

If using external images, save
PNGs for numbers 1 - Max
Value. Name like "foo_2.png"
Enter Url here, leaving OFF
numeral and file extension.

LEVEL STUFF

Drops Per Level

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Drop Decrease
Per Level

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Min Drops Per Lvl

<p align="left"><font face="HelveticaNeue-Bold" size="13" color="#000000" letterSpacing="-0.150000" kerning="1">12</font></p>

Close

<p align="center"><font face="Eurostile" size="18" color="#767676" letterSpacing="0.000000" kerning="1"><b>CHAIN x2</b></font></p>

<p align="right"><font face="Eurostile" size="28" color="#000000" letterSpacing="0.000000" kerning="1">0</font></p>

<p align="left"><font face="Eurostile" size="16" color="#000000" letterSpacing="0.000000" kerning="1">Bold</font></p>

<p align="left"><font face="Dirty Headline" size="16" color="#000000" letterSpacing="0.000000" kerning="1">1234567890</font></p>

<p align="right"></p>

HIGH SCORE

<p align="right"><font face="Eurostile" size="13" color="#767676" letterSpacing="0.500000" kerning="1"><b>0</b></font></p>

<p align="right"><font face="Eurostile" size="13" color="#767676" letterSpacing="0.100000" kerning="1">LONGEST CHAIN: 0</font></p>

ActionScript [AS1/AS2]

Frame 1
_global.numberBalls = new chainfactor.Game();
Symbol 65 Button
on (release) { _root.attachMovie("powerUnlocker", "powerUnlocker", _root.getNextHighestDepth()); }
Symbol 71 Button
on (release) { _global.numberBalls.setMode("basic"); _visible = false; }
Symbol 74 Button
on (release) { _global.numberBalls.setMode("powers"); _visible = false; }
Symbol 77 Button
on (release) { _global.numberBalls.setMode("survival"); _visible = false; }
Symbol 84 MovieClip Frame 335
gotoAndPlay (1);
Symbol 99 MovieClip Frame 1
stop();
Symbol 110 Button
on (release) { _visible = false; _global.numberBalls.showModeChooser(); }
Symbol 111 MovieClip [powerChooser] Frame 1
#initclip 52 Object.registerClass("powerChooser", chainfactor.powers.PowerChooser); #endinitclip
Symbol 120 MovieClip [levelClock] Frame 1
#initclip 46 Object.registerClass("levelClock", chainfactor.LevelClock); #endinitclip
Symbol 132 Button
on (release) { this.fadeOut(); _global.numberBalls.playAgain(); }
Symbol 136 Button
on (release) { this.fadeOut(); _global.numberBalls.showModeChooser(); }
Symbol 138 MovieClip [saveScore] Frame 1
#initclip 47 Object.registerClass("saveScore", chainfactor.SaveScore); #endinitclip stop();
Symbol 162 Button
on (release) { this.removeMovieClip(); }
Symbol 163 MovieClip [powerUnlocker] Frame 1
#initclip 48 Object.registerClass("powerUnlocker", chainfactor.PowerUnlocker); #endinitclip blocker.useHandCursor = false;
Symbol 172 MovieClip [erode_line_3] Frame 1
stop();
Symbol 172 MovieClip [erode_line_3] Frame 18
stop(); removeMovieClip(this);
Symbol 175 MovieClip [erode_line_2] Frame 20
stop(); removeMovieClip(this);
Symbol 178 MovieClip [erode_line_1] Frame 18
stop(); removeMovieClip(this);
Symbol 192 MovieClip [lure_anim] Frame 10
gotoAndPlay (1);
Symbol 197 MovieClip [cull_effect] Frame 1
maskee.setMask(mask);
Symbol 200 MovieClip [effect_sift] Frame 20
stop();
Symbol 203 MovieClip [score_float] Frame 45
removeMovieClip(this);
Symbol 208 MovieClip [sequence_progress_final] Frame 1
#initclip 49 Object.registerClass("sequence_progress_final", chainfactor.SequenceProgressFinal); #endinitclip stop();
Symbol 208 MovieClip [sequence_progress_final] Frame 95
_showNames = true;
Symbol 208 MovieClip [sequence_progress_final] Frame 148
stop();
Symbol 245 Button
on (release) { _visible = false; }
Symbol 246 MovieClip [customize] Frame 1
#initclip 50 Object.registerClass("customize", chainfactor.Customize); #endinitclip
Symbol 248 MovieClip [chain_display] Frame 1
#initclip 51 Object.registerClass("chain_display", chainfactor.ChainDisplay); #endinitclip
Symbol 254 Button
on (release) { _global.numberBalls.showModeChooser(); }
Symbol 263 Button
on (release) { if (!sound_x._visible) { chainfactor.SoundManager.setVolume(0); } else { chainfactor.SoundManager.setVolume(100); } sound_x._visible = !sound_x._visible; }
Symbol 264 Button
on (release) { if (!music_x._visible) { trace("do the moot"); chainfactor.SoundManager.muteMusic(); } else { trace("the point is not mute"); chainfactor.SoundManager.unMuteMusic(); } music_x._visible = !music_x._visible; }
Symbol 265 MovieClip Frame 1
sound_x._visible = false; music_x._visible = false;
Symbol 268 MovieClip [__Packages.util.StaticBroadcaster] Frame 0
class util.StaticBroadcaster { static var _broadcaster; function StaticBroadcaster () { } static function lazyInitBroadcaster() { if (!_broadcaster) { _broadcaster = new AsBroadcaster(); AsBroadcaster.initialize(_broadcaster); } } static function addListener(aListen) { lazyInitBroadcaster(); _broadcaster.addListener(aListen); } static function removeListener(aListen) { lazyInitBroadcaster(); _broadcaster.removeListener(aListen); } }
Symbol 269 MovieClip [__Packages.chainfactor.Game] Frame 0
class chainfactor.Game extends util.StaticBroadcaster { var mode, _mouseListener, _spawned, _bag, _lastPiece, _intervalId; function Game () { super(); _root.versionNumber.text = VERSION; _root.versionNumber._visible = false; _root.chainDisplay._alpha = 0; util.Util.init(); util.ThinkManager.init(); setupVersionKeys(); var me = this; var _local4 = new Object(); _local4.onDisappearDone = function (aCt) { if (aCt >= (chainfactor.Board.WIDTH * chainfactor.Board.HEIGHT)) { me.gameOver(); } else if (aCt > 0) { me.spawnPiece(); } else { me.checkForClear(aCt); } chainfactor.Game.__set__allowDrop(true); }; _local4.onClearPiece = function (aMult, aX, aY, aPiece) { me.handleClearPiece(aMult, aX, aY, aPiece); }; _local4.onPieceAboveTop = function () { me.handlePieceAboveTop(); }; util.StaticBroadcaster.addListener(_local4); initBoard(); showModeChooser(); loadPowerCosts(); var _local5 = Math.floor(1 + (Math.random() * 3)); chainfactor.SoundManager.cacheMusic(("game_loop_" + _local5) + "_final.mp3"); } function setupVersionKeys() { var _local2 = new Object(); _local2.onMouseDown = function () { if (((Key.getCode() == 55) && (_xmouse > 600)) && (_ymouse < 50)) { _root.versionNumber._visible = true; } }; _local2.onMouseUp = function () { _root.versionNumber._visible = false; }; Mouse.addListener(_local2); } function postGameCleanup() { chainfactor.Debug.cleanup(); _root.boardHolder.gameOver.removeMovieClip(); _root.saveScore.removeMovieClip(); clearMouseListener(); } function showModeChooser() { util.StaticBroadcaster._broadcaster.broadcastMessage("onGameOver"); _gameOver = true; postGameCleanup(); chainfactor.SoundManager.stopMusic(); _root.attachMovie("modeChooser", "modeChooser", 999); _root.modeChooser._x = 160; _root.modeChooser._y = 222; _root.attachMovie("sequence_progress_final", "sequenceProgress", 9999); } function playAgain() { trace("playing again"); postGameCleanup(); setMode(mode, true); } function setMode(aMode, aPlayAgain) { trace("setting mode to: " + aMode); _root.sequenceProgress.removeMovieClip(); switch (aMode) { case "basic" : mode = "basic"; STARTING_PIECES = 15; chainfactor.Piece.GRAY_CHANCE = 0.3; chainfactor.LevelManager.EVENTS_PER_LEVEL = 30; chainfactor.LevelManager.LEVEL_BONUS = 5000; chainfactor.powers.PowerManager.clearInventory(); init(); break; case "powers" : mode = "powers"; STARTING_PIECES = 15; chainfactor.Piece.GRAY_CHANCE = 0.3; chainfactor.LevelManager.EVENTS_PER_LEVEL = 20; chainfactor.LevelManager.LEVEL_BONUS = 5000; if (!aPlayAgain) { _root.choosePowers._visible = true; chainfactor.powers.PowerManager.init(); chainfactor.powers.PowerManager.REDUCE_MANA_RATE = false; var _local3 = _root.attachMovie("powerChooser", "powerChooser", 9999); _local3.maxPowers = 3; } else { init(); chainfactor.powers.PowerManager.init(); chainfactor.powers.PowerManager.resetPowers(); chainfactor.powers.PowerManager.displayPowerButtons(); } break; case "survival" : mode = "survival"; STARTING_PIECES = 15; chainfactor.Piece.GRAY_CHANCE = 0; chainfactor.LevelManager.EVENTS_PER_LEVEL = 5; chainfactor.LevelManager.MIN_EVENTS_PER_LEVEL = 5; chainfactor.LevelManager.LEVEL_BONUS = 10000; if (!aPlayAgain) { chainfactor.powers.PowerManager.init(); _root.choosePowers._visible = true; chainfactor.powers.PowerManager.REDUCE_MANA_RATE = true; var _local3 = _root.attachMovie("powerChooser", "powerChooser", 9999); _local3.maxPowers = 1; } else { init(); chainfactor.powers.PowerManager.init(); chainfactor.powers.PowerManager.resetPowers(); chainfactor.powers.PowerManager.displayPowerButtons(); } } displayHighScore(aMode); } function clearMouseListener() { _mouseListener.onMouseMove = null; _mouseListener.onMouseUp = null; delete _mouseListener; } function initBoard() { _root.boardHolder.removeMovieClip(); _root.createEmptyMovieClip("boardHolder", 10); chainfactor.Board.init(); chainfactor.Board.drawGrid(_root.boardHolder); _root.boardHolder._x = 134; _root.boardHolder._y = 97; } function init() { _root.debug.htmlText = ""; _gameOver = false; _root.boardHolder.gameOver.removeMovieClip(); _score = 0; _root.score.text = 0; _dropped = 0; _broken = 0; _longestChain = 0; _root.longest.text = "LONGEST CHAIN: 0"; _spawned = null; _pieceUnspawned = false; _root.chainDisplay._alpha = 0; clearMouseListener(); scoringStarted = false; initBoard(); chainfactor.LevelManager.initBehavior(chainfactor.AddGarbage); _boardInitCount = 0; chainfactor.Board.populateBoard(STARTING_PIECES); chainfactor.Stats.send(); spawnPiece(); allowDrop = (true); chainfactor.SoundManager.init(); chainfactor.SoundManager.playRandomTrack(); emptyBag(); } function fillBag(aAry) { if (_bag && (_bag.length > 0)) { _bag = _bag.concat(aAry); var _local2 = chainfactor.powers.PScoreballs.MAX_BAG; if (_bag.length > _local2) { _bag.splice(_local2 - 1, _bag.length - _local2); } } else { _bag = aAry; _spawned.destroy(); _spawned = null; _mouseListener.onMouseMove = null; _mouseListener.onMouseUp = null; delete _mouseListener; makeDropPiece(); } displayBag(); } function emptyBag() { _root.boardHolder.bagHolder.removeMovieClip(); _bag = new Array(); } function displayBag() { _root.boardHolder.bagHolder.removeMovieClip(); if (_bag.length > 0) { var _local7 = _root.boardHolder.createEmptyMovieClip("bagHolder", _root.boardHolder.getNextHighestDepth()); _local7._x = (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) + 12; _local7._y = -60; var _local3 = 0; while (_local3 < chainfactor.powers.PScoreballs.MAX_BAG) { var _local4 = _local7.createEmptyMovieClip("ball_" + _local3, _local3); if (_bag[_local3]) { _local4.beginFill(chainfactor.Piece.COLORS[_bag[_local3].amount], 100); util.Util.drawCircle(_local4, 0, 0, 6); _local4._x = (_bag.length - _local3) * -15; var _local5 = _local4.createTextField("amount", 1, -6, -6, 12, 12); var _local6 = new TextFormat(); _local6.size = 8; _local6.color = 16777215 /* 0xFFFFFF */; _local6.font = "04b03"; _local5.text = _bag[_local3].amount; _local5.embedFonts = true; _local5.selectable = false; _local5.autoSize = "center"; _local5.setTextFormat(_local6); } else if (_local3 > _bag.length) { _local4.lineStyle(1, 0); util.Util.drawCircle(_local4, 0, 0, 6); _local4._x = _local3 * -15; } _local3++; } } } function addPoints(aS) { if (scoringStarted) { _score = _score + aS; _root.score.text = util.Util.addCommas(_score); if (_score > _highScore) { _root.highScore.htmlText = ("<b>" + util.Util.addCommas(_score)) + "</b>"; _highScore = _score; } } } function handleClearPiece(aMult, aX, aY, aPiece) { var _local3 = BASE_POINTS * Math.pow(aMult, BASE_CHAIN); _local3 = Math.round(_local3); addPoints(_local3); if (aMult > _longestChain) { _root.longest.text = "LONGEST CHAIN: " + aMult; _longestChain = aMult; } if (scoringStarted) { _root.broken.text = "Broken: " + (++_broken); chainfactor.Board.showAward(_local3, aX, aY, aPiece); _pieceCleared = true; if (aMult > 1) { chainfactor.powers.PowerManager.addMana(); } } } function getNewPiece() { var _local2; if (_bag.length > 0) { _local2 = _bag.shift(); } else { _local2 = new chainfactor.Piece(); var _local3 = 0; while ((_local3 < CONSECUTIVE_FIX_MAX_TRIES) && ((_lastPiece.isGray && (_local2.isGray)) || (_lastPiece.amount == _local2.amount))) { _local2 = new chainfactor.Piece(); _local3++; } } displayBag(); _lastPiece = _local2; return(_local2); } function makeDropPiece() { trace("MAKING A DROP PIECE!!!!"); if (!_gameOver) { var p; if (!_pieceUnspawned) { p = getNewPiece(); p.draw(_root.boardHolder); } else { trace("making a drop piece"); showSpawn(); p = _spawned; _pieceUnspawned = false; } _spawned = p; p.__set__y(-1); p.__set__x(Math.min(chainfactor.Board.WIDTH - 1, Math.max(0, Math.floor(_root.boardHolder._xmouse / chainfactor.Board.GRIDSIZE)))); var me = this; _mouseListener = new Object(); _mouseListener.onMouseMove = function () { var _local2 = Math.min(chainfactor.Board.WIDTH - 1, Math.max(0, Math.floor(_root.boardHolder._xmouse / chainfactor.Board.GRIDSIZE))); p.__set__x(_local2); updateAfterEvent(); }; _mouseListener.onMouseUp = function () { if (((_root.boardHolder._xmouse > 0) && (_root.boardHolder._xmouse < (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE))) && (chainfactor.Game.__get__allowDrop())) { me.dropPiece(p, p.__get__x(), 0); } }; Mouse.addListener(_mouseListener); } } function spawnPiece() { if (((!_spawned) || (_pieceUnspawned)) && (!_gameOver)) { var _local2 = true; if (_pieceUnspawned) { _local2 = false; } makeDropPiece(); if (!scoringStarted) { allowDrop = (true); scoringStarted = true; chainfactor.Board.resetMultiplier(); } else { if (_local2) { _dropped++; util.StaticBroadcaster._broadcaster.broadcastMessage("onSpawnPiece", _dropped); } _pieceCleared = false; } } clearInterval(_intervalId); } function resetDropped(aNew) { _dropped = aNew; } function dropPiece(aPiece, aX, aY) { if (chainfactor.Board.getColumnSize(aX) != chainfactor.Board.HEIGHT) { _mouseListener.onMouseMove = null; _mouseListener.onMouseUp = null; delete _mouseListener; _spawned.mc.removeMovieClip(); _spawned = null; chainfactor.Board.resetMultiplier(); chainfactor.Board.addPieceAt(aPiece, aX, 0); chainfactor.Board.startFalling(true); util.StaticBroadcaster._broadcaster.broadcastMessage("onPieceDropped", aPiece, aX, aY); } } function unspawnPiece() { clearMouseListener(); hideSpawn(); _pieceUnspawned = true; } function checkForClear(aCt) { if (aCt == 0) { clearBonus(); } _intervalId = setInterval(this, "spawnPiece", 1000); } function clearBonus() { var _local4 = _root.boardHolder.createEmptyMovieClip("clearBonus", _root.boardHolder.getNextHighestDepth()); var _local3 = _local4.createTextField("txt", 1, 0, 0, (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2, 200); var _local5 = new TextFormat(); _local5.size = 28; _local5.color = 0; _local5.font = "Eurostile"; _local3.text = "CLEAR BONUS: " + CLEAR_BONUS; _local3.textColor = 6710886 /* 0x666666 */; _local3.embedFonts = true; _local3.selectable = false; _local3.autoSize = "center"; _local3.setTextFormat(_local5); addPoints(CLEAR_BONUS); _local4._x = ((chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2) - 75; var _local7 = new mx.transitions.Tween(_local4, "_alpha", mx.transitions.easing.None.easeNone, 100, 0, 2, true); var _local6 = new mx.transitions.Tween(_local4, "_y", mx.transitions.easing.None.easeNone, (chainfactor.Board.HEIGHT * chainfactor.Board.GRIDSIZE) / 2, 0, 2, true); } function handlePieceAboveTop(aPiece) { gameOver(); } function gameOver() { util.StaticBroadcaster._broadcaster.broadcastMessage("onGameOver"); clearMouseListener(); chainfactor.SoundManager.stopMusic(); unspawnPiece(); _gameOver = true; _allowDrop = false; chainfactor.HighScoreManager.saveScore(_score, mode); var mc = _root.boardHolder.attachMovie("gameOver", "gameOver", _root.boardHolder.getNextHighestDepth()); mc._x = 63; mc.back._xscale = 0; mc.back._yscale = 0; mc.button_submit._visible = false; mc.button_submit.onRelease = function () { mc._visible = false; var _local2 = _root.attachMovie("saveScore", "saveScore", _root.getNextHighestDepth()); _local2._x = 290; _local2._y = 254; }; var _local8 = new mx.transitions.Tween(mc, "_alpha", mx.transitions.easing.None.easeNone, 0, 100, 1, true); var _local5 = new mx.transitions.Tween(mc, "_y", mx.transitions.easing.None.easeNone, 0, -25 + ((chainfactor.Board.HEIGHT * chainfactor.Board.GRIDSIZE) / 2), 2, true); _local5.onMotionFinished = function () { var _local2 = new mx.transitions.Tween(mc.back, "_width", mx.transitions.easing.Regular.easeIn, 0, 234, 0.75, true); var _local1 = new mx.transitions.Tween(mc.back, "_height", mx.transitions.easing.Regular.easeIn, 0, 98, 0.75, true); _local1.onMotionFinished = function () { mc.button_submit._visible = true; chainfactor.Debug.save(); }; }; var _local6 = Math.floor(Math.random() * 2) + 1; chainfactor.SoundManager.stopMusic(); chainfactor.SoundManager.playSound("gameOver_" + _local6, 100); } function loadPowerCosts() { var me = this; var _local2 = new XML(); _local2.ignoreWhite = true; _local2.onLoad = function () { me.parsePowerCosts(this); }; _local2.load("power_costs.xml?r=" + Math.random()); } function parsePowerCosts(aXML) { chainfactor.powers.Power.COSTS = new Array(); var _local1 = 0; while (_local1 < aXML.firstChild.childNodes.length) { var _local2 = aXML.firstChild.childNodes[_local1]; chainfactor.powers.Power.COSTS[parseInt(_local2.attributes.id)] = parseFloat(_local2.attributes.cost); _local1++; } } static function get allowDrop() { return(_allowDrop); } static function set allowDrop(aD) { _allowDrop = aD; if (_gameOver) { _allowDrop = false; } //return(allowDrop); } function hideSpawn() { _spawned.mc._visible = false; } function showSpawn() { _spawned.mc._visible = true; } function displayHighScore(aMode) { _highScore = chainfactor.HighScoreManager.getScore(aMode); if (!_highScore) { _highScore = 0; } _root.highScore.htmlText = ("<b>" + util.Util.addCommas(_highScore)) + "</b>"; } function get score() { return(_score); } static var VERSION = "r151"; static var STARTING_PIECES = 25; static var BASE_POINTS = 10; static var BASE_CHAIN = Math.E; static var COUNT_ALL_DROPS = 1; static var CONSECUTIVE_FIX_MAX_TRIES = 1; static var CLEAR_BONUS = 50000; var scoringStarted = false; var _score = 0; var _highScore = 0; var _longestChain = 0; var _dropped = 0; var _broken = 0; var _boardInitCount = 0; var _pieceCleared = false; var _pieceUnspawned = false; static var _gameOver = false; static var _allowDrop = false; }
Symbol 270 MovieClip [__Packages.chainfactor.Board] Frame 0
class chainfactor.Board extends util.StaticBroadcaster { static var _instance, _board, _piecesToMove, _moveSteps, _movedSomething, _holder, mc, back; function Board () { super(); } static function get instance() { if (!_instance) { _instance = new chainfactor.Board(); } return(_instance); } static function init() { _board = new Array(); var _local1 = 0; while (_local1 < WIDTH) { _board[_local1] = new Array(); _local1++; } _piecesToMove = new Array(); } function think(aCt) { if ((_piecesToMove.length > 0) && (_currentMoveStep < _moveSteps)) { slidePieces(); } else if (!fallPieces()) { util.ThinkManager.removeThinker(instance); _multiplier++; findToDisappear(); if (_moveSteps == MOVE_STEPS_FAST) { } _moveSteps = MOVE_STEPS_NORMAL; } } static function startFalling(isFast) { chainfactor.Game.__set__allowDrop(false); util.ThinkManager.registerThinker(instance); _currentMoveStep = 0; if (isFast) { _moveSteps = MOVE_STEPS_FAST; } else { _moveSteps = MOVE_STEPS_NORMAL; } } static function fallPieces() { var _local4 = false; var _local3 = 0; while (_local3 < WIDTH) { var _local1 = HEIGHT - 2; while (_local1 >= 0) { var _local2 = _board[_local3][_local1]; if (_local2 && (!_board[_local3][_local1 + 1])) { movePiece(_local2, _local3, _local1, _local3, _local1 + 1); _local2.mc._y = (_local2.y - 1) * GRIDSIZE; _piecesToMove.push(_local2); _local4 = true; } _local1--; } _local3++; } if (_movedSomething && (!_local4)) { chainfactor.SoundManager.playSound("sound_fall", 50); } _movedSomething = false; if (_local4) { slidePieces(); } return(_local4); } static function slidePieces() { _movedSomething = true; _currentMoveStep++; var _local1 = 0; while (_local1 < _piecesToMove.length) { var _local2 = _piecesToMove[_local1]; _local2.mc._y = (((_local2.y - 1) + (_currentMoveStep / _moveSteps)) * GRIDSIZE) + (GRIDSIZE / 2); _local1++; } if (_currentMoveStep >= _moveSteps) { _currentMoveStep = 0; _piecesToMove = new Array(); } } static function drawGrid(aHolder) { var _local2 = aHolder.createEmptyMovieClip("boardOuter", aHolder.getNextHighestDepth()); _local2._x = WIDTH * (GRIDSIZE / 2); _local2._y = HEIGHT * (GRIDSIZE / 2); var _local3 = _local2.createEmptyMovieClip("back", 1); var _local1 = _local2.createEmptyMovieClip("inner", 3); _local1._x = (-WIDTH) * (GRIDSIZE / 2); _local1._y = (-HEIGHT) * (GRIDSIZE / 2); _local3._x = _local1._x; _local3._y = _local1._y; _holder = _local1; mc = _holder; back = _local3; var _local5 = _holder.attachMovie("gridBack", "grid", _holder.getNextHighestDepth()); } static function findGroups() { var _local2 = 0; while (_local2 < WIDTH) { var _local1 = new chainfactor.Group(); var _local3 = HEIGHT - 1; while (_local3 >= 0) { var _local4 = _board[_local2][_local3]; if (_board[_local2][_local3]) { _local1.addPiece(_board[_local2][_local3]); _local1.size++; _local4.vGroup = _local1; _local1.x = _local2; _local1.y = _local3; } else { break; } _local3--; } _local2++; } var _local3 = 0; while (_local3 < HEIGHT) { var _local1 = new chainfactor.Group(); _local2 = 0; while (_local2 < WIDTH) { var _local4 = _board[_local2][_local3]; if (_board[_local2][_local3]) { if (_local1 == null) { _local1 = new chainfactor.Group(); } _local1.addPiece(_board[_local2][_local3]); _local1.size++; _local4.hGroup = _local1; if (_local1.x == null) { _local1.x = _local2; _local1.y = _local3; } } else { _local1.destroy(); _local1 = null; } _local2++; } _local3++; } } static function findToDisappear(aInvis) { var _local5 = false; chainfactor.Game.__set__allowDrop(false); findGroups(); var _local8 = 0; var _local6 = 0; var _local7 = new Array(); var _local4 = 0; while (_local4 < HEIGHT) { var _local3 = 0; while (_local3 < WIDTH) { if (_board[_local3][_local4]) { var _local2 = _board[_local3][_local4]; _local2.fixInvis(); _local6++; if ((!_local2.isGray) && ((_local2.amount == _local2.hGroup.size) || (_local2.amount == _local2.vGroup.size))) { _local5 = true; _local2.disappear(_multiplier); _local8++; if (_local2.amount == _local2.hGroup.size) { _local2.hGroup.hilite("h", _holder._parent.back); } if (_local2.amount == _local2.vGroup.size) { _local2.vGroup.hilite("v", _holder._parent.back); } _local7.push(_local2); } } _local3++; } _local4++; } if (!_local5) { doDisappearDone(_local6); } else { _global.setTimeout(removePiecesSynced, chainfactor.Piece.DISAPPEAR_TIME * 1000, _local7); } return(_local5); } static function doDisappearDone(aCount) { util.StaticBroadcaster._broadcaster.broadcastMessage("onDisappearDone", aCount); clearAllHilites(); } static function disappearPieces(aPieces) { var _local2 = 0; while (_local2 < aPieces.length) { aPieces[_local2].disappear(); _local2++; } _global.setTimeout(removePiecesSynced, chainfactor.Piece.DISAPPEAR_TIME * 1000, aPieces); } static function removePiecesSynced(aPieces) { var _local1 = 0; while (_local1 < aPieces.length) { removeSinglePiece(aPieces[_local1]); _local1++; } startFalling(); } static function handlePieceAboveTop(aPiece) { util.StaticBroadcaster._broadcaster.broadcastMessage("onPieceAboveTop", aPiece); } static function removeSinglePiece(aPiece) { var _local3 = aPiece.__get__x(); var _local2 = aPiece.__get__y(); _board[aPiece.__get__x() - 1][aPiece.__get__y()].thaw(); _board[aPiece.__get__x() + 1][aPiece.__get__y()].thaw(); _board[aPiece.__get__x()][aPiece.__get__y() - 1].thaw(); _board[aPiece.__get__x()][aPiece.__get__y() + 1].thaw(); _board[aPiece.__get__x()][aPiece.__get__y()] = null; aPiece.destroy(); util.StaticBroadcaster._broadcaster.broadcastMessage("onClearPiece", _multiplier, _local3, _local2, aPiece); } static function testPopulate() { var _local5 = new Array(); _local5.push([0, 0, 0, 0, 0, 0, 0]); _local5.push([0, 0, 0, 0, 0, 0, 0]); _local5.push([0, 0, 0, 0, 0, 0, 0]); _local5.push([0, 0, 0, 0, 0, 0, 0]); _local5.push([0, 0, 0, 0, 0, 0, 0]); _local5.push([0, 0, 0, 0, 0, 0, 0]); _local5.push([4, 7, 3, 3, 2, 0, 0]); var _local4 = 0; while (_local4 < HEIGHT) { var _local1 = 0; while (_local1 < WIDTH) { var _local2 = new chainfactor.Piece(); _local2.isGray = false; var _local3 = _local5[_local4][_local1]; if (_local3 > 0) { _local2.amount = _local3; addPieceAt(_local2, _local1, _local4); } _local1++; } _local4++; } } static function franksPopulate() { var _local3 = HEIGHT - 1; while (_local3 >= 0) { var _local1 = 0; while (_local1 < WIDTH) { var _local2 = new chainfactor.Piece(); _local2.isGray = false; _local2.amount = _local1 + 1; if (_local3 > ((WIDTH - _local1) - 1)) { addPieceAt(_local2, _local1, _local3); } _local1++; } _local3--; } } static function populateBoard(aMax) { var _local6 = 0; var _local5 = 0; while ((_local5 < aMax) && (_local6 < 100)) { var _local2 = Math.floor(Math.random() * WIDTH); var _local1 = HEIGHT; do { _local1--; } while (_board[_local2][_local1] && (_local1 > 1)); var _local3 = new chainfactor.Piece(); addPieceAt(_local3, _local2, _local1); findGroups(); var _local4 = getAnyDisappeared(); if (!_local4) { _local5++; } else { _local3.destroy(); _board[_local2][_local1] = null; } _local6++; } } static function getAnyDisappeared() { var _local3 = 0; while (_local3 < HEIGHT) { var _local2 = 0; while (_local2 < WIDTH) { if (_board[_local2][_local3]) { var _local1 = _board[_local2][_local3]; if ((!_local1.isGray) && ((_local1.amount == _local1.hGroup.size) || (_local1.amount == _local1.vGroup.size))) { return(true); } } _local2++; } _local3++; } return(false); } static function showAward(award, aX, aY, aPiece) { var _local2 = _holder.getNextHighestDepth(); var _local1 = _holder.attachMovie("score_float", "award_" + _local2, _local2); _local1._x = (aX * GRIDSIZE) + (GRIDSIZE / 2); _local1._y = (aY * GRIDSIZE) + (GRIDSIZE / 2); var _local3 = chainfactor.Piece.COLORS[aPiece.amount].toString(16); _local1.inner.txt.htmlText = ((("<font color='#" + _local3) + "'><b>+") + award) + "</b></font>"; } static function clearAll() { var _local2 = 0; while (_local2 < WIDTH) { var _local1 = 0; while (_local1 < HEIGHT) { _board[_local2][_local1].destroy(); _local1++; } _board[_local2] = new Array(); _local2++; } } static function pieceCount() { var _local3 = 0; var _local2 = 0; while (_local2 < WIDTH) { var _local1 = 0; while (_local1 < HEIGHT) { if (_board[_local2][_local1]) { _local3++; } _local1++; } _local2++; } return(_local3); } static function resetMultiplier() { _multiplier = 0; } static function defaultMultiplier() { _multiplier = 1; } static function movePiece(aPiece, aFromX, aFromY, aToX, aToY) { _board[aFromX][aFromY] = null; if (_board[aToX][aToY] != null) { trace((("***MOVING TO UN-NULL GRID! " + aToX) + ", ") + aToY); _board[aToX][aToY].destroy(); } _board[aToX][aToY] = aPiece; aPiece.__set__x(aToX); aPiece.__set__y(aToY); } static function addPieceAt(aPiece, aX, aY) { var _local4 = new Object(); _local4.onAboveTop = function (aPiece) { chainfactor.Board.handlePieceAboveTop(aPiece); }; aPiece.addListener(_local4); if (_board[aX][aY] != null) { trace((((("***TRYING TO ADD A PIECE AT " + aX) + ",") + aY) + " BUT SOMEONE LIVES THERE: ") + _board[aX][aY]); } _board[aX][aY] = aPiece; aPiece.draw(_holder); aPiece.__set__x(aX); aPiece.__set__y(aY); } static function getColumnSize(aCol) { var _local2 = 0; var _local1 = 0; while (_local1 < HEIGHT) { if (_board[aCol][_local1]) { _local2++; } _local1++; } return(_local2); } static function getRowSize(aRow) { var _local2 = 0; var _local1 = 0; while (_local1 < WIDTH) { if (_board[_local1][aRow]) { _local2++; } _local1++; } return(_local2); } static function getColumnSum(aCol) { var _local4 = 0; var _local1 = 0; while (_local1 < HEIGHT) { var _local2 = _board[aCol][_local1]; if (_local2 && (!_local2.isGray)) { _local4 = _local4 + _board[aCol][_local1].amount; } _local1++; } return(_local4); } static function getPieceAt(aCol, aRow) { return(_board[aCol][aRow]); } static function getEmptyRow(aCol) { var _local1 = _board[aCol].length - 1; while (_local1 >= 0) { if (!_board[aCol][_local1]) { return(_local1); } _local1--; } } static function get grid() { return(_board); } static function addGarbageRow() { var _local5 = false; var _local4 = 0; while (_local4 < WIDTH) { var _local1 = 0; while (_local1 < HEIGHT) { var _local3 = getPieceAt(_local4, _local1); if (_local3) { var _local2 = _local1 - 1; movePiece(_local3, _local4, _local1, _local4, _local2); if (_local1 == 0) { trace((("col " + _local4) + ": ") + _local2); } if (_local2 < 0) { _local5 = true; } } _local1++; } _local4++; } _local4 = 0; while (_local4 < WIDTH) { addPieceAt(new chainfactor.Piece(true), _local4, HEIGHT - 1); _local4++; } if (_local5) { util.StaticBroadcaster._broadcaster.broadcastMessage("onPieceAboveTop"); } else { findToDisappear(); } } static function clearAllHilites() { for (var _local1 in _holder._parent.back) { if (_local1.indexOf("hilite_") > -1) { _holder._parent.back[_local1].removeMovieClip(); } } } static var WIDTH = 7; static var HEIGHT = 7; static var GRIDSIZE = 45; static var HASHSIZE = 6; static var MOVE_STEPS_NORMAL = 3; static var MOVE_STEPS_FAST = 2; static var _multiplier = 0; static var _currentMoveStep = 0; }
Symbol 271 MovieClip [__Packages.util.ThinkManager] Frame 0
class util.ThinkManager { static var _pause, thinkers, _thinkCount; function ThinkManager () { } static function set pause(aVal) { _pause = aVal; //return(pause); } static function get pause() { return(_pause); } static function init() { thinkers = new Array(); _thinkCount = 0; _root.createEmptyMovieClip("thinker", 1000); _root.thinker.onEnterFrame = function () { util.ThinkManager.think(); }; } static function think() { if (!_pause) { var _local2 = null; var _local1 = 0; while (_local1 < thinkers.length) { if (thinkers[_local1] == null) { _local2 = thinkers[_local1]; } thinkers[_local1].think(_thinkCount); _local1++; } if (_local2 != null) { removeThinker(_local2); } _thinkCount++; } } static function registerThinker(aObject) { var _local2 = false; var _local1 = 0; while (_local1 < thinkers.length) { if (thinkers[_local1] == aObject) { _local2 = true; break; } _local1++; } if (!_local2) { thinkers.push(aObject); } } static function removeThinker(aObject) { var _local1 = 0; while (_local1 < thinkers.length) { if (thinkers[_local1] == aObject) { thinkers.splice(_local1, 1); break; } _local1++; } } }
Symbol 272 MovieClip [__Packages.chainfactor.SoundManager] Frame 0
class chainfactor.SoundManager { static var musicTracks, _sounds, _sound; function SoundManager () { } static function init() { if (!getSoundPref()) { setVolume(0); _root.soundControls.sound_x._visible = true; } if (!getMusicPref()) { _root.soundControls.music_x._visible = true; } } static function cacheMusic(aFile) { if (getMusicPref()) { if (!musicTracks) { musicTracks = new Array(); } var _local3 = _root.createEmptyMovieClip("music_" + musicTracks.length, _root.getNextHighestDepth()); musicTracks[aFile] = new Sound(_local3); musicTracks[aFile].loadSound(MUSIC_URL + aFile, true); musicTracks[aFile].stop(); trackCount++; } } static function getSoundPref() { var _local1 = SharedObject.getLocal("sound"); if (_local1.data.playSound == undefined) { return(true); } return(Boolean(_local1.data.playSound)); } static function setSoundPref(aP) { trace("setting sound pref: " + aP); var _local1 = SharedObject.getLocal("sound"); _local1.data.playSound = aP; _local1.flush(); } static function getMusicPref() { var _local1 = SharedObject.getLocal("sound"); if (_local1.data.playMusic == undefined) { return(true); } return(Boolean(_local1.data.playMusic)); } static function setMusicPref(aP) { var _local1 = SharedObject.getLocal("sound"); _local1.data.playMusic = aP; _local1.flush(); } static function playMusic(aFile) { if (getMusicPref()) { musicTracks[aFile].onSoundComplete = function () { this.start(); }; musicTracks[aFile].start(); } } static function playRandomTrack() { var _local2 = Math.floor(Math.random() * trackCount); var _local1 = 0; for (var _local3 in musicTracks) { if (_local1 == _local2) { playMusic(_local3); break; } _local1++; } } static function stopMusic() { for (var _local1 in musicTracks) { musicTracks[_local1].stop(); delete musicTracks[_local1].onSoundComplete; } } static function muteMusic() { setMusicPref(false); for (var _local1 in musicTracks) { trace("muting this dude: " + musicTracks[_local1]); musicTracks[_local1].setVolume(0); } } static function unMuteMusic() { setMusicPref(true); for (var _local1 in musicTracks) { musicTracks[_local1].setVolume(100); } } static function playExtSound(aSound) { if (!_sounds) { _sounds = new Array(); } if (!_sounds[aSound]) { trace("making stuff"); var _local4 = _root.sound.getNextHighestDepth(); var _local3 = _root.sound.createEmptyMovieClip(aSound, _local4); _sounds[aSound] = new Sound(_local3); trace("mc exists: " + _local3); } trace("sound exists: " + _sounds[aSound]); _sounds[aSound].loadSound(("sounds/" + aSound) + ".mp3", true); _sounds[aSound].start(); } static function setVolume(aNum) { var _local1 = new Sound(); if (aNum == 0) { setSoundPref(false); } else if (aNum == 100) { setSoundPref(true); } _local1.setVolume(aNum); } static function lazy() { if (!_sound) { _sound = new Sound(); } } static function playSoundSingle(aSound, aVolume) { lazy(); var _local4; var _local2; if (!_root.sound[aSound]) { var _local5 = _root.sound.getNextHighestDepth(); _local4 = _root.sound.createEmptyMovieClip(aSound, _local5); _local2 = new Sound(_local4); _local4.sound = _local2; _local2.attachSound(aSound); trace("attaching"); } else { _local2 = _root.sound[aSound].sound; } if ((_local2.position == 0) || (_local2.position == _local2.duration)) { _local2.setVolume(aVolume); _local2.start(); } } static function playSound(aSound, aVolume) { lazy(); var _local3 = _root.sound.getNextHighestDepth(); var _local4 = _root.sound.createEmptyMovieClip("s_" + _local3, _local3); var _local2 = new Sound(_local4); _local2.attachSound(aSound); _local2.setVolume(aVolume); _local2.start(); } static function loopSound(aSound, aLoop, aVolume) { var _local3 = _root.sound.getNextHighestDepth(); var _local4 = _root.sound.createEmptyMovieClip("sound_" + _local3, _local3); var _local2 = new Sound(_local4); _local2.attachSound(aSound); _local2.setVolume(aVolume); _local2.start(0, aLoop); return(_local2); } static function fadeSound(aSound, aFrom, aTo, aTime) { var _local2 = new Object(); var _local4 = aSound.getVolume(); var _local3 = new mx.transitions.Tween(_local2, "v", mx.transitions.easing.None.easeNone, aFrom, aTo, aTime, true); _local3.onMotionChanged = function () { aSound.setVolume(this.position); }; } static var MUSIC_URL = "music/"; static var trackCount = 0; }
Symbol 273 MovieClip [__Packages.mx.transitions.OnEnterFrameBeacon] Frame 0
class mx.transitions.OnEnterFrameBeacon { function OnEnterFrameBeacon () { } static function init() { var _local4 = _global.MovieClip; if (!_root.__OnEnterFrameBeacon) { mx.transitions.BroadcasterMX.initialize(_local4); var _local3 = _root.createEmptyMovieClip("__OnEnterFrameBeacon", 9876); _local3.onEnterFrame = function () { _global.MovieClip.broadcastMessage("onEnterFrame"); }; } } static var version = "1.1.0.52"; }
Symbol 274 MovieClip [__Packages.mx.transitions.BroadcasterMX] Frame 0
class mx.transitions.BroadcasterMX { var _listeners; function BroadcasterMX () { } static function initialize(o, dontCreateArray) { if (o.broadcastMessage != undefined) { delete o.broadcastMessage; } o.addListener = mx.transitions.BroadcasterMX.prototype.addListener; o.removeListener = mx.transitions.BroadcasterMX.prototype.removeListener; if (!dontCreateArray) { o._listeners = new Array(); } } function addListener(o) { removeListener(o); if (broadcastMessage == undefined) { broadcastMessage = mx.transitions.BroadcasterMX.prototype.broadcastMessage; } return(_listeners.push(o)); } function removeListener(o) { var _local2 = _listeners; var _local3 = _local2.length; while (_local3--) { if (_local2[_local3] == o) { _local2.splice(_local3, 1); if (!_local2.length) { broadcastMessage = undefined; } return(true); } } return(false); } function broadcastMessage() { var _local5 = String(arguments.shift()); var _local4 = _listeners.concat(); var _local6 = _local4.length; var _local3 = 0; while (_local3 < _local6) { _local4[_local3][_local5].apply(_local4[_local3], arguments); _local3++; } } static var version = "1.1.0.52"; }
Symbol 275 MovieClip [__Packages.mx.transitions.Tween] Frame 0
class mx.transitions.Tween { var obj, prop, begin, useSeconds, _listeners, addListener, prevTime, _time, looping, _duration, broadcastMessage, isPlaying, _fps, prevPos, _pos, change, _intervalID, _startTime; function Tween (obj, prop, func, begin, finish, duration, useSeconds) { mx.transitions.OnEnterFrameBeacon.init(); if (!arguments.length) { return; } this.obj = obj; this.prop = prop; this.begin = begin; position = (begin); this.duration = (duration); this.useSeconds = useSeconds; if (func) { this.func = func; } this.finish = (finish); _listeners = []; addListener(this); start(); } function set time(t) { prevTime = _time; if (t > duration) { if (looping) { rewind(t - _duration); update(); broadcastMessage("onMotionLooped", this); } else { if (useSeconds) { _time = _duration; update(); } stop(); broadcastMessage("onMotionFinished", this); } } else if (t < 0) { rewind(); update(); } else { _time = t; update(); } //return(time); } function get time() { return(_time); } function set duration(d) { _duration = (((d == null) || (d <= 0)) ? (_global.Infinity) : (d)); //return(duration); } function get duration() { return(_duration); } function set FPS(fps) { var _local2 = isPlaying; stopEnterFrame(); _fps = fps; if (_local2) { startEnterFrame(); } //return(FPS); } function get FPS() { return(_fps); } function set position(p) { setPosition(p); //return(position); } function setPosition(p) { prevPos = _pos; obj[prop] = (_pos = p); broadcastMessage("onMotionChanged", this, _pos); updateAfterEvent(); } function get position() { return(getPosition()); } function getPosition(t) { if (t == undefined) { t = _time; } return(func(t, begin, change, _duration)); } function set finish(f) { change = f - begin; //return(finish); } function get finish() { return(begin + change); } function continueTo(finish, duration) { begin = position; this.finish = (finish); if (duration != undefined) { this.duration = (duration); } start(); } function yoyo() { continueTo(begin, time); } function startEnterFrame() { if (_fps == undefined) { _global.MovieClip.addListener(this); } else { _intervalID = setInterval(this, "onEnterFrame", 1000 / _fps); } isPlaying = true; } function stopEnterFrame() { if (_fps == undefined) { _global.MovieClip.removeListener(this); } else { clearInterval(_intervalID); } isPlaying = false; } function start() { rewind(); startEnterFrame(); broadcastMessage("onMotionStarted", this); } function stop() { stopEnterFrame(); broadcastMessage("onMotionStopped", this); } function resume() { fixTime(); startEnterFrame(); broadcastMessage("onMotionResumed", this); } function rewind(t) { _time = ((t == undefined) ? 0 : (t)); fixTime(); update(); } function fforward() { time = (_duration); fixTime(); } function nextFrame() { if (useSeconds) { time = ((getTimer() - _startTime) / 1000); } else { time = (_time + 1); } } function onEnterFrame() { nextFrame(); } function prevFrame() { if (!useSeconds) { time = (_time - 1); } } function toString() { return("[Tween]"); } function fixTime() { if (useSeconds) { _startTime = getTimer() - (_time * 1000); } } function update() { position = (getPosition(_time)); } static var version = "1.1.0.52"; static var __initBeacon = mx.transitions.OnEnterFrameBeacon.init(); static var __initBroadcaster = mx.transitions.BroadcasterMX.initialize(mx.transitions.Tween.prototype, true); function func(t, b, c, d) { return(((c * t) / d) + b); } }
Symbol 276 MovieClip [__Packages.mx.transitions.easing.None] Frame 0
class mx.transitions.easing.None { function None () { } static function easeNone(t, b, c, d) { return(((c * t) / d) + b); } static function easeIn(t, b, c, d) { return(((c * t) / d) + b); } static function easeOut(t, b, c, d) { return(((c * t) / d) + b); } static function easeInOut(t, b, c, d) { return(((c * t) / d) + b); } static var version = "1.1.0.52"; }
Symbol 277 MovieClip [__Packages.chainfactor.Group] Frame 0
class chainfactor.Group { var _pieces, _mc, _intervalId, _hilited, x, y; function Group () { _pieces = new Array(); } function addPiece(aPiece) { _pieces.push(aPiece); } function unHilite() { _mc.removeMovieClip(); clearInterval(_intervalId); } function hilite(aType, aHolder) { if (!_hilited) { _hilited = true; var _local6 = aHolder.getNextHighestDepth(); _mc = aHolder.createEmptyMovieClip("hilite_" + _local6, _local6); var _local3; var _local5; var _local2; var _local4; _local3 = x * chainfactor.Board.GRIDSIZE; _local2 = y * chainfactor.Board.GRIDSIZE; if (aType == "h") { _local5 = _local3 + (size * chainfactor.Board.GRIDSIZE); _local4 = _local2 + chainfactor.Board.GRIDSIZE; } else { _local5 = _local3 + chainfactor.Board.GRIDSIZE; _local4 = (_local2 + (size * chainfactor.Board.GRIDSIZE)) + 1; } _mc.beginFill(0); _mc.moveTo(_local3, _local2); _mc.lineTo(_local5, _local2); _mc.lineTo(_local5, _local4); _mc.lineTo(_local3, _local4); _mc.lineTo(_local3, _local2); _mc.endFill(); _intervalId = setInterval(this, "unHilite", HILITE_TIME * 1000); } } function destroy() { unHilite(); } static var HILITE_TIME = 0.25; var size = 0; }
Symbol 278 MovieClip [__Packages.util.Broadcaster] Frame 0
class util.Broadcaster { var _broadcaster; function Broadcaster () { _broadcaster = new AsBroadcaster(); AsBroadcaster.initialize(_broadcaster); } function addListener(aListen) { _broadcaster.addListener(aListen); } function removeListener(aListen) { _broadcaster.removeListener(aListen); } }
Symbol 279 MovieClip [__Packages.chainfactor.Piece] Frame 0
class chainfactor.Piece extends util.Broadcaster { var _color, mc, amount, __get__thawLevel, _x, _y, _disappearing, vGroup, hGroup, _broadcaster; function Piece (aGray) { super(); pickRandomAmount(); if ((Math.random() < GRAY_CHANCE) || (aGray)) { isGray = true; _thawLevel = 0; } } function thaw() { if (isGray) { thawLevel = (_thawLevel + 1); } } function set thawLevel(aLevel) { _thawLevel = aLevel; if (aLevel == 0) { _color.setRGB(13158600); } else if (aLevel == 1) { _color.setRGB(13158600); var _local2 = Math.floor(Math.random() * 2) + 1; var _local5 = mc.attachMovie("crack" + _local2, "crack", 100); } if (_thawLevel == THAW_STEPS) { _color.setRGB(COLORS[amount]); var _local4 = new mx.transitions.Tween(mc.crack, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, 0.75, true); isGray = false; showAmount(); } //return(__get__thawLevel()); } function pickRandomAmount() { amount = Math.floor(Math.random() * ((MAX_AMT - MIN_AMT) + 1)) + MIN_AMT; } function draw(aHolder) { var _local2 = aHolder.getNextHighestDepth(); mc = aHolder.createEmptyMovieClip("piece_" + _local2, _local2); drawCircle(); if ((!isGray) || (GRAYS_SHOW_VALUE)) { showAmount(); } if (isGray) { _color.setRGB(13158600); thawLevel = (_thawLevel); } return(mc); } function drawCircle() { var _local2 = mc.createEmptyMovieClip("circle", 1); _color = new Color(_local2); _local2.beginFill(16777215, 100); util.Util.drawCircle(_local2, 0, 0, (chainfactor.Board.GRIDSIZE / 2) - 1); _color.setRGB(COLORS[amount]); _local2.endFill(); } function fixInvis() { if (mc._alpha != 100) { drawCircle(); mc._visible = true; mc._alpha = 100; mc.circle._alpha = 100; if (isGray) { makeGray(); } else { mc.amt_holder._alpha = 100; } } } function makeGray() { isGray = true; mc.amt_holder.removeMovieClip(); _thawLevel = 0; _color = new Color(mc.circle); _color.setRGB(13158600); } function showAmount() { var _local2 = mc.createEmptyMovieClip("amt_holder", 2); _local2.createTextField("amt", 1, -11, -15, chainfactor.Board.GRIDSIZE / 2, chainfactor.Board.GRIDSIZE / 2); var _local3 = new TextFormat(); _local3.size = 22; _local3.color = 16777215 /* 0xFFFFFF */; _local3.font = "Dirty Headline"; _local2.amt.text = amount; _local2.amt.embedFonts = true; _local2.amt.selectable = false; _local2.amt.autoSize = "center"; _local2.amt.setTextFormat(_local3); if (isGray) { amountShowing = true; _local2.amt._alpha = 50; } else { _color.setRGB(COLORS[amount]); } } function makeSpikes(aNum) { var _local14 = Math.min(aNum, 4); var _local5 = _x; var _local4 = _y; while ((_local5 == _x) || (_local5 == (_x + 1))) { _local5 = Math.floor((Math.random() * chainfactor.Board.WIDTH) + 1); } while (_local4 == _y) { _local4 = Math.floor(((Math.random() * chainfactor.Board.HEIGHT) + 1) - _y); } _local5 = _local5 * chainfactor.Board.GRIDSIZE; _local4 = _local4 * chainfactor.Board.GRIDSIZE; var _local3 = 0; while (_local3 < _local14) { var _local9 = chainfactor.Board.back.getNextHighestDepth(); var spikeMC = chainfactor.Board.back.createEmptyMovieClip("spike_" + _local9, _local9); if (_local4 < 0) { _local4 = 0; } var _local2 = new flash.geom.Point(_x * chainfactor.Board.GRIDSIZE, (_y * chainfactor.Board.GRIDSIZE) + chainfactor.Board.GRIDSIZE); var _local8 = new flash.geom.Point(_x * chainfactor.Board.GRIDSIZE, _y * chainfactor.Board.GRIDSIZE); var _local7 = new flash.geom.Point((_x * chainfactor.Board.GRIDSIZE) + chainfactor.Board.GRIDSIZE, _y * chainfactor.Board.GRIDSIZE); var _local6 = new flash.geom.Point(_local5, _local4 + (_local3 * chainfactor.Board.GRIDSIZE)); var _local10 = 0; _local10 = COLORS[amount]; spikeMC.beginFill(_local10); spikeMC.moveTo(_local2.x, _local2.y); spikeMC.lineTo(_local8.x, _local8.y); spikeMC.lineTo(_local7.x, _local7.y); spikeMC.lineTo(_local6.x, _local6.y); spikeMC.lineTo(_local2.x, _local2.y); spikeMC.endFill(); var _local13 = this; var _local12 = 0.15; var _local11 = new mx.transitions.Tween(spikeMC, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, 0.6 + (_local3 * _local12), true); _local11.onMotionFinished = function () { spikeMC.removeMovieClip(); }; _local3++; } } function disappear(aMult) { if (!_disappearing) { _disappearing = true; var _local6 = new Color(mc.amt_holder); _local6.setRGB(0); var _local3 = mc.createEmptyMovieClip("blackbox", -10); _local3.beginFill(0); _local3.moveTo((-chainfactor.Board.GRIDSIZE) / 2, (-chainfactor.Board.GRIDSIZE) / 2); _local3.lineTo(((-chainfactor.Board.GRIDSIZE) / 2) + chainfactor.Board.GRIDSIZE, (-chainfactor.Board.GRIDSIZE) / 2); _local3.lineTo(((-chainfactor.Board.GRIDSIZE) / 2) + chainfactor.Board.GRIDSIZE, ((-chainfactor.Board.GRIDSIZE) / 2) + chainfactor.Board.GRIDSIZE); _local3.lineTo((-chainfactor.Board.GRIDSIZE) / 2, ((-chainfactor.Board.GRIDSIZE) / 2) + chainfactor.Board.GRIDSIZE); _local3.lineTo((-chainfactor.Board.GRIDSIZE) / 2, (-chainfactor.Board.GRIDSIZE) / 2); _local3.endFill(); mc.crack._visible = false; var me = this; var _local8 = new mx.transitions.Tween(mc, "_alpha", mx.transitions.easing.None.easeNone, 300, 0, DISAPPEAR_TIME, true); var me = this; var _local5 = new Object(); _local5.val = 1; var _local7 = new mx.transitions.Tween(_local5, "val", mx.transitions.easing.Regular.easeIn, 1, 0, DISAPPEAR_TIME, true); _local7.onMotionChanged = function () { me.mc.circle._xscale = 125 * this.position; me.mc.circle._yscale = 125 * this.position; me.mc.amt_holder._xscale = 100 * this.position; me.mc.amt_holder._yscale = 100 * this.position; }; if (aMult > 1) { _root.chainDisplay.showChain(aMult); } else { chainfactor.SoundManager.playSound("sound_disappear", 5); } if (aMult > 2) { makeSpikes(aMult - 1); } _local8.onMotionFinished = function () { me.finishDisappear(); }; } } function finishDisappear() { vGroup.destroy(); hGroup.destroy(); _broadcaster.broadcastMessage("onDisappear", this); } function destroy() { mc.removeMovieClip(); vGroup.destroy(); hGroup.destroy(); } function set x(aX) { _x = aX; mc._x = (aX * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); //return(x); } function set y(aY) { _y = aY; mc._y = (aY * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); //return(y); } function get x() { return(_x); } function get y() { return(_y); } static var GRAY_CHANCE = 0.3; static var GRAYS_SHOW_VALUE = 0; static var MIN_AMT = 1; static var MAX_AMT = 7; static var COLORS = [0, 14864993, 15645799, 15505767, 15562855, 15625081, 15558553, 15493048]; static var THAW_STEPS = 2; static var DISAPPEAR_DELAY = 250; static var DISAPPEAR_MAX_SPIKES = 4; static var DISAPPEAR_TIME = 0.5; var amountShowing = false; var _thawLevel = 0; var isGray = false; }
Symbol 280 MovieClip [__Packages.mx.transitions.easing.Regular] Frame 0
class mx.transitions.easing.Regular { function Regular () { } static function easeIn(t, b, c, d) { t = t / d; return(((c * t) * t) + b); } static function easeOut(t, b, c, d) { t = t / d; return((((-c) * t) * (t - 2)) + b); } static function easeInOut(t, b, c, d) { t = t / (d / 2); if (t < 1) { return((((c / 2) * t) * t) + b); } t--; return((((-c) / 2) * ((t * (t - 2)) - 1)) + b); } static var version = "1.1.0.52"; }
Symbol 281 MovieClip [__Packages.util.Util] Frame 0
class util.Util { function Util () { } static function init() { Number.prototype.toRad = function () { return((this * Math.PI) / 180); }; Number.prototype.toDeg = function () { return((this * 180) / Math.PI); }; MovieClip.prototype.dashTo = function (startx, starty, endx, endy, len, gap) { if (arguments.length < 6) { return(false); } var _local12; var _local9; var _local8; var _local10; var _local4; var _local3; _local12 = len + gap; _local9 = endx - startx; _local8 = endy - starty; var _local11 = Math.sqrt((_local9 * _local9) + (_local8 * _local8)); _local10 = Math.floor(Math.abs(_local11 / _local12)); var _local6 = Math.atan2(_local8, _local9); _local4 = startx; _local3 = starty; _local9 = Math.cos(_local6) * _local12; _local8 = Math.sin(_local6) * _local12; var _local5 = 0; while (_local5 < _local10) { this.moveTo(_local4, _local3); this.lineTo(_local4 + (Math.cos(_local6) * len), _local3 + (Math.sin(_local6) * len)); _local4 = _local4 + _local9; _local3 = _local3 + _local8; _local5++; } this.moveTo(_local4, _local3); _local11 = Math.sqrt(((endx - _local4) * (endx - _local4)) + ((endy - _local3) * (endy - _local3))); if (_local11 > len) { this.lineTo(_local4 + (Math.cos(_local6) * len), _local3 + (Math.sin(_local6) * len)); } else if (_local11 > 0) { this.lineTo(_local4 + (Math.cos(_local6) * _local11), _local3 + (Math.sin(_local6) * _local11)); } this.moveTo(endx, endy); }; MovieClip.prototype.drawWedge = function (x, y, startAngle, arc, radius, yRadius) { if (arguments.length < 5) { return(undefined); } this.moveTo(x, y); if (yRadius == undefined) { yRadius = radius; } var _local20; var _local3; var _local4; var _local6; var _local15; var _local19; var _local18; var _local14; var _local12; var _local13; var _local11; if (Math.abs(arc) > 360) { arc = 360; } _local15 = Math.ceil(Math.abs(arc) / 45); _local20 = arc / _local15; _local3 = (-(_local20 / 180)) * Math.PI; _local4 = (-(startAngle / 180)) * Math.PI; if (_local15 > 0) { _local19 = x + (Math.cos((startAngle / 180) * Math.PI) * radius); _local18 = y + (Math.sin(((-startAngle) / 180) * Math.PI) * yRadius); this.lineTo(_local19, _local18); var _local5 = 0; while (_local5 < _local15) { _local4 = _local4 + _local3; _local6 = _local4 - (_local3 / 2); _local14 = x + (Math.cos(_local4) * radius); _local12 = y + (Math.sin(_local4) * yRadius); _local13 = x + (Math.cos(_local6) * (radius / Math.cos(_local3 / 2))); _local11 = y + (Math.sin(_local6) * (yRadius / Math.cos(_local3 / 2))); this.curveTo(_local13, _local11, _local14, _local12); _local5++; } this.lineTo(x, y); } }; } static function drawCircle(mc, x, y, r) { mc.moveTo(x + r, y); mc.curveTo(r + x, (0.414213562373095 * r) + y, (0.707106781186547 * r) + x, (0.707106781186547 * r) + y); mc.curveTo((0.414213562373095 * r) + x, r + y, x, r + y); mc.curveTo((-0.414213562373095 * r) + x, r + y, (-0.707106781186547 * r) + x, (0.707106781186547 * r) + y); mc.curveTo((-r) + x, (0.414213562373095 * r) + y, (-r) + x, y); mc.curveTo((-r) + x, (-0.414213562373095 * r) + y, (-0.707106781186547 * r) + x, (-0.707106781186547 * r) + y); mc.curveTo((-0.414213562373095 * r) + x, (-r) + y, x, (-r) + y); mc.curveTo((0.414213562373095 * r) + x, (-r) + y, (0.707106781186547 * r) + x, (-0.707106781186547 * r) + y); mc.curveTo(r + x, (-0.414213562373095 * r) + y, r + x, y); } static function addCommas(aNum) { var _local2 = aNum.toString(); var _local4 = _local2.split(".")[1]; _local2 = _local2.split(".")[0]; if (aNum < 0) { _local2 = _local2.substr(1, _local2.length); } var _local1 = ""; var _local3 = _local2.length; while (_local3--) { if ((_local3 < (_local2.length - 1)) && ((((_local2.length - _local3) - 1) % 3) == 0)) { _local1 = "," + _local1; } _local1 = _local2.substr(_local3, 1) + _local1; } if (aNum < 0) { _local1 = "-" + _local1; } if (_local4) { _local1 = _local1 + ("." + _local4); } return(_local1); } static function str_replace(haystack, needle, replacement) { var _local1 = haystack.split(needle); return(_local1.join(replacement)); } static function isPrime(aNum) { if (aNum == NaN) { return(false); } aNum = Math.floor(aNum); if (aNum == 2) { return(true); } if ((aNum < 2) || (aNum & false)) { return(false); } var _local3 = Math.floor(Math.sqrt(aNum)); var _local1 = 2; while (_local1 <= _local3) { if ((aNum % _local1) == 0) { return(false); } _local1 = _local1 + 1; } return(true); } static function getRandomString(aLength) { var _local1 = ""; var _local2 = "0123456789abcdsefghijklmnopqrstuvwxyz"; while (_local1.length < aLength) { _local1 = _local1 + _local2.charAt(Math.floor(Math.random() * _local2.length)); } return(_local1); } static function MD5(string) { function RotateLeft(lValue, iShiftBits) { return((lValue << iShiftBits) | (lValue >>> (32 - iShiftBits))); } function AddUnsigned(lX, lY) { var _local5; var _local4; var _local3; var _local2; var _local1; _local3 = lX & 2147483648; _local2 = lY & 2147483648; _local5 = lX & 1073741824; _local4 = lY & 1073741824; _local1 = (lX & 1073741823) + (lY & 1073741823); if (_local5 & _local4) { return(((_local1 ^ 2147483648) ^ _local3) ^ _local2); } if (_local5 | _local4) { if (_local1 & 1073741824) { return(((_local1 ^ 3221225472) ^ _local3) ^ _local2); } return(((_local1 ^ 1073741824) ^ _local3) ^ _local2); } return((_local1 ^ _local3) ^ _local2); } function F(x, y, z) { return((x & y) | ((~x) & z)); } function G(x, y, z) { return((x & z) | (y & (~z))); } function H(x, y, z) { return((x ^ y) ^ z); } function I(x, y, z) { return(y ^ (x | (~z))); } function FF(a, b, c, d, x, s, ac) { a = AddUnsigned(a, AddUnsigned(AddUnsigned(F(b, c, d), x), ac)); return(AddUnsigned(RotateLeft(a, s), b)); } function GG(a, b, c, d, x, s, ac) { a = AddUnsigned(a, AddUnsigned(AddUnsigned(G(b, c, d), x), ac)); return(AddUnsigned(RotateLeft(a, s), b)); } function HH(a, b, c, d, x, s, ac) { a = AddUnsigned(a, AddUnsigned(AddUnsigned(H(b, c, d), x), ac)); return(AddUnsigned(RotateLeft(a, s), b)); } function II(a, b, c, d, x, s, ac) { a = AddUnsigned(a, AddUnsigned(AddUnsigned(I(b, c, d), x), ac)); return(AddUnsigned(RotateLeft(a, s), b)); } function ConvertToWordArray(string) { var _local2; var _local5 = string.length; var _local8 = _local5 + 8; var _local9 = (_local8 - (_local8 % 64)) / 64; var _local7 = (_local9 + 1) * 16; var _local3 = Array(_local7 - 1); var _local4 = 0; var _local1 = 0; while (_local1 < _local5) { _local2 = (_local1 - (_local1 % 4)) / 4; _local4 = (_local1 % 4) * 8; _local3[_local2] = _local3[_local2] | (string.charCodeAt(_local1) << _local4); _local1++; } _local2 = (_local1 - (_local1 % 4)) / 4; _local4 = (_local1 % 4) * 8; _local3[_local2] = _local3[_local2] | (128 << _local4); _local3[_local7 - 2] = _local5 << 3; _local3[_local7 - 1] = _local5 >>> 29; return(_local3); } function WordToHex(lValue) { var _local3 = ""; var _local2 = ""; var _local4; var _local1; _local1 = 0; while (_local1 <= 3) { _local4 = (lValue >>> (_local1 * 8)) & 255; _local2 = "0" + _local4.toString(16); _local3 = _local3 + _local2.substr(_local2.length - 2, 2); _local1++; } return(_local3); } function Utf8Encode(string) { var _local2 = ""; var _local3 = 0; while (_local3 < string.length) { var _local1 = string.charCodeAt(_local3); if (_local1 < 128) { _local2 = _local2 + String.fromCharCode(_local1); } else if ((_local1 > 127) && (_local1 < 2048)) { _local2 = _local2 + String.fromCharCode((_local1 >> 6) | 192); _local2 = _local2 + String.fromCharCode((_local1 & 63) | 128); } else { _local2 = _local2 + String.fromCharCode((_local1 >> 12) | 224); _local2 = _local2 + String.fromCharCode(((_local1 >> 6) & 63) | 128); _local2 = _local2 + String.fromCharCode((_local1 & 63) | 128); } _local3++; } return(_local2); } var _local6 = Array(); var _local5; var _local35; var _local36; var _local37; var _local34; var _local4; var _local3; var _local2; var _local1; var _local21 = 7; var _local19 = 12; var _local16 = 17; var _local13 = 22; var _local20 = 5; var _local17 = 9; var _local14 = 14; var _local11 = 20; var _local18 = 4; var _local15 = 11; var _local12 = 16; var _local10 = 23; var _local25 = 6; var _local24 = 10; var _local23 = 15; var _local22 = 21; string = Utf8Encode(string); _local6 = ConvertToWordArray(string); _local4 = 1732584193 /* 0x67452301 */; _local3 = 4023233417; _local2 = 2562383102; _local1 = 271733878 /* 0x10325476 */; _local5 = 0; while (_local5 < _local6.length) { _local35 = _local4; _local36 = _local3; _local37 = _local2; _local34 = _local1; _local4 = FF(_local4, _local3, _local2, _local1, _local6[_local5 + 0], _local21, 3614090360); _local1 = FF(_local1, _local4, _local3, _local2, _local6[_local5 + 1], _local19, 3905402710); _local2 = FF(_local2, _local1, _local4, _local3, _local6[_local5 + 2], _local16, 606105819); _local3 = FF(_local3, _local2, _local1, _local4, _local6[_local5 + 3], _local13, 3250441966); _local4 = FF(_local4, _local3, _local2, _local1, _local6[_local5 + 4], _local21, 4118548399); _local1 = FF(_local1, _local4, _local3, _local2, _local6[_local5 + 5], _local19, 1200080426); _local2 = FF(_local2, _local1, _local4, _local3, _local6[_local5 + 6], _local16, 2821735955); _local3 = FF(_local3, _local2, _local1, _local4, _local6[_local5 + 7], _local13, 4249261313); _local4 = FF(_local4, _local3, _local2, _local1, _local6[_local5 + 8], _local21, 1770035416); _local1 = FF(_local1, _local4, _local3, _local2, _local6[_local5 + 9], _local19, 2336552879); _local2 = FF(_local2, _local1, _local4, _local3, _local6[_local5 + 10], _local16, 4294925233); _local3 = FF(_local3, _local2, _local1, _local4, _local6[_local5 + 11], _local13, 2304563134); _local4 = FF(_local4, _local3, _local2, _local1, _local6[_local5 + 12], _local21, 1804603682); _local1 = FF(_local1, _local4, _local3, _local2, _local6[_local5 + 13], _local19, 4254626195); _local2 = FF(_local2, _local1, _local4, _local3, _local6[_local5 + 14], _local16, 2792965006); _local3 = FF(_local3, _local2, _local1, _local4, _local6[_local5 + 15], _local13, 1236535329); _local4 = GG(_local4, _local3, _local2, _local1, _local6[_local5 + 1], _local20, 4129170786); _local1 = GG(_local1, _local4, _local3, _local2, _local6[_local5 + 6], _local17, 3225465664); _local2 = GG(_local2, _local1, _local4, _local3, _local6[_local5 + 11], _local14, 643717713); _local3 = GG(_local3, _local2, _local1, _local4, _local6[_local5 + 0], _local11, 3921069994); _local4 = GG(_local4, _local3, _local2, _local1, _local6[_local5 + 5], _local20, 3593408605); _local1 = GG(_local1, _local4, _local3, _local2, _local6[_local5 + 10], _local17, 38016083); _local2 = GG(_local2, _local1, _local4, _local3, _local6[_local5 + 15], _local14, 3634488961); _local3 = GG(_local3, _local2, _local1, _local4, _local6[_local5 + 4], _local11, 3889429448); _local4 = GG(_local4, _local3, _local2, _local1, _local6[_local5 + 9], _local20, 568446438); _local1 = GG(_local1, _local4, _local3, _local2, _local6[_local5 + 14], _local17, 3275163606); _local2 = GG(_local2, _local1, _local4, _local3, _local6[_local5 + 3], _local14, 4107603335); _local3 = GG(_local3, _local2, _local1, _local4, _local6[_local5 + 8], _local11, 1163531501); _local4 = GG(_local4, _local3, _local2, _local1, _local6[_local5 + 13], _local20, 2850285829); _local1 = GG(_local1, _local4, _local3, _local2, _local6[_local5 + 2], _local17, 4243563512); _local2 = GG(_local2, _local1, _local4, _local3, _local6[_local5 + 7], _local14, 1735328473); _local3 = GG(_local3, _local2, _local1, _local4, _local6[_local5 + 12], _local11, 2368359562); _local4 = HH(_local4, _local3, _local2, _local1, _local6[_local5 + 5], _local18, 4294588738); _local1 = HH(_local1, _local4, _local3, _local2, _local6[_local5 + 8], _local15, 2272392833); _local2 = HH(_local2, _local1, _local4, _local3, _local6[_local5 + 11], _local12, 1839030562); _local3 = HH(_local3, _local2, _local1, _local4, _local6[_local5 + 14], _local10, 4259657740); _local4 = HH(_local4, _local3, _local2, _local1, _local6[_local5 + 1], _local18, 2763975236); _local1 = HH(_local1, _local4, _local3, _local2, _local6[_local5 + 4], _local15, 1272893353); _local2 = HH(_local2, _local1, _local4, _local3, _local6[_local5 + 7], _local12, 4139469664); _local3 = HH(_local3, _local2, _local1, _local4, _local6[_local5 + 10], _local10, 3200236656); _local4 = HH(_local4, _local3, _local2, _local1, _local6[_local5 + 13], _local18, 681279174); _local1 = HH(_local1, _local4, _local3, _local2, _local6[_local5 + 0], _local15, 3936430074); _local2 = HH(_local2, _local1, _local4, _local3, _local6[_local5 + 3], _local12, 3572445317); _local3 = HH(_local3, _local2, _local1, _local4, _local6[_local5 + 6], _local10, 76029189); _local4 = HH(_local4, _local3, _local2, _local1, _local6[_local5 + 9], _local18, 3654602809); _local1 = HH(_local1, _local4, _local3, _local2, _local6[_local5 + 12], _local15, 3873151461); _local2 = HH(_local2, _local1, _local4, _local3, _local6[_local5 + 15], _local12, 530742520); _local3 = HH(_local3, _local2, _local1, _local4, _local6[_local5 + 2], _local10, 3299628645); _local4 = II(_local4, _local3, _local2, _local1, _local6[_local5 + 0], _local25, 4096336452); _local1 = II(_local1, _local4, _local3, _local2, _local6[_local5 + 7], _local24, 1126891415); _local2 = II(_local2, _local1, _local4, _local3, _local6[_local5 + 14], _local23, 2878612391); _local3 = II(_local3, _local2, _local1, _local4, _local6[_local5 + 5], _local22, 4237533241); _local4 = II(_local4, _local3, _local2, _local1, _local6[_local5 + 12], _local25, 1700485571); _local1 = II(_local1, _local4, _local3, _local2, _local6[_local5 + 3], _local24, 2399980690); _local2 = II(_local2, _local1, _local4, _local3, _local6[_local5 + 10], _local23, 4293915773); _local3 = II(_local3, _local2, _local1, _local4, _local6[_local5 + 1], _local22, 2240044497); _local4 = II(_local4, _local3, _local2, _local1, _local6[_local5 + 8], _local25, 1873313359); _local1 = II(_local1, _local4, _local3, _local2, _local6[_local5 + 15], _local24, 4264355552); _local2 = II(_local2, _local1, _local4, _local3, _local6[_local5 + 6], _local23, 2734768916); _local3 = II(_local3, _local2, _local1, _local4, _local6[_local5 + 13], _local22, 1309151649); _local4 = II(_local4, _local3, _local2, _local1, _local6[_local5 + 4], _local25, 4149444226); _local1 = II(_local1, _local4, _local3, _local2, _local6[_local5 + 11], _local24, 3174756917); _local2 = II(_local2, _local1, _local4, _local3, _local6[_local5 + 2], _local23, 718787259); _local3 = II(_local3, _local2, _local1, _local4, _local6[_local5 + 9], _local22, 3951481745); _local4 = AddUnsigned(_local4, _local35); _local3 = AddUnsigned(_local3, _local36); _local2 = AddUnsigned(_local2, _local37); _local1 = AddUnsigned(_local1, _local34); _local5 = _local5 + 16; } var _local46 = ((WordToHex(_local4) + WordToHex(_local3)) + WordToHex(_local2)) + WordToHex(_local1); return(_local46.toLowerCase()); } }
Symbol 282 MovieClip [__Packages.chainfactor.Debug] Frame 0
class chainfactor.Debug { static var _mouseListener; function Debug () { } static function save() { _root.debug = _root.debug + "\nStarting to save score"; var _local5 = new LoadVars(); _local5.onLoad = function (success) { if (success) { trace("RESPONSE:\n" + this); } }; _local5.onData = function (src) { _root.debug = _root.debug + ("\n\n" + src); if (src == undefined) { _root.debug = _root.debug + "\nCouldn't connect to server"; } else { var _local2 = new XML(); _local2.ignoreWhite = true; _local2.parseXML(src); chainfactor.Debug.parseResponse(_local2, src); } }; var _local4 = new LoadVars(); _local4.type = "stats"; _local4.score = _global.numberBalls.score; _local4.level = chainfactor.LevelManager.level; _local4.mode = _global.numberBalls.mode; _local4.name = "a"; _local4.ver = chainfactor.Stats.getSession()[0]; _local4.p1 = chainfactor.powers.PowerManager.__get__inventory()[0].id; _local4.p2 = chainfactor.powers.PowerManager.__get__inventory()[1].id; _local4.p3 = chainfactor.powers.PowerManager.__get__inventory()[2].id; var _local7 = chainfactor.Randomizer.getRandomString("a"); _local4.sendAndLoad(((SAVE_URL + _local7) + "&r=") + Math.random(), _local5, "POST"); } static function parseResponse(aXML, src) { aXML.ignoreWhite = true; var _local2 = 0; while (_local2 < aXML.firstChild.childNodes.length) { var _local1 = aXML.firstChild.childNodes[_local2]; if (_local1.nodeName == "debug") { buildMsgWindow(_local1.attributes.level, _local1.attributes.code, _local1.attributes.number, _local1.firstChild.nodeValue); } _local2++; } } static function buildMsgWindow(aLevel, aCode, aNumber, aMsg) { _mouseListener = new Object(); var ml = _mouseListener; _mouseListener.onMouseDown = function () { trace(_ymouse); if ((((_root._xmouse > 233) && (_root._xmouse < 355)) && (_root._ymouse > 310)) && (_root._ymouse < 335)) { _root.boardHolder.debugMsg.swapDepths(_root.boardHolder.gameOver); delete this.onMouseDown; Mouse.removeListener(ml); } }; Mouse.addListener(_mouseListener); cleanup(); if (parseInt(aNumber) < 100) { aNumber = "0" + aNumber; } if (parseInt(aNumber) < 10) { aNumber = "0" + aNumber; } var _local4 = _root.boardHolder.createEmptyMovieClip("debugMsg", _root.getNextHighestDepth()); _local4._x = -80; _local4._y = -35; var _local5 = _local4.createEmptyMovieClip("redBox", 1); _local5.beginFill(16711680); _local5.lineTo(145, 0); _local5.lineTo(145, 20); _local5.lineTo(0, 20); _local5.lineTo(0, 0); _local5.endFill(); var _local7 = new TextField.StyleSheet(); var _local8 = new Object(); _local8.color = "#000000"; _local8.fontFamily = "ArialBoldBitmap"; _local7.setStyle(".debug", _local8); _local7.setStyle(".bold", {fontFamily:"ArialBoldBitmap"}); _local7.setStyle("p", {color:"#000000", fontFamily:"ArialBitmap", fontSize:12}); var _local3 = _local4.createTextField("msg", _local4.getNextHighestDepth(), 0, 0, MSG_WIDTH - 10, 20); _local3.html = true; _local3.embedFonts = true; _local3.styleSheet = _local7; _local3.htmlText = ((((((("<p><span class='bold'><font color='#ffffff'>&nbsp;&nbsp;ERROR " + aNumber) + "\n<font size='4'>\n</font></font><b>LEVEL ") + aLevel) + " / CODE ") + aCode) + "</span>\n\n</p><p>") + aMsg) + "</p>"; _local3.selectable = true; _local3.autoSize = "left"; _local4.useHandCursor = false; _local3.onRelease = function () { if ((((_root.boardHolder.gameOver._xmouse > 15) && (_root.boardHolder.gameOver._ymouse > 82)) && (_root.boardHolder.gameOver._xmouse < 150)) && (_root.boardHolder.gameOver._ymouse < 115)) { var _local2 = _root.attachMovie("saveScore", "saveScore", _root.getNextHighestDepth()); _local2._x = Stage.width / 2; _local2._y = Stage.height / 2; } }; } static function cleanup() { _root.debugMsg.removeMovieClip(); } static var MSG_WIDTH = 400; static var MSG_HEIGHT = 250; static var SAVE_URL = "save_score.php?sid="; }
Symbol 283 MovieClip [__Packages.chainfactor.LevelManager] Frame 0
class chainfactor.LevelManager extends util.StaticBroadcaster { static var _levelClock, _listener, _behavior, _nextLevel; function LevelManager () { super(); } static function set level(aNum) { _level = aNum; _levelClock.level = aNum; //return(level); } static function get level() { return(_level); } static function disable() { delete _listener; _listener = new Object(); } static function initBehavior(aClass) { level = (1); if (!_listener) { _listener = new Object(); _listener.onSpawnPiece = handleLevelEvent; util.StaticBroadcaster.addListener(_listener); } _behavior = new aClass[undefined](); _nextLevel = EVENTS_PER_LEVEL; _root.boardHolder.levelClock.removeMovieClip(); _levelClock = _root.boardHolder.attachMovie("levelClock", "levelClock", _root.boardHolder.getNextHighestDepth()); _levelClock._y = (chainfactor.Board.HEIGHT * chainfactor.Board.GRIDSIZE) + 10; _levelClock.nextLevel = _nextLevel; _levelClock.dropCount = EVENTS_PER_LEVEL; } static function resetLevel() { var _local2 = _nextLevel - getNextLevelDelta(); _global.numberBalls.resetDropped(_local2); _levelClock.nextLevel = getNextLevelDelta(); } static function handleLevelEvent(aNum) { if (aNum == _nextLevel) { level = ((level+1)); var _local1 = getNextLevelDelta(); _nextLevel = _nextLevel + _local1; _levelClock.nextLevel = _local1; doLevelChange(_level); } _levelClock.dropCount = _nextLevel - aNum; } static function getNextLevelDelta() { var _local1 = EVENTS_PER_LEVEL - (EVENTS_DECREASE_PER_LEVEL * (_level - 1)); if (_local1 < MIN_EVENTS_PER_LEVEL) { _local1 = MIN_EVENTS_PER_LEVEL; } return(_local1); } static function doLevelChange(aLevel) { chainfactor.Game.__set__allowDrop(false); _global.numberBalls.unspawnPiece(); levelBonus(); _behavior.doChange(aLevel); util.StaticBroadcaster._broadcaster.broadcastMessage("onLevelUp"); } static function levelBonus() { var _local4 = _root.boardHolder.createEmptyMovieClip("levelbonus", _root.boardHolder.getNextHighestDepth()); var _local3 = _local4.createTextField("txt", 1, 0, 0, (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2, 200); var _local5 = new TextFormat(); _local5.size = 28; _local5.color = 0; _local5.font = "EurostileBold"; _local3.text = "LEVEL BONUS: " + LEVEL_BONUS; _local3.textColor = 6710886 /* 0x666666 */; _local3.embedFonts = true; _local3.selectable = false; _local3.autoSize = "center"; _local3.setTextFormat(_local5); _global.numberBalls.addPoints(LEVEL_BONUS); _local4._x = ((chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2) - 75; var _local7 = new mx.transitions.Tween(_local4, "_alpha", mx.transitions.easing.None.easeNone, 100, 0, 2, true); var _local6 = new mx.transitions.Tween(_local4, "_y", mx.transitions.easing.None.easeNone, (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2, 0, 2, true); } static function get behaviorType() { return(_behavior.typeOf()); } static var EVENTS_PER_LEVEL = 30; static var EVENTS_DECREASE_PER_LEVEL = 1; static var MIN_EVENTS_PER_LEVEL = 5; static var LEVEL_BONUS = 5000; static var _level = 1; }
Symbol 284 MovieClip [__Packages.chainfactor.ILevelBehavior] Frame 0
interface chainfactor.ILevelBehavior { }
Symbol 285 MovieClip [__Packages.chainfactor.Stats] Frame 0
class chainfactor.Stats { static var _sessionId; function Stats () { } static function send() { if (System.capabilities.playerType != "External") { var _local2 = new LoadVars(); _local2.onData = function (src) { if (src != undefined) { chainfactor.Stats.save(new XML(src)); } }; var _local1 = new LoadVars(); _local1.version = System.capabilities.serverString; _local1.os = System.capabilities.os; _local1.manufacturer = System.capabilities.manufacturer; _local1.sendAndLoad(STATS_URL + Math.random(), _local2, "POST"); } } static function save(aXML) { _sessionId = aXML.firstChild.attributes.session; trace("sent stats"); trace(getSession()); _root.debug = _root.debug + getSession(); } static function getSession() { var _local5 = _sessionId.substr(0, 32); var _local4 = _sessionId.substr(32, 32); var _local6 = new Array(); var _local3 = ""; var _local2 = ""; var _local1 = 0; while (_local1 < 32) { if ((_local1 % 2) == 0) { _local3 = _local3 + _local5.substr(_local1, 1); _local2 = _local2 + _local4.substr(_local1, 1); } else { _local3 = _local3 + _local4.substr(_local1, 1); _local2 = _local2 + _local5.substr(_local1, 1); } _local1++; } _local6[0] = _local3; _local6[1] = _local2; return(_local6); } static var STATS_URL = "stats.php?sid="; }
Symbol 286 MovieClip [__Packages.chainfactor.powers.PowerManager] Frame 0
class chainfactor.powers.PowerManager extends util.StaticBroadcaster { static var _meter, _allPowers, _inventory, _ignoreBreaks, _listener, __get__ignoreBreaks; function PowerManager () { super(); } static function init() { _meter = new chainfactor.powers.PowerMeter(); _meter.draw(_root.boardHolder); _meter.mc._x = (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) + 12; _meter.updateBar(); _allPowers = new Array(); _allPowers.push(new chainfactor.powers.PManaPoints()); _allPowers.push(new chainfactor.powers.PThaw()); _allPowers.push(new chainfactor.powers.PShow()); _allPowers.push(new chainfactor.powers.PPrime()); _allPowers.push(new chainfactor.powers.PPostpone()); _allPowers.push(new chainfactor.powers.PPromote()); _allPowers.push(new chainfactor.powers.PSniper()); _allPowers.push(new chainfactor.powers.PGoldCoin()); _allPowers.push(new chainfactor.powers.PBomb()); _allPowers.push(new chainfactor.powers.PEfficiency()); _allPowers.push(new chainfactor.powers.PRotate()); _allPowers.push(new chainfactor.powers.PScoreballs()); if ((!_inventory) || (_inventory.length == 0)) { _inventory = new Array(); } else { clearInventory(); } _ignoreBreaks = false; if (!_listener) { _listener = new Object(); } _listener.onDisappearDone = function () { chainfactor.powers.PowerManager.handleDisappearDone(); }; _listener.onLevelUp = function () { chainfactor.powers.PowerManager.handleLevelUp(); }; util.StaticBroadcaster.addListener(_listener); util.StaticBroadcaster.addListener(_listener); } static function handleTilt() { util.StaticBroadcaster._broadcaster.broadcastMessage("onTilt"); } static function handleLevelUp() { if (REDUCE_MANA_RATE) { reduceManaAdd(); } } static function reduceManaAdd() { _meter.reduceManaAdd(); } static function addMana(aAmt) { if (!_ignoreBreaks) { _meter.addMana(aAmt); handleManaUpdate(); } } static function deductMana(aAmt) { _meter.deductMana(aAmt); handleManaUpdate(); } static function addPower(aP) { _inventory.push(aP); var _local1 = new Object(); _local1.onFire = function (aCost) { chainfactor.powers.PowerManager.handlePowerFire(aCost); }; _local1.onTilt = handleTilt; aP.addListener(_local1); } static function resetPowers() { var _local1 = 0; while (_local1 < _inventory.length) { _inventory[_local1].destroy(); _local1++; } } static function clearPowers() { var _local1 = 0; while (_local1 < _inventory.length) { _inventory[_local1].destroy(); delete _inventory[_local1]; _local1++; } _inventory = new Array(); } static function handlePowerFire(aCost) { _meter.deductMana(aCost); handleManaUpdate(); if (aCost > 0) { _ignoreBreaks = true; } } static function handleDisappearDone() { _ignoreBreaks = false; } static function handleManaUpdate() { var _local1 = 0; while (_local1 < _inventory.length) { if (_inventory[_local1].cost <= _meter.amount) { _inventory[_local1].enable(); } else { _inventory[_local1].disable(); } _local1++; } } static function displayPowerButtons() { _inventory.sort(sort); var _local5 = 5; var _local6 = Math.floor((_meter.mc._height - (chainfactor.powers.Power.HEIGHT * _inventory.length)) - ((_inventory.length - 1) * _local5)); var _local4 = 0; while (_local4 < _inventory.length) { var _local1 = _inventory[_local4]; var _local2 = _local1.getMovieClip(_meter.mc); _local2._x = 26; _local2._y = _local6 + (_local4 * (chainfactor.powers.Power.HEIGHT + _local5)); _local1.setMovieClip(_local2); _local1.disable(); if (_local1.cost > 0) { var _local3 = _meter.mc.createEmptyMovieClip("line_" + _local4, _meter.mc.getNextHighestDepth()); _local3.lineStyle(1, 8355711, 100, false, "normal", "round", "miter"); _local3.moveTo(_local2._x, _local2._y + (chainfactor.powers.Power.HEIGHT / 2)); _local3.lineTo(_local2._x - (3 + (_local4 * 4)), _local2._y + (chainfactor.powers.Power.HEIGHT / 2)); _local3.lineTo(_local2._x - (3 + (_local4 * 4)), _meter.mc._height * (1 - _local1.cost)); _local3.lineTo(6, _meter.mc._height * (1 - _local1.cost)); _local3.lineStyle(1, 16777215, 100, false, "normal", "round", "miter"); _local3.lineTo(0, _meter.mc._height * (1 - _local1.cost)); } else { _local1.enable(); _local1.fire(); } _local4++; } } static function get mana() { return(_meter.amount); } static function getPowerById(aId) { var _local1 = 0; while (_local1 < _allPowers.length) { if (_allPowers[_local1].id == aId) { return(_allPowers[_local1]); } _local1++; } } static function sort(a, b) { if (a.__get__cost() < b.__get__cost()) { return(1); } if (a.__get__cost() > b.__get__cost()) { return(-1); } return(0); } static function clearInventory() { var _local1 = 0; while (_local1 < _inventory.length) { _inventory[_local1].destroy(); _local1++; } } static function get allPowers() { return(_allPowers); } static function get inventory() { return(_inventory); } static function set ignoreBreaks(aB) { _ignoreBreaks = aB; //return(__get__ignoreBreaks()); } static var REDUCE_MANA_RATE = false; }
Symbol 287 MovieClip [__Packages.chainfactor.powers.PowerMeter] Frame 0
class chainfactor.powers.PowerMeter { static var isEfficient; var addIncrement, mc; function PowerMeter () { isEfficient = false; addIncrement = ADD_INCREMENT_DEFAULT; } function draw(aHolder) { aHolder.meter.removeMovieClip(); mc = aHolder.createEmptyMovieClip("meter", aHolder.getNextHighestDepth()); var _local3 = chainfactor.Board.HEIGHT * chainfactor.Board.GRIDSIZE; mc.beginFill(13158600); mc.moveTo(0, 0); mc.lineTo(WIDTH, 0); mc.lineTo(WIDTH, _local3); mc.lineTo(0, _local3); mc.lineTo(0, 0); var _local4 = mc.createEmptyMovieClip("dashed", 1); _local4.lineStyle(WIDTH, 0, 100, true, "normal", "none", "miter"); _local4.dashTo(WIDTH / 2, 0, WIDTH / 2, _local3, 1, 1); var _local2 = mc.createEmptyMovieClip("bar", 2); _local2.beginFill(0); _local2.lineTo(WIDTH, 0); _local2.lineTo(WIDTH, -_local3); _local2.lineTo(0, -_local3); _local2.lineTo(0, 0); _local2._y = _local3; _local2.endFill(); _local4.setMask(_local2); return(mc); } function reduceManaAdd() { addIncrement = addIncrement - MANA_REDUCE_RATE; trace("MANA INC REDUCED TO " + addIncrement); } function addMana(aAmt) { var _local2 = addIncrement; if (aAmt) { _local2 = aAmt; } if (isEfficient) { _local2 = _local2 * EFFICIENT_MULTIPLIER; } amount = amount + _local2; if (amount > 1) { amount = 1; } updateBar(); return(amount); } function deductMana(aAmt) { amount = amount - aAmt; if (amount < 0) { amount = 0; } updateBar(); } function updateBar() { mc.bar._yscale = amount * 100; } static var ADD_INCREMENT_DEFAULT = 0.05; static var EFFICIENT_MULTIPLIER = 1.2; static var MANA_REDUCE_RATE = 0.001; static var WIDTH = 6; var amount = 0; }
Symbol 288 MovieClip [__Packages.chainfactor.powers.Power] Frame 0
class chainfactor.powers.Power extends util.Broadcaster { static var COSTS; var _enabled, _broadcaster, mc, _name, _nameField, id, _cost; function Power () { super(); if (System.capabilities.playerType == "External") { unlocked = true; } } function fire() { if (_enabled) { doEffect(); } } function doEffect() { effectDone(); } function effectDone() { if (_enabled) { chainfactor.Board.defaultMultiplier(); doFire(); _broadcaster.broadcastMessage("onFire", cost); } } function doFire() { } function enable() { mc._alpha = 100; _enabled = true; } function disable() { mc._alpha = 50; _enabled = false; } function getMovieClip(aHolder) { var _local2 = aHolder.getNextHighestDepth(); var _local3 = aHolder.attachMovie("power_" + _name, "power_" + _local2, _local2); return(_local3); } function setMovieClip(aMC) { mc = aMC; _nameField = mc.createTextField("name", 2, 38, 12, 0, 0); var _local2 = new TextFormat(); _local2.size = 8; _local2.color = 0; _local2.font = "04b03"; _nameField.text = _name.toUpperCase(); _nameField.embedFonts = true; _nameField.selectable = false; _nameField.autoSize = "left"; _nameField.setTextFormat(_local2); _nameField._visible = false; var me = this; mc.onRollOver = function () { this.name._visible = true; }; mc.onRollOut = function () { this.name._visible = false; }; if (cost > 0) { mc.onRelease = function () { if (chainfactor.Game.__get__allowDrop()) { me.doClick(this); me.fire(); } }; } } function doClick(aMC) { if (_enabled) { chainfactor.SoundManager.playSound("sound_power", 100); var clickRing = _root.createEmptyMovieClip("clickRing", _root.getNextHighestDepth()); clickRing.lineStyle(5, 0); util.Util.drawCircle(clickRing, 0, 0, 22); var _local3 = {x:mc._x, y:mc._y}; mc._parent.localToGlobal(_local3); clickRing._x = _local3.x + 18; clickRing._y = _local3.y + 18; clickRing._alpha = 100; var _local4 = new mx.transitions.Tween(clickRing, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, 0.5, true); var _local6 = new mx.transitions.Tween(clickRing, "_xscale", mx.transitions.easing.Regular.easeIn, 100, 200, 0.5, true); var _local5 = new mx.transitions.Tween(clickRing, "_yscale", mx.transitions.easing.Regular.easeIn, 100, 200, 0.5, true); _local4.onMotionFinished = function () { clickRing.removeMovieClip(); }; } } function destroy() { } function get name() { return(_name); } function get cost() { if (COSTS[id] != null) { return(COSTS[id]); } return(_cost); } static var HEIGHT = 36; var unlocked = false; var description = ""; }
Symbol 289 MovieClip [__Packages.chainfactor.powers.PManaPoints] Frame 0
class chainfactor.powers.PManaPoints extends chainfactor.powers.Power { var _name, _cost, id, category; function PManaPoints () { super(); _name = "Redeem"; _cost = 1; id = 9; category = "transformation"; } function doFire() { _global.numberBalls.addPoints(BONUS_AMOUNT); var _local4 = _root.boardHolder.createEmptyMovieClip("manaBonus", _root.boardHolder.getNextHighestDepth()); var _local3 = _local4.createTextField("txt", 1, 0, 0, (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2, 200); var _local5 = new TextFormat(); _local5.size = 28; _local5.color = 0; _local5.font = "Eurostile"; _local3.text = "REDEEM +" + BONUS_AMOUNT; _local3.textColor = 0; _local3.embedFonts = true; _local3.selectable = false; _local3.autoSize = "center"; _local3.setTextFormat(_local5); _local4._x = ((chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2) - 75; var _local7 = new mx.transitions.Tween(_local4, "_alpha", mx.transitions.easing.None.easeNone, 100, 0, 2, true); var _local6 = new mx.transitions.Tween(_local4, "_y", mx.transitions.easing.None.easeNone, (chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE) / 2, 0, 2, true); } static var BONUS_AMOUNT = 25000; }
Symbol 290 MovieClip [__Packages.chainfactor.powers.PThaw] Frame 0
class chainfactor.powers.PThaw extends chainfactor.powers.Power { var _name, _cost, id, category, effectColors, effectStartTime, effectHolder, effectMask, effectDone; function PThaw () { super(); _name = "Erode"; _cost = 0.87; id = 12; category = "destruction"; effectColors = new Array(); effectColors = [8287667, 9142991, 14472191]; } function doEffect() { effectStartTime = getTimer(); util.ThinkManager.registerThinker(this); effectHolder = _root.boardHolder.createEmptyMovieClip("erodeEffect", _root.boardHolder.getNextHighestDepth()); effectMask = _root.boardHolder.createEmptyMovieClip("erodeMask", _root.boardHolder.getNextHighestDepth()); effectMask.beginFill(0); var _local3 = chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE; effectMask.lineTo(_local3, 0); effectMask.lineTo(_local3, _local3); effectMask.lineTo(0, _local3); effectMask.lineTo(0, 0); effectMask.endFill(); effectHolder.setMask(effectMask); } function effectCleanup() { effectHolder.removeMovieClip(); effectMask.removeMovieClip(); effectDone(); } function think(aCt) { var _local8 = getTimer() - effectStartTime; if (_local8 >= EFFECT_TIME) { var me = this; util.ThinkManager.removeThinker(this); var _local7 = new mx.transitions.Tween(effectHolder, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, 1, true); _local7.onMotionFinished = function () { me.effectCleanup(); }; } else { var _local4 = 0; while (_local4 < 50) { var _local6 = Math.floor(Math.random() * 3) + 1; var _local3 = effectHolder.getNextHighestDepth(); var _local2 = effectHolder.attachMovie("erode_line_" + _local6, "line_" + _local3, _local3); _local6 = Math.floor(Math.random() * effectColors.length); var _local5 = new Color(_local2); _local5.setRGB(effectColors[_local6]); _local2._alpha = Math.floor(Math.random() * (EFFECT_ALPHA_MAX - EFFECT_ALPHA_MIN)) + EFFECT_ALPHA_MIN; _local2._x = Math.floor(((Math.random() * chainfactor.Board.WIDTH) * chainfactor.Board.GRIDSIZE) * 2); _local4++; } } } function doFire() { var _local3 = chainfactor.Board.__get__grid(); var _local2 = 0; while (_local2 < chainfactor.Board.HEIGHT) { var _local1 = 0; while (_local1 < chainfactor.Board.WIDTH) { _local3[_local1][_local2].thaw(); _local1++; } chainfactor.Board.startFalling(); _local2++; } } static var EFFECT_TIME = 300; static var EFFECT_ALPHA_MIN = 20; static var EFFECT_ALPHA_MAX = 60; }
Symbol 291 MovieClip [__Packages.chainfactor.powers.PShow] Frame 0
class chainfactor.powers.PShow extends chainfactor.powers.Power { var _name, _cost, id, category; function PShow () { super(); _name = "Reveal"; _cost = 0.05; id = 8; category = "transformation"; } function doFire() { var _local3 = chainfactor.Board.__get__grid(); var _local2 = 0; while (_local2 < chainfactor.Board.HEIGHT) { var _local1 = 0; while (_local1 < chainfactor.Board.WIDTH) { _local3[_local1][_local2].showAmount(); _local1++; } _local2++; } } }
Symbol 292 MovieClip [__Packages.chainfactor.powers.PPrime] Frame 0
class chainfactor.powers.PPrime extends chainfactor.powers.Power { var _name, _cost, id, category, effectMC, _effectInterval, effectDone; function PPrime () { super(); _name = "Sift"; _cost = 0.15; id = 1; category = "calculation"; } function doEffect() { effectMC = _root.boardHolder.attachMovie("effect_sift", "effectSift", _root.boardHolder.getNextHighestDepth()); _effectInterval = setInterval(this, "effectFade", EFFECT_TIME * 1000); } function effectFade() { clearInterval(_effectInterval); var me = this; var _local2 = new mx.transitions.Tween(effectMC, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, 0.5, true); _local2.onMotionFinished = function () { me.effectCleanup(); }; } function effectCleanup() { effectMC.removeMovieClip(); effectDone(); } function doFire() { var _local7 = chainfactor.Board.__get__grid(); var _local6 = false; var _local5 = 0; while (_local5 < chainfactor.Board.HEIGHT) { var _local2 = ""; var _local4 = new Array(); var _local3 = 0; while (_local3 < chainfactor.Board.WIDTH) { var _local1 = _local7[_local3][_local5]; if ((_local1 && ((!_local1.isGray) || (_local1.isGray && (_local1.amountShowing)))) && (_local1.typeOf() != "bomb")) { _local2 = _local2 + _local1.amount; _local4.push(_local1); } if ((_local2 != "") && ((((!_local1) || (_local1.typeOf() == "bomb")) || (_local1.isGray && (!_local1.amountShowing))) || (_local3 == (chainfactor.Board.WIDTH - 1)))) { trace("NUMSTR: " + _local2); if (util.Util.isPrime(parseInt(_local2))) { trace("FOUND A PRIME!"); _local6 = true; chainfactor.Board.disappearPieces(_local4); } _local4 = new Array(); _local2 = ""; } _local3++; } _local5++; } } static var EFFECT_TIME = 0.6; }
Symbol 293 MovieClip [__Packages.chainfactor.powers.PPostpone] Frame 0
class chainfactor.powers.PPostpone extends chainfactor.powers.Power { var _name, _cost, id, category; function PPostpone () { super(); _name = "Postpone"; _cost = 0; id = 11; category = "provision"; } function doFire() { var _local3 = this; chainfactor.LevelManager.EVENTS_PER_LEVEL = Math.floor(chainfactor.LevelManager.EVENTS_PER_LEVEL * 1.5); chainfactor.LevelManager.initBehavior(chainfactor.AddGarbage); if (_global.numberBalls.mode == "survival") { chainfactor.LevelManager.MIN_EVENTS_PER_LEVEL = chainfactor.LevelManager.EVENTS_PER_LEVEL; } } function destroy() { } }
Symbol 294 MovieClip [__Packages.chainfactor.AddGarbage] Frame 0
class chainfactor.AddGarbage implements chainfactor.ILevelBehavior { function AddGarbage () { } function doChange(aLevel) { chainfactor.Board.addGarbageRow(); } function typeOf() { return("AddGarbage"); } }
Symbol 295 MovieClip [__Packages.chainfactor.powers.PPromote] Frame 0
class chainfactor.powers.PPromote extends chainfactor.powers.Power { static var EFFECT_COLORS; var _name, _cost, id, category, effectHolder, effectDone; function PPromote () { super(); _name = "Promote"; _cost = 0.36; id = 10; category = "calculation"; EFFECT_COLORS = new Array(); EFFECT_COLORS = [9478854, 11309254, 9142991]; } function doEffect() { var _local8 = Math.floor(Math.random() * (EFFECT_MAX_ARROWS - EFFECT_MIN_ARROWS)) + EFFECT_MIN_ARROWS; effectHolder = _root.boardHolder.createEmptyMovieClip("effectHolder", _root.boardHolder.getNextHighestDepth()); var _local4 = 0; while (_local4 < _local8) { var _local3 = effectHolder.attachMovie("promote_arrow", "promoteArrow_" + _local4, _local4); _local3._y = EFFECT_START_Y; _local3._x = (Math.floor(Math.random() * chainfactor.Board.WIDTH) * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE - (Math.random() * chainfactor.Board.GRIDSIZE)); _local3._alpha = 55; var _local5 = new Color(_local3); _local5.setRGB(EFFECT_COLORS[Math.floor(Math.random() * EFFECT_COLORS.length)]); var me = this; var _local7 = EFFECT_END_Y_MIN + (Math.random() * EFFECT_END_FUDGE); var _local6 = new mx.transitions.Tween(_local3, "_y", mx.transitions.easing.None.easeNone, EFFECT_START_Y, _local7, EFFECT_TIME, true); if (_local4 == 0) { _local6.onMotionFinished = function () { me.effectCleanup(); }; } _local4++; } } function effectCleanup() { var _local3 = new mx.transitions.Tween(effectHolder, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, 0.5, true); _local3.onMotionFinished = function () { _root.boardHolder.effectHolder.removeMovieClip(); }; effectDone(); } function doFire() { var _local4 = chainfactor.Board.__get__grid(); var _local3 = 0; while (_local3 < chainfactor.Board.WIDTH) { var _local2 = 0; while (_local2 < chainfactor.Board.HEIGHT) { var _local1 = _local4[_local3][_local2]; if (!_local1.isGray) { if (_local1.amount == chainfactor.Piece.MAX_AMT) { _local1.makeGray(); } else { _local1.amount++; _local1.showAmount(); } } _local2++; } _local3++; } chainfactor.Board.startFalling(); } static var EFFECT_TIME = 0.5; static var EFFECT_MIN_ARROWS = 4; static var EFFECT_MAX_ARROWS = 7; static var EFFECT_START_Y = 395; static var EFFECT_END_Y_MIN = -180; static var EFFECT_END_FUDGE = -600; }
Symbol 296 MovieClip [__Packages.chainfactor.powers.PSniper] Frame 0
class chainfactor.powers.PSniper extends chainfactor.powers.Power { var _name, _cost, id, category, _effectMC, _enabled, _broadcaster, __get__cost, mc, _mouseListener, _reticle, _messageMC; function PSniper () { super(); _name = "Cull"; _cost = 0.32; id = 7; category = "destruction"; } function effectCleanup() { _effectMC.removeMovieClip(); } function fire() { if (_enabled && (boardHasGray())) { chainfactor.Board.defaultMultiplier(); doFire(); _broadcaster.broadcastMessage("onFire", __get__cost()); } else { mc.clickRing.removeMovieClip(); } } function boardHasGray() { var _local3 = chainfactor.Board.__get__grid(); var _local2 = 0; while (_local2 < chainfactor.Board.WIDTH) { var _local1 = 0; while (_local1 < chainfactor.Board.HEIGHT) { if (_local3[_local2][_local1].isGray) { return(true); } _local1++; } _local2++; } return(false); } function doFire() { var me = this; _mouseListener = new Object(); _mouseListener.onMouseUp = function () { me.clickPieceAt(Math.floor(_root.boardHolder._xmouse / chainfactor.Board.GRIDSIZE), Math.floor(_root.boardHolder._ymouse / chainfactor.Board.GRIDSIZE)); }; _mouseListener.onMouseMove = function () { me.pieceRollOver(Math.floor(_root.boardHolder._xmouse / chainfactor.Board.GRIDSIZE), Math.floor(_root.boardHolder._ymouse / chainfactor.Board.GRIDSIZE)); }; Mouse.addListener(_mouseListener); chainfactor.Game.__set__allowDrop(false); _reticle = _root.boardHolder.createEmptyMovieClip("reticle", _root.boardHolder.getNextHighestDepth()); _reticle.lineStyle(2, 0); util.Util.drawCircle(_reticle, 0, 0, chainfactor.Board.GRIDSIZE / 2); _reticle.moveTo(0, (-chainfactor.Board.GRIDSIZE) / 2); _reticle.lineTo(0, (-chainfactor.Board.GRIDSIZE) / 4); _reticle.moveTo(0, chainfactor.Board.GRIDSIZE / 2); _reticle.lineTo(0, chainfactor.Board.GRIDSIZE / 4); _reticle.moveTo((-chainfactor.Board.GRIDSIZE) / 2, 0); _reticle.lineTo((-chainfactor.Board.GRIDSIZE) / 4, 0); _reticle.moveTo(chainfactor.Board.GRIDSIZE / 2, 0); _reticle.lineTo(chainfactor.Board.GRIDSIZE / 4, 0); _reticle.moveTo((-chainfactor.Board.GRIDSIZE) / 8, 0); _reticle.lineTo(chainfactor.Board.GRIDSIZE / 8, 0); _reticle.moveTo(0, (-chainfactor.Board.GRIDSIZE) / 8); _reticle.lineTo(0, chainfactor.Board.GRIDSIZE / 8); _reticle._visible = false; showMessage(); _global.numberBalls.hideSpawn(); } function showMessage() { _messageMC = _root.boardHolder.createEmptyMovieClip("cullMessage", _root.boardHolder.getNextHighestDepth()); var _local3 = _messageMC.createTextField("txt", 1, 0, 0, chainfactor.Board.WIDTH * chainfactor.Board.GRIDSIZE, 200); var _local4 = new TextFormat(); _local4.size = 18; _local4.color = 0; _local4.font = "EurostileBold"; _local3.text = "CHOOSE A GRAY DISC TO REMOVE"; _local3.embedFonts = true; _local3.selectable = false; _local3.autoSize = "center"; _local3.setTextFormat(_local4); _messageMC._y = (chainfactor.Board.HEIGHT * chainfactor.Board.GRIDSIZE) + 40; } function hideMessage() { _messageMC.removeMovieClip(); } function pieceRollOver(aX, aY) { var _local2 = chainfactor.Board.getPieceAt(aX, aY); if (_local2.isGray) { _reticle._visible = true; _reticle._x = (aX * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); _reticle._y = (aY * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); } else { _reticle._visible = false; } } function clickPieceAt(aX, aY) { var _local3 = chainfactor.Board.getPieceAt(aX, aY); if (_local3 && (_local3.isGray)) { chainfactor.SoundManager.playSound("sound_cull", 100); _effectMC = _root.boardHolder.attachMovie("cull_effect", "cull_effect", _root.boardHolder.getNextHighestDepth()); _effectMC._x = (aX * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); _effectMC._y = (aY * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); var _local4 = new mx.transitions.Tween(_effectMC, "_alpha", mx.transitions.easing.Regular.easeIn, 0, 100, 0.25, true); var _local6 = new mx.transitions.Tween(_effectMC, "_xscale", mx.transitions.easing.Regular.easeIn, 0, 100, 0.25, true); var _local5 = new mx.transitions.Tween(_effectMC, "_yscale", mx.transitions.easing.Regular.easeIn, 0, 100, 0.25, true); var me = this; _local4.onMotionFinished = function () { me.snipePiece(aX, aY); }; } } function snipePiece(aX, aY) { var _local3 = chainfactor.Board.getPieceAt(aX, aY); delete _mouseListener.onMouseUp; chainfactor.Game.__set__allowDrop(true); var me = this; var _local4 = new Object(); _local4.onDisappear = function (aPiece) { me.cleanup(); }; _local3.addListener(_local4); chainfactor.Board.disappearPieces([_local3]); _reticle.removeMovieClip(); hideMessage(); _global.numberBalls.showSpawn(); var _local5 = new mx.transitions.Tween(_effectMC, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, 0.25, true); _local5.onMotionFinished = function () { me.effectCleanup(); }; } function cleanup() { Mouse.removeListener(_mouseListener); hideMessage(); } }
Symbol 297 MovieClip [__Packages.chainfactor.powers.PGoldCoin] Frame 0
class chainfactor.powers.PGoldCoin extends chainfactor.powers.Power { var _name, _cost, _listener, id, category, _spawned, _mc, _targetAmount, _targetCol; function PGoldCoin () { super(); _name = "Lure"; _cost = 0; _listener = new Object(); id = 5; category = "provision"; } function doFire() { var me = this; _listener.onPieceDropped = function (aPiece, aX, aY) { me.handlePieceDropped(aPiece, aX, aY); }; _listener.onSpawnPiece = function () { me.handleSpawnPiece(); }; util.StaticBroadcaster.addListener(_listener); var _local2 = new Object(); _local2.onTilt = function () { trace("lure hearing tilt"); me.handleTilt(); }; util.StaticBroadcaster.addListener(_local2); } function handleTilt() { if (_spawned) { pickColumn(true); } } function handleSpawnPiece() { if (_spawned) { pickColumn(); } else { tryToSpawn(); } } function tryToSpawn() { trace("TRYING TO SPAWN: " + chainfactor.powers.PowerManager.__get__mana()); if ((Math.random() < SPAWN_CHANCE) && (chainfactor.powers.PowerManager.__get__mana() >= MANA_DRAIN)) { spawn(); pickColumn(); chainfactor.SoundManager.playSound("sound_lure", 100); } } function spawn() { _mc.removeMovieClip(); _mc = _root.boardHolder.attachMovie("lure_anim", "lure", _root.boardHolder.getNextHighestDepth()); var _local3 = _mc.createTextField("award", 1, 0, -10, 0, 0); _local3.textColor = 0; _local3.embedFonts = true; _local3.selectable = false; _local3.autoSize = "center"; _local3.text = ""; _targetAmount = 0; setAmountText(0); _spawned = true; } function unSpawn() { _spawned = false; _mc.removeMovieClip(); } function setAmountText(aAmt) { var _local2 = new TextFormat(); _local2.size = 13; _local2.color = 0; _local2.align = "center"; _local2.font = "EurostileBold"; _mc.award.text = aAmt; _mc.award.setTextFormat(_local2); } function pickColumn(aIgnoreMana) { if ((chainfactor.powers.PowerManager.__get__mana() >= MANA_DRAIN) || (aIgnoreMana)) { var _local2 = _targetCol; var _local3 = 0; while ((_targetCol == _local2) || (chainfactor.Board.getColumnSize(_targetCol) == chainfactor.Board.HEIGHT)) { _targetCol = Math.floor(Math.random() * chainfactor.Board.WIDTH); if (_local3 > 30) { _targetCol = _local2; break; } _local3++; } var _local7 = chainfactor.Board.getEmptyRow(_targetCol); if (!_targetAmount) { _targetAmount = MIN_REWARD; } else if (!aIgnoreMana) { _targetAmount = _targetAmount + (MIN_REWARD_INC + (Math.floor(Math.random() * ((MAX_REWARD_INC - MIN_REWARD_INC) / 10)) * 10)); } var _local5 = (_targetCol * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); var _local4 = (_local7 * chainfactor.Board.GRIDSIZE) + (chainfactor.Board.GRIDSIZE / 2); _mc._visible = true; var myMC = _mc; var newAmt = _targetAmount; if ((_mc._x == 0) && (_mc._y == 0)) { _mc._x = _local5; _mc._y = _local4; setAmountText(_targetAmount); } else { var myMC = _mc; var _local9 = new mx.transitions.Tween(myMC, "_x", mx.transitions.easing.Regular.easeOut, myMC._x, _local5, 0.5, true); var _local6 = new mx.transitions.Tween(myMC, "_y", mx.transitions.easing.Regular.easeOut, myMC._y, _local4, 0.5, true); var newAmt = _targetAmount; var me = this; _local6.onMotionFinished = function () { me.setAmountText(newAmt); var _local2 = new mx.transitions.Tween(myMC, "_xscale", mx.transitions.easing.Bounce.easeIn, 110, 100, 0.25, true); var _local1 = new mx.transitions.Tween(myMC, "_yscale", mx.transitions.easing.Bounce.easeIn, 110, 100, 0.25, true); }; } } else { unSpawn(); } } function handlePieceDropped(aPiece, aX, aY) { if (aX == _targetCol) { if (_spawned) { awardPoints(_targetAmount); chainfactor.powers.PowerManager.deductMana(MANA_DRAIN); chainfactor.SoundManager.playSound("sound_lure_reward", 10); } } else if (_spawned) { chainfactor.SoundManager.playSound("sound_lure_unspawn", 50); unSpawn(); } } function awardPoints(aAmt) { _global.numberBalls.addPoints(aAmt); chainfactor.Board.showAward(aAmt, _targetCol, _mc._y / chainfactor.Board.GRIDSIZE); } function destroy() { delete _listener.onPieceDropped; delete _listener.onSpawnPiece; unSpawn(); } static var SPAWN_CHANCE = 0.05; static var MANA_DRAIN = 0.03; static var MIN_REWARD = 500; static var MIN_REWARD_INC = 10; static var MAX_REWARD_INC = 50; }
Symbol 298 MovieClip [__Packages.mx.transitions.easing.Bounce] Frame 0
class mx.transitions.easing.Bounce { function Bounce () { } static function easeOut(t, b, c, d) { t = t / d; if (t < 0.363636363636364) { return((c * ((7.5625 * t) * t)) + b); } if (t < 0.727272727272727) { t = t - 0.545454545454545; return((c * (((7.5625 * t) * t) + 0.75)) + b); } if (t < 0.909090909090909) { t = t - 0.818181818181818; return((c * (((7.5625 * t) * t) + 0.9375)) + b); } t = t - 0.954545454545455; return((c * (((7.5625 * t) * t) + 0.984375)) + b); } static function easeIn(t, b, c, d) { return((c - easeOut(d - t, 0, c, d)) + b); } static function easeInOut(t, b, c, d) { if (t < (d / 2)) { return((easeIn(t * 2, 0, c, d) * 0.5) + b); } return(((easeOut((t * 2) - d, 0, c, d) * 0.5) + (c * 0.5)) + b); } static var version = "1.1.0.52"; }
Symbol 299 MovieClip [__Packages.chainfactor.powers.PBomb] Frame 0
class chainfactor.powers.PBomb extends chainfactor.powers.Power { var _name, _cost, id, category, _enabled, _broadcaster, __get__cost; function PBomb () { super(); _name = "Detonate"; _cost = 0.24; id = 4; category = "destruction"; } function fire() { if (_enabled) { chainfactor.Board.defaultMultiplier(); doFire(); _broadcaster.broadcastMessage("onFire", __get__cost()); chainfactor.powers.PowerManager.__set__ignoreBreaks(false); } } function doFire() { _global.numberBalls.fillBag([new chainfactor.PieceBomb()]); } }
Symbol 300 MovieClip [__Packages.chainfactor.PieceBomb] Frame 0
class chainfactor.PieceBomb extends chainfactor.Piece { var _ticks, _listener, amount, mc, highlights, _x, _y, _clock; function PieceBomb () { super(); _ticks = Math.floor(Math.random() * (MAX_TICKS - MIN_TICKS)) + MIN_TICKS; _currentTick = _ticks + 1; var me = this; _listener = new Object(); _listener.onSpawnPiece = function () { me.tick(); }; _listener.onDisappearDone = function () { me.checkExplode(); }; _listener.onGameOver = function () { me.handleGameOver(); }; util.StaticBroadcaster.addListener(_listener); } function typeOf() { return("bomb"); } function handleGameOver() { cleanUp(); } function pickRandomAmount() { amount = 0; } function tick() { drawWedge(MAX_TICKS - _currentTick, 6710886); _currentTick--; } function checkExplode() { if (_currentTick == 0) { explode(); } } function explode() { if (!_exploded) { chainfactor.Game.__set__allowDrop(false); chainfactor.SoundManager.playSound("sound_detonate", 100); chainfactor.powers.PowerManager.__set__ignoreBreaks(true); _exploded = true; var _local4 = new mx.transitions.Tween(mc, "_alpha", mx.transitions.easing.Regular.easeIn, 200, 0, EXPLODE_TIME, true); var _local3 = new mx.transitions.Tween(mc, "_xscale", mx.transitions.easing.Regular.easeIn, 100, 200, EXPLODE_TIME, true); var _local2 = new mx.transitions.Tween(mc, "_yscale", mx.transitions.easing.Regular.easeIn, 100, 200, EXPLODE_TIME, true); highlights = new Array(); highlights.push(drawHilite(_x, _y - 1)); highlights.push(drawHilite(_x, _y + 1)); highlights.push(drawHilite(_x - 1, _y)); highlights.push(drawHilite(_x + 1, _y)); var me = this; _local2.onMotionFinished = function () { me.finishExplode(); }; } } function finishExplode() { var _local3 = new Array(); var _local10 = chainfactor.Board.__get__grid()[_x][_y - 1]; var _local9 = chainfactor.Board.__get__grid()[_x][_y + 1]; var _local8 = chainfactor.Board.__get__grid()[_x - 1][_y]; var _local7 = chainfactor.Board.__get__grid()[_x + 1][_y]; _local3 = [_local10, _local9, _local8, _local7]; var _local5 = null; var _local6 = new Array(); var _local2 = 0; while (_local2 < _local3.length) { if (_local3[_local2].isBomb) { _local3[_local2].explode(); } else if (_local3[_local2]) { _local5 = _local3[_local2]; _local6.push(_local3[_local2]); var me = this; var _local4 = new Object(); _local4.onDisappear = function (aPiece) { me.cleanUp(); }; _local3[_local2].addListener(_local4); } _local2++; } if (!_local5) { cleanUp(); } else { chainfactor.Board.disappearPieces(_local6); } } function cleanUp() { var _local2 = 0; while (_local2 < highlights.length) { highlights[_local2].removeMovieClip(); _local2++; } chainfactor.Board.removePiecesSynced([this]); chainfactor.Board.__get__grid()[_x][_y] = null; util.StaticBroadcaster.removeListener(_listener); } function drawHilite(aX, aY) { var _local1; if ((((aX >= 0) && (aY >= 0)) && (aX < chainfactor.Board.WIDTH)) && (aY < chainfactor.Board.HEIGHT)) { var _local5 = chainfactor.Board.back.getNextHighestDepth(); _local1 = chainfactor.Board.back.createEmptyMovieClip("hi_" + _local5, _local5); _local1.beginFill(0); var _local3 = aX * chainfactor.Board.GRIDSIZE; var _local2 = aY * chainfactor.Board.GRIDSIZE; var _local6 = _local3 + chainfactor.Board.GRIDSIZE; var _local4 = _local2 + chainfactor.Board.GRIDSIZE; _local1.moveTo(_local3, _local2); _local1.lineTo(_local6, _local2); _local1.lineTo(_local6, _local4); _local1.lineTo(_local3, _local4); _local1.lineTo(_local3, _local2); _local1.endFill(); } return(_local1); } function draw(aHolder) { var _local3 = aHolder.getNextHighestDepth(); mc = aHolder.createEmptyMovieClip("piece_" + _local3, _local3); var _local4 = mc.createEmptyMovieClip("circle", 0); _local4.beginFill(0, 100); util.Util.drawCircle(_local4, 0, 0, (chainfactor.Board.GRIDSIZE / 2) - 1); _clock = mc.createEmptyMovieClip("clock", 1); var _local6 = [2236962, 4473924, 8947848, 11184810, 13421772, 16777215]; var _local2 = 0; while (_local2 < MAX_TICKS) { if (_local2 < (MAX_TICKS - _ticks)) { drawWedge(_local2, 6710886); } else { drawWedge(_local2, 16777215); } _local2++; } return(mc); } function drawWedge(aPos, aColor) { var _local2 = _clock.createEmptyMovieClip("wedge_" + aPos, aPos); _local2.lineStyle(0, 2); _local2.beginFill(aColor); _local2.drawWedge(0, 0, ((aPos - 2) * (-360 / MAX_TICKS)) - 30, -360 / MAX_TICKS, chainfactor.Board.GRIDSIZE / 4); _local2.endFill(); } function thaw() { } function showAmount() { } static var MIN_TICKS = 2; static var MAX_TICKS = 6; static var EXPLODE_TIME = 0.5; var _currentTick = -1; var isBomb = true; var _exploded = false; }
Symbol 301 MovieClip [__Packages.chainfactor.powers.PEfficiency] Frame 0
class chainfactor.powers.PEfficiency extends chainfactor.powers.Power { var _name, _cost, id, category; function PEfficiency () { super(); _name = "Thrive"; _cost = 0; id = 6; category = "provision"; } function doFire() { chainfactor.powers.PowerMeter.isEfficient = true; } }
Symbol 302 MovieClip [__Packages.chainfactor.powers.PRotate] Frame 0
class chainfactor.powers.PRotate extends chainfactor.powers.Power { var _name, _cost, id, category, _listener, _broadcaster; function PRotate () { super(); _name = "Tilt"; _cost = 0.08; id = 2; category = "transformation"; } function doFire() { var me = this; var _local2 = new mx.transitions.Tween(chainfactor.Board.mc._parent, "_rotation", mx.transitions.easing.Regular.easeOut, 0, 90, 0.75, true); _local2.onMotionFinished = function () { me.movePieces(); chainfactor.Board.mc._parent._rotation = 0; }; chainfactor.Game.__set__allowDrop(false); } function movePieces() { var _local5 = new Array(); var _local6 = chainfactor.Board.__get__grid(); var _local4 = 0; while (_local4 < chainfactor.Board.WIDTH) { _local5[_local4] = new Array(); var _local3 = 0; while (_local3 < chainfactor.Board.HEIGHT) { _local5[_local4][_local3] = _local6[_local4][_local3]; _local3++; } _local4++; } chainfactor.Board.clearAll(); _local4 = 0; while (_local4 < chainfactor.Board.WIDTH) { var _local3 = 0; while (_local3 < chainfactor.Board.HEIGHT) { var _local2 = _local5[_local4][_local3]; chainfactor.Board.addPieceAt(_local2, (chainfactor.Board.HEIGHT - _local2.y) - 1, _local2.x); if (_local2.amountShowing) { _local2.showAmount(); } _local3++; } _local4++; } var me = this; _listener = new Object(); _listener.onDisappearDone = function () { me.handleDisappearDone(); }; util.StaticBroadcaster.addListener(_listener); chainfactor.Board.startFalling(); } function handleDisappearDone() { util.StaticBroadcaster.removeListener(_listener); _broadcaster.broadcastMessage("onTilt"); } static var BONUS_AMOUNT = 5000; }
Symbol 303 MovieClip [__Packages.chainfactor.powers.PScoreballs] Frame 0
class chainfactor.powers.PScoreballs extends chainfactor.powers.Power { var _name, _cost, id, category, _flashStart, effectDone, _listener; function PScoreballs () { super(); _name = "Transmute"; _cost = 0.17; id = 3; category = "calculation"; } function doEffect() { util.ThinkManager.registerThinker(this); _flashStart = getTimer(); } function think(aCt) { var _local10 = util.Util.addCommas(_global.numberBalls.score); var _local9 = ""; if ((getTimer() - _flashStart) <= FLASH_TIME) { if ((aCt % FLASH_PERIOD) == 0) { var _local5 = 0; while (_local5 < _local10.length) { var _local4 = _local10.charAt(_local5); var _local6; var _local8 = ""; var _local7 = ""; if ((parseInt(_local4) >= 1) && (parseInt(_local4) <= 7)) { if (toggle) { _local8 = "<b>"; _local7 = "</b>"; _local6 = "#" + chainfactor.Piece.COLORS[parseInt(_local4)].toString(16); } else { _local6 = "#000000"; } _local9 = _local9 + (((((("<font color='" + _local6) + "'>") + _local8) + _local4) + _local7) + "</font>"); } else { _local9 = _local9 + _local4; } _local5++; } toggle = !toggle; _root.score.htmlText = _local9; } } else { util.ThinkManager.removeThinker(this); _root.score.text = util.Util.addCommas(_global.numberBalls.score); effectDone(); } } function doFire() { var _local5 = "" + _global.numberBalls.score; var _local6 = new Array(); var _local4 = 0; while (_local4 < _local5.length) { var _local3 = new chainfactor.Piece(); _local3.amount = parseInt(_local5.charAt(_local4, 1)); if ((_local3.amount > 0) && (_local3.amount <= 7)) { _local3.isGray = false; _local6.push(_local3); } _local4++; } transmuteScoreDisplay(); _global.numberBalls.fillBag(_local6); } function transmuteScoreDisplay() { var _local2 = "" + _global.numberBalls.score; } function destroy() { _global.numberBalls.removeListener(_listener); delete _listener; } static var FLASH_PERIOD = 5; static var FLASH_TIME = 1000; static var MAX_BAG = 15; var toggle = true; }
Symbol 304 MovieClip [__Packages.chainfactor.Randomizer] Frame 0
class chainfactor.Randomizer { function Randomizer () { } static function getRandomString(aStr) { var _local4 = (((_global.numberBalls.score + "") + "^") + ",") + chainfactor.LevelManager.__get__level(); var _local3 = (((aStr + "") + ")") + "~") + util.Util.MD5(_local4); var _local2 = (((util.Util.MD5(_local3) + "") + "|") + "u") + _global.numberBalls.mode; return(util.Util.MD5(_local2)); } }
Symbol 305 MovieClip [__Packages.chainfactor.HighScoreManager] Frame 0
class chainfactor.HighScoreManager { function HighScoreManager () { } static function getScore(aMode) { trace("trying to get score: " + aMode); var _local1 = SharedObject.getLocal("hiScore_" + aMode); trace("here's what i got: " + _local1.data.highScore); return(Number(_local1.data.highScore)); } static function saveScore(aScore, aMode) { if ((aScore > getScore(aMode)) || (!getScore(aMode))) { var _local1 = SharedObject.getLocal("hiScore_" + aMode); _local1.data.highScore = aScore; _local1.flush(); } } static function getName() { var _local1 = SharedObject.getLocal("hiScore_name"); return(_local1.data.name); } static function saveName(aName) { var _local1 = SharedObject.getLocal("hiScore_name"); _local1.data.name = aName; _local1.flush(); } }
Symbol 306 MovieClip [__Packages.chainfactor.LevelClock] Frame 0
class chainfactor.LevelClock extends MovieClip { var levelNum, nextLevelTxt, __get__level, ballMCs, createEmptyMovieClip, getNextHighestDepth, __get__nextLevel, __get__dropCount; function LevelClock () { super(); } function set level(aNum) { levelNum.text = "LEVEL " + aNum; nextLevelTxt._x = levelNum.textWidth + 2; //return(__get__level()); } function set nextLevel(aNum) { var _local3 = 0; while (_local3 < ballMCs.length) { ballMCs[_local3].removeMovieClip(); _local3++; } ballMCs = new Array(); _local3 = 0; while (_local3 < aNum) { var _local2 = createEmptyMovieClip("ball_" + _local3, getNextHighestDepth()); _local2.beginFill(16777215); util.Util.drawCircle(_local2, (_local3 * ((BALL_RADIUS * 2) + 2)) + BALL_RADIUS, 20, BALL_RADIUS); _local2.endFill(); _local2.color = new Color(_local2); _local2.color.setRGB(13421772); ballMCs.push(_local2); _local3++; } //return(__get__nextLevel()); } function set dropCount(aNum) { ballMCs[(ballMCs.length - aNum) - 1].color.setRGB(0); nextLevelTxt.text = ("NEXT LEVEL IN " + aNum) + " DROP"; if (aNum > 1) { nextLevelTxt.text = nextLevelTxt.text + "S"; } //return(__get__dropCount()); } static var BALL_RADIUS = 4; }
Symbol 307 MovieClip [__Packages.chainfactor.SaveScore] Frame 0
class chainfactor.SaveScore extends MovieClip { var button_close, button_save, name, notes, gotoAndStop, removeMovieClip; function SaveScore () { super(); var me = this; button_close.onRelease = function () { me.close(); }; button_save.onRelease = function () { this.enabled = false; me.save(); }; button_save._visible = true; var _local3 = chainfactor.HighScoreManager.getName(); if (_local3) { name.text = _local3; } } function save() { if (name.text != "") { var me = this; var _local4 = new LoadVars(); _local4.onLoad = function (success) { if (success) { trace("RESPONSE:\n" + this); } }; _local4.onData = function (src) { trace("response from server: " + src); if (src == undefined) { this.notes.text = this.notes.text + "\n\nERROR CONNECTING TO SERVER"; this.gotoAndStop(2); } else { me.parseResponse(new XML(src)); } }; var _local3 = new LoadVars(); chainfactor.HighScoreManager.saveName(name.text); var _local6 = name.text; _local3.type = "hiscore"; _local3.score = _global.numberBalls.score; _local3.level = chainfactor.LevelManager.level; _local3.mode = _global.numberBalls.mode; _local3.name = name.text; _local3.version = chainfactor.Game.VERSION; _local3.notes = notes.text; _local3.p1 = chainfactor.powers.PowerManager.__get__inventory()[0].id; _local3.p2 = chainfactor.powers.PowerManager.__get__inventory()[1].id; _local3.p3 = chainfactor.powers.PowerManager.__get__inventory()[2].id; if ((!_local3.p1) || (_local3.p1 == undefined)) { _local3.p1 = 0; } if ((!_local3.p2) || (_local3.p2 == undefined)) { _local3.p2 = 0; } if ((!_local3.p3) || (_local3.p3 == undefined)) { _local3.p3 = 0; } _local3.ver = chainfactor.Stats.getSession()[1]; var _local5 = chainfactor.Randomizer.getRandomString(_local6); _local3.sendAndLoad(SAVE_URL + _local5, _local4, "POST"); } } function parseResponse(aXML, src) { aXML.ignoreWhite = true; notes.text = aXML; gotoAndStop(2); } function fadeOut() { var _local2 = new mx.transitions.Tween(this, "_alpha", mx.transitions.easing.None.easeNone, 100, 0, 0.5, true); button_save._visible = false; var me = this; _local2.onMotionFinished = function () { me.close(); }; } function close() { removeMovieClip(); } var SAVE_URL = "save_score.php?sid="; }
Symbol 308 MovieClip [__Packages.chainfactor.PowerUnlocker] Frame 0
class chainfactor.PowerUnlocker extends MovieClip { var _x, _y, _mode, credit, msgBox, button_submit, codeInput, _key; function PowerUnlocker () { super(); _x = 158; _y = 160; _mode = "attempt"; credit._visible = false; msgBox.text = "Enter a Code"; var me = this; button_submit.onRelease = function () { me.handleSubmit(); }; } function handleSubmit() { switch (_mode) { case "attempt" : sendCode(); break; case "email" : sendCredit(); } } function sendCode() { msgBox.text = "Submitting code..."; var me = this; var _local2 = new LoadVars(); _local2.onError = function () { }; _local2.onLoad = function (success) { if (success) { trace("RESPONSE:\n" + this); } else { me.msgBox.text = "Unable to contact server."; } }; _local2.onData = function (src) { if (src == undefined) { me.msgBox.text = "Server error."; } else { var _local1 = new XML(); _local1.ignoreWhite = true; _local1.parseXML(src); me.parseCodeResponse(_local1); } }; var _local3 = new LoadVars(); _local3.task = "u"; _local3.keyword = codeInput.keyword.text; _local3.number = codeInput.keyNumber.text; _local3.sendAndLoad(URL + util.Util.getRandomString(32), _local2, "POST"); } function parseCodeResponse(aXML) { trace("xml: " + aXML); var _local2 = aXML.firstChild.childNodes[0]; trace("nodie: " + _local2.attributes.mode); if (_local2.attributes.mode == "unlock") { msgBox.text = "Congratulations. You were the first person to enter this code.\nEnter your name and email below for credit."; codeInput._visible = false; credit._visible = true; _key = _local2.attributes.id; _mode = "email"; chainfactor.SoundManager.playSound("sound_good_code", 100); } else if (_local2.attributes.mode == "failure") { trace("this should be failure: " + msgBox); msgBox.text = "Incorrect code."; chainfactor.SoundManager.playSound("sound_bad_code", 100); } else if (_local2.attributes.mode == "found") { msgBox.text = "Code entry successful. Enter your name and email below."; codeInput._visible = false; credit._visible = true; _key = _local2.attributes.id; _mode = "email"; chainfactor.SoundManager.playSound("sound_good_code", 100); } else { trace("i should be here"); msgBox.text = "Incorrect code"; chainfactor.SoundManager.playSound("sound_bad_code", 100); } } function sendCredit() { var me = this; var _local3 = new LoadVars(); _local3.onLoad = function (success) { if (success) { trace("RESPONSE:\n" + this); } }; _local3.onData = function (src) { if (src == undefined) { } else { me.parseCreditResponse(new XML(src)); } }; var _local2 = new LoadVars(); _local2.task = "c"; _local2.key = _key; _local2.name = credit.name.text; _local2.email = credit.email.text; _local2.sendAndLoad(URL + util.Util.getRandomString(32), _local3, "POST"); } function parseCreditResponse(aXML) { var me = this; msgBox.text = "Thank you."; credit._visible = false; var _local2 = new mx.transitions.Tween(this, "_alpha", mx.transitions.easing.None.easeNone, 100, 0, 1, true); _local2.onMotionFinished = function () { me.removeMovieClip(); }; } static var URL = "unlock.php?sess="; }
Symbol 309 MovieClip [__Packages.chainfactor.SequenceProgressFinal] Frame 0
class chainfactor.SequenceProgressFinal extends MovieClip { var _idx, onEnterFrame, _unlockers, gotoAndPlay, _lastTime, unlocker; function SequenceProgressFinal () { super(); _frameCount = 0; _idx = 0; loadXML(); onEnterFrame = function () { this.showUnlockers(); }; } function loadXML() { var me = this; var _local2 = new XML(); _local2.ignoreWhite = true; _local2.onLoad = function () { me.parseXML(this); }; _local2.load(XML_URL); } function parseXML(aXML) { _unlockers = new Array(); var _local2 = 0; while (_local2 < aXML.firstChild.childNodes.length) { _unlockers.push(aXML.firstChild.childNodes[_local2].firstChild); _local2++; } gotoAndPlay(2); } function showUnlockers() { if (_showNames && (!_lastTime)) { _lastTime = getTimer(); } if (_showNames && (_unlockers)) { var _local2 = getTimer() - _lastTime; if (_local2 >= BLINK_PERIOD) { unlocker.htmlText = "<b>&gt; </b>"; _lastTime = getTimer(); _idx++; if (_idx >= _unlockers.length) { _idx = 0; } } else if (_local2 >= DISPLAY_PERIOD) { unlocker.htmlText = ("<b>&gt; " + _unlockers[_idx]) + "</b>"; } } } static var XML_URL = "unlockers.xml"; static var DISPLAY_PERIOD = 100; static var BLINK_PERIOD = 1000; var _frameCount = 1; var _showNames = false; }
Symbol 310 MovieClip [__Packages.chainfactor.Customize] Frame 0
class chainfactor.Customize extends MovieClip { var _visible, button_go, bWidth, bHeight, starting, grayChance, min, max, graysShow, thawSteps, basePoints, baseChain, eventsPerLevel, minDrops, dropsDecrease, swapDepths, allDrops, incGray, addGarbage; function Customize () { super(); _visible = false; var me = this; button_go.onRelease = function () { me.go(); }; } function go() { chainfactor.Board.WIDTH = parseInt(bWidth.text); chainfactor.Board.HEIGHT = parseInt(bHeight.text); chainfactor.Game.STARTING_PIECES = parseInt(starting.text); chainfactor.Piece.GRAY_CHANCE = parseFloat(grayChance.text); chainfactor.Piece.MIN_AMT = parseInt(min.text); chainfactor.Piece.MAX_AMT = parseInt(max.text); chainfactor.Piece.GRAYS_SHOW_VALUE = parseInt(graysShow.text); chainfactor.Piece.THAW_STEPS = parseInt(thawSteps.text); chainfactor.Game.BASE_POINTS = parseInt(basePoints.text); chainfactor.Game.BASE_CHAIN = parseFloat(baseChain.text); chainfactor.LevelManager.EVENTS_PER_LEVEL = parseInt(eventsPerLevel.text); chainfactor.LevelManager.MIN_EVENTS_PER_LEVEL = parseInt(minDrops.text); chainfactor.LevelManager.EVENTS_DECREASE_PER_LEVEL = dropsDecrease.text; util.ThinkManager.removeThinker(chainfactor.Board.__get__instance()); _global.numberBalls.init(); chainfactor.LevelManager.disable(); chainfactor.LevelManager.initBehavior(chainfactor.AddGarbage); _visible = false; } function show() { swapDepths(1000); bWidth.text = chainfactor.Board.WIDTH; bHeight.text = chainfactor.Board.HEIGHT; starting.text = chainfactor.Game.STARTING_PIECES; grayChance.text = chainfactor.Piece.GRAY_CHANCE; min.text = chainfactor.Piece.MIN_AMT; max.text = chainfactor.Piece.MAX_AMT; graysShow.text = chainfactor.Piece.GRAYS_SHOW_VALUE; thawSteps.text = chainfactor.Piece.THAW_STEPS; basePoints.text = chainfactor.Game.BASE_POINTS; baseChain.text = chainfactor.Game.BASE_CHAIN; eventsPerLevel.text = chainfactor.LevelManager.EVENTS_PER_LEVEL; minDrops.text = chainfactor.LevelManager.MIN_EVENTS_PER_LEVEL; dropsDecrease.text = chainfactor.LevelManager.EVENTS_DECREASE_PER_LEVEL; allDrops.text = chainfactor.Game.COUNT_ALL_DROPS; if (chainfactor.LevelManager.__get__behaviorType() == "IncreaseGray") { incGray.selected = true; } else { addGarbage.selected = true; } _visible = true; } }
Symbol 311 MovieClip [__Packages.chainfactor.ChainDisplay] Frame 0
class chainfactor.ChainDisplay extends MovieClip { var fadeTween, txt, _alpha; function ChainDisplay () { super(); } function showChain(aNum) { if ((aNum > 1) && (aNum != _curNum)) { _curNum = aNum; var _local3 = aNum; if (_local3 > 6) { _local3 = 6; } var _local6 = Math.min(aNum, 12); var _local4 = Math.min(100, 10 + (60 * (aNum / 12))); chainfactor.SoundManager.playSound("sound_chain_" + aNum, _local4); fadeTween.stop(); txt.text = "CHAIN x" + aNum; if (_alpha == 0) { new mx.transitions.Tween(this, "_alpha", mx.transitions.easing.Regular.easeIn, 0, 100, 0.35, true); } var _local5 = new mx.transitions.Tween(this, "_xscale", mx.transitions.easing.Regular.easeIn, 115, 100, 0.35, true); new mx.transitions.Tween(this, "_yscale", mx.transitions.easing.Regular.easeIn, 115, 100, 0.35, true); var me = this; _local5.onMotionFinished = function () { me.resetNum(); }; fadeTween = new mx.transitions.Tween(this, "foo", mx.transitions.easing.Regular.easeIn, 100, 0, FADE_DELAY, true); fadeTween.onMotionFinished = function () { me.fadeTween = new mx.transitions.Tween(me, "_alpha", mx.transitions.easing.Regular.easeIn, 100, 0, chainfactor.ChainDisplay.FADE_TIME_NORMAL, true); }; } } function resetNum() { _curNum = 0; } static var FADE_DELAY = 2; static var FADE_TIME_NORMAL = 1; var _curNum = 0; }
Symbol 312 MovieClip [__Packages.chainfactor.powers.PowerChooser] Frame 0
class chainfactor.powers.PowerChooser extends MovieClip { var _x, _y, _mcs, powersChosen, _maxPowers, info, button_go, _rollOver, createEmptyMovieClip, getNextHighestDepth, _highlightHolder, _powerHolder, debug, removeMovieClip, chooseMsg; function PowerChooser () { super(); _x = 0; _y = 0; _mcs = new Array(); powersChosen = 0; _maxPowers = 3; info._visible = false; button_go.onRelease = function () { this._parent.go(); }; drawIcons(); loadPowerXML(); _rollOver = createEmptyMovieClip("rollRing", getNextHighestDepth()); _rollOver.lineStyle(2, 15558518); util.Util.drawCircle(_rollOver, 0, 0, (MC_WIDTH / 2) + 5); _rollOver._visible = false; } function drawIcons() { var _local6 = chainfactor.powers.PowerManager.__get__allPowers(); var _local9 = 16; var _local10 = 60; var _local8 = _local9; var _local7 = _local10; _highlightHolder = createEmptyMovieClip("highlightHolder", getNextHighestDepth()); _powerHolder = createEmptyMovieClip("powerHolder", getNextHighestDepth()); var _local3 = 0; while (_local3 < _local6.length) { var _local2 = _local6[_local3].getMovieClip(this); _local2._xscale = 240; _local2._yscale = 240; if ((_local3 % 3) == 0) { if (_local3 > 0) { _local7 = _local7 + (MC_WIDTH + SPACING); } _local2._x = _local9; _local2._y = _local7; } else { _local2._x = (_local8 + MC_WIDTH) + SPACING; _local2._y = _local7; } _local2.id = _local6[_local3].id; _local8 = _local2._x; _local2.onRelease = function () { this._parent.doClick(this); }; _local2.onRollOver = function () { this._parent.showRollover(this); }; _local2.onRollOut = function () { this._parent.hideRollover(); }; var _local5 = _powerHolder.attachMovie("unlock_meter", "unlockMeter_" + _local2.id, _powerHolder.getNextHighestDepth()); _local5._x = _local2._x + 53; _local5._y = _local2._y + 73; _local5._visible = false; _local2.power = _local6[_local3]; _local2._visible = false; _mcs.push(_local2); var _local4 = _highlightHolder.createEmptyMovieClip("hi_" + _local2.id, _highlightHolder.getNextHighestDepth()); _local4.beginFill(14733921); util.Util.drawCircle(_local4, (_local2._x + (MC_WIDTH / 2)) + 1, (_local2._y + (MC_WIDTH / 2)) + 1, 55); _local4.endFill(); _local4._visible = false; _local3++; } } function showPowers() { var _local3 = 0; while (_local3 < _mcs.length) { _mcs[_local3]._visible = true; var _local4 = _powerHolder["unlockMeter_" + _mcs[_local3].id]; var _local5 = _mcs[_local3].power; if (_local5.unlocked) { _local4._visible = false; } else { _mcs[_local3]._alpha = 50; _local4._visible = true; var _local2 = 0; while (_local2 < _local5.unlockers.length) { _local4["pip_" + _local2]._visible = false; _local2++; } } _local3++; } } function showRollover(aMC) { var _local5 = aMC.id; info._visible = true; var _local4 = chainfactor.powers.PowerManager.getPowerById(_local5); info.powerName.htmlText = ("<b>" + _local4.name.toUpperCase()) + "</b>"; info.description.text = _local4.description; var _local2 = 0; while (_local2 < 3) { var _local3 = ""; if (_local4.unlockers[_local2]) { _local3 = _local4.unlockers[_local2]; } info["unlocker_" + _local2].htmlText = ("<b>" + _local3) + "</b>"; _local2++; } if (_local4.unlocked) { info.powerStatus.htmlText = "<b>UNLOCKED</b>"; info.lock.gotoAndStop(2); info.powerStatusMsg.text = "This power is available for use."; info.category.autoSize = "left"; info.category.text = ("[" + _local4.category.toUpperCase()) + "]"; info.cost.text = ("ENERGY COST: " + (_local4.cost * 100)) + "%"; if (_local4.cost == 0) { info.cost.text = info.cost.text + " (PASSIVE)"; } info.cost._x = (info.category._x + info.category.textWidth) + 5; } else { info.powerStatus.htmlText = "<b>LOCKED</b>"; info.lock.gotoAndStop(1); info.powerStatusMsg.text = "This power is currently locked."; info.category.text = ""; info.cost.text = ""; } _rollOver._visible = true; _rollOver._x = (aMC._x + (MC_WIDTH / 2)) + 0.5; _rollOver._y = (aMC._y + (MC_WIDTH / 2)) + 0.5; } function hideRollover() { info._visible = false; _rollOver._visible = false; } function doClick(aMC) { var _local4 = chainfactor.powers.PowerManager.getPowerById(aMC.id); var _local2 = _highlightHolder["hi_" + aMC.id]; if (_local4.unlocked) { if (_local2._visible) { _local2._visible = false; aMC.chosen = false; powersChosen--; } else if (powersChosen < maxPowers) { _local2._visible = true; aMC.chosen = true; powersChosen++; } } } function loadPowerXML() { var me = this; var _local2 = new XML(); _local2.ignoreWhite = true; _local2.onLoad = function () { this.debug.text = "xml loaded"; me.parseXML(this); }; _local2.load((XML_URL + "?sess=") + util.Util.getRandomString(32)); } function parseXML(aXML) { debug.text = aXML; var _local8 = 0; while (_local8 < aXML.firstChild.childNodes.length) { var _local5 = aXML.firstChild.childNodes[_local8]; var _local7 = parseInt(_local5.attributes.id); var _local6; var _local3; var _local4 = 0; while (_local4 < _mcs.length) { if (_mcs[_local4].id == _local7) { _local6 = _mcs[_local4]; _local3 = _local6.power; break; } _local4++; } debug.text = debug.text + ("\nFOUND AN ID: " + _local7); debug.text = debug.text + ("\nAND AN MC: " + _local6); debug.text = debug.text + ("\nAND A POWER? " + _local3); _local3.unlockers = new Array(); if (_local5.attributes.unlocked == "1") { _local3.unlocked = true; } _local4 = 0; while (_local4 < _local5.childNodes.length) { var _local2 = _local5.childNodes[_local4]; if (_local2.nodeName == "desc") { _local3.description = _local2.firstChild.nodeValue; } else if (_local2.nodeName == "unlockedby") { _local3.unlockers.push(_local2.firstChild.nodeValue); } _local4++; } var _local9 = _powerHolder["unlockMeter_" + _local3.id]; debug.text = debug.text + ("\nAND A METER? " + _local9); _local8++; } showPowers(); } function go() { chainfactor.powers.PowerManager.clearPowers(); var _local3 = 0; while (_local3 < _mcs.length) { if (_mcs[_local3].chosen) { chainfactor.powers.PowerManager.addPower(_mcs[_local3].power); } _local3++; } _global.numberBalls.init(); chainfactor.powers.PowerManager.init(); chainfactor.powers.PowerManager.displayPowerButtons(); removeMovieClip(); } function set maxPowers(aM) { _maxPowers = aM; chooseMsg.htmlText = ("<b>CHOOSE " + aM) + " POWER"; if (aM > 1) { chooseMsg.text = chooseMsg.text + "S"; } //return(maxPowers); } function get maxPowers() { return(_maxPowers); } static var XML_URL = "powers.php"; static var MC_WIDTH = 85; static var MC_SCALE = 240; static var SPACING = 19; }

Library Items

Symbol 1 Font [04b03]Used by:102 119 148 149 154 155 255
Symbol 2 Font [ArialBitmap]Used by:207
Symbol 3 Font [ArialBoldBitmap]Used by:205 206 207
Symbol 4 Font [EurostileBold]Used by:67 68 70 72 73 75 76 87 89 90 91 92 93 95 104 105 125 126 128 130 131 134 135 137 158 159 165 166 168 201 247 251 252 257 266
Symbol 5 Sound [sound_good_code]
Symbol 6 Sound [sound_fall]
Symbol 7 Sound [sound_lure_reward]
Symbol 8 Sound [sound_lure]
Symbol 9 Sound [sound_lure_unspawn]
Symbol 10 Sound [sound_disappear]
Symbol 11 Sound [sound_chain_9]
Symbol 12 Sound [sound_chain_8]
Symbol 13 Sound [sound_chain_7]
Symbol 14 Sound [sound_chain_12]
Symbol 15 Sound [sound_chain_11]
Symbol 16 Sound [sound_chain_10]
Symbol 17 Sound [sound_cull]
Symbol 18 Sound [sound_chain_6]
Symbol 19 Sound [sound_chain_5]
Symbol 20 Sound [sound_chain_4]
Symbol 21 Sound [sound_chain_3]
Symbol 22 Sound [sound_chain_2]
Symbol 23 Sound [sound_bad_code]
Symbol 24 Sound [sound_detonate]
Symbol 25 Sound [sound_power]
Symbol 26 Bitmap [crack4.png]Used by:115
Symbol 27 Bitmap [crack1.png]Used by:249
Symbol 28 GraphicUsed by:29
Symbol 29 MovieClip [power_postpone]Uses:28
Symbol 30 GraphicUsed by:32 37 40 47 50 57
Symbol 31 GraphicUsed by:32
Symbol 32 MovieClipUses:30 31Used by:33
Symbol 33 MovieClip [power_tilt]Uses:32
Symbol 34 GraphicUsed by:35
Symbol 35 MovieClip [power_transmute]Uses:34
Symbol 36 GraphicUsed by:37
Symbol 37 MovieClipUses:30 36Used by:38
Symbol 38 MovieClip [power_cull]Uses:37
Symbol 39 GraphicUsed by:40
Symbol 40 MovieClipUses:30 39Used by:41
Symbol 41 MovieClip [power_lure]Uses:40
Symbol 42 GraphicUsed by:43
Symbol 43 MovieClip [power_promote]Uses:42
Symbol 44 GraphicUsed by:45
Symbol 45 MovieClip [power_reveal]Uses:44
Symbol 46 GraphicUsed by:47
Symbol 47 MovieClipUses:30 46Used by:48
Symbol 48 MovieClip [power_erode]Uses:47
Symbol 49 GraphicUsed by:50
Symbol 50 MovieClipUses:30 49Used by:51
Symbol 51 MovieClip [power_detonate]Uses:50
Symbol 52 GraphicUsed by:53
Symbol 53 MovieClip [power_thrive]Uses:52
Symbol 54 GraphicUsed by:55
Symbol 55 MovieClip [power_sift]Uses:54
Symbol 56 GraphicUsed by:57
Symbol 57 MovieClipUses:30 56Used by:58
Symbol 58 MovieClip [power_redeem]Uses:57
Symbol 59 GraphicUsed by:60 65 71 74 77 106 127 132 136 160 167
Symbol 60 MovieClip [cornerBox]Uses:59Used by:65 71 74 77 106 127 132 136 138 160 163 167 169
Symbol 61 GraphicUsed by:65
Symbol 62 FontUsed by:63 64 94 96
Symbol 63 TextUses:62Used by:65
Symbol 64 TextUses:62Used by:65
Symbol 65 ButtonUses:60 61 63 64 59Used by:85
Symbol 66 GraphicUsed by:71 74 77
Symbol 67 TextUses:4Used by:71
Symbol 68 TextUses:4Used by:71
Symbol 69 GraphicUsed by:71 74 77
Symbol 70 TextUses:4Used by:71 74 77
Symbol 71 ButtonUses:60 66 67 68 69 70 59Used by:85
Symbol 72 TextUses:4Used by:74
Symbol 73 TextUses:4Used by:74
Symbol 74 ButtonUses:60 66 72 73 69 70 59Used by:85
Symbol 75 TextUses:4Used by:77
Symbol 76 TextUses:4Used by:77
Symbol 77 ButtonUses:60 66 75 76 69 70 59Used by:85
Symbol 78 GraphicUsed by:84
Symbol 79 BitmapUsed by:80
Symbol 80 GraphicUses:79Used by:81
Symbol 81 MovieClipUses:80Used by:84
Symbol 82 BitmapUsed by:83
Symbol 83 GraphicUses:82Used by:84
Symbol 84 MovieClipUses:78 81 83Used by:85
Symbol 85 MovieClip [modeChooser]Uses:65 71 74 77 84
Symbol 86 GraphicUsed by:111 246
Symbol 87 EditableTextUses:4 100Used by:111
Symbol 88 GraphicUsed by:103
Symbol 89 EditableTextUses:4 100Used by:103
Symbol 90 EditableTextUses:4Used by:103
Symbol 91 EditableTextUses:4Used by:103
Symbol 92 EditableTextUses:4Used by:103
Symbol 93 TextUses:4Used by:103
Symbol 94 EditableTextUses:62Used by:103
Symbol 95 EditableTextUses:4 100Used by:103
Symbol 96 EditableTextUses:62Used by:103
Symbol 97 GraphicUsed by:99
Symbol 98 GraphicUsed by:99
Symbol 99 MovieClipUses:97 98Used by:103 141
Symbol 100 FontUsed by:87 89 95 101 107 108 201 247 251 252 256 257 266
Symbol 101 EditableTextUses:100Used by:103
Symbol 102 EditableTextUses:1Used by:103
Symbol 103 MovieClipUses:88 89 90 91 92 93 94 95 96 99 101 102Used by:111
Symbol 104 TextUses:4Used by:106
Symbol 105 TextUses:4Used by:106
Symbol 106 ButtonUses:60 104 105 59Used by:111
Symbol 107 TextUses:100Used by:110 254
Symbol 108 TextUses:100Used by:110 254
Symbol 109 GraphicUsed by:110 208 211 245 254
Symbol 110 ButtonUses:107 108 109Used by:111
Symbol 111 MovieClip [powerChooser]Uses:86 87 103 106 110
Symbol 112 BitmapUsed by:113
Symbol 113 GraphicUses:112Used by:114
Symbol 114 MovieClip [gridBack]Uses:113
Symbol 115 GraphicUses:26Used by:116
Symbol 116 MovieClip [crack2]Uses:115
Symbol 117 FontUsed by:118 253
Symbol 118 EditableTextUses:117Used by:120
Symbol 119 EditableTextUses:1Used by:120
Symbol 120 MovieClip [levelClock]Uses:118 119
Symbol 121 GraphicUsed by:138
Symbol 122 FontUsed by:123 144 146 147 152 153 236
Symbol 123 EditableTextUses:122Used by:138
Symbol 124 GraphicUsed by:127
Symbol 125 TextUses:4Used by:127
Symbol 126 TextUses:4Used by:127
Symbol 127 ButtonUses:60 124 125 126 59Used by:138
Symbol 128 TextUses:4Used by:138
Symbol 129 GraphicUsed by:132
Symbol 130 TextUses:4Used by:132
Symbol 131 TextUses:4Used by:132
Symbol 132 ButtonUses:60 129 130 131 59Used by:138
Symbol 133 GraphicUsed by:136
Symbol 134 TextUses:4Used by:136
Symbol 135 TextUses:4Used by:136
Symbol 136 ButtonUses:60 133 134 135 59Used by:138
Symbol 137 TextUses:4Used by:138
Symbol 138 MovieClip [saveScore]Uses:60 121 123 127 128 132 136 137
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:139Used by:141
Symbol 141 MovieClip [unlock_meter]Uses:99 140
Symbol 142 GraphicUsed by:143 162 263 264
Symbol 143 ButtonUses:142Used by:163
Symbol 144 EditableTextUses:122Used by:163
Symbol 145 GraphicUsed by:150
Symbol 146 EditableTextUses:122Used by:150
Symbol 147 EditableTextUses:122Used by:150
Symbol 148 TextUses:1Used by:150
Symbol 149 TextUses:1Used by:150
Symbol 150 MovieClipUses:145 146 147 148 149Used by:163
Symbol 151 GraphicUsed by:156
Symbol 152 EditableTextUses:122Used by:156
Symbol 153 EditableTextUses:122Used by:156
Symbol 154 TextUses:1Used by:156
Symbol 155 TextUses:1Used by:156
Symbol 156 MovieClipUses:151 152 153 154 155Used by:163
Symbol 157 GraphicUsed by:160
Symbol 158 TextUses:4Used by:160
Symbol 159 TextUses:4Used by:160
Symbol 160 ButtonUses:60 157 158 159 59Used by:163
Symbol 161 GraphicUsed by:163
Symbol 162 ButtonUses:142Used by:163
Symbol 163 MovieClip [powerUnlocker]Uses:143 60 144 150 156 160 161 162
Symbol 164 GraphicUsed by:167
Symbol 165 TextUses:4Used by:167
Symbol 166 TextUses:4Used by:167
Symbol 167 ButtonUses:60 164 165 166 59Used by:169
Symbol 168 TextUses:4Used by:169
Symbol 169 MovieClip [gameOver]Uses:60 167 168
Symbol 170 GraphicUsed by:171
Symbol 171 MovieClipUses:170Used by:172
Symbol 172 MovieClip [erode_line_3]Uses:171
Symbol 173 GraphicUsed by:174
Symbol 174 MovieClipUses:173Used by:175
Symbol 175 MovieClip [erode_line_2]Uses:174
Symbol 176 GraphicUsed by:177
Symbol 177 MovieClipUses:176Used by:178
Symbol 178 MovieClip [erode_line_1]Uses:177
Symbol 179 GraphicUsed by:180
Symbol 180 MovieClip [promote_arrow]Uses:179
Symbol 181 GraphicUsed by:192
Symbol 182 BitmapUsed by:183
Symbol 183 GraphicUses:182Used by:192
Symbol 184 BitmapUsed by:185
Symbol 185 GraphicUses:184Used by:192
Symbol 186 BitmapUsed by:187
Symbol 187 GraphicUses:186Used by:192
Symbol 188 BitmapUsed by:189
Symbol 189 GraphicUses:188Used by:192
Symbol 190 BitmapUsed by:191
Symbol 191 GraphicUses:190Used by:192
Symbol 192 MovieClip [lure_anim]Uses:181 183 185 187 189 191
Symbol 193 GraphicUsed by:194
Symbol 194 MovieClipUses:193Used by:197
Symbol 195 GraphicUsed by:196
Symbol 196 MovieClipUses:195Used by:197
Symbol 197 MovieClip [cull_effect]Uses:194 196
Symbol 198 GraphicUsed by:199
Symbol 199 MovieClipUses:198Used by:200
Symbol 200 MovieClip [effect_sift]Uses:199
Symbol 201 EditableTextUses:4 100Used by:202
Symbol 202 MovieClipUses:201Used by:203
Symbol 203 MovieClip [score_float]Uses:202
Symbol 204 GraphicUsed by:208
Symbol 205 TextUses:3Used by:208
Symbol 206 TextUses:3Used by:208
Symbol 207 EditableTextUses:2 3Used by:208
Symbol 208 MovieClip [sequence_progress_final]Uses:109 204 205 206 207
Symbol 209 FontUsed by:210 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 237 238 239 240 241 242 243 244
Symbol 210 TextUses:209Used by:211
Symbol 211 ButtonUses:210 109Used by:246
Symbol 212 TextUses:209Used by:246
Symbol 213 EditableTextUses:209Used by:246
Symbol 214 TextUses:209Used by:246
Symbol 215 EditableTextUses:209Used by:246
Symbol 216 TextUses:209Used by:246
Symbol 217 EditableTextUses:209Used by:246
Symbol 218 TextUses:209Used by:246
Symbol 219 EditableTextUses:209Used by:246
Symbol 220 TextUses:209Used by:246
Symbol 221 EditableTextUses:209Used by:246
Symbol 222 TextUses:209Used by:246
Symbol 223 EditableTextUses:209Used by:246
Symbol 224 TextUses:209Used by:246
Symbol 225 EditableTextUses:209Used by:246
Symbol 226 TextUses:209Used by:246
Symbol 227 EditableTextUses:209Used by:246
Symbol 228 TextUses:209Used by:246
Symbol 229 EditableTextUses:209Used by:246
Symbol 230 TextUses:209Used by:246
Symbol 231 EditableTextUses:209Used by:246
Symbol 232 TextUses:209Used by:246
Symbol 233 EditableTextUses:209Used by:246
Symbol 234 TextUses:209Used by:246
Symbol 235 EditableTextUses:209Used by:246
Symbol 236 TextUses:122Used by:246
Symbol 237 TextUses:209Used by:246
Symbol 238 TextUses:209Used by:246
Symbol 239 EditableTextUses:209Used by:246
Symbol 240 TextUses:209Used by:246
Symbol 241 EditableTextUses:209Used by:246
Symbol 242 TextUses:209Used by:246
Symbol 243 EditableTextUses:209Used by:246
Symbol 244 TextUses:209Used by:245
Symbol 245 ButtonUses:244 109Used by:246
Symbol 246 MovieClip [customize]Uses:86 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 245Used by:Timeline
Symbol 247 EditableTextUses:4 100Used by:248
Symbol 248 MovieClip [chain_display]Uses:247Used by:Timeline
Symbol 249 GraphicUses:27Used by:250
Symbol 250 MovieClip [crack1]Uses:249Used by:Timeline
Symbol 251 EditableTextUses:4 100Used by:Timeline
Symbol 252 EditableTextUses:4 100Used by:Timeline
Symbol 253 EditableTextUses:117Used by:Timeline
Symbol 254 ButtonUses:107 108 109Used by:Timeline
Symbol 255 EditableTextUses:1Used by:Timeline
Symbol 256 TextUses:100Used by:Timeline
Symbol 257 EditableTextUses:4 100Used by:Timeline
Symbol 258 BitmapUsed by:259
Symbol 259 GraphicUses:258Used by:265
Symbol 260 BitmapUsed by:261
Symbol 261 GraphicUses:260Used by:262
Symbol 262 MovieClipUses:261Used by:265
Symbol 263 ButtonUses:142Used by:265
Symbol 264 ButtonUses:142Used by:265
Symbol 265 MovieClipUses:259 262 263 264Used by:Timeline
Symbol 266 EditableTextUses:4 100Used by:Timeline
Symbol 267 MovieClipUsed by:Timeline
Symbol 268 MovieClip [__Packages.util.StaticBroadcaster]
Symbol 269 MovieClip [__Packages.chainfactor.Game]
Symbol 270 MovieClip [__Packages.chainfactor.Board]
Symbol 271 MovieClip [__Packages.util.ThinkManager]
Symbol 272 MovieClip [__Packages.chainfactor.SoundManager]
Symbol 273 MovieClip [__Packages.mx.transitions.OnEnterFrameBeacon]
Symbol 274 MovieClip [__Packages.mx.transitions.BroadcasterMX]
Symbol 275 MovieClip [__Packages.mx.transitions.Tween]
Symbol 276 MovieClip [__Packages.mx.transitions.easing.None]
Symbol 277 MovieClip [__Packages.chainfactor.Group]
Symbol 278 MovieClip [__Packages.util.Broadcaster]
Symbol 279 MovieClip [__Packages.chainfactor.Piece]
Symbol 280 MovieClip [__Packages.mx.transitions.easing.Regular]
Symbol 281 MovieClip [__Packages.util.Util]
Symbol 282 MovieClip [__Packages.chainfactor.Debug]
Symbol 283 MovieClip [__Packages.chainfactor.LevelManager]
Symbol 284 MovieClip [__Packages.chainfactor.ILevelBehavior]
Symbol 285 MovieClip [__Packages.chainfactor.Stats]
Symbol 286 MovieClip [__Packages.chainfactor.powers.PowerManager]
Symbol 287 MovieClip [__Packages.chainfactor.powers.PowerMeter]
Symbol 288 MovieClip [__Packages.chainfactor.powers.Power]
Symbol 289 MovieClip [__Packages.chainfactor.powers.PManaPoints]
Symbol 290 MovieClip [__Packages.chainfactor.powers.PThaw]
Symbol 291 MovieClip [__Packages.chainfactor.powers.PShow]
Symbol 292 MovieClip [__Packages.chainfactor.powers.PPrime]
Symbol 293 MovieClip [__Packages.chainfactor.powers.PPostpone]
Symbol 294 MovieClip [__Packages.chainfactor.AddGarbage]
Symbol 295 MovieClip [__Packages.chainfactor.powers.PPromote]
Symbol 296 MovieClip [__Packages.chainfactor.powers.PSniper]
Symbol 297 MovieClip [__Packages.chainfactor.powers.PGoldCoin]
Symbol 298 MovieClip [__Packages.mx.transitions.easing.Bounce]
Symbol 299 MovieClip [__Packages.chainfactor.powers.PBomb]
Symbol 300 MovieClip [__Packages.chainfactor.PieceBomb]
Symbol 301 MovieClip [__Packages.chainfactor.powers.PEfficiency]
Symbol 302 MovieClip [__Packages.chainfactor.powers.PRotate]
Symbol 303 MovieClip [__Packages.chainfactor.powers.PScoreballs]
Symbol 304 MovieClip [__Packages.chainfactor.Randomizer]
Symbol 305 MovieClip [__Packages.chainfactor.HighScoreManager]
Symbol 306 MovieClip [__Packages.chainfactor.LevelClock]
Symbol 307 MovieClip [__Packages.chainfactor.SaveScore]
Symbol 308 MovieClip [__Packages.chainfactor.PowerUnlocker]
Symbol 309 MovieClip [__Packages.chainfactor.SequenceProgressFinal]
Symbol 310 MovieClip [__Packages.chainfactor.Customize]
Symbol 311 MovieClip [__Packages.chainfactor.ChainDisplay]
Symbol 312 MovieClip [__Packages.chainfactor.powers.PowerChooser]

Instance Names

"score"Frame 1Symbol 251 EditableText
"versionNumber"Frame 1Symbol 255 EditableText
"highScore"Frame 1Symbol 257 EditableText
"longest"Frame 1Symbol 266 EditableText
"chainDisplay"Frame 1Symbol 248 MovieClip [chain_display]
"customize"Frame 1Symbol 246 MovieClip [customize]
"sound"Frame 1Symbol 267 MovieClip
"powerName"Symbol 103 MovieClip Frame 1Symbol 89 EditableText
"unlocker_0"Symbol 103 MovieClip Frame 1Symbol 90 EditableText
"unlocker_1"Symbol 103 MovieClip Frame 1Symbol 91 EditableText
"unlocker_2"Symbol 103 MovieClip Frame 1Symbol 92 EditableText
"powerStatusMsg"Symbol 103 MovieClip Frame 1Symbol 94 EditableText
"powerStatus"Symbol 103 MovieClip Frame 1Symbol 95 EditableText
"description"Symbol 103 MovieClip Frame 1Symbol 96 EditableText
"lock"Symbol 103 MovieClip Frame 1Symbol 99 MovieClip
"category"Symbol 103 MovieClip Frame 1Symbol 101 EditableText
"cost"Symbol 103 MovieClip Frame 1Symbol 102 EditableText
"chooseMsg"Symbol 111 MovieClip [powerChooser] Frame 1Symbol 87 EditableText
"info"Symbol 111 MovieClip [powerChooser] Frame 1Symbol 103 MovieClip
"button_go"Symbol 111 MovieClip [powerChooser] Frame 1Symbol 106 Button
"levelNum"Symbol 120 MovieClip [levelClock] Frame 1Symbol 118 EditableText
"nextLevelTxt"Symbol 120 MovieClip [levelClock] Frame 1Symbol 119 EditableText
"name"Symbol 138 MovieClip [saveScore] Frame 1Symbol 123 EditableText
"button_save"Symbol 138 MovieClip [saveScore] Frame 1Symbol 127 Button
"pip_2"Symbol 141 MovieClip [unlock_meter] Frame 1Symbol 140 MovieClip
"pip_1"Symbol 141 MovieClip [unlock_meter] Frame 1Symbol 140 MovieClip
"pip_0"Symbol 141 MovieClip [unlock_meter] Frame 1Symbol 140 MovieClip
"keyword"Symbol 150 MovieClip Frame 1Symbol 146 EditableText
"keyNumber"Symbol 150 MovieClip Frame 1Symbol 147 EditableText
"name"Symbol 156 MovieClip Frame 1Symbol 152 EditableText
"email"Symbol 156 MovieClip Frame 1Symbol 153 EditableText
"blocker"Symbol 163 MovieClip [powerUnlocker] Frame 1Symbol 143 Button
"msgBox"Symbol 163 MovieClip [powerUnlocker] Frame 1Symbol 144 EditableText
"codeInput"Symbol 163 MovieClip [powerUnlocker] Frame 1Symbol 150 MovieClip
"credit"Symbol 163 MovieClip [powerUnlocker] Frame 1Symbol 156 MovieClip
"button_submit"Symbol 163 MovieClip [powerUnlocker] Frame 1Symbol 160 Button
"button_close"Symbol 163 MovieClip [powerUnlocker] Frame 1Symbol 162 Button
"back"Symbol 169 MovieClip [gameOver] Frame 1Symbol 60 MovieClip [cornerBox]
"button_submit"Symbol 169 MovieClip [gameOver] Frame 1Symbol 167 Button
"maskee"Symbol 197 MovieClip [cull_effect] Frame 1Symbol 194 MovieClip
"mask"Symbol 197 MovieClip [cull_effect] Frame 1Symbol 196 MovieClip
"txt"Symbol 202 MovieClip Frame 1Symbol 201 EditableText
"inner"Symbol 203 MovieClip [score_float] Frame 1Symbol 202 MovieClip
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 1Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 5Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 6Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 8Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 10Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 11Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 12Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 13Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 25Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 40Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 65Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 80Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 95Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 113Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 128Symbol 207 EditableText
"unlocker"Symbol 208 MovieClip [sequence_progress_final] Frame 148Symbol 207 EditableText
"button_go"Symbol 246 MovieClip [customize] Frame 1Symbol 211 Button
"bWidth"Symbol 246 MovieClip [customize] Frame 1Symbol 213 EditableText
"bHeight"Symbol 246 MovieClip [customize] Frame 1Symbol 215 EditableText
"grayChance"Symbol 246 MovieClip [customize] Frame 1Symbol 217 EditableText
"starting"Symbol 246 MovieClip [customize] Frame 1Symbol 219 EditableText
"min"Symbol 246 MovieClip [customize] Frame 1Symbol 221 EditableText
"max"Symbol 246 MovieClip [customize] Frame 1Symbol 223 EditableText
"graysShow"Symbol 246 MovieClip [customize] Frame 1Symbol 225 EditableText
"thawSteps"Symbol 246 MovieClip [customize] Frame 1Symbol 227 EditableText
"basePoints"Symbol 246 MovieClip [customize] Frame 1Symbol 229 EditableText
"baseChain"Symbol 246 MovieClip [customize] Frame 1Symbol 231 EditableText
"pieceImage"Symbol 246 MovieClip [customize] Frame 1Symbol 233 EditableText
"grayImage"Symbol 246 MovieClip [customize] Frame 1Symbol 235 EditableText
"eventsPerLevel"Symbol 246 MovieClip [customize] Frame 1Symbol 239 EditableText
"dropsDecrease"Symbol 246 MovieClip [customize] Frame 1Symbol 241 EditableText
"minDrops"Symbol 246 MovieClip [customize] Frame 1Symbol 243 EditableText
"txt"Symbol 248 MovieClip [chain_display] Frame 1Symbol 247 EditableText
"sound_x"Symbol 265 MovieClip Frame 1Symbol 262 MovieClip
"music_x"Symbol 265 MovieClip Frame 1Symbol 262 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS1/AS2.
Protect (24)Timeline Frame 10 bytes ""
ExportAssets (56)Timeline Frame 1Symbol 1 as "04b03"
ExportAssets (56)Timeline Frame 1Symbol 2 as "ArialBitmap"
ExportAssets (56)Timeline Frame 1Symbol 3 as "ArialBoldBitmap"
ExportAssets (56)Timeline Frame 1Symbol 4 as "EurostileBold"
ExportAssets (56)Timeline Frame 1Symbol 5 as "sound_good_code"
ExportAssets (56)Timeline Frame 1Symbol 6 as "sound_fall"
ExportAssets (56)Timeline Frame 1Symbol 7 as "sound_lure_reward"
ExportAssets (56)Timeline Frame 1Symbol 8 as "sound_lure"
ExportAssets (56)Timeline Frame 1Symbol 9 as "sound_lure_unspawn"
ExportAssets (56)Timeline Frame 1Symbol 10 as "sound_disappear"
ExportAssets (56)Timeline Frame 1Symbol 11 as "sound_chain_9"
ExportAssets (56)Timeline Frame 1Symbol 12 as "sound_chain_8"
ExportAssets (56)Timeline Frame 1Symbol 13 as "sound_chain_7"
ExportAssets (56)Timeline Frame 1Symbol 14 as "sound_chain_12"
ExportAssets (56)Timeline Frame 1Symbol 15 as "sound_chain_11"
ExportAssets (56)Timeline Frame 1Symbol 16 as "sound_chain_10"
ExportAssets (56)Timeline Frame 1Symbol 17 as "sound_cull"
ExportAssets (56)Timeline Frame 1Symbol 18 as "sound_chain_6"
ExportAssets (56)Timeline Frame 1Symbol 19 as "sound_chain_5"
ExportAssets (56)Timeline Frame 1Symbol 20 as "sound_chain_4"
ExportAssets (56)Timeline Frame 1Symbol 21 as "sound_chain_3"
ExportAssets (56)Timeline Frame 1Symbol 22 as "sound_chain_2"
ExportAssets (56)Timeline Frame 1Symbol 23 as "sound_bad_code"
ExportAssets (56)Timeline Frame 1Symbol 24 as "sound_detonate"
ExportAssets (56)Timeline Frame 1Symbol 25 as "sound_power"
ExportAssets (56)Timeline Frame 1Symbol 26 as "crack4.png"
ExportAssets (56)Timeline Frame 1Symbol 27 as "crack1.png"
ExportAssets (56)Timeline Frame 1Symbol 29 as "power_postpone"
ExportAssets (56)Timeline Frame 1Symbol 33 as "power_tilt"
ExportAssets (56)Timeline Frame 1Symbol 35 as "power_transmute"
ExportAssets (56)Timeline Frame 1Symbol 38 as "power_cull"
ExportAssets (56)Timeline Frame 1Symbol 41 as "power_lure"
ExportAssets (56)Timeline Frame 1Symbol 43 as "power_promote"
ExportAssets (56)Timeline Frame 1Symbol 45 as "power_reveal"
ExportAssets (56)Timeline Frame 1Symbol 48 as "power_erode"
ExportAssets (56)Timeline Frame 1Symbol 51 as "power_detonate"
ExportAssets (56)Timeline Frame 1Symbol 53 as "power_thrive"
ExportAssets (56)Timeline Frame 1Symbol 55 as "power_sift"
ExportAssets (56)Timeline Frame 1Symbol 58 as "power_redeem"
ExportAssets (56)Timeline Frame 1Symbol 60 as "cornerBox"
ExportAssets (56)Timeline Frame 1Symbol 85 as "modeChooser"
ExportAssets (56)Timeline Frame 1Symbol 111 as "powerChooser"
ExportAssets (56)Timeline Frame 1Symbol 114 as "gridBack"
ExportAssets (56)Timeline Frame 1Symbol 116 as "crack2"
ExportAssets (56)Timeline Frame 1Symbol 120 as "levelClock"
ExportAssets (56)Timeline Frame 1Symbol 138 as "saveScore"
ExportAssets (56)Timeline Frame 1Symbol 141 as "unlock_meter"
ExportAssets (56)Timeline Frame 1Symbol 163 as "powerUnlocker"
ExportAssets (56)Timeline Frame 1Symbol 169 as "gameOver"
ExportAssets (56)Timeline Frame 1Symbol 172 as "erode_line_3"
ExportAssets (56)Timeline Frame 1Symbol 175 as "erode_line_2"
ExportAssets (56)Timeline Frame 1Symbol 178 as "erode_line_1"
ExportAssets (56)Timeline Frame 1Symbol 180 as "promote_arrow"
ExportAssets (56)Timeline Frame 1Symbol 192 as "lure_anim"
ExportAssets (56)Timeline Frame 1Symbol 197 as "cull_effect"
ExportAssets (56)Timeline Frame 1Symbol 200 as "effect_sift"
ExportAssets (56)Timeline Frame 1Symbol 203 as "score_float"
ExportAssets (56)Timeline Frame 1Symbol 208 as "sequence_progress_final"
ExportAssets (56)Timeline Frame 1Symbol 246 as "customize"
ExportAssets (56)Timeline Frame 1Symbol 248 as "chain_display"
ExportAssets (56)Timeline Frame 1Symbol 250 as "crack1"
ExportAssets (56)Timeline Frame 1Symbol 268 as "__Packages.util.StaticBroadcaster"
ExportAssets (56)Timeline Frame 1Symbol 269 as "__Packages.chainfactor.Game"
ExportAssets (56)Timeline Frame 1Symbol 270 as "__Packages.chainfactor.Board"
ExportAssets (56)Timeline Frame 1Symbol 271 as "__Packages.util.ThinkManager"
ExportAssets (56)Timeline Frame 1Symbol 272 as "__Packages.chainfactor.SoundManager"
ExportAssets (56)Timeline Frame 1Symbol 273 as "__Packages.mx.transitions.OnEnterFrameBeacon"
ExportAssets (56)Timeline Frame 1Symbol 274 as "__Packages.mx.transitions.BroadcasterMX"
ExportAssets (56)Timeline Frame 1Symbol 275 as "__Packages.mx.transitions.Tween"
ExportAssets (56)Timeline Frame 1Symbol 276 as "__Packages.mx.transitions.easing.None"
ExportAssets (56)Timeline Frame 1Symbol 277 as "__Packages.chainfactor.Group"
ExportAssets (56)Timeline Frame 1Symbol 278 as "__Packages.util.Broadcaster"
ExportAssets (56)Timeline Frame 1Symbol 279 as "__Packages.chainfactor.Piece"
ExportAssets (56)Timeline Frame 1Symbol 280 as "__Packages.mx.transitions.easing.Regular"
ExportAssets (56)Timeline Frame 1Symbol 281 as "__Packages.util.Util"
ExportAssets (56)Timeline Frame 1Symbol 282 as "__Packages.chainfactor.Debug"
ExportAssets (56)Timeline Frame 1Symbol 283 as "__Packages.chainfactor.LevelManager"
ExportAssets (56)Timeline Frame 1Symbol 284 as "__Packages.chainfactor.ILevelBehavior"
ExportAssets (56)Timeline Frame 1Symbol 285 as "__Packages.chainfactor.Stats"
ExportAssets (56)Timeline Frame 1Symbol 286 as "__Packages.chainfactor.powers.PowerManager"
ExportAssets (56)Timeline Frame 1Symbol 287 as "__Packages.chainfactor.powers.PowerMeter"
ExportAssets (56)Timeline Frame 1Symbol 288 as "__Packages.chainfactor.powers.Power"
ExportAssets (56)Timeline Frame 1Symbol 289 as "__Packages.chainfactor.powers.PManaPoints"
ExportAssets (56)Timeline Frame 1Symbol 290 as "__Packages.chainfactor.powers.PThaw"
ExportAssets (56)Timeline Frame 1Symbol 291 as "__Packages.chainfactor.powers.PShow"
ExportAssets (56)Timeline Frame 1Symbol 292 as "__Packages.chainfactor.powers.PPrime"
ExportAssets (56)Timeline Frame 1Symbol 293 as "__Packages.chainfactor.powers.PPostpone"
ExportAssets (56)Timeline Frame 1Symbol 294 as "__Packages.chainfactor.AddGarbage"
ExportAssets (56)Timeline Frame 1Symbol 295 as "__Packages.chainfactor.powers.PPromote"
ExportAssets (56)Timeline Frame 1Symbol 296 as "__Packages.chainfactor.powers.PSniper"
ExportAssets (56)Timeline Frame 1Symbol 297 as "__Packages.chainfactor.powers.PGoldCoin"
ExportAssets (56)Timeline Frame 1Symbol 298 as "__Packages.mx.transitions.easing.Bounce"
ExportAssets (56)Timeline Frame 1Symbol 299 as "__Packages.chainfactor.powers.PBomb"
ExportAssets (56)Timeline Frame 1Symbol 300 as "__Packages.chainfactor.PieceBomb"
ExportAssets (56)Timeline Frame 1Symbol 301 as "__Packages.chainfactor.powers.PEfficiency"
ExportAssets (56)Timeline Frame 1Symbol 302 as "__Packages.chainfactor.powers.PRotate"
ExportAssets (56)Timeline Frame 1Symbol 303 as "__Packages.chainfactor.powers.PScoreballs"
ExportAssets (56)Timeline Frame 1Symbol 304 as "__Packages.chainfactor.Randomizer"
ExportAssets (56)Timeline Frame 1Symbol 305 as "__Packages.chainfactor.HighScoreManager"
ExportAssets (56)Timeline Frame 1Symbol 306 as "__Packages.chainfactor.LevelClock"
ExportAssets (56)Timeline Frame 1Symbol 307 as "__Packages.chainfactor.SaveScore"
ExportAssets (56)Timeline Frame 1Symbol 308 as "__Packages.chainfactor.PowerUnlocker"
ExportAssets (56)Timeline Frame 1Symbol 309 as "__Packages.chainfactor.SequenceProgressFinal"
ExportAssets (56)Timeline Frame 1Symbol 310 as "__Packages.chainfactor.Customize"
ExportAssets (56)Timeline Frame 1Symbol 311 as "__Packages.chainfactor.ChainDisplay"
ExportAssets (56)Timeline Frame 1Symbol 312 as "__Packages.chainfactor.powers.PowerChooser"

Dynamic Text Variables

chainfactor.Game.VERSIONSymbol 255 EditableText"<p align="right"></p>"




http://swfchan.com/1/1877/info.shtml
Created: 12/8 -2019 07:34:23 Last modified: 12/8 -2019 07:34:23 Server time: 28/04 -2024 17:43:16