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

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

Witchery 101.swf

This is the info page for
Flash #46256

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


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

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

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

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

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

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

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

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

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

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

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

0

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

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

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

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

ActionScript [AS3]

Section 1
//classCombos (classes.classCombos) package classes { import flash.geom.*; public class classCombos { private var _aPatterns:Array; private var _WILDCARD:uint; public function classCombos(){ _WILDCARD = classINC._SYMBOL_WILDCARD; _aPatterns = new Array(); _aPatterns.push([[1, 1], [2, 0]]); _aPatterns.push([[1, -1], [2, 0]]); _aPatterns.push([[1, 1], [0, 2]]); _aPatterns.push([[-1, 1], [0, 2]]); _aPatterns.push([[1, 0], [2, 1]]); _aPatterns.push([[1, 1], [2, 1]]); _aPatterns.push([[0, 1], [-1, 2]]); _aPatterns.push([[-1, 1], [-1, 2]]); _aPatterns.push([[1, -1], [2, -1]]); _aPatterns.push([[1, 0], [2, -1]]); _aPatterns.push([[0, 1], [1, 2]]); _aPatterns.push([[1, 1], [1, 2]]); _aPatterns.push([[1, 0], [3, 0]]); _aPatterns.push([[2, 0], [3, 0]]); _aPatterns.push([[0, 1], [0, 3]]); _aPatterns.push([[0, 2], [0, 3]]); } private function searchVCombo(_arg1:Point, _arg2:uint, _arg3:Array):Array{ var _local4:Array; var _local5:int; _local4 = new Array(); _local4.push([_arg1.y, _arg1.x]); _local5 = (_arg1.y - 1); while (_local5 >= 0) { if (_arg3[_local5][_arg1.x].colour >= classINC._SYMBOL_ROCK){ break; } else { if ((((((_arg3[_local5][_arg1.x].colour == _arg2)) || ((_arg3[_local5][_arg1.x].colour == _WILDCARD)))) && (!(_arg3[_local5][_arg1.x].isMarked)))){ _local4.push([_local5, _arg1.x]); } else { break; }; }; _local5--; }; _local5 = (_arg1.y + 1); while (_local5 < _arg3.length) { if (_arg3[_local5][_arg1.x].colour >= classINC._SYMBOL_ROCK){ break; } else { if ((((((_arg3[_local5][_arg1.x].colour == _arg2)) || ((_arg3[_local5][_arg1.x].colour == _WILDCARD)))) && (!(_arg3[_local5][_arg1.x].isMarked)))){ _local4.push([_local5, _arg1.x]); } else { break; }; }; _local5++; }; return (_local4); } public function getIndestructibleTiles(_arg1:Array, _arg2:Array):void{ var _local3:int; var _local4:int; _local3 = 0; while (_local3 < _arg2.length) { _local4 = 0; while (_local4 < _arg2[0].length) { if (_arg2[_local3][_local4] != null){ if (_arg2[_local3][_local4].colour >= classINC._SYMBOL_ROCK){ if (!_arg2[_local3][_local4].isSpellMarked){ _arg1.push(new Array(_local3, _local4)); _arg2[_local3][_local4].isSpellMarked = true; }; }; }; _local4++; }; _local3++; }; } public function getSwappableTiles(_arg1:Array, _arg2:Array, _arg3:Array):void{ var _local4:uint; var _local5:uint; _local4 = _arg1[0]; _local5 = _arg1[1]; if (_local4 > 0){ addSpellTile(new Array((_local4 - 1), _local5), _arg2, _arg3); }; if (_local4 < (_arg3.length - 1)){ addSpellTile(new Array((_local4 + 1), _local5), _arg2, _arg3); }; if (_local5 > 0){ addSpellTile(new Array(_local4, (_local5 - 1)), _arg2, _arg3); }; if (_local5 < (_arg3[_local4].length - 1)){ addSpellTile(new Array(_local4, (_local5 + 1)), _arg2, _arg3); }; } private function searchVWildcardCombo(_arg1:Point, _arg2:uint, _arg3:Array):Array{ var _local4:Array; var _local5:Array; var _local6:Array; var _local7:int; var _local8:uint; _local4 = new Array(); _local5 = new Array(); _local6 = new Array(); _local4.push([_arg1.y, _arg1.x]); _local7 = (_arg1.y - 1); while (_local7 >= 0) { if (_arg3[_local7][_arg1.x].colour >= classINC._SYMBOL_ROCK){ break; }; if ((((_arg2 == _WILDCARD)) && (!((_arg3[_local7][_arg1.x].colour == _WILDCARD))))){ _arg2 = _arg3[_local7][_arg1.x].colour; }; if ((((((_arg3[_local7][_arg1.x].colour == _arg2)) || ((_arg3[_local7][_arg1.x].colour == _WILDCARD)))) && (!(_arg3[_local7][_arg1.x].isMarked)))){ _local5.push([_local7, _arg1.x]); } else { break; }; _local7--; }; _arg2 = _WILDCARD; _local7 = (_arg1.y + 1); while (_local7 < _arg3.length) { if (_arg3[_local7][_arg1.x].colour >= classINC._SYMBOL_ROCK){ break; }; if ((((_arg2 == _WILDCARD)) && (!((_arg3[_local7][_arg1.x].colour == _WILDCARD))))){ _arg2 = _arg3[_local7][_arg1.x].colour; }; if ((((((_arg3[_local7][_arg1.x].colour == _arg2)) || ((_arg3[_local7][_arg1.x].colour == _WILDCARD)))) && (!(_arg3[_local7][_arg1.x].isMarked)))){ _local6.push([_local7, _arg1.x]); } else { break; }; _local7++; }; if (_local5.length >= 2){ _local8 = 0; while (_local8 < _local5.length) { _local4.push(_local5[_local8]); _local8++; }; } else { if (_local5.length == 1){ if (_local6.length >= 1){ if (_arg3[_local5[0][0]][_local5[0][1]].colour == _arg3[_local6[0][0]][_local6[0][1]].colour){ _local8 = 0; while (_local8 < _local5.length) { _local4.push(_local5[_local8]); _local8++; }; }; }; }; }; if (_local6.length >= 2){ _local8 = 0; while (_local8 < _local6.length) { _local4.push(_local6[_local8]); _local8++; }; } else { if (_local6.length == 1){ if (_local5.length >= 1){ if (_arg3[_local5[0][0]][_local5[0][1]].colour == _arg3[_local6[0][0]][_local6[0][1]].colour){ _local8 = 0; while (_local8 < _local6.length) { _local4.push(_local6[_local8]); _local8++; }; }; }; }; }; return (_local4); } public function getColumnTiles(_arg1:uint, _arg2:uint, _arg3:Array, _arg4:Array):void{ var _local5:uint; var _local6:uint; var _local7:uint; var _local8:uint; _local5 = (_arg1 * uint((_arg4[0].length / _arg2))); _local6 = ((_local5 + uint((_arg4[0].length / _arg2))) - 1); _local7 = getRandom(_local5, _local6); _local8 = 0; while (_local8 < _arg4.length) { if (_arg4[_local8][_local7] != null){ if (!_arg4[_local8][_local7].isSpellMarked){ _arg3.push(new Array(_local8, _local7)); _arg4[_local8][_local7].isSpellMarked = true; }; }; _local8++; }; } public function getAdjacentTiles(_arg1:Array, _arg2:Array, _arg3:Array):void{ var _local4:uint; var _local5:uint; _local4 = _arg1[0]; _local5 = _arg1[1]; if (_local4 > 0){ addSpellTile(new Array((_local4 - 1), _local5), _arg2, _arg3); }; if (_local4 < (_arg3.length - 1)){ addSpellTile(new Array((_local4 + 1), _local5), _arg2, _arg3); }; if (_local5 > 0){ addSpellTile(new Array(_local4, (_local5 - 1)), _arg2, _arg3); }; if (_local5 < (_arg3[_local4].length - 1)){ addSpellTile(new Array(_local4, (_local5 + 1)), _arg2, _arg3); }; if ((((_local4 > 0)) && ((_local5 > 0)))){ addSpellTile(new Array((_local4 - 1), (_local5 - 1)), _arg2, _arg3); }; if ((((_local4 > 0)) && ((_local5 < (_arg3[_local4].length - 1))))){ addSpellTile(new Array((_local4 - 1), (_local5 + 1)), _arg2, _arg3); }; if ((((_local4 < (_arg3.length - 1))) && ((_local5 > 0)))){ addSpellTile(new Array((_local4 + 1), (_local5 - 1)), _arg2, _arg3); }; if ((((_local4 < (_arg3.length - 1))) && ((_local5 < (_arg3[_local4].length - 1))))){ addSpellTile(new Array((_local4 + 1), (_local5 + 1)), _arg2, _arg3); }; } private function searchHCombo(_arg1:Point, _arg2:uint, _arg3:Array):Array{ var _local4:Array; var _local5:int; _local4 = new Array(); _local4.push([_arg1.y, _arg1.x]); _local5 = (_arg1.x - 1); while (_local5 >= 0) { if (_arg3[_arg1.y][_local5].colour >= classINC._SYMBOL_ROCK){ break; } else { if ((((((_arg3[_arg1.y][_local5].colour == _arg2)) || ((_arg3[_arg1.y][_local5].colour == _WILDCARD)))) && (!(_arg3[_arg1.y][_local5].isMarked)))){ _local4.push([_arg1.y, _local5]); } else { break; }; }; _local5--; }; _local5 = (_arg1.x + 1); while (_local5 < _arg3[_arg1.y].length) { if (_arg3[_arg1.y][_local5].colour >= classINC._SYMBOL_ROCK){ break; } else { if ((((((_arg3[_arg1.y][_local5].colour == _arg2)) || ((_arg3[_arg1.y][_local5].colour == _WILDCARD)))) && (!(_arg3[_arg1.y][_local5].isMarked)))){ _local4.push([_arg1.y, _local5]); } else { break; }; }; _local5++; }; return (_local4); } private function getRandom(_arg1:int, _arg2:int):int{ return (Math.round((_arg1 + (Math.random() * (_arg2 - _arg1))))); } private function searchHWildcardCombo(_arg1:Point, _arg2:uint, _arg3:Array):Array{ var _local4:Array; var _local5:Array; var _local6:Array; var _local7:uint; var _local8:uint; var _local9:int; var _local10:uint; _local4 = new Array(); _local5 = new Array(); _local6 = new Array(); _local7 = _arg2; _local8 = _arg2; _local4.push([_arg1.y, _arg1.x]); _local9 = (_arg1.x - 1); while (_local9 >= 0) { if (_arg3[_arg1.y][_local9].colour >= classINC._SYMBOL_ROCK){ break; }; if ((((_local7 == _WILDCARD)) && (!((_arg3[_arg1.y][_local9].colour == _WILDCARD))))){ _local7 = _arg3[_arg1.y][_local9].colour; }; if ((((((_arg3[_arg1.y][_local9].colour == _local7)) || ((_arg3[_arg1.y][_local9].colour == _WILDCARD)))) && (!(_arg3[_arg1.y][_local9].isMarked)))){ _local5.push([_arg1.y, _local9]); } else { break; }; _local9--; }; _local9 = (_arg1.x + 1); while (_local9 < _arg3[_arg1.y].length) { if (_arg3[_arg1.y][_local9].colour >= classINC._SYMBOL_ROCK){ break; }; if ((((_local8 == _WILDCARD)) && (!((_arg3[_arg1.y][_local9].colour == _WILDCARD))))){ _local8 = _arg3[_arg1.y][_local9].colour; }; if ((((((_arg3[_arg1.y][_local9].colour == _local8)) || ((_arg3[_arg1.y][_local9].colour == _WILDCARD)))) && (!(_arg3[_arg1.y][_local9].isMarked)))){ _local6.push([_arg1.y, _local9]); } else { break; }; _local9++; }; if (_local5.length >= 2){ _local10 = 0; while (_local10 < _local5.length) { _local4.push(_local5[_local10]); _local10++; }; } else { if (_local5.length == 1){ if (_local6.length >= 1){ if ((((((_local7 == _local8)) || ((_local7 == _WILDCARD)))) || ((_local8 == _WILDCARD)))){ _local10 = 0; while (_local10 < _local5.length) { _local4.push(_local5[_local10]); _local10++; }; }; }; }; }; if (_local6.length >= 2){ _local10 = 0; while (_local10 < _local6.length) { _local4.push(_local6[_local10]); _local10++; }; } else { if (_local6.length == 1){ if (_local5.length >= 1){ if ((((((_local7 == _local8)) || ((_local7 == _WILDCARD)))) || ((_local8 == _WILDCARD)))){ _local10 = 0; while (_local10 < _local6.length) { _local4.push(_local6[_local10]); _local10++; }; }; }; }; }; return (_local4); } private function addSpellTile(_arg1:Array, _arg2:Array, _arg3:Array):void{ var _local4:Boolean; var _local5:uint; if (_arg3[_arg1[0]][_arg1[1]] != null){ if (!_arg3[_arg1[0]][_arg1[1]].isSpellMarked){ _local4 = false; _local5 = 0; while (_local5 < _arg2.length) { if ((((_arg2[_local5][0] > _arg1[0])) || ((((_arg2[_local5][0] == _arg1[0])) && ((_arg2[_local5][1] > _arg1[1])))))){ _arg2.splice(_local5, 0, _arg1); _local4 = true; break; }; _local5++; }; if (!_local4){ _arg2.push(_arg1); }; _arg3[_arg1[0]][_arg1[1]].isSpellMarked = true; }; }; } public function getRandomTile(_arg1:Array, _arg2:Array, _arg3:uint=999):void{ var _local4:uint; var _local5:uint; var _local6:uint; var _local7:uint; _local4 = 0; _local5 = _arg3; _local6 = getRandom(0, (_arg2.length - 1)); _local7 = getRandom(0, (_arg2[0].length - 1)); while ((((((_arg2[_local6][_local7] == null)) || ((_local5 == _arg3)))) && ((_local4 < 16)))) { _local6 = getRandom(0, (_arg2.length - 1)); _local7 = getRandom(0, (_arg2[0].length - 1)); _local4++; if (_arg2[_local6][_local7] != null){ _local5 = _arg2[_local6][_local7].colour; }; }; if (_arg2[_local6][_local7] != null){ if (_arg2[_local6][_local7].colour != _arg3){ if (!_arg2[_local6][_local7].isSpellMarked){ _arg1.push(new Array(_local6, _local7)); _arg2[_local6][_local7].isSpellMarked = true; }; }; }; } public function getDiagonalTiles(_arg1:Array, _arg2:Array):void{ var _local3:int; var _local4:int; _local3 = 0; _local4 = 0; while (_local4 < _arg2.length) { if (_arg2[_local4][_local3] != null){ if (!_arg2[_local4][_local3].isSpellMarked){ _arg1.push(new Array(_local4, _local3)); _arg2[_local4][_local3].isSpellMarked = true; }; }; _local3++; _local4++; }; _local3 = (_arg2[0].length - 1); _local4 = 0; while (_local4 < _arg2.length) { if (_arg2[_local4][_local3] != null){ if (!_arg2[_local4][_local3].isSpellMarked){ _arg1.push(new Array(_local4, _local3)); _arg2[_local4][_local3].isSpellMarked = true; }; }; _local3--; _local4++; }; } public function getElementalTiles(_arg1:Array, _arg2:Array):void{ var _local3:int; var _local4:int; _local3 = 0; while (_local3 < _arg2.length) { _local4 = 0; while (_local4 < _arg2[0].length) { if (_arg2[_local3][_local4] != null){ if (_arg2[_local3][_local4].colour <= classINC._SYMBOL_NATURE){ if (!_arg2[_local3][_local4].isSpellMarked){ _arg1.push(new Array(_local3, _local4)); _arg2[_local3][_local4].isSpellMarked = true; }; }; }; _local4++; }; _local3++; }; } public function getCombosForTile(_arg1:Point, _arg2:Array):Array{ var _local3:Array; var _local4:Array; var _local5:Array; var _local6:uint; var _local7:uint; var _local8:uint; var _local9:uint; var _local10:uint; _local3 = new Array(); _local4 = new Array(); _local5 = new Array(); _local6 = _arg2[_arg1.y][_arg1.x].colour; if (_arg2[_arg1.y][_arg1.x].isMarked){ return (_local3); }; if (_local6 == _WILDCARD){ _local4 = searchHWildcardCombo(_arg1, _local6, _arg2); } else { _local4 = searchHCombo(_arg1, _local6, _arg2); }; if (_local4.length >= 3){ _local3.push(_local4); _local8 = 0; while (_local8 < _local4.length) { _local6 = _arg2[_local4[_local8][0]][_local4[_local8][1]].colour; if (_local6 == _WILDCARD){ _local5 = searchVWildcardCombo(new Point(_local4[_local8][1], _local4[_local8][0]), _local6, _arg2); } else { _local5 = searchVCombo(new Point(_local4[_local8][1], _local4[_local8][0]), _local6, _arg2); }; if (_local5.length >= 3){ _local3.push(_local5); }; _local8++; }; } else { _local4 = new Array(); if (_local6 == _WILDCARD){ _local5 = searchVWildcardCombo(_arg1, _local6, _arg2); } else { _local5 = searchVCombo(_arg1, _local6, _arg2); }; if (_local5.length >= 3){ _local3.push(_local5); _local9 = 0; while (_local9 < _local5.length) { _local6 = _arg2[_local5[_local9][0]][_local5[_local9][1]].colour; if (_local6 == _WILDCARD){ _local4 = searchHWildcardCombo(new Point(_local5[_local9][1], _local5[_local9][0]), _local6, _arg2); } else { _local4 = searchHCombo(new Point(_local5[_local9][1], _local5[_local9][0]), _local6, _arg2); }; if (_local4.length >= 3){ _local3.push(_local4); }; _local9++; }; }; }; _local7 = 0; while (_local7 < _local3.length) { _local10 = 0; while (_local10 < _local3[_local7].length) { _arg2[_local3[_local7][_local10][0]][_local3[_local7][_local10][1]].isMarked = true; _local10++; }; _local7++; }; return (_local3); } public function findNextMove(_arg1:Array):Array{ var _local2:Boolean; var _local3:Array; var _local4:uint; var _local5:uint; var _local6:int; var _local7:int; var _local8:uint; var _local9:uint; var _local10:uint; var _local11:uint; _local2 = false; _local3 = new Array(); _local4 = 0; _local5 = 0; _local6 = 0; _local7 = 0; _local8 = 0; while (_local8 < _arg1.length) { _local9 = 0; while (_local9 < _arg1[_local8].length) { _local4 = _arg1[_local8][_local9].colour; if (_local4 >= classINC._SYMBOL_ROCK){ } else { _local10 = 0; while (_local10 < _aPatterns.length) { _local2 = true; _local11 = 0; while (_local11 < _aPatterns[_local10].length) { _local6 = _aPatterns[_local10][_local11][0]; _local7 = _aPatterns[_local10][_local11][1]; if (((((((((_local8 + _local7) < 0)) || (((_local9 + _local6) < 0)))) || (((_local8 + _local7) >= _arg1.length)))) || (((_local9 + _local6) >= _arg1[_local8].length)))){ _local2 = false; } else { _local5 = _arg1[(_local8 + _local7)][(_local9 + _local6)].colour; if (_local5 >= classINC._SYMBOL_ROCK){ _local2 = false; } else { if ((((_local4 == _WILDCARD)) && (!((_local5 == _WILDCARD))))){ _local4 = _local5; } else { if (((!((_local5 == _local4))) && (!((_local5 == _WILDCARD))))){ _local2 = false; }; }; }; }; _local11++; }; if (_local2){ _local3.push(new Array(_local8, _local9)); _local11 = 0; while (_local11 < _aPatterns[_local10].length) { _local6 = _aPatterns[_local10][_local11][0]; _local7 = _aPatterns[_local10][_local11][1]; _local3.push(new Array((_local8 + _local7), (_local9 + _local6))); _local11++; }; _local10 = (_aPatterns.length - 1); _local9 = (_arg1[_local8].length - 1); _local8 = (_arg1.length - 1); }; _local10++; }; }; _local9++; }; _local8++; }; return (_local3); } public function getTiles(_arg1:uint, _arg2:uint, _arg3:Array, _arg4:Array):void{ var _local5:int; var _local6:int; _local5 = 0; while (_local5 < _arg4.length) { _local6 = 0; while (_local6 < _arg4[0].length) { if (_arg4[_local5][_local6] != null){ if (_arg4[_local5][_local6].colour == _arg1){ if (!_arg4[_local5][_local6].isSpellMarked){ if (_arg3.length < _arg2){ _arg3.push(new Array(_local5, _local6)); _arg4[_local5][_local6].isSpellMarked = true; }; }; }; }; _local6++; }; _local5++; }; } } }//package classes
Section 2
//classGameLogic (classes.classGameLogic) package classes { import flash.display.*; import flash.events.*; import flash.geom.*; import com.meteorgames.libs.xvars.*; import com.meteorgames.libs.custommc.*; import com.meteorgames.libs.custombutton.*; import com.meteorgames.libs.secretcode.*; import flash.utils.*; public class classGameLogic { private var _XVAR_COMBOSGET:XVar; private var _isHintShown:Boolean; private var _iSpellTileIndex:int; private var _uiGameMode:uint; private var _XVAR_BONUS:XVar; private var _aPos:Array; private var _tFunTimer:int; private var _mcRollover:MovieClip; private var _aCombos:Array; private var _XVAR_MULTI:XVar; private var _iTimerUpdate:int; private var _XVAR_POTION_N:XVar; private var _isTimerInitialized:Boolean; private var _XVAR_POTION_V:XVar; private var _uiMarked:uint; private var _mcHolder:MovieClip; private var _SPELL:uint; private var _iSpellTileCount:int; private var _cbutHint:customButton; private var _aCheck:Array; private var _XVAR_SWAPCOMBOS:XVar; private var _mcMarker2:MovieClip; private var _SYSTEM:Object; private var _mcMarker1:MovieClip; private var _mcFXHolder:MovieClip; private var _mcOverlay:MovieClip; private var _GTIMER:int; private var _mcScore:MovieClip; private var cmcCauldron:customMC; private var _keyDown:uint; private var _SECRETS:SecretCode; private var _aBlowUp:Array; private var _XVAR_LEVEL:XVar; private var _aHintMCs:Array; private var _cbutGameMode1:customButton; private var _cbutGameMode2:customButton; private var _XVAR_COMBOS:XVar; private var _XVAR_SCORE:XVar; private var _aHint:Array; private var _iLastColour:uint; private var _objFPS:Object; private var _aSpellSwappers:Array; private var _XVAR_SCROLL:XVar; private var _ptMouseTile:Point; private var _cbutGameMode3:customButton; private var _GSTATE:uint; private var _aMarked:Array; private var _GTREFRESH:int; private var _iGameTimer:int; private var _XVAR_MOVES:XVar; private var _aSetup:Array; private var _aSpellTiles:Array; private var _GNEXT:uint; private var _COMBOS:classCombos; private var _iTimerDelay:int; private var _PARENT:Object; private var _uiSpellLevel:uint; private var _aLevel:Array; private var _aSpellCombo:Array; private var _mcScoreBonus:MovieClip; private var _iSpellComboIndex:int; private var _mcTimerBar:MovieClip; private var _cbutContinue:customButton; private var _mcSpellAni:MovieClip; private var _mcLevelFields:MovieClip; private var _SOUND:Object; private var _XVAR_MOVESMAX:XVar; public function classGameLogic(_arg1:Object, _arg2:Object, _arg3:Object){ var _local4:Object; var _local5:uint; var _local6:uint; super(); _PARENT = _arg1; _SYSTEM = _arg2; _SOUND = _arg3; _COMBOS = new classCombos(); _GSTATE = classINC._GS_SELECTMODE; _GNEXT = _GSTATE; _GTIMER = 0; _GTREFRESH = 0; _XVAR_SCORE = new XVar(0); _XVAR_BONUS = new XVar(0); _XVAR_SWAPCOMBOS = new XVar(0); _XVAR_MULTI = new XVar(0); _XVAR_POTION_N = new XVar(0); _XVAR_POTION_V = new XVar(0); _XVAR_SCROLL = new XVar(0); _XVAR_LEVEL = new XVar(0); _XVAR_COMBOS = new XVar(0); _XVAR_COMBOSGET = new XVar(0); _XVAR_MOVES = new XVar(0); _XVAR_MOVESMAX = new XVar(0); _mcHolder = _PARENT.mcHolderMask.mcHolder; _mcFXHolder = _PARENT.mcFXHolder; _uiGameMode = classINC._MODE_NORMAL; _aSetup = new Array(); _aSetup[classINC._MODE_NORMAL] = {rows:8, cols:8, tileW:44, tileH:44, numTiles:6, time:-1}; _aSetup[classINC._MODE_TIMED] = {rows:8, cols:8, tileW:44, tileH:44, numTiles:6, time:120}; _aSetup[classINC._MODE_LEVEL] = {rows:8, cols:8, tileW:44, tileH:44, numTiles:6, time:-1}; _aPos = new Array(); _local4 = _aSetup[_uiGameMode]; _local5 = 0; while (_local5 < _local4.rows) { _aPos.push(new Array()); _local6 = 0; while (_local6 < _local4.cols) { _aPos[_local5].push([(_local6 * _local4.tileW), (_local5 * _local4.tileH)]); _local6++; }; _local5++; }; _aLevel = new Array(); _iLastColour = 0; _iGameTimer = -1; _iTimerDelay = -1; _iTimerUpdate = -1; _isTimerInitialized = false; _tFunTimer = ((getTimer() + 300000) + getRandom(1, 300000)); _SPELL = 0; _aSpellCombo = new Array(); _aSpellTiles = new Array(); _aSpellSwappers = new Array(); _uiSpellLevel = 0; _iSpellTileIndex = -1; _iSpellComboIndex = -1; _iSpellTileCount = 0; _isHintShown = false; _ptMouseTile = new Point(); _uiMarked = 0; _aMarked = new Array(new Point(), new Point()); _aCheck = new Array(); _aCombos = new Array(); _aBlowUp = new Array(); _aHint = new Array(); _aHintMCs = new Array(); _mcScore = _PARENT.mcScoreTweenUp; _mcScoreBonus = _PARENT.mcScoreTween; _mcRollover = new mcRollover(); _mcMarker1 = new mcMarker(); _mcMarker2 = new mcMarker(); _mcRollover.cacheAsBitmap = true; _mcMarker1.cacheAsBitmap = true; _mcMarker2.cacheAsBitmap = true; _mcRollover.visible = false; _mcMarker1.visible = false; _mcMarker2.visible = false; _mcHolder.addChild(_mcRollover); _mcHolder.addChild(_mcMarker1); _mcHolder.addChild(_mcMarker2); _mcSpellAni = null; _mcLevelFields = null; _objFPS = new Object(); _objFPS.bShowFPS = new Boolean(false); _objFPS.iCount = new int(0); _objFPS.iNextCheck = new int(0); _objFPS.tfFPS = _PARENT.tfFPS; _cbutHint = new customButton(_SYSTEM, _PARENT.butHint, null, showNextMove, ""); _cbutHint.hide(); cmcCauldron = new customMC(_PARENT.mcCauldron, 33, null, false); cmcCauldron.initLoop("low", 2, 27); cmcCauldron.initLoop("medium", 28, 53); cmcCauldron.initLoop("high", 54, 95); if (!_PARENT.mcWitch.hasEventListener(MouseEvent.CLICK)){ _PARENT.mcWitch.addEventListener(MouseEvent.CLICK, onWitchClick, false, 0, true); }; _PARENT.setMCButton(_PARENT.mcWitch); if (!_PARENT.mcSecretBook.hasEventListener(MouseEvent.CLICK)){ _PARENT.mcSecretBook.addEventListener(MouseEvent.CLICK, onSecretBookClick, false, 0, true); }; _PARENT.setMCButton(_PARENT.mcSecretBook); _SECRETS = new SecretCode(); _SECRETS.addCode(new Array("108.61", "112.96", "116.24", "100.68", "101.216"), 1); } private function setLevelMode():void{ var _local1:uint; _XVAR_LEVEL.add(1); _local1 = uint(_XVAR_LEVEL.out()); _XVAR_COMBOS.set(0); if (_local1 == 1){ _XVAR_COMBOSGET.set(5); } else { if (_local1 == 2){ _XVAR_COMBOSGET.set(10); } else { if (_local1 == 3){ _XVAR_COMBOSGET.set(13); } else { if (_local1 == 4){ _XVAR_COMBOSGET.set(15); } else { if (_local1 == 5){ _XVAR_COMBOSGET.set(17); } else { _XVAR_COMBOSGET.add(1); }; }; }; }; }; _XVAR_MOVES.set(0); _XVAR_MOVESMAX.set(30); updateLevelModeText(); } public function gameOver():void{ _GSTATE = classINC._GS_GAMEOVER; } private function init():void{ _cbutGameMode1.destroy(); _cbutGameMode2.destroy(); _cbutGameMode3.destroy(); _cbutGameMode1 = null; _cbutGameMode2 = null; _cbutGameMode3 = null; _mcHolder.removeChild(_mcOverlay); _mcOverlay = null; _XVAR_SCORE.set(0); _XVAR_BONUS.set(0); _XVAR_SWAPCOMBOS.set(0); _XVAR_MULTI.set(10); _XVAR_POTION_N.set(0); _XVAR_POTION_V.set(0); _XVAR_SCROLL.set(0); _XVAR_LEVEL.set(0); _XVAR_COMBOS.set(0); _XVAR_COMBOSGET.set(0); _XVAR_MOVES.set(0); _XVAR_MOVESMAX.set(0); if (_uiGameMode == classINC._MODE_TIMED){ _PARENT.mcTimer.visible = true; _mcTimerBar = _PARENT.mcTimer.mcBottle.mcBar.mcMask; _mcTimerBar.height = int((100 * 0.75)); _mcTimerBar.y = (150 - _mcTimerBar.height); _PARENT.mcTimer.gotoAndPlay(2); _SOUND.playFX(classINC._FX_PUFF); _XVAR_MULTI.set(20); } else { if (_uiGameMode == classINC._MODE_LEVEL){ _mcLevelFields = new mcLevelModeFields(); _mcLevelFields.x = 60; _mcLevelFields.y = 419; _SYSTEM.setTextField(_mcLevelFields.tfCombos, ""); _SYSTEM.setTextField(_mcLevelFields.tfMoves, ""); _PARENT.addChild(_mcLevelFields); _XVAR_MULTI.set(20); }; }; createLevel(); _aLevel[(_aSetup[_uiGameMode].rows - 1)][0].isMoving = true; } public function MouseDownEvent(_arg1:MouseEvent):void{ if (_GSTATE != classINC._GS_PLAY){ return; }; if ((((_ptMouseTile.x >= 0)) && ((_ptMouseTile.y >= 0)))){ if (_keyDown == 16){ } else { markTile(); }; }; } private function markTile():void{ var _local1:MovieClip; _SOUND.playFX(classINC._FX_SELECT, 0, 1, 0.5); _local1 = _mcMarker1; if (_uiMarked == 1){ _local1 = _mcMarker2; }; if (_uiMarked == 1){ if ((((_aMarked[0].x == _ptMouseTile.x)) && ((_aMarked[0].y == _ptMouseTile.y)))){ unmarkTiles(); return; }; }; _aMarked[_uiMarked].x = _ptMouseTile.x; _aMarked[_uiMarked].y = _ptMouseTile.y; _local1.x = (_aMarked[_uiMarked].x * _aSetup[_uiGameMode].tileW); _local1.y = (_aMarked[_uiMarked].y * _aSetup[_uiGameMode].tileH); _local1.visible = true; if (++_uiMarked >= 2){ swapTiles(); }; } private function killTile(_arg1:Array):void{ var _local2:MovieClip; var _local3:classTile; _local3 = _aLevel[_arg1[0]][_arg1[1]]; if (_local3 == null){ return; }; _local2 = new mcTilesBlowup(); _local2.gotoAndStop(_local3.colour); _local2.x = _aPos[_arg1[0]][_arg1[1]][0]; _local2.y = _aPos[_arg1[0]][_arg1[1]][1]; _mcHolder.addChild(_local2); _aBlowUp.push(_local2); _mcHolder.removeChild(_local3._mcTile); _local3 = null; _aLevel[_arg1[0]][_arg1[1]] = null; } private function gameMode1RollOver():void{ _SOUND.playFX(classINC._FX_SLIDEOUT); _mcOverlay.tfText2.htmlText = classTEXT.MODETEXT1; } private function gameMode2RollOver():void{ _SOUND.playFX(classINC._FX_SLIDEOUT); _mcOverlay.tfText2.htmlText = classTEXT.MODETEXT2; } private function gameMode3RollOver():void{ _SOUND.playFX(classINC._FX_SLIDEOUT); _mcOverlay.tfText2.htmlText = classTEXT.MODETEXT3; } private function delayGameTimer():void{ if (_uiGameMode != classINC._MODE_TIMED){ return; }; _iGameTimer = (_iGameTimer + (_GTIMER - _iTimerDelay)); if ((_iGameTimer - _GTIMER) > ((_aSetup[_uiGameMode].time * 1000) * 2)){ _iGameTimer = (_GTIMER + ((_aSetup[_uiGameMode].time * 1000) * 2)); }; _iTimerDelay = 0; updateTimerBar(true); } private function continueGame(_arg1:Event):void{ _PARENT.playButtonClick(); _cbutContinue.destroy(); _mcHolder.removeChild(_mcOverlay); _mcOverlay = null; _GSTATE = _GNEXT; if (_GSTATE == classINC._GS_DROPALL){ _SOUND.playFX(classINC._FX_DROPALL); _PARENT.mcPlayField.gotoAndStop(2); _GNEXT = classINC._GS_FINDNEXTMOVE; }; } private function findNextMove():Boolean{ var _local1:Boolean; _local1 = false; _aHint = _COMBOS.findNextMove(_aLevel); if (_aHint.length > 0){ _local1 = true; }; return (_local1); } private function onWitchClick(_arg1:MouseEvent):void{ if (_GSTATE != classINC._GS_PLAY){ return; }; _SOUND.playFX(classINC._FX_HINT); _iTimerDelay = _GTIMER; showOverlay(5); _GSTATE = classINC._GS_GAMEPAUSED; } private function continuePausedGame(_arg1:Event):void{ _PARENT.playButtonClick(); _cbutContinue.destroy(); _mcHolder.removeChild(_mcOverlay); _mcOverlay = null; delayGameTimer(); _GSTATE = classINC._GS_PLAY; } private function gameModeRollout():void{ _mcOverlay.tfText2.htmlText = ""; } private function unmarkTiles():void{ _aMarked[0] = new Point(); _aMarked[1] = new Point(); hideMarkers(); _uiMarked = 0; } private function dropFreeTile(_arg1:uint, _arg2:uint, _arg3:uint):void{ var _local4:int; var _local5:classTile; var _local6:Array; var _local7:Array; _local4 = 4; _local5 = _aLevel[_arg3][_arg2]; _local6 = _aPos[_arg3][_arg2]; _local7 = _aPos[_arg1][_arg2]; _aLevel[_arg1][_arg2] = _local5; _aLevel[_arg3][_arg2] = null; _local5.resetPos(_local6[0], _local6[1], _local7[0], _local7[1], _local4); _local5.isMoving = true; _aCheck.push(new Point(_arg2, _arg1)); } private function doFunStuff():void{ if (getRandom(1, 500) == 250){ _SOUND.playFX(classINC._FX_PUFF); _PARENT.mcSurprise.gotoAndPlay("tposg"); } else { _SOUND.playFX(classINC._FX_CAT); _PARENT.mcSurprise.gotoAndPlay("cat"); }; } private function removeTiles():void{ var _local1:uint; var _local2:uint; var _local3:uint; _SOUND.playFX(classINC._FX_POP); _aBlowUp = new Array(); _aSpellCombo = new Array(); _local1 = 0; while (_local1 < _aCombos.length) { _local2 = 0; while (_local2 < _aCombos[_local1].length) { _local3 = 0; while (_local3 < _aCombos[_local1][_local2].length) { if (_SPELL > 0){ if ((((_local1 == _iSpellTileIndex)) && ((_local2 == _iSpellComboIndex)))){ _aSpellCombo.push(new Array(_aCombos[_local1][_local2][_local3][0], _aCombos[_local1][_local2][_local3][1])); }; }; if (_aLevel[_aCombos[_local1][_local2][_local3][0]][_aCombos[_local1][_local2][_local3][1]] != null){ killTile(_aCombos[_local1][_local2][_local3]); }; _local3++; }; _local2++; }; _local1++; }; _aCombos = new Array(); } private function initGameTimer():void{ if (_uiGameMode != classINC._MODE_TIMED){ return; }; _iGameTimer = ((_GTIMER + (_aSetup[_uiGameMode].time * 1000)) + 1000); _iTimerDelay = 0; _iTimerUpdate = 0; _isTimerInitialized = true; } private function transformTile(_arg1:Array, _arg2:int):void{ var _local3:MovieClip; var _local4:classTile; _local4 = _aLevel[_arg1[0]][_arg1[1]]; if (_local4 == null){ return; }; if (_arg2 == -1){ _arg2 = getRandom(1, _aSetup[_uiGameMode].numTiles); }; _aLevel[_arg1[0]][_arg1[1]].colour = _arg2; _aLevel[_arg1[0]][_arg1[1]]._mcTile.gotoAndStop(_arg2); } private function dropFreeTiles():void{ var _local1:int; var _local2:int; var _local3:int; _local1 = (_aSetup[_uiGameMode].rows - 1); while (_local1 > 0) { _local2 = 0; while (_local2 < _aSetup[_uiGameMode].cols) { if (_aLevel[_local1][_local2] == null){ _local3 = (_local1 - 1); while (_local3 >= 0) { if (_aLevel[_local3][_local2] != null){ dropFreeTile(_local1, _local2, _local3); _local3 = -1; }; _local3--; }; }; _local2++; }; _local1--; }; } private function updateTimerBar(_arg1:Boolean):Boolean{ var _local2:int; if (((_arg1) || ((_GTIMER >= _iTimerUpdate)))){ _local2 = int(((_iGameTimer - _GTIMER) / (_aSetup[_uiGameMode].time * 10))); _mcTimerBar.height = int((_local2 * 0.75)); _mcTimerBar.y = (150 - _mcTimerBar.height); _iTimerUpdate = (_GTIMER + 2000); }; return ((_GTIMER < _iGameTimer)); } private function prepareSpell():Boolean{ var _local1:Boolean; var _local2:uint; var _local3:uint; _local1 = true; _aSpellTiles = new Array(); if (_SPELL == classINC._SPELL_FIRE){ if (_aSpellCombo.length > 0){ _local2 = 0; while (_local2 < _aSpellCombo.length) { _COMBOS.getAdjacentTiles(_aSpellCombo[_local2], _aSpellTiles, _aLevel); _local2++; }; }; } else { if (_SPELL == classINC._SPELL_STORM){ if (_uiSpellLevel == classINC._SPELL_LEVEL_1){ _local2 = 0; while (_local2 < 3) { _COMBOS.getRandomTile(_aSpellTiles, _aLevel); _local2++; }; } else { if (_uiSpellLevel == classINC._SPELL_LEVEL_2){ _COMBOS.getDiagonalTiles(_aSpellTiles, _aLevel); }; }; } else { if (_SPELL == classINC._SPELL_NATURE){ if (_uiSpellLevel == classINC._SPELL_LEVEL_1){ _COMBOS.getTiles(classINC._SYMBOL_ROCK, 3, _aSpellTiles, _aLevel); _local3 = _aSpellTiles.length; _local2 = 0; while (_local2 < (3 - _local3)) { _COMBOS.getRandomTile(_aSpellTiles, _aLevel, classINC._SYMBOL_NATURE); _local2++; }; } else { if (_uiSpellLevel == classINC._SPELL_LEVEL_2){ _local2 = 0; while (_local2 < 2) { _COMBOS.getColumnTiles(_local2, 2, _aSpellTiles, _aLevel); _local2++; }; }; }; } else { if (_SPELL == classINC._SPELL_SPIRIT){ if (_uiSpellLevel == classINC._SPELL_LEVEL_1){ _local2 = 0; while (_local2 < 3) { _COMBOS.getRandomTile(_aSpellTiles, _aLevel); _local2++; }; } else { if (_uiSpellLevel == classINC._SPELL_LEVEL_2){ _local2 = 0; while (_local2 < 8) { _COMBOS.getRandomTile(_aSpellTiles, _aLevel); _local2++; }; }; }; }; }; }; }; if (_uiSpellLevel == classINC._SPELL_LEVEL_1){ _iSpellTileCount = 3; } else { _iSpellTileCount = _aSpellTiles.length; }; if (_aSpellTiles.length <= 0){ _SPELL = 0; _local1 = false; }; return (_local1); } public function KeyUpEvent(_arg1:KeyboardEvent):void{ if ((((_arg1.keyCode == 16)) || ((_arg1.keyCode == 17)))){ _keyDown = 0; }; } private function getWildcardComboColour(_arg1:Array):uint{ var _local2:uint; var _local3:classTile; var _local4:uint; _local2 = _aLevel[_arg1[0][0]][_arg1[0][1]].colour; _local4 = 1; while (_local4 < _arg1.length) { _local3 = _aLevel[_arg1[_local4][0]][_arg1[_local4][1]]; if (_local3.colour != classINC._SYMBOL_WILDCARD){ if (_local2 == classINC._SYMBOL_WILDCARD){ _local2 = _local3.colour; } else { if (_local3.colour != _local2){ _local2 = classINC._SYMBOL_WILDCARD; break; }; }; }; _local4++; }; return (_local2); } private function showOverlay(_arg1:uint):void{ var _local2:String; var _local3:String; if (_mcOverlay != null){ _mcHolder.removeChild(_mcOverlay); }; if (_arg1 == 0){ _mcOverlay = new mcGameModes(); _SYSTEM.setTextField(_mcOverlay.tfText, classTEXT.SELECTMODE); _SYSTEM.setTextField(_mcOverlay.tfText2, ""); _cbutGameMode1 = new customButton(_SYSTEM, _mcOverlay.butMode1, null, setGameMode1, ""); _cbutGameMode2 = new customButton(_SYSTEM, _mcOverlay.butMode2, null, setGameMode2, ""); _cbutGameMode3 = new customButton(_SYSTEM, _mcOverlay.butMode3, null, setGameMode3, ""); _cbutGameMode1.setRolloverCallback(gameMode1RollOver); _cbutGameMode2.setRolloverCallback(gameMode2RollOver); _cbutGameMode3.setRolloverCallback(gameMode3RollOver); _cbutGameMode1.setRolloutCallback(gameModeRollout); _cbutGameMode2.setRolloutCallback(gameModeRollout); _cbutGameMode3.setRolloutCallback(gameModeRollout); _mcOverlay.butMode1.tabEnabled = false; _mcOverlay.butMode2.tabEnabled = false; _mcOverlay.butMode3.tabEnabled = false; } else { if (_arg1 == 1){ _SOUND.playFX(classINC._FX_GAMEOVER); _mcOverlay = new mcOverlay(); _SYSTEM.setTextField(_mcOverlay.tfHeader, classTEXT.GAMEOVER); _SYSTEM.setTextField(_mcOverlay.tfText, classTEXT.NOMOREMOVES); } else { if (_arg1 == 2){ _SOUND.playFX(classINC._FX_GAMEOVER); _mcOverlay = new mcOverlay(); _SYSTEM.setTextField(_mcOverlay.tfHeader, classTEXT.GAMEOVER); _SYSTEM.setTextField(_mcOverlay.tfText, classTEXT.NOMORETIME); } else { if (_arg1 == 3){ _SOUND.playFX(classINC._FX_GAMEOVER); _mcOverlay = new mcOverlay(); _SYSTEM.setTextField(_mcOverlay.tfHeader, classTEXT.GAMEOVER); _SYSTEM.setTextField(_mcOverlay.tfText, classTEXT.NOCOMBOS); } else { if (_arg1 == 4){ _mcOverlay = new mcNextLevel(); _local2 = classTEXT.NEXTLEVEL.replace("%1", _XVAR_LEVEL.out()); _local3 = classTEXT.LEVELGOAL.replace("%1", _XVAR_COMBOSGET.out()); _local3 = _local3.replace("%2", _XVAR_MOVESMAX.out()); _SYSTEM.setTextField(_mcOverlay.tfHeader, _local2); _SYSTEM.setTextField(_mcOverlay.tfText, _local3); _cbutContinue = new customButton(_SYSTEM, _mcOverlay.butContinue, null, continueGame, ""); _cbutContinue.setRolloverCallback(continueRollOver); _mcOverlay.butContinue.tabEnabled = false; } else { if (_arg1 == 5){ _mcOverlay = new mcNextLevel(); _SYSTEM.setTextField(_mcOverlay.tfHeader, classTEXT.GAMEPAUSED); _mcOverlay.tfText.htmlText = ""; _cbutContinue = new customButton(_SYSTEM, _mcOverlay.butContinue, null, continuePausedGame, ""); _cbutContinue.setRolloverCallback(continueRollOver); _mcOverlay.butContinue.tabEnabled = false; } else { if (_arg1 == 6){ _mcOverlay = new mcNextLevel(); _SYSTEM.setTextField(_mcOverlay.tfHeader, classTEXT.SHUFFLE1); _SYSTEM.setTextField(_mcOverlay.tfText, classTEXT.SHUFFLE2); _cbutContinue = new customButton(_SYSTEM, _mcOverlay.butContinue, null, continueGame, ""); _cbutContinue.setRolloverCallback(continueRollOver); _mcOverlay.butContinue.tabEnabled = false; _cbutContinue.hide(); }; }; }; }; }; }; }; _mcOverlay.cacheAsBitmap = true; _mcOverlay.x = 0; _mcOverlay.y = 0; _mcHolder.addChild(_mcOverlay); } private function updateScore(_arg1:int):void{ _mcScore.mcScoreField.tfShowPoints.htmlText = ("+" + String((_arg1 * _XVAR_MULTI.out()))); _mcScore.gotoAndPlay(2); _XVAR_SCORE.add((_arg1 * _XVAR_MULTI.out())); _PARENT.tfScore2.text = _XVAR_SCORE.out(); if (_uiGameMode == classINC._MODE_TIMED){ _iGameTimer = (_iGameTimer + (_arg1 * 50)); }; } private function isOneHigherThanTwo(_arg1:uint, _arg2:uint):Boolean{ var _local3:Boolean; _local3 = false; if (_arg1 == classINC._SPELL_SPIRIT){ if (_arg2 != classINC._SPELL_SPIRIT){ _local3 = true; }; } else { if (_arg1 == classINC._SPELL_STORM){ if (((!((_arg2 == classINC._SPELL_SPIRIT))) && (!((_arg2 == classINC._SPELL_STORM))))){ _local3 = true; }; } else { if (_arg1 == classINC._SPELL_FIRE){ if (((((!((_arg2 == classINC._SPELL_SPIRIT))) && (!((_arg2 == classINC._SPELL_STORM))))) && (!((_arg2 == classINC._SPELL_FIRE))))){ _local3 = true; }; }; }; }; return (_local3); } private function addNewTiles():void{ var _local1:Object; var _local2:MovieClip; var _local3:uint; var _local4:classTile; var _local5:int; var _local6:Boolean; var _local7:int; var _local8:int; var _local9:int; var _local10:uint; _local1 = _aSetup[_uiGameMode]; _local3 = _iLastColour; _local5 = 0; _local6 = true; _local7 = 4; _local8 = (_local1.rows - 1); while (_local8 >= 0) { _local9 = 0; while (_local9 < _local1.cols) { if (_aLevel[_local8][_local9] != null){ } else { _local2 = new mcTiles(); _local2.cacheAsBitmap = true; _local10 = getRandom(1, 66); if (_local10 == 11){ _local3 = classINC._SYMBOL_WILDCARD; } else { if (_local10 == 55){ _local3 = classINC._SYMBOL_ROCK; }; }; if (_local10 == 66){ _local3 = classINC._SYMBOL_CAT; } else { while (_local3 == _iLastColour) { _local3 = getRandom(1, _local1.numTiles); }; }; _iLastColour = _local3; _local2.gotoAndStop(_local3); _local4 = new classTile(_local2); _local4.colour = _local3; _local4.resetPos(_aPos[_local8][_local9][0], -(_local1.tileH), _aPos[_local8][_local9][0], _aPos[_local8][_local9][1], _local7); if (_local6){ _local4.isMoving = true; _local6 = false; }; _aLevel[_local8][_local9] = _local4; _mcHolder.addChild(_local2); _aCheck.push(new Point(_local9, _local8)); }; _local9++; }; _local8--; }; } private function swapSpellTile(_arg1:Array):void{ var _local2:Array; var _local3:int; _local2 = new Array(); _COMBOS.getSwappableTiles(_arg1, _local2, _aLevel); if (_local2.length > 0){ _local3 = getRandom(0, (_local2.length - 1)); _aSpellSwappers = new Array(); _aSpellSwappers.push(new Point(_arg1[1], _arg1[0])); _aSpellSwappers.push(new Point(_local2[_local3][1], _local2[_local3][0])); swapTileObjects(_aSpellSwappers); _aCheck.push(_aSpellSwappers[0]); _aCheck.push(_aSpellSwappers[1]); _GSTATE = classINC._GS_SWAPSPELLTILES; _GNEXT = classINC._GS_SPELL_SHOW; }; } private function leaveGame():void{ _SOUND.fadeFX(classINC._FX_SPELLFIRE, 0, 0, 1500); _SOUND.fadeFX(classINC._FX_SPELLSTORM, 0, 0, 1500); _SOUND.fadeFX(classINC._FX_SPELLSPIRIT, 0, 0, 1500); _SOUND.fadeFX(classINC._FX_SPELLNATURE, 0, 0, 1500); cleanUp(); _PARENT.gameOver(_XVAR_SCORE, _uiGameMode); } private function noRollover():void{ _ptMouseTile.x = -1; _ptMouseTile.y = -1; _mcRollover.visible = false; } private function adjustMultiplier():void{ if (_XVAR_POTION_N.out() > 0){ _XVAR_POTION_V.add(Number((_XVAR_SWAPCOMBOS.out() - 1))); if (Number(_XVAR_POTION_V.out()) > 9){ _XVAR_POTION_V.set(9); }; _XVAR_BONUS.set(_XVAR_POTION_V.out()); _XVAR_POTION_N.add(-1); }; if (_XVAR_POTION_N.out() <= 0){ showMultiplierText(""); _XVAR_BONUS.set(1); }; } private function continueRollOver():void{ _SOUND.playFX(classINC._FX_SLIDEOUT); } public function main(_arg1:Event):void{ _GTIMER = getTimer(); if (_GTIMER < _GTREFRESH){ return; }; _GTREFRESH = (_GTIMER + 15); switch (_GSTATE){ case classINC._GS_SELECTMODE: showOverlay(0); _GSTATE = classINC._GS_NULL; break; case classINC._GS_INIT: init(); if (_uiGameMode == classINC._MODE_LEVEL){ _GSTATE = classINC._GS_NEXTLEVEL; _GNEXT = classINC._GS_DROPALL; } else { _SOUND.playFX(classINC._FX_DROPALL); _PARENT.mcPlayField.gotoAndStop(2); _GSTATE = classINC._GS_DROPALL; _GNEXT = classINC._GS_FINDNEXTMOVE; }; break; case classINC._GS_NEXTLEVEL: setLevelMode(); showOverlay(4); _GSTATE = classINC._GS_NULL; break; case classINC._GS_DROPALL: if (classRender.renderDropAllTiles(_aLevel)){ _GSTATE = _GNEXT; }; break; case classINC._GS_FINDNEXTMOVE: if (!findNextMove()){ if (_uiGameMode == classINC._MODE_NORMAL){ showOverlay(1); _GSTATE = classINC._GS_NULL; } else { showOverlay(6); _GSTATE = classINC._GS_SHUFFLE; }; } else { _GTREFRESH = 0; adjustMultiplier(); if (!_isTimerInitialized){ initGameTimer(); } else { delayGameTimer(); }; _GSTATE = classINC._GS_PLAY; }; break; case classINC._GS_SHUFFLE: destroyLevel(); createLevel(); _aLevel[(_aSetup[_uiGameMode].rows - 1)][0].isMoving = true; _cbutContinue.show(); _GSTATE = classINC._GS_NULL; _GNEXT = classINC._GS_DROPALL; break; case classINC._GS_PLAY: getMousePos(); if (_uiGameMode == classINC._MODE_TIMED){ if (!updateTimerBar(false)){ showOverlay(2); _GSTATE = classINC._GS_NULL; }; } else { if (_uiGameMode == classINC._MODE_LEVEL){ if (Number(_XVAR_MOVES.out()) >= Number(_XVAR_MOVESMAX.out())){ if (Number(_XVAR_COMBOS.out()) < Number(_XVAR_COMBOSGET.out())){ showOverlay(3); _GSTATE = classINC._GS_NULL; } else { _GSTATE = classINC._GS_NEXTLEVEL; _GNEXT = classINC._GS_PLAY; }; } else { if (Number(_XVAR_COMBOS.out()) >= Number(_XVAR_COMBOSGET.out())){ _GSTATE = classINC._GS_NEXTLEVEL; _GNEXT = classINC._GS_PLAY; }; }; }; }; if (_GTIMER > _tFunTimer){ if (_GSTATE == classINC._GS_PLAY){ _tFunTimer = ((_GTIMER + 300000) + getRandom(1, 300000)); doFunStuff(); }; }; break; case classINC._GS_SWAPTILES: if (classRender.renderSwapTiles(_aLevel, _aMarked)){ if (_GNEXT == classINC._GS_PLAY){ delayGameTimer(); unmarkTiles(); }; _GSTATE = _GNEXT; }; break; case classINC._GS_FINDCOMBOS: if (findCombos()){ hideMarkers(); _GSTATE = classINC._GS_REMOVETILES; } else { reswapTiles(); _GTREFRESH = (_GTREFRESH + 250); }; break; case classINC._GS_REMOVETILES: removeTiles(); if (_uiGameMode == classINC._MODE_LEVEL){ updateLevelModeText(); }; if (_SPELL > 0){ _GSTATE = classINC._GS_SPELL_PREPARE; } else { _GSTATE = classINC._GS_BLOWUPTILES; }; break; case classINC._GS_SPELL_PREPARE: if (prepareSpell()){ if (_SPELL == classINC._SPELL_FIRE){ _SOUND.playFX(classINC._FX_SPELLFIRE, 0, 999, 1); } else { if (_SPELL == classINC._SPELL_STORM){ _SOUND.playFX(classINC._FX_SPELLSTORM, 0, 999, 1); } else { if (_SPELL == classINC._SPELL_SPIRIT){ _SOUND.playFX(classINC._FX_SPELLSPIRIT, 0, 999, 1); } else { if (_SPELL == classINC._SPELL_NATURE){ _SOUND.playFX(classINC._FX_SPELLNATURE, 0, 999, 1); }; }; }; }; createSpellAni(); _GSTATE = classINC._GS_SPELL_SHOW; } else { _GSTATE = classINC._GS_BLOWUPTILES; }; break; case classINC._GS_SPELL_SHOW: if (spellComplete()){ if (_SPELL == classINC._SPELL_FIRE){ _SOUND.fadeFX(classINC._FX_SPELLFIRE, 0, 0, 1500); } else { if (_SPELL == classINC._SPELL_STORM){ _SOUND.fadeFX(classINC._FX_SPELLSTORM, 0, 0, 1500); } else { if (_SPELL == classINC._SPELL_SPIRIT){ _SOUND.fadeFX(classINC._FX_SPELLSPIRIT, 0, 0, 1500); } else { if (_SPELL == classINC._SPELL_NATURE){ _SOUND.fadeFX(classINC._FX_SPELLNATURE, 0, 0, 1500); }; }; }; }; _GSTATE = classINC._GS_BLOWUPTILES; }; break; case classINC._GS_SWAPSPELLTILES: if (classRender.renderSwapTiles(_aLevel, _aSpellSwappers)){ _GSTATE = _GNEXT; }; break; case classINC._GS_BLOWUPTILES: if (blowUpTiles()){ unmarkTiles(); dropFreeTiles(); _GSTATE = classINC._GS_DROPTILES; _GNEXT = classINC._GS_ADDNEWTILES; }; break; case classINC._GS_DROPTILES: if (classRender.renderDropTiles(_aLevel)){ _SOUND.playFX(classINC._FX_DROP); _GSTATE = _GNEXT; }; break; case classINC._GS_ADDNEWTILES: addNewTiles(); _GSTATE = classINC._GS_DROPALL; _GNEXT = classINC._GS_FINDMORECOMBOS; break; case classINC._GS_FINDMORECOMBOS: if (findCombos()){ hideMarkers(); _GSTATE = classINC._GS_REMOVETILES; } else { _GTREFRESH = 0; _GSTATE = classINC._GS_FINDNEXTMOVE; }; break; case classINC._GS_GAMEOVER: leaveGame(); _GSTATE = classINC._GS_NULL; break; }; _objFPS.iCount++; if (_GTIMER > _objFPS.iNextCheck){ if (_objFPS.bShowFPS){ _objFPS.tfFPS.text = ("FPS: " + String(_objFPS.iCount)); }; _objFPS.iCount = 0; _objFPS.iNextCheck = (_GTIMER + 1000); }; } private function findCombos():Boolean{ var _local1:Boolean; var _local2:Array; var _local3:uint; var _local4:int; var _local5:Number; var _local6:int; var _local7:int; var _local8:uint; var _local9:Boolean; var _local10:uint; var _local11:uint; var _local12:uint; var _local13:uint; var _local14:classTile; var _local15:uint; _local1 = false; _local2 = new Array(); resetTileMarkedFlags(); _SPELL = 0; _uiSpellLevel = 0; _iSpellTileIndex = -1; _iSpellComboIndex = -1; _aCombos = new Array(); _local3 = 0; while (_local3 < _aCheck.length) { if (_aLevel[_aCheck[_local3].y][_aCheck[_local3].x].colour >= classINC._SYMBOL_ROCK){ } else { _local2 = _COMBOS.getCombosForTile(_aCheck[_local3], _aLevel); if (_local2.length > 0){ _local1 = true; _aCombos.push(_local2); }; }; _local3++; }; _local4 = 0; if (_aCombos.length > 0){ _local5 = Number(_XVAR_BONUS.out()); _local6 = 0; _local7 = 1; if (_local5 > 1){ showMultiplierText(("x" + String(_local5))); } else { showMultiplierText(""); }; if (_aCombos.length > 1){ _local7 = 2; }; _local8 = 0; while (_local8 < _aCombos.length) { if (_aCombos[_local8].length > 1){ _local7 = 3; }; _local8++; }; _local9 = false; if (_uiGameMode == classINC._MODE_LEVEL){ _local10 = 0; if (_aCombos.length == 1){ if (_aCombos[0].length > 1){ _local10 = 1; } else { if (_aCombos[0][0].length > 3){ _local10 = 1; }; }; } else { _local11 = 0; _local12 = 0; while (_local12 < _aCombos.length) { if (_aCombos[_local12].length > 1){ _local11++; } else { if (_aCombos[_local12][0].length > 3){ _local11++; }; }; _local12++; }; if (_local11 > 0){ _local10 = _local11; } else { _local10 = 1; }; }; if (_local10 > 0){ _SOUND.playFX(classINC._FX_LEVELCOMBO); _XVAR_COMBOS.add(_local10); }; }; _local8 = 0; while (_local8 < _aCombos.length) { _local13 = 0; while (_local13 < _aCombos[_local8].length) { _local14 = _aLevel[_aCombos[_local8][_local13][0][0]][_aCombos[_local8][_local13][0][1]]; _local15 = _local14.colour; if (_local15 == classINC._SYMBOL_WILDCARD){ _local15 = getWildcardComboColour(_aCombos[_local8][_local13]); }; if (_aCombos[_local8][_local13].length >= classINC._SPELL_LEVEL_1){ if ((((_local15 >= classINC._SYMBOL_FIRE)) && ((_local15 <= classINC._SYMBOL_NATURE)))){ if (_SPELL == 0){ _SPELL = _local15; _uiSpellLevel = _aCombos[_local8][_local13].length; _iSpellTileIndex = _local8; _iSpellComboIndex = _local13; } else { if (_aCombos[_local8][_local13].length > _uiSpellLevel){ _SPELL = _local15; _uiSpellLevel = _aCombos[_local8][_local13].length; _iSpellTileIndex = _local8; _iSpellComboIndex = _local13; } else { if (_aCombos[_local8][_local13].length == _uiSpellLevel){ if (isOneHigherThanTwo(_local15, _SPELL)){ _SPELL = _local15; _uiSpellLevel = _aCombos[_local8][_local13].length; _iSpellTileIndex = _local8; _iSpellComboIndex = _local13; }; }; }; }; } else { if (_local15 == classINC._SYMBOL_POTION){ if (_aCombos[_local8][_local13].length >= classINC._SPELL_LEVEL_2){ if (_local5 <= 3){ cmcCauldron.playLoop("high"); _SOUND.playFX(classINC._FX_CAULDRON); _XVAR_POTION_N.set(4); _local9 = true; _XVAR_POTION_V.set(3); _XVAR_BONUS.set(3); }; } else { if (_local5 <= 2){ cmcCauldron.playLoop("medium"); _SOUND.playFX(classINC._FX_CAULDRON); _XVAR_POTION_N.set(4); _local9 = true; _XVAR_POTION_V.set(2); _XVAR_BONUS.set(2); }; }; _local5 = Number(_XVAR_BONUS.out()); showMultiplierText(("x" + String(_local5))); } else { if (_local15 == classINC._SYMBOL_SCROLL){ if (_aCombos[_local8][_local13].length >= classINC._SPELL_LEVEL_2){ _XVAR_SCROLL.add(3); } else { _XVAR_SCROLL.add(1); }; if (_XVAR_SCROLL.out() > 3){ _XVAR_SCROLL.set(3); }; _SOUND.playFX(classINC._FX_SHWOOM); _cbutHint.show(); _cbutHint.mc.mcText.gotoAndStop(_XVAR_SCROLL.out()); } else { if (_local15 == classINC._SYMBOL_CAT){ if (_aCombos[_local8][_local13].length >= classINC._SPELL_LEVEL_2){ if (_local5 < 9){ cmcCauldron.playLoop("high"); _SOUND.playFX(classINC._FX_CAULDRON); _SOUND.playFX(classINC._FX_CAT); _XVAR_POTION_N.set(2); _local9 = true; _XVAR_POTION_V.set(9); _XVAR_BONUS.set(9); }; } else { if (_local5 < 6){ cmcCauldron.playLoop("medium"); _SOUND.playFX(classINC._FX_CAULDRON); _SOUND.playFX(classINC._FX_CAT); _XVAR_POTION_N.set(2); _local9 = true; _XVAR_POTION_V.set(6); _XVAR_BONUS.set(6); }; }; _local5 = Number(_XVAR_BONUS.out()); showMultiplierText(("x" + String(_local5))); }; }; }; }; } else { if (_local15 == classINC._SYMBOL_CAT){ if (_local5 < 3){ cmcCauldron.playLoop("low"); _SOUND.playFX(classINC._FX_CAULDRON); _SOUND.playFX(classINC._FX_CAT); _local9 = true; _XVAR_POTION_N.set(2); _XVAR_POTION_V.set(3); _XVAR_BONUS.set(3); _local5 = Number(_XVAR_BONUS.out()); showMultiplierText(("x" + String(_local5))); }; }; }; _local6 = Math.round((_aCombos[_local8][_local13].length * _local5)); _local4 = (_local4 + _local6); _local13++; }; _local8++; }; _XVAR_SWAPCOMBOS.add(1); if (_local5 < 9){ _XVAR_BONUS.add(1); }; }; _aCheck = new Array(); if (_local4 > 0){ updateScore(_local4); }; return (_local1); } private function getRandom(_arg1:int, _arg2:int):int{ return (Math.round((_arg1 + (Math.random() * (_arg2 - _arg1))))); } private function blowUpTiles():Boolean{ var _local1:Boolean; var _local2:uint; _local1 = true; _local2 = 0; while (_local2 < _aBlowUp.length) { if (_aBlowUp[_local2] == null){ } else { if (_aBlowUp[_local2].ani.currentFrame >= 11){ _mcHolder.removeChild(_aBlowUp[_local2]); _aBlowUp[_local2] = null; } else { _local1 = false; }; }; _local2++; }; return (_local1); } public function showNextMove(_arg1:Event):void{ var _local2:uint; var _local3:MovieClip; var _local4:uint; if (_GSTATE != classINC._GS_PLAY){ return; }; _PARENT.playButtonClick(); if (_isHintShown){ return; }; _isHintShown = true; _SOUND.playFX(classINC._FX_HINT); _local2 = 0; while (_local2 < _aHintMCs.length) { _mcHolder.removeChild(_aHintMCs[_local2]); _local2++; }; _aHintMCs = new Array(); _local4 = 0; while (_local4 < _aHint.length) { _local3 = new mcHint(); _local3.x = _aPos[_aHint[_local4][0]][_aHint[_local4][1]][0]; _local3.y = _aPos[_aHint[_local4][0]][_aHint[_local4][1]][1]; _mcHolder.addChild(_local3); _aHintMCs.push(_local3); _local4++; }; _XVAR_SCROLL.add(-1); if (_XVAR_SCROLL.out() <= 0){ _XVAR_SCROLL.set(0); _cbutHint.hide(); } else { _cbutHint.mc.mcText.gotoAndStop(_XVAR_SCROLL.out()); }; } private function swapTiles():void{ var _local1:int; var _local2:uint; _local1 = (Math.abs((_aMarked[0].x - _aMarked[1].x)) + Math.abs((_aMarked[0].y - _aMarked[1].y))); _local2 = 0; while (_local2 < _aHintMCs.length) { _mcHolder.removeChild(_aHintMCs[_local2]); _local2++; }; _aHintMCs = new Array(); _isHintShown = false; noRollover(); _iTimerDelay = _GTIMER; if (_local1 > 1){ unmarkTiles(); } else { if (_uiGameMode == classINC._MODE_LEVEL){ _XVAR_MOVES.add(1); updateLevelModeText(); }; _XVAR_SWAPCOMBOS.set(0); swapTileObjects(_aMarked); _aCheck = new Array(); _aCheck.push(_aMarked[0]); _aCheck.push(_aMarked[1]); _SOUND.playFX(classINC._FX_WOOSH); _GSTATE = classINC._GS_SWAPTILES; _GNEXT = classINC._GS_FINDCOMBOS; }; } private function destroyLevel():void{ var _local1:uint; var _local2:uint; _local1 = 0; while (_local1 < _aLevel.length) { _local2 = 0; while (_local2 < _aLevel[_local1].length) { if (_aLevel[_local1][_local2] != null){ if (_aLevel[_local1][_local2]._mcTile != null){ _mcHolder.removeChild(_aLevel[_local1][_local2]._mcTile); }; _aLevel[_local1][_local2] = null; }; _local2++; }; _local1++; }; _aLevel = new Array(); } private function spellComplete():Boolean{ var _local1:Boolean; var _local2:uint; _local1 = false; if ((((_aSpellTiles.length <= 0)) || ((_iSpellTileCount <= 0)))){ return (true); }; _local2 = 0; if (_uiSpellLevel == classINC._SPELL_LEVEL_1){ _GTREFRESH = (_GTREFRESH + 500); _local2 = getRandom(0, (_aSpellTiles.length - 1)); } else { _GTREFRESH = (_GTREFRESH + 125); }; _mcSpellAni.x = _aPos[_aSpellTiles[_local2][0]][_aSpellTiles[_local2][1]][0]; _mcSpellAni.y = _aPos[_aSpellTiles[_local2][0]][_aSpellTiles[_local2][1]][1]; if ((((_SPELL == classINC._SPELL_NATURE)) && ((_uiSpellLevel == classINC._SPELL_LEVEL_1)))){ transformTile(_aSpellTiles[_local2], classINC._SYMBOL_NATURE); _aCheck.push(new Point(_aSpellTiles[_local2][1], _aSpellTiles[_local2][0])); } else { if (_SPELL == classINC._SPELL_SPIRIT){ swapSpellTile(_aSpellTiles[_local2]); _GTREFRESH = (_GTIMER + 250); } else { killTile(_aSpellTiles[_local2]); _aCheck.push(new Point(_aSpellTiles[_local2][1], _aSpellTiles[_local2][0])); }; }; _mcSpellAni.ani.gotoAndPlay(2); _SOUND.playFX(classINC._FX_PLING, 0, 1, 0.3); _aSpellTiles.splice(_local2, 1); _iSpellTileCount--; if ((((_aSpellTiles.length <= 0)) || ((_iSpellTileCount <= 0)))){ if (_GSTATE != classINC._GS_SWAPSPELLTILES){ _local1 = true; }; }; return (_local1); } private function setGameMode2(_arg1:Event):void{ _PARENT.playButtonClick(); _uiGameMode = classINC._MODE_TIMED; _SYSTEM.logGameStart((_uiGameMode + 1)); _GSTATE = classINC._GS_INIT; } private function setGameMode3(_arg1:Event):void{ _PARENT.playButtonClick(); _uiGameMode = classINC._MODE_LEVEL; _SYSTEM.logGameStart((_uiGameMode + 1)); _GSTATE = classINC._GS_INIT; } private function createSpellAni():void{ if (_mcSpellAni == null){ _mcSpellAni = new mcSpellAni(); _mcSpellAni.x = -100; _mcSpellAni.y = -100; _mcFXHolder.addChild(_mcSpellAni); }; _mcSpellAni.gotoAndStop(_SPELL); } private function reswapTiles():void{ swapTileObjects(_aMarked); _GSTATE = classINC._GS_SWAPTILES; _GNEXT = classINC._GS_PLAY; } private function setGameMode1(_arg1:Event):void{ _PARENT.playButtonClick(); _uiGameMode = classINC._MODE_NORMAL; _SYSTEM.logGameStart((_uiGameMode + 1)); _GSTATE = classINC._GS_INIT; } private function getMousePos():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:int; _local1 = _mcHolder.mouseX; _local2 = _mcHolder.mouseY; if ((((_local1 < 0)) || ((_local2 < 0)))){ noRollover(); return; }; _local3 = int((_local1 / _aSetup[_uiGameMode].tileW)); _local4 = int((_local2 / _aSetup[_uiGameMode].tileH)); if ((((_ptMouseTile.x == _local3)) && ((_ptMouseTile.y == _local4)))){ return; }; if ((((_local3 >= 0)) && ((_local4 >= 0)))){ if ((((_local3 < _aSetup[_uiGameMode].cols)) && ((_local4 < _aSetup[_uiGameMode].rows)))){ _ptMouseTile.x = _local3; _ptMouseTile.y = _local4; _mcRollover.x = (_ptMouseTile.x * _aSetup[_uiGameMode].tileW); _mcRollover.y = (_ptMouseTile.y * _aSetup[_uiGameMode].tileH); _mcRollover.visible = true; } else { noRollover(); }; } else { noRollover(); }; } private function showMultiplierText(_arg1:String):void{ if (_arg1 != ""){ if (_arg1 != _PARENT.tfMultiplier.text){ _SOUND.playFX(classINC._FX_MULTI); _PARENT.mcMultiplierAni.gotoAndPlay(2); }; }; _PARENT.tfMultiplier.text = _arg1; } private function cleanUp():void{ var _local1:uint; if (_PARENT.mcWitch.hasEventListener(MouseEvent.CLICK)){ _PARENT.mcWitch.removeEventListener(MouseEvent.CLICK, onWitchClick); }; if (_PARENT.mcSecretBook.hasEventListener(MouseEvent.CLICK)){ _PARENT.mcSecretBook.removeEventListener(MouseEvent.CLICK, onSecretBookClick); }; destroyLevel(); _local1 = 0; while (_local1 < _aHintMCs.length) { _mcHolder.removeChild(_aHintMCs[_local1]); _local1++; }; if (_mcOverlay != null){ _mcHolder.removeChild(_mcOverlay); }; if (_mcRollover != null){ _mcHolder.removeChild(_mcRollover); }; if (_mcMarker1 != null){ _mcHolder.removeChild(_mcMarker1); }; if (_mcMarker2 != null){ _mcHolder.removeChild(_mcMarker2); }; if (_mcSpellAni != null){ _mcFXHolder.removeChild(_mcSpellAni); }; if (_mcLevelFields != null){ _PARENT.removeChild(_mcLevelFields); }; _cbutHint.destroy(); _cbutHint = null; _aPos = new Array(); _aHintMCs = new Array(); _COMBOS = null; } private function onSecretBookClick(_arg1:MouseEvent):void{ if (_GSTATE != classINC._GS_PLAY){ return; }; if (_XVAR_SCROLL.out() < 3){ _XVAR_SCROLL.add(1); _SOUND.playFX(classINC._FX_SHWOOM); _cbutHint.show(); _cbutHint.mc.mcText.gotoAndStop(_XVAR_SCROLL.out()); }; _PARENT.mcSecretBook.removeEventListener(MouseEvent.CLICK, onSecretBookClick); _PARENT.mcSecretBook.buttonMode = false; } private function resetTileMarkedFlags():void{ var _local1:uint; var _local2:uint; _local1 = 0; while (_local1 < _aSetup[_uiGameMode].rows) { _local2 = 0; while (_local2 < _aSetup[_uiGameMode].cols) { if (_aLevel[_local1][_local2] != null){ if (_aLevel[_local1][_local2].isMarked){ _aLevel[_local1][_local2].isMarked = false; }; if (_aLevel[_local1][_local2].isSpellMarked){ _aLevel[_local1][_local2].isSpellMarked = false; }; }; _local2++; }; _local1++; }; } private function createLevel():void{ var _local1:Object; var _local2:MovieClip; var _local3:uint; var _local4:classTile; var _local5:int; var _local6:uint; var _local7:uint; _local1 = _aSetup[_uiGameMode]; _local3 = _iLastColour; _local5 = 4; _aLevel = new Array(); _local6 = 0; while (_local6 < _local1.rows) { _aLevel.push(new Array()); _local7 = 0; while (_local7 < _local1.cols) { _local2 = new mcTiles(); _local2.cacheAsBitmap = true; if (_local6 > 0){ while ((((_local3 == _iLastColour)) || ((_local3 == _aLevel[(_local6 - 1)][_local7].colour)))) { _local3 = getRandom(1, _local1.numTiles); }; }; if (_local7 > 0){ while ((((_local3 == _iLastColour)) || ((_local3 == _aLevel[_local6][(_local7 - 1)].colour)))) { _local3 = getRandom(1, _local1.numTiles); }; } else { while (_local3 == _iLastColour) { _local3 = getRandom(1, _local1.numTiles); }; }; _iLastColour = _local3; _local2.gotoAndStop(_local3); _local4 = new classTile(_local2); _local4.colour = _local3; _local4.resetPos(_aPos[_local6][_local7][0], -(_local1.tileH), _aPos[_local6][_local7][0], _aPos[_local6][_local7][1], _local5); _aLevel[_local6].push(_local4); _mcHolder.addChild(_local2); _local7++; }; _local6++; }; } private function updateLevelModeText():void{ var _local1:String; var _local2:String; _local1 = classTEXT.COMBOS.replace("%1", _XVAR_COMBOS.out()); _local1 = _local1.replace("%2", _XVAR_COMBOSGET.out()); _local2 = classTEXT.MOVES.replace("%1", _XVAR_MOVES.out()); _local2 = _local2.replace("%2", _XVAR_MOVESMAX.out()); _mcLevelFields.tfCombos.htmlText = _local1; _mcLevelFields.tfMoves.htmlText = _local2; } private function hideMarkers():void{ _mcMarker1.visible = false; _mcMarker2.visible = false; } private function swapTileObjects(_arg1:Array):void{ var _local2:int; var _local3:classTile; var _local4:classTile; var _local5:Array; var _local6:Array; _local2 = 1; _local3 = _aLevel[_arg1[0].y][_arg1[0].x]; _local4 = _aLevel[_arg1[1].y][_arg1[1].x]; _local5 = _aPos[_arg1[0].y][_arg1[0].x]; _local6 = _aPos[_arg1[1].y][_arg1[1].x]; _aLevel[_arg1[0].y][_arg1[0].x] = _local4; _aLevel[_arg1[1].y][_arg1[1].x] = _local3; _local3.resetPos(_local5[0], _local5[1], _local6[0], _local6[1], _local2); _local4.resetPos(_local6[0], _local6[1], _local5[0], _local5[1], _local2); _local3.isMoving = true; _local4.isMoving = true; } public function KeyDownEvent(_arg1:KeyboardEvent):void{ if (_GSTATE != classINC._GS_PLAY){ return; }; if ((((_keyDown == 17)) && ((_arg1.keyCode == 82)))){ _objFPS.bShowFPS = !(_objFPS.bShowFPS); _objFPS.tfFPS.text = "FPS"; _objFPS.tfFPS.visible = _objFPS.bShowFPS; } else { _keyDown = _arg1.keyCode; if (_SECRETS.trackKeyCode(_keyDown, _arg1.charCode) == 0){ if (Number(_XVAR_POTION_V.out()) <= 0){ if (Number(_XVAR_BONUS.out()) < 3){ _XVAR_BONUS.set(3); showMultiplierText(("x" + String(_XVAR_BONUS.out()))); }; }; }; }; } } }//package classes
Section 3
//classINC (classes.classINC) package classes { public class classINC { public static const _FX_CAT:String = "fxCat"; public static const _SPELL_LEVEL_1:uint = 4; public static const _GS_BLOWUPTILES:uint = 160; public static const _GS_SWAPTILES:uint = 100; public static const _GS_SPELL_PREPARE:uint = 170; public static const _GS_SPELL_SHOW:uint = 180; public static const _GAMESTART:uint = 80; public static const _HELP2:uint = 60; public static const _SPELL_STORM:uint = 2; public static const _FRAME_POSTPOINTS:uint = 60; public static const _FX_SWAPBACK:String = "fxSwapBack"; public static const _FX_LEVELCOMBO:String = "fxLevelCombo"; public static const _FX_SHWOOM:String = "fxShwoom"; public static const _MODE_TIMED:uint = 1; public static const _FRAME_INTRO:uint = 10; public static const _FX_CAULDRON:String = "fxCauldron"; public static const _HELP:uint = 50; public static const _FX_CLICK:String = "fxClick"; public static const _GS_SHUFFLE:uint = 280; public static const _FX_SLIDEIN:String = "fxSlideIn"; public static const _FX_SLIDEOUT:String = "fxSlideOut"; public static const _SYMBOL_NATURE:uint = 4; public static const _GS_DROPTILES:uint = 200; public static const _FX_SPELLSPIRIT:String = "fxSpellSpirit"; public static const _SYMBOL_POTION:uint = 5; public static const _SYMBOL_CAT:uint = 8; public static const _GS_FINDNEXTMOVE:uint = 260; public static const _FX_JUMP:String = "fxJump"; public static const _SYMBOL_STORM:uint = 2; public static const _FRAME_GAME:uint = 40; public static const _GS_INIT:uint = 40; public static const _INTRO:uint = 40; public static const _POSTPOINTS:uint = 100; public static const _MUSIC_MAIN:String = "musicMain"; public static const _GAMESTOP:uint = 90; public static const _WAIT:uint = 30; public static const _SYMBOL_SCROLL:uint = 6; public static const _FX_SPELLSTORM:String = "fxSpellStorm"; public static const _FX_MULTI:String = "fxMulti"; public static const _FX_POP:String = "fxPop"; public static const _GS_SWAPSPELLTILES:uint = 190; public static const _MODE_LEVEL:uint = 2; public static const _GS_PLAY:uint = 80; public static const _SYMBOL_WILDCARD:uint = 7; public static const _NULL:uint = 0; public static const _MODE_NORMAL:uint = 0; public static const _FX_DROPALL:String = "fxDropAll"; public static const _SYMBOL_SPIRIT:uint = 3; public static const _GS_DROPALL:uint = 60; public static const _FX_SELECT:String = "fxSelect"; public static const _FRAME_HELP:uint = 20; public static const _FX_PUFF:String = "fxPuff"; public static const _FX_ROOFCAT:String = "fxRoofCat"; public static const _WAITRESPONSE:uint = 110; public static const _FRAME_GAMEOVER:uint = 50; public static const _FX_HINT:String = "fxHint"; public static const _GS_NEXTLEVEL:uint = 30; public static const _FX_SWAP:String = "fxSwap"; public static const _SPELL_FIRE:uint = 1; public static const _FONT_MAGICSCHOOL:String = "_internalMagicSchool"; public static const _GS_ADDNEWTILES:uint = 220; public static const _GS_REMOVETILES:uint = 140; public static const _SPELL_NATURE:uint = 4; public static const _GS_NULL:uint = 0; public static const _SYMBOL_FIRE:uint = 1; public static const _FX_WOOSH:String = "fxWoosh"; public static const _GAME:uint = 70; public static const _GS_FINDCOMBOS:uint = 120; public static const _GS_SELECTMODE:uint = 10; public static const _PREINIT:uint = 10; public static const _GS_GAMEPAUSED:uint = 888; public static const _FRAME_HELP2:uint = 30; public static const _SPELL_LEVEL_2:uint = 5; public static const _FONT_VERDANA:String = "_internalVerdana"; public static const _FX_GAMEOVER:String = "fxGameover"; public static const _GS_FINDMORECOMBOS:uint = 240; public static const _FX_SPELLNATURE:String = "fxSpellNature"; public static const _SYMBOL_ROCK:uint = 9; public static const _SPELL_SPIRIT:uint = 3; public static const _INIT:uint = 20; public static const _FX_SPELLFIRE:String = "fxSpellFire"; public static const _GS_GAMEOVER:uint = 999; public static const _FX_DROP:String = "fxDrop"; public static const _TEHGAMEOVER:uint = 999; public static const _FX_PLING:String = "fxPling"; } }//package classes
Section 4
//classRender (classes.classRender) package classes { public class classRender { private static var _isRendered:Boolean; public function classGameText(){ _isRendered = false; } static function renderDropTiles(_arg1:Array):Boolean{ var _local2:uint; var _local3:uint; _isRendered = true; _local2 = 0; while (_local2 < _arg1.length) { _local3 = 0; while (_local3 < _arg1[_local2].length) { if (_arg1[_local2][_local3] != null){ if (!_arg1[_local2][_local3].isPositioned){ _isRendered = false; _arg1[_local2][_local3].dropSlow(); }; }; _local3++; }; _local2++; }; return (_isRendered); } static function renderDropAllTiles(_arg1:Array):Boolean{ var _local2:uint; var _local3:uint; var _local4:uint; _isRendered = true; _local3 = 0; while (_local3 < _arg1.length) { _local4 = 0; while (_local4 < _arg1[_local3].length) { if (!_arg1[_local3][_local4].isPositioned){ _isRendered = false; _arg1[_local3][_local4].drop(); if (_arg1[_local3][_local4].triggerNextX){ if (!_arg1[_local3][_local4].xHasTriggered){ if (_local4 < (_arg1[_local3].length - 1)){ _local2 = (_local4 + 1); while (_local2 < _arg1[_local3].length) { if (!_arg1[_local3][_local2].isMoving){ if (!_arg1[_local3][_local2].isPositioned){ _arg1[_local3][_local2].isMoving = true; _local2 = _arg1[_local3].length; }; } else { _local2 = _arg1[_local3].length; }; _local2++; }; }; _arg1[_local3][_local4].xHasTriggered = true; }; }; if (_arg1[_local3][_local4].triggerNextY){ if (!_arg1[_local3][_local4].yHasTriggered){ if (_local3 > 0){ _local2 = 0; while (_local2 < _arg1[_local3].length) { if (((!(_arg1[(_local3 - 1)][_local2].isMoving)) && (!(_arg1[(_local3 - 1)][_local2].isPositioned)))){ _arg1[(_local3 - 1)][_local2].isMoving = true; _local2 = _arg1[_local3].length; }; _local2++; }; }; _arg1[_local3][_local4].yHasTriggered = true; }; }; }; _local4++; }; _local3++; }; return (_isRendered); } static function renderSwapTiles(_arg1:Array, _arg2:Array):Boolean{ var _local3:uint; _isRendered = true; _local3 = 0; while (_local3 < _arg2.length) { if (!_arg1[_arg2[_local3].y][_arg2[_local3].x].isPositioned){ _isRendered = false; _arg1[_arg2[_local3].y][_arg2[_local3].x].swap(); }; _local3++; }; return (_isRendered); } } }//package classes
Section 5
//classTEXT (classes.classTEXT) package classes { public class classTEXT { public static const HELP:String = "<p align='center'><font size='28'>Swap adjacent tiles to create combos of three or more of the same colour.<br>Combos of four or more elemental symbols will create powerful spells.</font></p>"; public static const SHUFFLE2:String = "<p align='center'><font size='38'>Shuffling Tiles...</font></p>"; public static const GAMEOVER:String = "<p align='center'><font size='50'>Game Over!</font></p>"; public static const MOVES:String = "<p align='left'><font size='22'>Moves: %1/%2</font></p>"; public static const HELP2:String = "<p align='center'><font size='28'>Indestructible symbols can only be transformed or destroyed by a spell combo!<br><br>The wildcard symbol can be used in place of any other symbol.</font></p>"; public static const YOURSCORE:String = "<p align='center'><font size='50'><br>Your Score:<br>%1</font></p>"; public static const NOMOREMOVES:String = "<p align='center'><font size='38'>No More Moves!</font></p>"; public static const BONUS3:String = "<p align='center'><font size='30'>Triple Bonus</font></p>"; public static const BONUS2:String = "<p align='center'><font size='30'>Double Bonus</font></p>"; public static const POSTPOINTSOPEN:String = "<p align='center'><font size='32'>"; public static const POSTINGPOINTS:String = "<br>Submitting Score..."; public static const SELECTMODE:String = "<p align='center'><font size='48'>Select a Game Mode:</font></p>"; public static const GAMEPAUSED:String = "<p align='center'><font size='50'>Game Paused!</font></p>"; public static const MODETEXT1:String = "<p align='center'><font size='26'>Play until you run out of moves</font></p>"; public static const MODETEXT3:String = "<p align='center'><font size='26'>Create Combos in a limited amount of moves</font></p>"; public static const COMBOS:String = "<p align='left'><font size='22'>Combos: %1/%2</font></p>"; public static const NOCOMBOS:String = "<p align='center'><font size='38'>You Didn't Create<br>Enough Combos!</font></p>"; public static const NOMORETIME:String = "<p align='center'><font size='38'>You Ran Out Of Time!</font></p>"; public static const MODETEXT2:String = "<p align='center'><font size='26'>Play against the timer of doom</font></p>"; public static const NEXTLEVEL:String = "<p align='center'><font size='44'>Level %1</font></p>"; public static const POSTPOINTSCLOSE:String = "</font></p>"; public static const LEVELGOAL:String = "<p align='center'><font size='30'>Create %1 Combos of four or<br>more tiles in %2 moves</font></p>"; public static const SHUFFLE1:String = "<p align='center'><font size='48'>No More Moves!</font></p>"; public static const SCORE:String = "<p align='right'><font size='40'>Score:</font></p>"; } }//package classes
Section 6
//classTile (classes.classTile) package classes { import flash.display.*; public class classTile { public var _mcTile:MovieClip; private var _xHasTriggered:Boolean; private var _iXMov:Number; private var _iCurX:Number; private var _iCurY:Number; private var _iYPos:Number; private var _isPositioned:Boolean; private var _iXPos:Number; private var _isMarked:Boolean; private var _uiColour:uint; private var _iYMov:Number; private var _isSpellMarked:Boolean; private var _bTriggerNextX:Boolean; private var _bTriggerNextY:Boolean; private var _yHasTriggered:Boolean; private var _isMoving:Boolean; public function classTile(_arg1:MovieClip){ _mcTile = _arg1; _uiColour = 0; _isPositioned = false; _isMoving = false; _isMarked = false; _isSpellMarked = false; _iCurX = 0; _iCurY = 0; _iXPos = 0; _iYPos = 0; _iXMov = 0; _iYMov = 0; _bTriggerNextX = false; _bTriggerNextY = false; _xHasTriggered = false; _yHasTriggered = false; } public function get isMarked():Boolean{ return (_isMarked); } public function dropSlow():void{ if (_isMoving){ if (_iYMov > 0){ _iCurY = (_iCurY + _iYMov); _iYMov = (_iYMov + 4); if (_iCurY > _iYPos){ _iCurY = _iYPos; }; }; updatePos(); if (_iCurY == _iYPos){ _isMoving = false; _isPositioned = true; }; }; } public function resetPos(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int):void{ _iCurX = _arg1; _iCurY = _arg2; _iXPos = _arg3; _iYPos = _arg4; _iXMov = 0; _iYMov = 0; updatePos(); if (_iCurX < _iXPos){ _iXMov = _arg5; } else { if (_iCurX > _iXPos){ _iXMov = -(_arg5); }; }; if (_iCurY < _iYPos){ _iYMov = _arg5; } else { if (_iCurY > _iYPos){ _iYMov = -(_arg5); }; }; if (((!((_iXMov == 0))) || (!((_iYMov == 0))))){ _isPositioned = false; } else { _isPositioned = true; }; _bTriggerNextX = false; _bTriggerNextY = false; _xHasTriggered = false; _yHasTriggered = false; } public function set colour(_arg1:uint):void{ _uiColour = _arg1; } public function swap():void{ if (_isMoving){ if (_iXMov > 0){ _iCurX = (_iCurX + _iXMov); _iXMov = (_iXMov + 1); if (_iCurX > _iXPos){ _iCurX = _iXPos; }; } else { if (_iXMov < 0){ _iCurX = (_iCurX + _iXMov); _iXMov = (_iXMov - 1); if (_iCurX < _iXPos){ _iCurX = _iXPos; }; }; }; if (_iYMov > 0){ _iCurY = (_iCurY + _iYMov); _iYMov = (_iYMov + 1); if (_iCurY > _iYPos){ _iCurY = _iYPos; }; } else { if (_iYMov < 0){ _iCurY = (_iCurY + _iYMov); _iYMov = (_iYMov - 1); if (_iCurY < _iYPos){ _iCurY = _iYPos; }; }; }; updatePos(); if ((((_iCurX == _iXPos)) && ((_iCurY == _iYPos)))){ _isMoving = false; _isPositioned = true; }; }; } public function get isMoving():Boolean{ return (_isMoving); } public function nextColour():void{ if (++_uiColour > 9){ _uiColour = 1; }; _mcTile.gotoAndStop(_uiColour); } public function set isMoving(_arg1:Boolean):void{ _isMoving = _arg1; } private function updatePos():void{ _mcTile.x = _iCurX; _mcTile.y = _iCurY; } public function get colour():uint{ return (_uiColour); } public function get isPositioned():Boolean{ return (_isPositioned); } public function set isSpellMarked(_arg1:Boolean):void{ _isSpellMarked = _arg1; } public function set xHasTriggered(_arg1:Boolean):void{ _xHasTriggered = _arg1; } public function set yHasTriggered(_arg1:Boolean):void{ _yHasTriggered = _arg1; } public function get triggerNextX():Boolean{ return (_bTriggerNextX); } public function get triggerNextY():Boolean{ return (_bTriggerNextY); } public function drop():void{ if (_isMoving){ if (_iYMov > 0){ _iCurY = (_iCurY + _iYMov); _iYMov = (_iYMov + 8); if (((!(_xHasTriggered)) && ((_iCurY >= 20)))){ _bTriggerNextX = true; }; if (((!(_yHasTriggered)) && ((_iCurY >= 36)))){ _bTriggerNextY = true; }; if (_iCurY > _iYPos){ _iCurY = _iYPos; }; }; updatePos(); if (_iCurY == _iYPos){ _isMoving = false; _isPositioned = true; }; }; } public function get yHasTriggered():Boolean{ return (_yHasTriggered); } public function get isSpellMarked():Boolean{ return (_isSpellMarked); } public function set isMarked(_arg1:Boolean):void{ _isMarked = _arg1; } public function get xHasTriggered():Boolean{ return (_xHasTriggered); } } }//package classes
Section 7
//classWitchery101 (classes.classWitchery101) package classes { import flash.display.*; import flash.text.*; import com.meteorgames.libs.sound.*; import flash.events.*; import com.meteorgames.libs.xvars.*; import com.meteorgames.libs.custommc.*; import com.meteorgames.libs.custombutton.*; import com.meteorgames.libs.slider.*; import com.meteorgames.flashsystem.game.*; public class classWitchery101 extends GameInterface { public var mcScroll:MovieClip; private var cbutContinue:customButton; private var cmcWitch:customMC; private var showPuff:Boolean; public var mcScoreTweenUp:MovieClip; public var mcPuff:MovieClip; private var _FRAME:uint; public var mcLogo:MovieClip; public var mcMultiplierAni:MovieClip; public var butEnd:MovieClip; public var mcSurprise:MovieClip; public var txtSubmit:TextField; public var butHint:MovieClip; public var mcFXHolder:MovieClip; private var _useLocalGameText:Boolean; public var mcHamster:MovieClip; public var mcHolderMask:MovieClip; public var tfScore2:TextField; private var cmcRoofCat:customMC; private var _uiGameMode:uint; public var mcTPOSG:MovieClip; public var tfFPS:TextField; private var _TEHGAME:classGameLogic; public var mcScoreTween:MovieClip; public var mcPlayField:MovieClip; public var tfScore:TextField; public var mcHelpScreen2:MovieClip; public var mcHelpScreen1:MovieClip; public var mcTimer:MovieClip; public var mcGameOverScreen:MovieClip; private var _STATE:uint;// = 10 public var tfLegal:TextField; private var _XVAR_SCORE:XVar; public var mcGameOverScroll:MovieClip; public var mcCauldron:MovieClip; public var mcWitch:MovieClip; public var tfMultiplier:TextField; public var mcSecret:MovieClip; public var mcCont:MovieClip; public var mcFXSlider:Slider; public var mcRoofCat:MovieClip; public var mcSecretBook:MovieClip; private var _SOUND:SoundManager; public var mcMusicSlider:Slider; private var cmcHamster:customMC; public function classWitchery101(){ _STATE = classINC._PREINIT; super(); addFrameScript(0, frame1, 1, frame2, 2, frame3, 17, frame18, 37, frame38, 52, frame53, 67, frame68); addEventListener(Event.ENTER_FRAME, main, false, 0, true); } private function arrowHelpOut(_arg1:MouseEvent):void{ _arg1.target.gotoAndStop(1); } private function mainButtonHamsterOver(_arg1:MouseEvent):void{ if (_arg1.target.currentFrame == 1){ _SOUND.playFX(classINC._FX_SLIDEOUT, 0, 1, 0.5); _arg1.target.gotoAndPlay(2); if (mcHamster != null){ mcHamster.gotoAndPlay(2); } else { if (mcWitch != null){ mcWitch.mcHamster.gotoAndPlay(2); }; }; }; } private function displayServerResponse(_arg1:String, _arg2:Boolean):void{ var _local3:String; _local3 = (((classTEXT.POSTPOINTSOPEN + "<br>") + _arg1) + classTEXT.POSTPOINTSCLOSE); _SYSTEM.setTextField(txtSubmit, _local3); if (_arg2){ _SOUND.playFX(classINC._FX_LEVELCOMBO); mcCont.alpha = 1; cbutContinue = new customButton(_SYSTEM, mcCont, null, restartGame2, ""); mcCont.tabEnabled = false; }; } private function secretNextMove(_arg1:MouseEvent):void{ if (_TEHGAME != null){ _TEHGAME.showNextMove(_arg1); }; } private function initGameScreen():Boolean{ var _local1:Boolean; _local1 = false; _local1 = stageInitialized(); if (_local1){ if (_useLocalGameText){ initMainButton(butEnd, endGame, true); if (!mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcHamster.addEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut, false, 0, true); }; _SYSTEM.setTextField(tfScore, classTEXT.SCORE); _SYSTEM.setTextField(mcScoreTweenUp.mcScoreField.tfShowPoints, ""); }; }; return (_local1); } private function moreHelp(_arg1:MouseEvent):void{ killHelpArrow(mcHelpScreen1.mcArrowMore, moreHelp); playButtonClick(); gotoFrame(classINC._FRAME_HELP2); _STATE = classINC._HELP2; } private function scrollCloseGameOver(_arg1:Event):void{ if (mcGameOverScroll.ani == null){ return; }; if (mcGameOverScroll.ani.currentFrame >= 21){ mcGameOverScroll.removeEventListener(Event.ENTER_FRAME, scrollCloseGameOver); showPuff = true; gotoFrame(classINC._FRAME_INTRO); _STATE = classINC._INTRO; }; } private function killMainButton(_arg1:MovieClip, _arg2:Function, _arg3:Boolean):void{ var _local4:Function; var _local5:Function; if (_arg1.hasEventListener(MouseEvent.MOUSE_DOWN)){ _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, mainButtonDown); }; if (_arg1.hasEventListener(MouseEvent.MOUSE_UP)){ _arg1.removeEventListener(MouseEvent.MOUSE_UP, _arg2); }; _local4 = mainButtonOver; _local5 = mainButtonOut; if (_arg3){ _local4 = mainButtonHamsterOver; _local5 = mainButtonHamsterOut; }; if (_arg1.hasEventListener(MouseEvent.MOUSE_OVER)){ _arg1.removeEventListener(MouseEvent.MOUSE_OVER, _local4); }; if (_arg1.hasEventListener(MouseEvent.MOUSE_OUT)){ _arg1.removeEventListener(MouseEvent.MOUSE_OUT, _local5); }; } private function initHelpScreen():Boolean{ var _local1:Boolean; _local1 = false; _local1 = stageInitialized(); if (_local1){ if (!mcInitialized(mcWitch)){ _local1 = false; } else { if (_useLocalGameText){ initMainButton(mcWitch.mcBook2, goBack, false); _SYSTEM.setTextField(mcHelpScreen1.tfHelp, classTEXT.HELP); }; if (!mcWitch.mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcWitch.mcHamster.addEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut, false, 0, true); }; if (!mcHelpScreen1.mcArrowMore.hasEventListener(MouseEvent.MOUSE_DOWN)){ mcHelpScreen1.mcArrowMore.addEventListener(MouseEvent.MOUSE_DOWN, moreHelp, false, 0, true); }; if (!mcHelpScreen1.mcArrowMore.hasEventListener(MouseEvent.MOUSE_OVER)){ mcHelpScreen1.mcArrowMore.addEventListener(MouseEvent.MOUSE_OVER, arrowHelpOver, false, 0, true); }; if (!mcHelpScreen1.mcArrowMore.hasEventListener(MouseEvent.MOUSE_OUT)){ mcHelpScreen1.mcArrowMore.addEventListener(MouseEvent.MOUSE_OUT, arrowHelpOut, false, 0, true); }; setMCButton(mcHelpScreen1.mcArrowMore); mcScroll.addEventListener(Event.ENTER_FRAME, scrollOpen, false, 0, true); }; }; return (_local1); } function frame3(){ stop(); } private function onAdded(_arg1:Event):void{ var _local2:int; var _local3:int; if (_arg1.target.name == "mcLogo"){ if (showPuff){ _arg1.target.gotoAndStop(15); }; } else { if (_arg1.target.name == "mcMusicSlider"){ _arg1.target.slider.mcSymbol.gotoAndStop(2); _local2 = (100 - int((100 * _SOUND.getMusicVolume()))); _arg1.target.init(musicSliderUpdate, 10, 60, _local2); } else { if (_arg1.target.name == "mcFXSlider"){ _arg1.target.slider.mcSymbol.gotoAndStop(1); _local3 = (100 - int((100 * _SOUND.getFXVolume()))); _arg1.target.init(fxSliderUpdate, 10, 60, _local3); } else { if (_arg1.target.name == "mcTimer"){ _arg1.target.visible = false; } else { if (_arg1.target.name == "butHint"){ _arg1.target.visible = false; } else { if (_arg1.target.name == "mcHelpScreen1"){ _arg1.target.visible = false; } else { if (_arg1.target.name == "mcGameOverScreen"){ _arg1.target.visible = false; } else { if (_arg1.target.name == "mcWitch"){ if (cmcWitch == null){ cmcWitch = new customMC(_arg1.target.mcHead, 33); } else { cmcWitch.reset(_arg1.target.mcHead); }; } else { if (_arg1.target.name == "mcHamster"){ if (cmcHamster == null){ cmcHamster = new customMC(_arg1.target.mcHead, 33); } else { cmcHamster.reset(_arg1.target.mcHead); }; } else { if (_arg1.target.name == "mcRoofCat"){ if (cmcRoofCat == null){ cmcRoofCat = new customMC(MovieClip(_arg1.target), 15, null, false); cmcRoofCat.initLoop("ani", 2, 90); } else { cmcRoofCat.reset(MovieClip(_arg1.target), false); }; if (!_arg1.target.hasEventListener(MouseEvent.CLICK)){ _arg1.target.addEventListener(MouseEvent.CLICK, onRoofCatClick, false, 0, true); setMCButton(MovieClip(_arg1.target)); }; }; }; }; }; }; }; }; }; }; }; } function frame1(){ stop(); } private function preinit():Boolean{ var _local1:Boolean; _local1 = true; if (_internalVerdana == null){ _local1 = false; } else { if (_internalMagicSchool == null){ _local1 = false; } else { if (musicMain == null){ _local1 = false; } else { if (fxClick == null){ _local1 = false; } else { if (fxSwap == null){ _local1 = false; } else { if (fxSwapBack == null){ _local1 = false; } else { if (fxPop == null){ _local1 = false; } else { if (fxWoosh == null){ _local1 = false; } else { if (fxSpellFire == null){ _local1 = false; } else { if (fxSpellStorm == null){ _local1 = false; } else { if (fxSpellSpirit == null){ _local1 = false; } else { if (fxSpellNature == null){ _local1 = false; } else { if (fxPling == null){ _local1 = false; } else { if (fxDrop == null){ _local1 = false; } else { if (fxDropAll == null){ _local1 = false; } else { if (fxShwoom == null){ _local1 = false; } else { if (fxGameover == null){ _local1 = false; } else { if (fxJump == null){ _local1 = false; } else { if (fxSelect == null){ _local1 = false; } else { if (fxHint == null){ _local1 = false; } else { if (fxSlideOut == null){ _local1 = false; } else { if (fxSlideIn == null){ _local1 = false; } else { if (fxPuff == null){ _local1 = false; } else { if (fxCauldron == null){ _local1 = false; } else { if (fxCat == null){ _local1 = false; } else { if (fxMulti == null){ _local1 = false; } else { if (fxLevelCombo == null){ _local1 = false; } else { if (fxRoofCat == null){ _local1 = false; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; }; if (loaderInfo.bytesLoaded <= 0){ _local1 = false; } else { if (loaderInfo.bytesLoaded < loaderInfo.bytesTotal){ _local1 = false; }; }; return (_local1); } function frame38(){ stop(); } private function restartGame(_arg1:MouseEvent):void{ killMainButton(mcWitch.mcBook1, restartGame, true); killMainButton(mcWitch.mcBook2, postPoints, false); cmcWitch.destroy(); cmcHamster.destroy(); cmcRoofCat.destroy(); mcGameOverScreen.visible = false; mcGameOverScroll.gotoAndStop("close"); _SOUND.playFX(classINC._FX_SWAPBACK); mcGameOverScroll.addEventListener(Event.ENTER_FRAME, scrollCloseGameOver, false, 0, true); } private function scrollOpen(_arg1:Event):void{ if (mcScroll.ani.currentFrame >= 21){ mcHelpScreen1.alpha = 1; mcHelpScreen1.visible = true; mcScroll.removeEventListener(Event.ENTER_FRAME, scrollOpen); }; } private function secretClick(_arg1:MouseEvent):void{ if (mcTPOSG.currentFrame == 1){ _SOUND.playFX(classINC._FX_JUMP); mcTPOSG.gotoAndPlay(2); }; } function frame2(){ play(); } function frame18(){ stop(); } function frame53(){ stop(); } private function initIntroScreen():Boolean{ var _local1:Boolean; var _local2:String; var _local3:StyleSheet; _local1 = false; _local1 = stageInitialized(); if (_local1){ if (!mcInitialized(mcWitch)){ _local1 = false; } else { if (((_SYSTEM.gameIsHostedExternally) || (_SYSTEM.gameIsOffline))){ if (tfLegal != null){ _local2 = "a:link{text-decoration:underline;color:#FFFFFF;} a:hover{text-decoration:underline;color:#FFFF00;} a:active{text-decoration:underline;color:#FFFF00;}"; _local3 = new StyleSheet(); _local3.parseCSS(_local2); tfLegal.styleSheet = _local3; tfLegal.htmlText = _SYSTEM.getLegalText(12); }; }; if (_useLocalGameText){ initMainButton(mcWitch.mcBook1, startGame, true); initMainButton(mcWitch.mcBook2, showHelp, false); }; if (!mcWitch.mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcWitch.mcHamster.addEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut, false, 0, true); }; if (!mcSecret.hasEventListener(MouseEvent.MOUSE_DOWN)){ mcSecret.addEventListener(MouseEvent.MOUSE_DOWN, secretClick, false, 0, true); }; setMCButton(mcSecret); _SOUND.playFX(classINC._FX_PUFF); if (showPuff){ mcPuff.x = 520; mcPuff.y = 250; mcPuff.gotoAndPlay(2); showPuff = false; } else { mcPuff.x = 448; mcPuff.y = 78; mcPuff.gotoAndPlay(2); }; }; }; return (_local1); } public function setMCButton(_arg1:MovieClip):void{ _arg1.buttonMode = true; _arg1.mouseChildren = false; _arg1.tabEnabled = false; _arg1.focusRect = false; } private function arrowHelpOver(_arg1:MouseEvent):void{ _arg1.target.gotoAndStop(2); } function frame68(){ stop(); } private function stageInitialized():Boolean{ var _local1:Boolean; var _local2:int; _local1 = true; _local2 = 0; while (_local2 < numChildren) { if (getChildAt(_local2) == null){ _local1 = false; }; _local2++; }; return (_local1); } public function fxSliderUpdate(_arg1:int):void{ _SOUND.setFXVolume((100 - _arg1)); } private function init():void{ _SOUND = new SoundManager(); _SYSTEM.addFont(new _internalVerdana(), classINC._FONT_VERDANA); _SYSTEM.addFont(new _internalMagicSchool(), classINC._FONT_MAGICSCHOOL); _SYSTEM.setFont(classINC._FONT_MAGICSCHOOL); _SOUND.addMusic(new musicMain(), classINC._MUSIC_MAIN, false); _SOUND.addFX(new fxClick(), classINC._FX_CLICK, true); _SOUND.addFX(new fxSwap(), classINC._FX_SWAP, true); _SOUND.addFX(new fxSwapBack(), classINC._FX_SWAPBACK, true); _SOUND.addFX(new fxPop(), classINC._FX_POP, true); _SOUND.addFX(new fxWoosh(), classINC._FX_WOOSH, true); _SOUND.addFX(new fxSpellFire(), classINC._FX_SPELLFIRE, false); _SOUND.addFX(new fxSpellStorm(), classINC._FX_SPELLSTORM, false); _SOUND.addFX(new fxSpellSpirit(), classINC._FX_SPELLSPIRIT, false); _SOUND.addFX(new fxSpellNature(), classINC._FX_SPELLNATURE, false); _SOUND.addFX(new fxPling(), classINC._FX_PLING, true); _SOUND.addFX(new fxDrop(), classINC._FX_DROP, true); _SOUND.addFX(new fxDropAll(), classINC._FX_DROPALL, true); _SOUND.addFX(new fxShwoom(), classINC._FX_SHWOOM, false); _SOUND.addFX(new fxGameover(), classINC._FX_GAMEOVER, false); _SOUND.addFX(new fxJump(), classINC._FX_JUMP, false); _SOUND.addFX(new fxSelect(), classINC._FX_SELECT, false); _SOUND.addFX(new fxHint(), classINC._FX_HINT, false); _SOUND.addFX(new fxSlideOut(), classINC._FX_SLIDEOUT, false); _SOUND.addFX(new fxSlideIn(), classINC._FX_SLIDEIN, false); _SOUND.addFX(new fxPuff(), classINC._FX_PUFF, false); _SOUND.addFX(new fxCauldron(), classINC._FX_CAULDRON, false); _SOUND.addFX(new fxCat(), classINC._FX_CAT, false); _SOUND.addFX(new fxMulti(), classINC._FX_MULTI, false); _SOUND.addFX(new fxLevelCombo(), classINC._FX_LEVELCOMBO, false); _SOUND.addFX(new fxRoofCat(), classINC._FX_ROOFCAT, false); _XVAR_SCORE = new XVar(0); _useLocalGameText = true; cmcWitch = null; cmcHamster = null; showPuff = false; gotoFrame(classINC._FRAME_INTRO); } private function mainButtonOut(_arg1:MouseEvent):void{ _SOUND.playFX(classINC._FX_SLIDEIN, 0, 1, 0.5); _arg1.currentTarget.gotoAndPlay(9); } private function initPostPointsScreen():Boolean{ var _local1:Boolean; _local1 = false; _local1 = stageInitialized(); if (_local1){ if (_useLocalGameText){ _SOUND.playFX(classINC._FX_SHWOOM); displayServerResponse(classTEXT.POSTINGPOINTS, false); }; }; return (_local1); } private function initGameOverScreen():Boolean{ var _local1:Boolean; var _local2:String; _local1 = false; _local1 = stageInitialized(); if (_local1){ if (!mcInitialized(mcWitch)){ _local1 = false; } else { if (_useLocalGameText){ initMainButton(mcWitch.mcBook1, restartGame, true); initMainButton(mcWitch.mcBook2, postPoints, false); _local2 = classTEXT.YOURSCORE; _SYSTEM.setTextField(mcGameOverScreen.tfYourScore, _local2.replace("%1", _XVAR_SCORE.out())); }; if (!mcWitch.mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcWitch.mcHamster.addEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut, false, 0, true); }; mcGameOverScroll.addEventListener(Event.ENTER_FRAME, scrollOpenGameOver, false, 0, true); _SOUND.playFX(classINC._FX_SWAPBACK); }; }; return (_local1); } private function scrollClose(_arg1:Event):void{ if (mcScroll.ani == null){ return; }; if (mcScroll.ani.currentFrame >= 21){ mcScroll.removeEventListener(Event.ENTER_FRAME, scrollClose); showPuff = true; gotoFrame(classINC._FRAME_INTRO); _STATE = classINC._INTRO; }; } private function scrollClosePostPoints(_arg1:Event):void{ if (mcGameOverScroll.ani == null){ return; }; if (mcGameOverScroll.ani.currentFrame >= 21){ mcGameOverScroll.removeEventListener(Event.ENTER_FRAME, scrollClosePostPoints); showPuff = true; gotoFrame(classINC._FRAME_POSTPOINTS); _STATE = classINC._POSTPOINTS; }; } private function initSystem():void{ super.initGame(); } private function mainButtonHamsterOut(_arg1:MouseEvent):void{ if (_arg1.relatedObject != null){ if (_arg1.relatedObject.name != "mcHamster"){ _SOUND.playFX(classINC._FX_SLIDEIN, 0, 1, 0.5); _arg1.currentTarget.gotoAndPlay(9); if (mcWitch.mcHamster != null){ mcWitch.mcHamster.gotoAndPlay(17); } else { if (mcHamster != null){ mcHamster.gotoAndPlay(17); }; }; }; }; } private function mcInitialized(_arg1:MovieClip):Boolean{ var _local2:Boolean; var _local3:int; _local2 = true; if (_arg1 == null){ return (false); }; _local3 = 0; while (_local3 < _arg1.numChildren) { if (_arg1.getChildAt(_local3) == null){ _local2 = false; }; _local3++; }; return (_local2); } private function endGame(_arg1:MouseEvent):void{ killMainButton(butEnd, endGame, true); if (mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcHamster.removeEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut); }; cmcHamster.destroy(); _TEHGAME.gameOver(); } private function initMainButton(_arg1:MovieClip, _arg2:Function, _arg3:Boolean):void{ var _local4:Function; var _local5:Function; setMCButton(_arg1); if (!_arg1.hasEventListener(MouseEvent.MOUSE_DOWN)){ _arg1.addEventListener(MouseEvent.MOUSE_DOWN, mainButtonDown, false, 0, true); }; if (!_arg1.hasEventListener(MouseEvent.MOUSE_UP)){ _arg1.addEventListener(MouseEvent.MOUSE_UP, _arg2, false, 0, true); }; _local4 = mainButtonOver; _local5 = mainButtonOut; if (_arg3){ _local4 = mainButtonHamsterOver; _local5 = mainButtonHamsterOut; }; if (!_arg1.hasEventListener(MouseEvent.MOUSE_OVER)){ _arg1.addEventListener(MouseEvent.MOUSE_OVER, _local4, false, 0, true); }; if (!_arg1.hasEventListener(MouseEvent.MOUSE_OUT)){ _arg1.addEventListener(MouseEvent.MOUSE_OUT, _local5, false, 0, true); }; } private function startGame(_arg1:MouseEvent):void{ killMainButton(mcWitch.mcBook1, startGame, true); killMainButton(mcWitch.mcBook2, showHelp, false); if (mcWitch.mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcWitch.mcHamster.removeEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut); }; if (mcRoofCat.hasEventListener(MouseEvent.CLICK)){ mcRoofCat.removeEventListener(MouseEvent.CLICK, onRoofCatClick); }; cmcWitch.destroy(); cmcHamster.destroy(); cmcRoofCat.destroy(); gotoFrame(classINC._FRAME_GAME); _STATE = classINC._GAME; } private function killHelpArrow(_arg1:MovieClip, _arg2:Function):void{ if (_arg1 == null){ return; }; if (_arg1.hasEventListener(MouseEvent.MOUSE_DOWN)){ _arg1.removeEventListener(MouseEvent.MOUSE_DOWN, _arg2); }; if (_arg1.hasEventListener(MouseEvent.MOUSE_OVER)){ _arg1.removeEventListener(MouseEvent.MOUSE_OVER, arrowHelpOver); }; if (_arg1.hasEventListener(MouseEvent.MOUSE_OUT)){ _arg1.removeEventListener(MouseEvent.MOUSE_OUT, arrowHelpOut); }; } private function initHelpScreen2():Boolean{ var _local1:Boolean; _local1 = false; _local1 = stageInitialized(); if (_local1){ if (_useLocalGameText){ _SYSTEM.setTextField(mcHelpScreen2.tfHelp2, classTEXT.HELP2); }; if (!mcHelpScreen2.mcArrowBack.hasEventListener(MouseEvent.MOUSE_DOWN)){ mcHelpScreen2.mcArrowBack.addEventListener(MouseEvent.MOUSE_DOWN, showHelp, false, 0, true); }; if (!mcHelpScreen2.mcArrowBack.hasEventListener(MouseEvent.MOUSE_OVER)){ mcHelpScreen2.mcArrowBack.addEventListener(MouseEvent.MOUSE_OVER, arrowHelpOver, false, 0, true); }; if (!mcHelpScreen2.mcArrowBack.hasEventListener(MouseEvent.MOUSE_OUT)){ mcHelpScreen2.mcArrowBack.addEventListener(MouseEvent.MOUSE_OUT, arrowHelpOut, false, 0, true); }; setMCButton(mcHelpScreen2.mcArrowBack); }; return (_local1); } private function mainButtonDown(_arg1:MouseEvent):void{ playButtonClick(); } public function playButtonClick():void{ _SOUND.playFX(classINC._FX_CLICK); } private function postPoints(_arg1:MouseEvent):void{ killMainButton(mcWitch.mcBook1, restartGame, true); killMainButton(mcWitch.mcBook2, postPoints, false); cmcWitch.destroy(); cmcHamster.destroy(); cmcRoofCat.destroy(); mcGameOverScreen.visible = false; mcGameOverScroll.gotoAndStop("close"); _SOUND.playFX(classINC._FX_SWAPBACK); mcGameOverScroll.addEventListener(Event.ENTER_FRAME, scrollClosePostPoints, false, 0, true); } private function restartGame2(_arg1:MouseEvent):void{ playButtonClick(); cbutContinue.destroy(); cmcRoofCat.destroy(); showPuff = false; gotoFrame(classINC._FRAME_INTRO); _STATE = classINC._INTRO; } private function main(_arg1:Event):void{ switch (_STATE){ case classINC._PREINIT: if (preinit()){ _STATE = classINC._INIT; }; break; case classINC._INIT: initSystem(); _STATE = classINC._WAIT; break; case classINC._WAIT: if (systemReady){ init(); _SOUND.playMusic(classINC._MUSIC_MAIN, 0, 99999); _STATE = classINC._INTRO; }; break; case classINC._INTRO: if (initIntroScreen()){ removeEventListener(Event.ADDED, onAdded); _STATE = classINC._NULL; }; break; case classINC._HELP: if (initHelpScreen()){ removeEventListener(Event.ADDED, onAdded); _STATE = classINC._NULL; }; break; case classINC._HELP2: if (initHelpScreen2()){ removeEventListener(Event.ADDED, onAdded); _STATE = classINC._NULL; }; break; case classINC._GAME: if (initGameScreen()){ removeEventListener(Event.ADDED, onAdded); _STATE = classINC._GAMESTART; }; break; case classINC._GAMESTART: if (_TEHGAME != null){ _TEHGAME = null; }; _TEHGAME = new classGameLogic(this, _SYSTEM, _SOUND); stage.addEventListener(Event.ENTER_FRAME, _TEHGAME.main, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_DOWN, _TEHGAME.MouseDownEvent, false, 0, true); stage.addEventListener(KeyboardEvent.KEY_DOWN, _TEHGAME.KeyDownEvent, false, 0, true); stage.addEventListener(KeyboardEvent.KEY_UP, _TEHGAME.KeyUpEvent, false, 0, true); _STATE = classINC._NULL; break; case classINC._GAMESTOP: _SYSTEM.logGameOver((_uiGameMode + 1)); stage.removeEventListener(Event.ENTER_FRAME, _TEHGAME.main); stage.removeEventListener(MouseEvent.MOUSE_DOWN, _TEHGAME.MouseDownEvent); stage.removeEventListener(KeyboardEvent.KEY_DOWN, _TEHGAME.KeyDownEvent); stage.removeEventListener(KeyboardEvent.KEY_UP, _TEHGAME.KeyUpEvent); _STATE = classINC._TEHGAMEOVER; break; case classINC._TEHGAMEOVER: if (initGameOverScreen()){ removeEventListener(Event.ADDED, onAdded); _STATE = classINC._NULL; }; break; case classINC._POSTPOINTS: if (initPostPointsScreen()){ _SYSTEM.postPoints(int(_XVAR_SCORE.out()), (_uiGameMode + 1)); removeEventListener(Event.ADDED, onAdded); _STATE = classINC._WAITRESPONSE; }; break; case classINC._WAITRESPONSE: if (_SYSTEM.serverHasResponded()){ displayServerResponse(_SYSTEM.getServerResponse(), true); _STATE = classINC._NULL; }; break; case classINC._NULL: break; }; } private function scrollOpenGameOver(_arg1:Event):void{ if (mcGameOverScroll.ani == null){ return; }; if (mcGameOverScroll.ani.currentFrame >= 21){ mcGameOverScreen.visible = true; mcGameOverScroll.removeEventListener(Event.ENTER_FRAME, scrollOpenGameOver); }; } private function onRoofCatClick(_arg1:MouseEvent):void{ if (MovieClip(_arg1.target).currentFrame == 1){ _SOUND.playFX(classINC._FX_ROOFCAT); cmcRoofCat.playLoop("ani"); }; } public function gotoFrame(_arg1:uint):void{ if (!hasEventListener(Event.ADDED)){ addEventListener(Event.ADDED, onAdded, false, 0, true); }; _FRAME = _arg1; switch (_FRAME){ case classINC._FRAME_INTRO: gotoAndStop("introFrame", "INTRO"); break; case classINC._FRAME_HELP: gotoAndStop("helpFrame", "HELP"); break; case classINC._FRAME_HELP2: gotoAndStop("helpFrame2", "HELP"); break; case classINC._FRAME_GAME: gotoAndStop("gameFrame", "GAME"); break; case classINC._FRAME_GAMEOVER: gotoAndStop("gameoverFrame", "GAMEOVER"); break; case classINC._FRAME_POSTPOINTS: gotoAndStop("postPointsFrame", "POSTPOINTS"); break; }; } private function mainButtonOver(_arg1:MouseEvent):void{ _SOUND.playFX(classINC._FX_SLIDEOUT, 0, 1, 0.5); _arg1.currentTarget.gotoAndPlay(2); } public function musicSliderUpdate(_arg1:int):void{ _SOUND.setMusicVolume((100 - _arg1)); } private function hamsterRollOut(_arg1:MouseEvent):void{ if (mcWitch.mcBook1 != null){ if (mcWitch.mcBook1.currentFrame == 8){ _SOUND.playFX(classINC._FX_SLIDEIN, 0, 1, 0.5); mcWitch.mcBook1.gotoAndPlay(9); mcWitch.mcHamster.gotoAndPlay(17); }; } else { if (butEnd != null){ if (butEnd.currentFrame == 8){ _SOUND.playFX(classINC._FX_SLIDEIN, 0, 1, 0.5); butEnd.gotoAndPlay(9); mcHamster.gotoAndPlay(17); }; }; }; } private function showHelp(_arg1:MouseEvent):void{ if (_FRAME != classINC._FRAME_HELP2){ _SOUND.playFX(classINC._FX_SWAPBACK); killMainButton(mcWitch.mcBook1, startGame, true); killMainButton(mcWitch.mcBook2, showHelp, false); if (mcWitch.mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcWitch.mcHamster.removeEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut); }; } else { killHelpArrow(mcHelpScreen2.mcArrowBack, showHelp); playButtonClick(); }; cmcWitch.destroy(); cmcHamster.destroy(); cmcRoofCat.destroy(); gotoFrame(classINC._FRAME_HELP); _STATE = classINC._HELP; } public function gameOver(_arg1:XVar, _arg2:uint=1):void{ _XVAR_SCORE.set(_arg1.out()); _uiGameMode = _arg2; gotoFrame(classINC._FRAME_GAMEOVER); _STATE = classINC._GAMESTOP; } private function goBack(_arg1:MouseEvent):void{ killMainButton(mcWitch.mcBook2, goBack, false); if (mcWitch.mcHamster.hasEventListener(MouseEvent.MOUSE_OUT)){ mcWitch.mcHamster.removeEventListener(MouseEvent.MOUSE_OUT, hamsterRollOut); }; cmcWitch.destroy(); cmcHamster.destroy(); cmcRoofCat.destroy(); if (_FRAME == classINC._FRAME_HELP){ mcHelpScreen1.visible = false; } else { if (_FRAME == classINC._FRAME_HELP2){ mcHelpScreen2.visible = false; }; }; mcScroll.gotoAndStop("close"); _SOUND.playFX(classINC._FX_SWAPBACK); mcScroll.addEventListener(Event.ENTER_FRAME, scrollClose, false, 0, true); } } }//package classes
Section 8
//GameInterface (com.meteorgames.flashsystem.game.GameInterface) package com.meteorgames.flashsystem.game { import flash.display.*; import com.meteorgames.flashsystem.system.*; public class GameInterface extends MovieClip { private var _systemReady:Boolean; public var _SYSTEM:System; public function GameInterface(){ _systemReady = false; } public function initGame(){ var _local1:*; var _local2:*; var _local3:String; _local1 = false; _local2 = false; _local3 = this.root.loaderInfo.url; if (((!((_local3.indexOf("http://www.twinskies.com/", 0) == 0))) && (!((_local3.indexOf("http://192.168.2.13", 0) == 0))))){ _local1 = true; } else { if (_local3.indexOf("/flash/g/", 0) == -1){ _local1 = true; }; }; if (_local3.toUpperCase().indexOf("FILE", 0) != -1){ _local1 = false; _local2 = true; }; if (this.parent.toString().toUpperCase().indexOf("STAGE", 0) >= 0){ _local2 = true; }; if (((_local1) || (_local2))){ _SYSTEM = new System(); _SYSTEM.init(new GameParams()); _SYSTEM.gameIsOffline = _local2; _SYSTEM.gameIsHostedExternally = _local1; _systemReady = true; }; } public function setSystem(_arg1:System){ _SYSTEM = _arg1; _systemReady = true; } public function get systemReady():Boolean{ return (_systemReady); } } }//package com.meteorgames.flashsystem.game
Section 9
//GameParams (com.meteorgames.flashsystem.system.GameParams) package com.meteorgames.flashsystem.system { public class GameParams { public var sUserID:String; public var iGameHeight:Number; public var sPreloader:String; public var iGameWidth:Number; public var sID:String; public var iCollectStats:Number; public var sPHPServer:String; public var sLanguage:String; public var iFramerate:Number; public var sTehGame:String; public var sSWFServer:String; public function GameParams(){ sID = ""; sTehGame = ""; sPreloader = ""; sSWFServer = ""; sPHPServer = ""; iCollectStats = 0; iFramerate = 30; iGameWidth = 500; iGameHeight = 500; sUserID = ""; sLanguage = "en"; } public function setVar(_arg1:String, _arg2):void{ if (this[_arg1] != undefined){ if (_arg2 != undefined){ this[_arg1] = _arg2; }; }; } } }//package com.meteorgames.flashsystem.system
Section 10
//GameTracking (com.meteorgames.flashsystem.system.GameTracking) package com.meteorgames.flashsystem.system { import flash.events.*; import flash.net.*; public class GameTracking { private var _dataReceived:Boolean; private var _iTrackData:int; private var _PHPSERVER:String; private var _PHPSCRIPT:String; private var _GAMEID:String; private var _loader:URLLoader; public function GameTracking(){ _PHPSERVER = ""; _PHPSCRIPT = "scripts/minigame"; _dataReceived = false; } private function securityErrorHandler(_arg1:SecurityErrorEvent):void{ _dataReceived = true; removeListeners(); } public function init(_arg1:String, _arg2:String="", _arg3:int=0):void{ _PHPSERVER = _arg1; _GAMEID = _arg2; _iTrackData = _arg3; if (_PHPSERVER.charAt((_PHPSERVER.length - 1)) != "/"){ _PHPSERVER = (_PHPSERVER + "/"); }; } private function completeHandler(_arg1:Event):void{ _dataReceived = true; removeListeners(); } public function logGameOver(_arg1:String):void{ var _local2:String; var _local3:URLVariables; var _local4:URLRequest; if (_iTrackData == 0){ return; }; _local2 = (_PHPSERVER + _PHPSCRIPT); _local3 = new URLVariables(); _local3.data = _arg1; _local4 = new URLRequest(_local2); _local4.data = _local3; trackIt(_local4); } private function removeListeners():void{ _loader.removeEventListener(Event.COMPLETE, completeHandler); _loader.removeEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); _loader.removeEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); } private function trackIt(_arg1:URLRequest):void{ var request = _arg1; try { sendToURL(request); } catch(e:Error) { }; } public function getReturnVar(_arg1:String):String{ var _local2:String; _local2 = ""; if (_loader.data[_arg1] != null){ _local2 = String(_loader.data[_arg1]); }; return (_local2); } public function postPoints(_arg1:String):void{ var _local2:String; var _local3:URLVariables; var _local4:URLRequest; _dataReceived = false; _local2 = (_PHPSERVER + _PHPSCRIPT); _local3 = new URLVariables(); _local3.data = _arg1; _local4 = new URLRequest(_local2); _local4.data = _local3; postIt(_local4); } private function ioErrorHandler(_arg1:IOErrorEvent):void{ _dataReceived = true; removeListeners(); } private function postIt(_arg1:URLRequest):void{ var request = _arg1; _loader = new URLLoader(); _loader.dataFormat = URLLoaderDataFormat.VARIABLES; _loader.addEventListener(Event.COMPLETE, completeHandler); _loader.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler); _loader.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler); try { _loader.load(request); } catch(e:Error) { _dataReceived = true; }; } public function logGameStart(_arg1:String):void{ var _local2:String; var _local3:URLVariables; var _local4:URLRequest; if (_iTrackData == 0){ return; }; _local2 = (_PHPSERVER + _PHPSCRIPT); _local3 = new URLVariables(); _local3.data = _arg1; _local4 = new URLRequest(_local2); _local4.data = _local3; trackIt(_local4); } public function get wasDataReceived():Boolean{ return (_dataReceived); } public function keepSessionAlive(_arg1:String):void{ var _local2:String; var _local3:URLVariables; var _local4:URLRequest; _local2 = (_PHPSERVER + _PHPSCRIPT); _local3 = new URLVariables(); _local3.data = _arg1; _local4 = new URLRequest(_local2); _local4.data = _local3; trackIt(_local4); } } }//package com.meteorgames.flashsystem.system
Section 11
//System (com.meteorgames.flashsystem.system.System) package com.meteorgames.flashsystem.system { import flash.display.*; import flash.text.*; import flash.utils.*; public class System { private var _bOffline:Boolean; private var _KEY:Verschluesselung; private var _GAMETRACKING:GameTracking; private var _TRANSLATION:Translation; private var _bExternalHost:Boolean; private var _aAdd:Array; private var _iGameSessionLength:int; private var _aP:Array; private var _GAME_PARAMS:Object; public function System(){ var _local1:Array; super(); _bOffline = false; _bExternalHost = false; _aP = new Array(); _aAdd = new Array(); _iGameSessionLength = 0; _local1 = new Array(); } public function keepSessionAlive():void{ var _local1:String; var _local2:*; if (((_bOffline) || (_bExternalHost))){ return; }; _local1 = "ct=keep_session_alive"; _local2 = _KEY.run(_local1); _GAMETRACKING.keepSessionAlive(_local2); } public function addParam(_arg1:String, _arg2):void{ _aAdd[_arg1] = _arg2; } public function addFont(_arg1:Font, _arg2:String):void{ _TRANSLATION.addFont(_arg1, _arg2); } public function logGameOver(_arg1:int=1):void{ var _local2:String; var _local3:*; _iGameSessionLength = (getTimer() - _iGameSessionLength); if (((_bOffline) || (_bExternalHost))){ return; }; _local2 = ((("ct=game_end&minigame_id=" + String(getFlashParam("sID"))) + "&minigame_mode=") + String(_arg1)); _local3 = _KEY.run(_local2); _GAMETRACKING.logGameOver(_local3); } public function setTextField(_arg1:TextField, _arg2:String):void{ _TRANSLATION.setTextField(_arg1, _arg2); } public function setFont(_arg1:String):void{ _TRANSLATION.setFont(_arg1); } public function set gameIsOffline(_arg1:Boolean):void{ _bOffline = _arg1; } public function get gameIsOffline():Boolean{ return (_bOffline); } public function init(_arg1:Object):void{ _GAME_PARAMS = _arg1; _GAMETRACKING = new GameTracking(); _GAMETRACKING.init(getFlashParam("sPHPServer"), getFlashParam("sID"), int(getFlashParam("iCollectStats"))); _TRANSLATION = new Translation(); _TRANSLATION.init(); _KEY = new Verschluesselung(); } public function getServerResponse():String{ var _local1:String; _local1 = ""; if (((_bOffline) || (_bExternalHost))){ _local1 = "Visit <u><a href='http://www.twinskies.com/' target='_blank'>www.twinskies.com</a></u> today to sign up for an account!"; } else { _local1 = _GAMETRACKING.getReturnVar("text"); }; return (_local1); } public function get gameIsHostedExternally():Boolean{ return (_bExternalHost); } public function postPoints(_arg1:int=0, _arg2:int=1):void{ var _local3:*; if (((_bOffline) || (_bExternalHost))){ return; }; _local3 = "TPOSG"; _GAMETRACKING.postPoints(_local3); } public function getLegalText(_arg1:int):String{ var _local2:String; var _local3:*; _local2 = (("<p align='center'><font size='" + String(_arg1)) + "'><a href='http://www.twinskies.com' target='_blank'>Twin Skies</a> graphics, text and sound elements copyright 2008"); _local3 = new Date(); if (_local3.getFullYear() > 2008){ _local2 = (_local2 + (" - " + String(_local3.getFullYear()))); }; _local2 = (_local2 + " by Meteor Games LLC.<br>All rights reserved. <a href='http://www.twinskies.com' target='_blank'>Twin Skies</a> is a trademark of Meteor Games LLC.</font></p>"); return (_local2); } public function serverHasResponded():Boolean{ var _local1:Boolean; _local1 = false; if (((_bOffline) || (_bExternalHost))){ _local1 = true; } else { _local1 = _GAMETRACKING.wasDataReceived; }; return (_local1); } public function set gameIsHostedExternally(_arg1:Boolean):void{ _bExternalHost = _arg1; } public function getFlashParam(_arg1:String):String{ return (String(_GAME_PARAMS[_arg1])); } public function logGameStart(_arg1:int=1):void{ var _local2:String; var _local3:*; _iGameSessionLength = getTimer(); if (((_bOffline) || (_bExternalHost))){ return; }; _local2 = ((("ct=game_start&minigame_id=" + String(getFlashParam("sID"))) + "&minigame_mode=") + String(_arg1)); _local3 = _KEY.run(_local2); _GAMETRACKING.logGameStart(_local3); } public function setSchluessel(_arg1:MovieClip){ } public function getGameVersion():String{ var _local1:String; var _local2:String; var _local3:RegExp; var _local4:Array; _local1 = ""; _local2 = getFlashParam("sTehGame"); if (_local2 != ""){ _local3 = /_v[0-9]+?.swf/; _local4 = _local2.match(_local3); if (_local4 != null){ if (_local4.length > 0){ _local1 = String(_local4[0]); _local1 = _local1.replace("_v", ""); _local1 = _local1.replace(".swf", ""); }; }; }; return (_local1); } } }//package com.meteorgames.flashsystem.system
Section 12
//Textfields (com.meteorgames.flashsystem.system.Textfields) package com.meteorgames.flashsystem.system { import flash.text.*; public class Textfields { private var _aFonts:Array; private var _bMultiline:Boolean; private var _objDefaultTextFormat:TextFormat; private var _bWordWrap:Boolean; private var _bWesternLang:Boolean; public function Textfields():void{ _bWesternLang = true; _bMultiline = true; _bWordWrap = true; _aFonts = new Array(); _objDefaultTextFormat = new TextFormat(); } public function setTextField(_arg1:TextField, _arg2:String):void{ _arg1.embedFonts = _bWesternLang; _arg1.multiline = _bMultiline; _arg1.wordWrap = _bWordWrap; _arg1.htmlText = _arg2; _arg1.setTextFormat(_objDefaultTextFormat); } public function init(_arg1:Boolean):void{ _bWesternLang = _arg1; } public function setFont(_arg1:String):void{ if (_aFonts[_arg1] != undefined){ _objDefaultTextFormat.font = _aFonts[_arg1].fontName; }; } public function addFont(_arg1:Font, _arg2:String):void{ if (_aFonts[_arg2] == undefined){ _aFonts[_arg2] = _arg1; }; } } }//package com.meteorgames.flashsystem.system
Section 13
//Translation (com.meteorgames.flashsystem.system.Translation) package com.meteorgames.flashsystem.system { import flash.text.*; public class Translation { private var _TEXTFIELDS:Textfields; public function Translation(){ _TEXTFIELDS = new Textfields(); } public function init():void{ _TEXTFIELDS.init(true); } public function addFont(_arg1:Font, _arg2:String):void{ _TEXTFIELDS.addFont(_arg1, _arg2); } public function setFont(_arg1:String):void{ _TEXTFIELDS.setFont(_arg1); } public function setTextField(_arg1:TextField, _arg2:String):void{ _TEXTFIELDS.setTextField(_arg1, _arg2); } } }//package com.meteorgames.flashsystem.system
Section 14
//Verschluesselung (com.meteorgames.flashsystem.system.Verschluesselung) package com.meteorgames.flashsystem.system { public class Verschluesselung { private static var _sA:String; private static var _sB:String; public function Verschluesselung(){ var _local1:uint; var _local2:Array; var _local3:Array; super(); _local1 = (Math.pow(2, 3) * Math.pow(2, 3)); _local2 = [-15, -14, -13, -12, -11, -10, -9, -8, -7, -16, -15, -14, -13, -12, -11, -10, -9, -8, -7, -16, -15, -14, -13, -12, -11, -10]; _local3 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26]; } public function run(_arg1:String):String{ return ("TPOSG"); } } }//package com.meteorgames.flashsystem.system
Section 15
//customButton (com.meteorgames.libs.custombutton.customButton) package com.meteorgames.libs.custombutton { import flash.display.*; import flash.text.*; import flash.events.*; public class customButton { private var _buttonFunction:Function; private var _sCaption:String; private var _SYSTEM:Object; private var _mcButton:MovieClip; private var _mouseDownFunction:Function; private var _tfButton:TextField; private var _rolloverFunction:Function; private var _rolloutFunction:Function; private var _sButtonFont:String; public function customButton(_arg1:Object, _arg2:MovieClip, _arg3:TextField, _arg4:Function, _arg5:String=""){ _SYSTEM = _arg1; _mcButton = _arg2; _tfButton = _arg3; _buttonFunction = _arg4; _sButtonFont = _arg5; _rolloverFunction = null; _rolloutFunction = null; _mouseDownFunction = null; if (_sButtonFont != ""){ _SYSTEM.setFont(_sButtonFont); }; _mcButton.buttonMode = true; _mcButton.mouseChildren = false; if (!_mcButton.hasEventListener(MouseEvent.MOUSE_DOWN)){ _mcButton.addEventListener(MouseEvent.MOUSE_DOWN, mainButtonDown, false, 0, true); }; if (!_mcButton.hasEventListener(MouseEvent.MOUSE_UP)){ _mcButton.addEventListener(MouseEvent.MOUSE_UP, _buttonFunction, false, 0, true); }; if (!_mcButton.hasEventListener(MouseEvent.MOUSE_OVER)){ _mcButton.addEventListener(MouseEvent.MOUSE_OVER, mainButtonOver, false, 0, true); }; if (!_mcButton.hasEventListener(MouseEvent.MOUSE_OUT)){ _mcButton.addEventListener(MouseEvent.MOUSE_OUT, mainButtonOut, false, 0, true); }; } public function hide():void{ _mcButton.visible = false; } private function mainButtonOut(_arg1:MouseEvent):void{ if (_mcButton == null){ return; }; _mcButton.gotoAndStop(1); if (_rolloutFunction != null){ _rolloutFunction(); }; } public function setMouseDownCallback(_arg1:Function):void{ _mouseDownFunction = _arg1; } private function mainButtonDown(_arg1:MouseEvent):void{ if (_mcButton == null){ return; }; _mcButton.gotoAndStop(3); if (_mouseDownFunction != null){ _mouseDownFunction(); }; } public function setRolloutCallback(_arg1:Function):void{ _rolloutFunction = _arg1; } public function get mc():MovieClip{ return (_mcButton); } public function setText(_arg1:String):void{ _sCaption = _arg1; _SYSTEM.setTextField(_tfButton, _sCaption); } public function setRolloverCallback(_arg1:Function):void{ _rolloverFunction = _arg1; } public function destroy():void{ if (_mcButton.hasEventListener(MouseEvent.MOUSE_DOWN)){ _mcButton.removeEventListener(MouseEvent.MOUSE_DOWN, mainButtonDown); }; if (_mcButton.hasEventListener(MouseEvent.MOUSE_UP)){ _mcButton.removeEventListener(MouseEvent.MOUSE_UP, _buttonFunction); }; if (_mcButton.hasEventListener(MouseEvent.MOUSE_OVER)){ _mcButton.removeEventListener(MouseEvent.MOUSE_OVER, mainButtonOver); }; if (_mcButton.hasEventListener(MouseEvent.MOUSE_OUT)){ _mcButton.removeEventListener(MouseEvent.MOUSE_OUT, mainButtonOut); }; } public function show():void{ _mcButton.visible = true; } private function mainButtonOver(_arg1:MouseEvent):void{ if (_mcButton == null){ return; }; _mcButton.gotoAndStop(2); if (_rolloverFunction != null){ _rolloverFunction(); }; } } }//package com.meteorgames.libs.custombutton
Section 16
//customMC (com.meteorgames.libs.custommc.customMC) package com.meteorgames.libs.custommc { import flash.display.*; import flash.events.*; import flash.utils.*; public class customMC { private var _iNumFrames:int; private var _funcCallback:Function; private var _bInfLoop:Boolean; private var _sCurLoopID:String; private var _aLoops:Array; private var _iUpdate:int; private var _iCurFrame:int; private var _iInterval:int; private var _mc:MovieClip; private var _funcLabelCallback:Function; public function customMC(_arg1:MovieClip, _arg2:int, _arg3:Function=null, _arg4:Boolean=true){ _mc = _arg1; _iInterval = _arg2; _iUpdate = 0; _iNumFrames = _mc.totalFrames; _iCurFrame = 1; _funcCallback = _arg3; _funcLabelCallback = null; _aLoops = new Array(); _sCurLoopID = ""; _bInfLoop = false; if (_arg4){ if (!_mc.hasEventListener(Event.ENTER_FRAME)){ _mc.addEventListener(Event.ENTER_FRAME, onEnterFrame, false, 0, true); }; }; } public function stopLoop(_arg1:uint=1):void{ if (_sCurLoopID == ""){ return; }; destroy(); _mc.gotoAndStop(_arg1); } public function hide():void{ _mc.visible = false; } public function destroy():void{ _sCurLoopID = ""; _bInfLoop = false; if (_mc.hasEventListener(Event.ENTER_FRAME)){ _mc.removeEventListener(Event.ENTER_FRAME, onEnterFrame); }; } public function initLoop(_arg1:String, _arg2:uint, _arg3:uint, _arg4:uint=1):void{ _aLoops[_arg1] = new Array(_arg2, _arg3, _arg4); } public function get mc():MovieClip{ return (_mc); } public function get curLoopID():String{ return (_sCurLoopID); } public function reset(_arg1:MovieClip, _arg2:Boolean=true){ _mc = _arg1; if (_iCurFrame < _iNumFrames){ _mc.gotoAndStop((_iCurFrame + 1)); } else { _mc.gotoAndStop(1); }; _iCurFrame = _mc.currentFrame; if (_arg2){ if (!_mc.hasEventListener(Event.ENTER_FRAME)){ _mc.addEventListener(Event.ENTER_FRAME, onEnterFrame, false, 0, true); }; } else { _mc.gotoAndStop(1); }; } public function setLabelCallback(_arg1:Function){ _funcLabelCallback = _arg1; } public function set mc(_arg1:MovieClip):void{ _mc = _arg1; } private function onEnterFrame(_arg1:Event):void{ var _local2:int; var _local3:String; _local2 = getTimer(); if (_local2 > _iUpdate){ _iUpdate = (_local2 + _iInterval); if (_sCurLoopID != ""){ if (_mc.currentFrame < _aLoops[_sCurLoopID][1]){ _mc.nextFrame(); } else { _mc.gotoAndStop(_aLoops[_sCurLoopID][2]); if (!_bInfLoop){ _local3 = _sCurLoopID; _sCurLoopID = ""; destroy(); if (_funcCallback != null){ _funcCallback(_local3); }; }; }; } else { if (_mc.currentFrame < _iNumFrames){ _mc.nextFrame(); } else { _mc.gotoAndStop(1); }; }; _iCurFrame = _mc.currentFrame; if (_funcLabelCallback != null){ if (_mc.currentLabel != null){ if (_mc.currentLabel != "null"){ _funcLabelCallback(_mc.currentLabel); }; }; }; }; } public function playLoop(_arg1:String, _arg2:Boolean=false):void{ if (_aLoops[_arg1] == null){ return; }; _bInfLoop = _arg2; _sCurLoopID = _arg1; _mc.gotoAndStop(_aLoops[_sCurLoopID][0]); _iUpdate = (getTimer() + _iInterval); if (!_mc.hasEventListener(Event.ENTER_FRAME)){ _mc.addEventListener(Event.ENTER_FRAME, onEnterFrame, false, 0, true); }; } public function show():void{ _mc.visible = true; } } }//package com.meteorgames.libs.custommc
Section 17
//SecretCode (com.meteorgames.libs.secretcode.SecretCode) package com.meteorgames.libs.secretcode { public class SecretCode { private var _sCode:String; private var _aCodes:Array; private var _aBadKeys:Array; public function SecretCode(){ _aCodes = new Array(); _aBadKeys = new Array(37, 39, 38, 32, 40, 16, 17, 19, 20, 45, 91, 144, 145); _sCode = ""; } public function obfuscate(_arg1:String):String{ var _local2:Array; var _local3:Array; var _local4:int; var _local5:int; var _local6:String; var _local7:uint; _local2 = new Array(); _local3 = new Array(); _local4 = 0; _local5 = (_arg1.length - 1); _local6 = ""; _local7 = 0; while (_local7 <= _local5) { _local4 = _local7; if ((_local7 == _local5)){ _local4 = (_local4 + _arg1.charCodeAt(0)); } else { _local4 = (_local4 + _arg1.charCodeAt((_local7 + 1))); }; _local3.push((((("\"" + String(_local4)) + ".") + String(getRandom(1, 0xFF))) + "\"")); _local2.push(((String(_local4) + ".") + String(getRandom(1, 0xFF)))); _local7++; }; _local5 = (_local2.length - 1); _local7 = 0; while (_local7 <= _local5) { if ((_local7 == 0)){ _local6 = (_local6 + String.fromCharCode(int(Number((_local2[_local5] - (_local5 - _local7)))))); } else { _local6 = (_local6 + String.fromCharCode(int(Number((_local2[(_local7 - 1)] - (_local7 - 1)))))); }; _local7++; }; return (_local6); } public function trackKeyCode(_arg1:Number, _arg2:Number):int{ var _local3:int; var _local4:uint; var _local5:int; var _local6:Boolean; _local3 = -1; _local4 = 0; while (_local4 < _aBadKeys.length) { if (_arg1 == _aBadKeys[_local4]){ return (-1); }; _local4++; }; _sCode = (_sCode + String.fromCharCode(_arg2)); _local5 = _sCode.length; _local4 = 0; while (_local4 < _aCodes.length) { if (_sCode == _aCodes[_local4].sGem){ if (_aCodes[_local4].bActive){ _aCodes[_local4].iUsed--; if (_aCodes[_local4].iUsed <= 0){ _aCodes[_local4].bActive = false; }; _local3 = _local4; break; }; }; _local4++; }; if (_local3 == -1){ _local6 = false; _local4 = 0; while (_local4 < _aCodes.length) { if (_sCode.substr(0, _local5) == _aCodes[_local4].sGem.substr(0, _local5)){ _local6 = true; }; _local4++; }; if (!_local6){ _sCode = String.fromCharCode(_arg2); }; }; return (_local3); } public function resetAll():void{ var _local1:int; _local1 = 0; while (_local1 < _aCodes.length) { _aCodes[_local1].bActive = true; _aCodes[_local1].iUsed = _aCodes[_local1].iCount; _local1++; }; _sCode = ""; } public function addCode(_arg1:Array, _arg2:int):void{ var _local3:String; var _local4:uint; var _local5:Object; _local3 = ""; _local4 = 0; while (_local4 < _arg1.length) { if (_local4 == 0){ _local3 = (_local3 + String.fromCharCode(int(Number((_arg1[(_arg1.length - 1)] - ((_arg1.length - 1) - _local4)))))); } else { _local3 = (_local3 + String.fromCharCode(int(Number((_arg1[(_local4 - 1)] - (_local4 - 1)))))); }; _local4++; }; _local5 = new Object(); _local5.sGem = new String(_local3); _local5.bActive = new Boolean(true); _local5.iCount = new int(_arg2); _local5.iUsed = new int(_arg2); _aCodes.push(_local5); } private function getRandom(_arg1:int, _arg2:int):int{ return (Math.round((_arg1 + (Math.random() * (_arg2 - _arg1))))); } } }//package com.meteorgames.libs.secretcode
Section 18
//Slider (com.meteorgames.libs.slider.Slider) package com.meteorgames.libs.slider { import flash.display.*; import flash.events.*; public class Slider extends MovieClip { private var _funcCallback:Function; private var _iPercentage:int; private var _iMaxDistance:int; private var _iMinY:int; public var scrollSlot:MovieClip; private var _mcSlider:MovieClip; private var _iMaxY:int; private var _iSliderClickedY:int; public var slider:MovieClip; private var _sliderIsActive:Boolean; public function Slider(){ _mcSlider = this.slider; _sliderIsActive = false; _iSliderClickedY = 0; _iPercentage = 0; _iMaxDistance = int((_mcSlider.width / 2)); _iMinY = 0; _iMaxY = 0; } public function destroy(){ removeMouseOverEvent(); removeMouseOutEvent(); removeMouseDownEvent(); removeMouseUpEvent(); removeEnterFrameEvent(); } private function removeMouseUpEvent():void{ if (_mcSlider.hasEventListener(MouseEvent.MOUSE_UP)){ _mcSlider.removeEventListener(MouseEvent.MOUSE_UP, deactivateSlider); }; } private function moveSlider(_arg1:Event):void{ if (getDistance() > _iMaxDistance){ deactivateSlider(); } else { _mcSlider.y = this.mouseY; if (_mcSlider.y < _iMinY){ _mcSlider.y = _iMinY; } else { if (_mcSlider.y > _iMaxY){ _mcSlider.y = _iMaxY; }; }; _iSliderClickedY = this.mouseY; getPercentage(); _funcCallback(_iPercentage); }; } public function init(_arg1:Function, _arg2:int, _arg3:int, _arg4:int):void{ _funcCallback = _arg1; _iMinY = _arg2; _iMaxY = _arg3; _iPercentage = _arg4; setButtonFuncs(); setSlider(); getPercentage(); } private function setSlider(){ _mcSlider.y = int((_iMinY + (((_iMaxY - _iMinY) / 100) * _iPercentage))); } private function removeEnterFrameEvent():void{ if (_mcSlider.hasEventListener(Event.ENTER_FRAME)){ _mcSlider.removeEventListener(Event.ENTER_FRAME, moveSlider); }; } private function hiliteSlider(_arg1:MouseEvent):void{ _mcSlider.gotoAndStop(2); } private function setButtonFuncs():void{ _mcSlider.addEventListener(MouseEvent.MOUSE_OVER, hiliteSlider, false, 0, true); _mcSlider.addEventListener(MouseEvent.MOUSE_OUT, dehiliteSlider, false, 0, true); _mcSlider.addEventListener(MouseEvent.MOUSE_DOWN, activateSlider, false, 0, true); _mcSlider.addEventListener(MouseEvent.MOUSE_UP, deactivateSlider, false, 0, true); _mcSlider.buttonMode = true; _mcSlider.mouseChildren = false; _mcSlider.tabEnabled = false; } private function deactivateSlider(_arg1:MouseEvent=null):void{ if (_arg1 == null){ _mcSlider.gotoAndStop(1); } else { if (_arg1.currentTarget == _mcSlider){ _mcSlider.gotoAndStop(2); } else { _mcSlider.gotoAndStop(1); }; }; _sliderIsActive = false; removeEnterFrameEvent(); } private function getDistance():Number{ return ((Math.abs((this.mouseY - _mcSlider.y)) + Math.abs((this.mouseX - _mcSlider.x)))); } private function getPercentage():void{ _iPercentage = int((((_mcSlider.y - _iMinY) * 100) / (_iMaxY - _iMinY))); } private function removeMouseDownEvent():void{ if (_mcSlider.hasEventListener(MouseEvent.MOUSE_DOWN)){ _mcSlider.removeEventListener(MouseEvent.MOUSE_DOWN, activateSlider); }; } private function removeMouseOverEvent():void{ if (_mcSlider.hasEventListener(MouseEvent.MOUSE_OVER)){ _mcSlider.removeEventListener(MouseEvent.MOUSE_OVER, hiliteSlider); }; } private function removeMouseOutEvent():void{ if (_mcSlider.hasEventListener(MouseEvent.MOUSE_OUT)){ _mcSlider.removeEventListener(MouseEvent.MOUSE_OUT, dehiliteSlider); }; } private function activateSlider(_arg1:MouseEvent):void{ _mcSlider.gotoAndStop(3); _sliderIsActive = true; _iSliderClickedY = this.mouseY; if (!_mcSlider.hasEventListener(Event.ENTER_FRAME)){ _mcSlider.addEventListener(Event.ENTER_FRAME, moveSlider, false, 0, true); }; } private function dehiliteSlider(_arg1:MouseEvent):void{ _mcSlider.gotoAndStop(1); } } }//package com.meteorgames.libs.slider
Section 19
//SoundManager (com.meteorgames.libs.sound.SoundManager) package com.meteorgames.libs.sound { import flash.media.*; import flash.events.*; import flash.utils.*; public class SoundManager { private var _bMusic:Boolean; private var _aChannels:Array; private var _iVolFX:Number; private var _iVolMusic:Number; private var _aMusic:Array; private var _bFX:Boolean; private var _aFX:Array; static var _C_MUSIC:int = 1; static var _C_FX:int = 0; public function SoundManager(){ _bFX = true; _bMusic = true; _iVolFX = 1; _iVolMusic = 1; _aFX = new Array(); _aMusic = new Array(); _aChannels = new Array(); } public function stopMusic(_arg1:String=""):void{ var _local2:SoundObject; var _local3:Object; var _local4:String; var _local5:Boolean; for (_local4 in _aChannels) { _local2 = _aChannels[_local4]; if (_local2 == null){ } else { if (_local2.getType() == _C_MUSIC){ _local5 = true; if (((!((_arg1 == ""))) && (!((_local2.getID() == _arg1))))){ _local5 = false; }; if (_local5){ _local2._soundChannel.stop(); _local3 = _aMusic[_local2.getID()]; _local3.iPlaying--; }; }; }; }; } private function updateAllFXVol():void{ var _local1:SoundObject; var _local2:String; for (_local2 in _aChannels) { _local1 = _aChannels[_local2]; if (_local1 == null){ } else { if (_local1.getType() == _C_FX){ _local1.setVolume(_iVolFX); }; }; }; } public function addMusic(_arg1:Sound, _arg2:String="", _arg3:Boolean=false):void{ var _local4:Object; if (_arg2 == ""){ return; }; if (_aMusic[_arg2] == undefined){ _local4 = createSoundAsset(_C_MUSIC, _arg1, _arg2, _arg3); _aMusic[_arg2] = _local4; }; } public function playFX(_arg1:String="", _arg2:int=0, _arg3:int=1, _arg4:Number=1, _arg5:Number=0):void{ var _local6:Object; if (!_bFX){ return; }; if (_aFX[_arg1] != undefined){ _local6 = _aFX[_arg1]; if (_arg4 > _iVolFX){ _arg4 = _iVolFX; }; playIt(_local6, _arg2, _arg3, _arg4, _arg5); }; } public function stopAll():void{ stopFX(); stopMusic(); _aChannels = new Array(); } public function fadeMusic(_arg1:String="", _arg2:Number=0, _arg3:Number=1, _arg4:int=1000):void{ if (_arg2 > _iVolMusic){ _arg2 = _iVolMusic; }; fade(_C_MUSIC, _arg1, _arg2, _arg3, _arg4); } public function playMusic(_arg1:String="", _arg2:int=0, _arg3:int=1, _arg4:Number=1, _arg5:Number=0):void{ var _local6:Object; if (!_bMusic){ return; }; if (_aMusic[_arg1] != undefined){ _local6 = _aMusic[_arg1]; if (_arg4 > _iVolMusic){ _arg4 = _iVolMusic; }; playIt(_local6, _arg2, _arg3, _arg4, _arg5); }; } public function stopFX(_arg1:String=""):void{ var _local2:SoundObject; var _local3:Object; var _local4:String; var _local5:Boolean; for (_local4 in _aChannels) { _local2 = _aChannels[_local4]; if (_local2 == null){ } else { if (_local2.getType() == _C_FX){ _local5 = true; if (((!((_arg1 == ""))) && (!((_local2.getID() == _arg1))))){ _local5 = false; }; if (_local5){ _local2._soundChannel.stop(); _local3 = _aFX[_local2.getID()]; _local3.iPlaying--; }; }; }; }; } public function fadeFX(_arg1:String="", _arg2:Number=0, _arg3:Number=1, _arg4:int=1000):void{ if (_arg2 > _iVolFX){ _arg2 = _iVolFX; }; fade(_C_FX, _arg1, _arg2, _arg3, _arg4); } public function setMusicVolume(_arg1:int):void{ _iVolMusic = Number((_arg1 / 100)); updateAllMusicVol(); } private function fade(_arg1:int, _arg2:String, _arg3:Number, _arg4:Number, _arg5:int):void{ var _local6:SoundObject; var _local7:Object; var _local8:String; var _local9:Boolean; for (_local8 in _aChannels) { _local6 = _aChannels[_local8]; if (_local6 == null){ } else { if (_local6.getType() == _arg1){ _local9 = true; if (((!((_arg2 == ""))) && (!((_local6.getID() == _arg2))))){ _local9 = false; }; if (_local9){ _local6.fade(_arg3, _arg4, _arg5); }; }; }; }; } public function getFXVolume():Number{ return (_iVolFX); } private function updateAllMusicVol():void{ var _local1:SoundObject; var _local2:String; for (_local2 in _aChannels) { _local1 = _aChannels[_local2]; if (_local1 == null){ } else { if (_local1.getType() == _C_MUSIC){ _local1.setVolume(_iVolMusic); }; }; }; } public function getMusicVolume():Number{ return (_iVolMusic); } public function setMusic(_arg1:Boolean):void{ _bMusic = _arg1; } public function setFXVolume(_arg1:int):void{ _iVolFX = Number((_arg1 / 100)); updateAllFXVol(); } public function getFX():Boolean{ return (_bFX); } public function setFX(_arg1:Boolean):void{ _bFX = _arg1; } public function soundComplete(_arg1:int, _arg2:String, _arg3:String):void{ var _local4:SoundObject; var _local5:Boolean; if (_aChannels[_arg3] != null){ _local4 = _aChannels[_arg3]; _local4._soundChannel.removeEventListener(Event.SOUND_COMPLETE, _local4.onSoundComplete); _local5 = false; if (_arg1 == _C_FX){ if (_aFX[_arg2] != null){ _aFX[_arg2].iPlaying--; _local5 = _aFX[_arg2].bMultiple; }; } else { if (_arg1 == _C_MUSIC){ if (_aMusic[_arg2] != null){ _aMusic[_arg2].iPlaying--; _local5 = _aMusic[_arg2].bMultiple; }; }; }; if (_local5){ _aChannels[_arg3] = null; delete _aChannels[_arg3]; }; }; } public function addFX(_arg1:Sound, _arg2:String="", _arg3:Boolean=true):void{ var _local4:Object; if (_arg2 == ""){ return; }; if (_aFX[_arg2] == undefined){ _local4 = createSoundAsset(_C_FX, _arg1, _arg2, _arg3); _aFX[_arg2] = _local4; }; } public function findSoundObject(_arg1:String):SoundObject{ var _local2:SoundObject; var _local3:String; for (_local3 in _aChannels) { if (_aChannels[_local3] == null){ continue; } else { if (_aChannels[_local3].getID() == _arg1){ _local2 = _aChannels[_local3]; break; }; }; }; return (_local2); } private function createSoundAsset(_arg1:int, _arg2:Sound, _arg3:String, _arg4:Boolean):Object{ var _local5:Object; _local5 = new Object(); _local5.iType = _arg1; _local5.sound = _arg2; _local5.soundID = _arg3; _local5.bMultiple = _arg4; _local5.iPlaying = 0; return (_local5); } public function getMusic():Boolean{ return (_bMusic); } public function playIt(_arg1:Object, _arg2:int=0, _arg3:int=1, _arg4:Number=1, _arg5:Number=0):void{ var _local6:Boolean; var _local7:SoundObject; var _local8:String; _local6 = false; if (!_arg1.bMultiple){ _local7 = findSoundObject(_arg1.soundID); }; if (_local7 == null){ _local7 = new SoundObject(this); } else { _local6 = true; if (_local7.isFading()){ _local7.killFadeTimer(); }; _local7._soundChannel.stop(); }; _local7._soundChannel = _arg1.sound.play(_arg2, _arg3); _local7._soundTransform.volume = _arg4; _local7._soundTransform.pan = _arg5; _local7._soundChannel.soundTransform = _local7._soundTransform; if (!_local6){ _arg1.iPlaying++; _local8 = (getTimer() + _arg1.soundID); _local7.setID(_arg1.iType, _arg1.soundID, _local8); _local7._soundChannel.addEventListener(Event.SOUND_COMPLETE, _local7.onSoundComplete, false, 0, true); _aChannels[_local8] = _local7; }; } } }//package com.meteorgames.libs.sound
Section 20
//SoundObject (com.meteorgames.libs.sound.SoundObject) package com.meteorgames.libs.sound { import flash.media.*; import flash.events.*; import flash.utils.*; public class SoundObject { private var _objParent:Object; private var _iType:int; private var _nFadeVol:Number; private var _tFade:Timer; private var _nFadePan:Number; public var _soundChannel:SoundChannel; private var _sSoundID:String; private var _iFadeVolTarget:Number; private var _sCustomID:String; private var _iFadePanTarget:Number; public var _soundTransform:SoundTransform; public function SoundObject(_arg1:Object){ _objParent = _arg1; _iType = 0; _sSoundID = ""; _sCustomID = ""; _tFade = new Timer(0, 0); _nFadeVol = 0; _nFadePan = 0; _iFadeVolTarget = 0; _iFadePanTarget = 0; _soundChannel = new SoundChannel(); _soundTransform = new SoundTransform(); } public function stop():void{ _soundChannel.stop(); if (_tFade.running){ _tFade.stop(); }; _objParent.soundComplete(_iType, _sSoundID, _sCustomID); } public function isFading():Boolean{ return (_tFade.running); } public function fade(_arg1:Number, _arg2:Number, _arg3:int):void{ var _local4:Number; var _local5:Number; var _local6:Number; var _local7:int; if (_arg1 == _soundTransform.volume){ if (_arg2 == _soundTransform.pan){ return; }; }; if (_tFade.running){ _tFade.stop(); }; _iFadeVolTarget = _arg1; _iFadePanTarget = _arg2; _local4 = 100; _local5 = Math.abs((_soundTransform.volume - _iFadeVolTarget)); _local6 = Math.abs((_soundTransform.pan - _iFadePanTarget)); _local7 = int((_arg3 / _local4)); _nFadeVol = Number((_local5 / _local7)); _nFadePan = Number((_local6 / _local7)); if (_iFadeVolTarget < _soundTransform.volume){ _nFadeVol = (_nFadeVol * -1); }; if (_iFadePanTarget < _soundTransform.pan){ _nFadePan = (_nFadePan * -1); }; startFadeTimer(_local4, _local7); } public function onSoundComplete(_arg1:Event):void{ _objParent.soundComplete(_iType, _sSoundID, _sCustomID); } private function onTimerFade(_arg1:TimerEvent):void{ _soundTransform.volume = (_soundTransform.volume + _nFadeVol); _soundTransform.pan = (_soundTransform.pan + _nFadePan); _soundChannel.soundTransform = _soundTransform; } private function onTimerCompleteFade(_arg1:TimerEvent):void{ _soundTransform.volume = _iFadeVolTarget; _soundTransform.pan = _iFadePanTarget; _soundChannel.soundTransform = _soundTransform; if (_soundTransform.volume <= 0){ _soundChannel.stop(); _objParent.soundComplete(_iType, _sSoundID, _sCustomID); }; } public function setVolume(_arg1:Number):void{ _soundTransform.volume = _arg1; _soundChannel.soundTransform = _soundTransform; } public function killFadeTimer():void{ _tFade.reset(); if (_tFade.hasEventListener(TimerEvent.TIMER)){ _tFade.removeEventListener(TimerEvent.TIMER, onTimerFade); }; if (_tFade.hasEventListener(TimerEvent.TIMER_COMPLETE)){ _tFade.removeEventListener(TimerEvent.TIMER_COMPLETE, onTimerCompleteFade); }; } private function startFadeTimer(_arg1:Number, _arg2:int):void{ _tFade = new Timer(_arg1, _arg2); if (!_tFade.hasEventListener(TimerEvent.TIMER)){ _tFade.addEventListener(TimerEvent.TIMER, onTimerFade, false, 0, true); }; if (!_tFade.hasEventListener(TimerEvent.TIMER_COMPLETE)){ _tFade.addEventListener(TimerEvent.TIMER_COMPLETE, onTimerCompleteFade, false, 0, true); }; _tFade.start(); } public function getType():int{ return (_iType); } public function getID():String{ return (_sSoundID); } public function setID(_arg1:int, _arg2:String, _arg3:String){ _iType = _arg1; _sSoundID = _arg2; _sCustomID = _arg3; } } }//package com.meteorgames.libs.sound
Section 21
//XVar (com.meteorgames.libs.xvars.XVar) package com.meteorgames.libs.xvars { public class XVar { private var _aXVar:Array; public function XVar(_arg1){ _aXVar = []; create(_arg1); } public function add(_arg1):void{ var _local2:*; if (_aXVar[0][0] > 0){ _aXVar[0][1] = (_aXVar[0][1] + (_aXVar[0][0] * _arg1)); } else { _local2 = 0; while (_local2 < _arg1.length) { _aXVar[0][1].push(_arg1.charCodeAt(_local2)); _local2++; }; }; } public function set(_arg1):void{ create(_arg1); } private function create(_arg1):void{ var _local2:*; var _local3:*; var _local4:*; var _local5:*; _aXVar = []; _local2 = []; _local3 = typeof(_arg1); if (_local3.toLowerCase() == "string"){ _local2.push(0); _local4 = []; _local5 = 0; while (_local5 < _arg1.length) { _local4.push(_arg1.charCodeAt(_local5)); _local5++; }; _local2.push(_local4); } else { if (_local3.toLowerCase() == "number"){ _local2.push((11 + int((Math.random() * 100)))); _local2.push((_arg1 * _local2[0])); }; }; _aXVar.push(_local2); } public function out(){ var _local1:*; var _local2:*; if (_aXVar[0][0] > 0){ return ((_aXVar[0][1] / _aXVar[0][0])); }; _local1 = ""; _local2 = 0; while (_local2 < _aXVar[0][1].length) { _local1 = (_local1 + String.fromCharCode(_aXVar[0][1][_local2])); _local2++; }; return (_local1); } } }//package com.meteorgames.libs.xvars
Section 22
//BaseButton (fl.controls.BaseButton) package fl.controls { import flash.display.*; import flash.events.*; import fl.core.*; import fl.events.*; import flash.utils.*; public class BaseButton extends UIComponent { protected var _selected:Boolean;// = false private var unlockedMouseState:String; protected var pressTimer:Timer; protected var mouseState:String; protected var background:DisplayObject; private var _mouseStateLocked:Boolean;// = false protected var _autoRepeat:Boolean;// = false private static var defaultStyles:Object = {upSkin:"Button_upSkin", downSkin:"Button_downSkin", overSkin:"Button_overSkin", disabledSkin:"Button_disabledSkin", selectedDisabledSkin:"Button_selectedDisabledSkin", selectedUpSkin:"Button_selectedUpSkin", selectedDownSkin:"Button_selectedDownSkin", selectedOverSkin:"Button_selectedOverSkin", focusRectSkin:null, focusRectPadding:null, repeatDelay:500, repeatInterval:35}; public function BaseButton(){ _selected = false; _autoRepeat = false; _mouseStateLocked = false; super(); buttonMode = true; mouseChildren = false; useHandCursor = false; setupMouseEvents(); setMouseState("up"); pressTimer = new Timer(1, 0); pressTimer.addEventListener(TimerEvent.TIMER, buttonDown, false, 0, true); } protected function endPress():void{ pressTimer.reset(); } public function set mouseStateLocked(_arg1:Boolean):void{ _mouseStateLocked = _arg1; if (_arg1 == false){ setMouseState(unlockedMouseState); } else { unlockedMouseState = mouseState; }; } public function get autoRepeat():Boolean{ return (_autoRepeat); } public function set autoRepeat(_arg1:Boolean):void{ _autoRepeat = _arg1; } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; mouseEnabled = _arg1; } public function get selected():Boolean{ return (_selected); } protected function mouseEventHandler(_arg1:MouseEvent):void{ if (_arg1.type == MouseEvent.MOUSE_DOWN){ setMouseState("down"); startPress(); } else { if ((((_arg1.type == MouseEvent.ROLL_OVER)) || ((_arg1.type == MouseEvent.MOUSE_UP)))){ setMouseState("over"); endPress(); } else { if (_arg1.type == MouseEvent.ROLL_OUT){ setMouseState("up"); endPress(); }; }; }; } public function setMouseState(_arg1:String):void{ if (_mouseStateLocked){ unlockedMouseState = _arg1; return; }; if (mouseState == _arg1){ return; }; mouseState = _arg1; invalidate(InvalidationType.STATE); } protected function startPress():void{ if (_autoRepeat){ pressTimer.delay = Number(getStyleValue("repeatDelay")); pressTimer.start(); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } protected function buttonDown(_arg1:TimerEvent):void{ if (!_autoRepeat){ endPress(); return; }; if (pressTimer.currentCount == 1){ pressTimer.delay = Number(getStyleValue("repeatInterval")); }; dispatchEvent(new ComponentEvent(ComponentEvent.BUTTON_DOWN, true)); } public function set selected(_arg1:Boolean):void{ if (_selected == _arg1){ return; }; _selected = _arg1; invalidate(InvalidationType.STATE); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; super.draw(); } protected function setupMouseEvents():void{ addEventListener(MouseEvent.ROLL_OVER, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_DOWN, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.MOUSE_UP, mouseEventHandler, false, 0, true); addEventListener(MouseEvent.ROLL_OUT, mouseEventHandler, false, 0, true); } protected function drawLayout():void{ background.width = width; background.height = height; } protected function drawBackground():void{ var _local1:String; var _local2:DisplayObject; _local1 = (enabled) ? mouseState : "disabled"; if (selected){ _local1 = (("selected" + _local1.substr(0, 1).toUpperCase()) + _local1.substr(1)); }; _local1 = (_local1 + "Skin"); _local2 = background; background = getDisplayObjectInstance(getStyleValue(_local1)); addChildAt(background, 0); if (((!((_local2 == null))) && (!((_local2 == background))))){ removeChild(_local2); }; } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 23
//Button (fl.controls.Button) package fl.controls { import flash.display.*; import fl.core.*; import fl.managers.*; public class Button extends LabelButton implements IFocusManagerComponent { protected var emphasizedBorder:DisplayObject; protected var _emphasized:Boolean;// = false private static var defaultStyles:Object = {emphasizedSkin:"Button_emphasizedSkin", emphasizedPadding:2}; public static var createAccessibilityImplementation:Function; public function Button(){ _emphasized = false; super(); } override public function drawFocus(_arg1:Boolean):void{ var _local2:Number; var _local3:*; super.drawFocus(_arg1); if (_arg1){ _local2 = Number(getStyleValue("emphasizedPadding")); if ((((_local2 < 0)) || (!(_emphasized)))){ _local2 = 0; }; _local3 = getStyleValue("focusRectPadding"); _local3 = ((_local3)==null) ? 2 : _local3; _local3 = (_local3 + _local2); uiFocusRect.x = -(_local3); uiFocusRect.y = -(_local3); uiFocusRect.width = (width + (_local3 * 2)); uiFocusRect.height = (height + (_local3 * 2)); }; } public function set emphasized(_arg1:Boolean):void{ _emphasized = _arg1; invalidate(InvalidationType.STYLES); } override protected function draw():void{ if (((isInvalid(InvalidationType.STYLES)) || (isInvalid(InvalidationType.SIZE)))){ drawEmphasized(); }; super.draw(); if (emphasizedBorder != null){ setChildIndex(emphasizedBorder, (numChildren - 1)); }; } public function get emphasized():Boolean{ return (_emphasized); } override protected function initializeAccessibility():void{ if (Button.createAccessibilityImplementation != null){ Button.createAccessibilityImplementation(this); }; } protected function drawEmphasized():void{ var _local1:Object; var _local2:Number; if (emphasizedBorder != null){ removeChild(emphasizedBorder); }; emphasizedBorder = null; if (!_emphasized){ return; }; _local1 = getStyleValue("emphasizedSkin"); if (_local1 != null){ emphasizedBorder = getDisplayObjectInstance(_local1); }; if (emphasizedBorder != null){ addChildAt(emphasizedBorder, 0); _local2 = Number(getStyleValue("emphasizedPadding")); emphasizedBorder.x = (emphasizedBorder.y = -(_local2)); emphasizedBorder.width = (width + (_local2 * 2)); emphasizedBorder.height = (height + (_local2 * 2)); }; } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(LabelButton.getStyleDefinition(), defaultStyles)); } } }//package fl.controls
Section 24
//ButtonLabelPlacement (fl.controls.ButtonLabelPlacement) package fl.controls { public class ButtonLabelPlacement { public static const TOP:String = "top"; public static const LEFT:String = "left"; public static const BOTTOM:String = "bottom"; public static const RIGHT:String = "right"; } }//package fl.controls
Section 25
//LabelButton (fl.controls.LabelButton) package fl.controls { import flash.display.*; import flash.text.*; import flash.events.*; import fl.core.*; import fl.managers.*; import fl.events.*; import flash.ui.*; public class LabelButton extends BaseButton implements IFocusManagerComponent { protected var _labelPlacement:String;// = "right" protected var _toggle:Boolean;// = false protected var icon:DisplayObject; protected var oldMouseState:String; protected var mode:String;// = "center" public var textField:TextField; protected var _label:String;// = "Label" private static var defaultStyles:Object = {icon:null, upIcon:null, downIcon:null, overIcon:null, disabledIcon:null, selectedDisabledIcon:null, selectedUpIcon:null, selectedDownIcon:null, selectedOverIcon:null, textFormat:null, disabledTextFormat:null, textPadding:5, embedFonts:false}; public static var createAccessibilityImplementation:Function; public function LabelButton(){ _labelPlacement = ButtonLabelPlacement.RIGHT; _toggle = false; _label = "Label"; mode = "center"; super(); } protected function toggleSelected(_arg1:MouseEvent):void{ selected = !(selected); dispatchEvent(new Event(Event.CHANGE, true)); } public function get labelPlacement():String{ return (_labelPlacement); } override protected function keyDownHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ if (oldMouseState == null){ oldMouseState = mouseState; }; setMouseState("down"); startPress(); }; } protected function setEmbedFont(){ var _local1:Object; _local1 = getStyleValue("embedFonts"); if (_local1 != null){ textField.embedFonts = _local1; }; } override protected function keyUpHandler(_arg1:KeyboardEvent):void{ if (!enabled){ return; }; if (_arg1.keyCode == Keyboard.SPACE){ setMouseState(oldMouseState); oldMouseState = null; endPress(); dispatchEvent(new MouseEvent(MouseEvent.CLICK)); }; } override public function get selected():Boolean{ return ((_toggle) ? _selected : false); } public function set labelPlacement(_arg1:String):void{ _labelPlacement = _arg1; invalidate(InvalidationType.SIZE); } public function set toggle(_arg1:Boolean):void{ if (((!(_arg1)) && (super.selected))){ selected = false; }; _toggle = _arg1; if (_toggle){ addEventListener(MouseEvent.CLICK, toggleSelected, false, 0, true); } else { removeEventListener(MouseEvent.CLICK, toggleSelected); }; invalidate(InvalidationType.STATE); } public function get label():String{ return (_label); } override public function set selected(_arg1:Boolean):void{ _selected = _arg1; if (_toggle){ invalidate(InvalidationType.STATE); }; } override protected function draw():void{ if (textField.text != _label){ label = _label; }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ drawBackground(); drawIcon(); drawTextFormat(); invalidate(InvalidationType.SIZE, false); }; if (isInvalid(InvalidationType.SIZE)){ drawLayout(); }; if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } public function get toggle():Boolean{ return (_toggle); } override protected function configUI():void{ super.configUI(); textField = new TextField(); textField.type = TextFieldType.DYNAMIC; textField.selectable = false; addChild(textField); } override protected function drawLayout():void{ var _local1:Number; var _local2:String; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; _local1 = Number(getStyleValue("textPadding")); _local2 = ((((icon == null)) && ((mode == "center")))) ? ButtonLabelPlacement.TOP : _labelPlacement; textField.height = (textField.textHeight + 4); _local3 = (textField.textWidth + 4); _local4 = (textField.textHeight + 4); _local5 = ((icon)==null) ? 0 : (icon.width + _local1); _local6 = ((icon)==null) ? 0 : (icon.height + _local1); textField.visible = (label.length > 0); if (icon != null){ icon.x = Math.round(((width - icon.width) / 2)); icon.y = Math.round(((height - icon.height) / 2)); }; if (textField.visible == false){ textField.width = 0; textField.height = 0; } else { if ((((_local2 == ButtonLabelPlacement.BOTTOM)) || ((_local2 == ButtonLabelPlacement.TOP)))){ _local7 = Math.max(0, Math.min(_local3, (width - (2 * _local1)))); if ((height - 2) > _local4){ _local8 = _local4; } else { _local8 = (height - 2); }; _local3 = _local7; textField.width = _local3; _local4 = _local8; textField.height = _local4; textField.x = Math.round(((width - _local3) / 2)); textField.y = Math.round(((((height - textField.height) - _local6) / 2) + ((_local2)==ButtonLabelPlacement.BOTTOM) ? _local6 : 0)); if (icon != null){ icon.y = Math.round(((_local2)==ButtonLabelPlacement.BOTTOM) ? (textField.y - _local6) : ((textField.y + textField.height) + _local1)); }; } else { _local7 = Math.max(0, Math.min(_local3, ((width - _local5) - (2 * _local1)))); _local3 = _local7; textField.width = _local3; textField.x = Math.round(((((width - _local3) - _local5) / 2) + ((_local2)!=ButtonLabelPlacement.LEFT) ? _local5 : 0)); textField.y = Math.round(((height - textField.height) / 2)); if (icon != null){ icon.x = Math.round(((_local2)!=ButtonLabelPlacement.LEFT) ? (textField.x - _local5) : ((textField.x + _local3) + _local1)); }; }; }; super.drawLayout(); } override protected function initializeAccessibility():void{ if (LabelButton.createAccessibilityImplementation != null){ LabelButton.createAccessibilityImplementation(this); }; } protected function drawIcon():void{ var _local1:DisplayObject; var _local2:String; var _local3:Object; _local1 = icon; _local2 = (enabled) ? mouseState : "disabled"; if (selected){ _local2 = (("selected" + _local2.substr(0, 1).toUpperCase()) + _local2.substr(1)); }; _local2 = (_local2 + "Icon"); _local3 = getStyleValue(_local2); if (_local3 == null){ _local3 = getStyleValue("icon"); }; if (_local3 != null){ icon = getDisplayObjectInstance(_local3); }; if (icon != null){ addChildAt(icon, 1); }; if (((!((_local1 == null))) && (!((_local1 == icon))))){ removeChild(_local1); }; } public function set label(_arg1:String):void{ _label = _arg1; if (textField.text != _label){ textField.text = _label; dispatchEvent(new ComponentEvent(ComponentEvent.LABEL_CHANGE)); }; invalidate(InvalidationType.SIZE); invalidate(InvalidationType.STYLES); } protected function drawTextFormat():void{ var _local1:Object; var _local2:TextFormat; var _local3:TextFormat; _local1 = UIComponent.getStyleDefinition(); _local2 = (enabled) ? (_local1.defaultTextFormat as TextFormat) : (_local1.defaultDisabledTextFormat as TextFormat); textField.setTextFormat(_local2); _local3 = (getStyleValue((enabled) ? "textFormat" : "disabledTextFormat") as TextFormat); if (_local3 != null){ textField.setTextFormat(_local3); } else { _local3 = _local2; }; textField.defaultTextFormat = _local3; setEmbedFont(); } public static function getStyleDefinition():Object{ return (mergeStyles(defaultStyles, BaseButton.getStyleDefinition())); } } }//package fl.controls
Section 26
//ScrollBar (fl.controls.ScrollBar) package fl.controls { import flash.events.*; import fl.core.*; import fl.events.*; public class ScrollBar extends UIComponent { private var _direction:String;// = "vertical" protected var inDrag:Boolean;// = false protected var upArrow:BaseButton; private var _pageScrollSize:Number;// = 0 protected var downArrow:BaseButton; private var _pageSize:Number;// = 10 private var thumbScrollOffset:Number; private var _maxScrollPosition:Number;// = 0 private var _scrollPosition:Number;// = 0 protected var track:BaseButton; private var _minScrollPosition:Number;// = 0 private var _lineScrollSize:Number;// = 1 protected var thumb:LabelButton; protected static const THUMB_STYLES:Object = {disabledSkin:"thumbDisabledSkin", downSkin:"thumbDownSkin", overSkin:"thumbOverSkin", upSkin:"thumbUpSkin", icon:"thumbIcon", textPadding:0}; public static const WIDTH:Number = 15; protected static const DOWN_ARROW_STYLES:Object = {disabledSkin:"downArrowDisabledSkin", downSkin:"downArrowDownSkin", overSkin:"downArrowOverSkin", upSkin:"downArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const UP_ARROW_STYLES:Object = {disabledSkin:"upArrowDisabledSkin", downSkin:"upArrowDownSkin", overSkin:"upArrowOverSkin", upSkin:"upArrowUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; protected static const TRACK_STYLES:Object = {disabledSkin:"trackDisabledSkin", downSkin:"trackDownSkin", overSkin:"trackOverSkin", upSkin:"trackUpSkin", repeatDelay:"repeatDelay", repeatInterval:"repeatInterval"}; private static var defaultStyles:Object = {downArrowDisabledSkin:"ScrollArrowDown_disabledSkin", downArrowDownSkin:"ScrollArrowDown_downSkin", downArrowOverSkin:"ScrollArrowDown_overSkin", downArrowUpSkin:"ScrollArrowDown_upSkin", thumbDisabledSkin:"ScrollThumb_upSkin", thumbDownSkin:"ScrollThumb_downSkin", thumbOverSkin:"ScrollThumb_overSkin", thumbUpSkin:"ScrollThumb_upSkin", trackDisabledSkin:"ScrollTrack_skin", trackDownSkin:"ScrollTrack_skin", trackOverSkin:"ScrollTrack_skin", trackUpSkin:"ScrollTrack_skin", upArrowDisabledSkin:"ScrollArrowUp_disabledSkin", upArrowDownSkin:"ScrollArrowUp_downSkin", upArrowOverSkin:"ScrollArrowUp_overSkin", upArrowUpSkin:"ScrollArrowUp_upSkin", thumbIcon:"ScrollBar_thumbIcon", repeatDelay:500, repeatInterval:35}; public function ScrollBar(){ _pageSize = 10; _pageScrollSize = 0; _lineScrollSize = 1; _minScrollPosition = 0; _maxScrollPosition = 0; _scrollPosition = 0; _direction = ScrollBarDirection.VERTICAL; inDrag = false; super(); setStyles(); focusEnabled = false; } public function get minScrollPosition():Number{ return (_minScrollPosition); } public function set minScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _arg1, _maxScrollPosition); } public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ var _local3:Number; _local3 = scrollPosition; _scrollPosition = Math.max(_minScrollPosition, Math.min(_maxScrollPosition, _arg1)); if (_local3 == _scrollPosition){ return; }; if (_arg2){ dispatchEvent(new ScrollEvent(_direction, (scrollPosition - _local3), scrollPosition)); }; updateThumb(); } public function set scrollPosition(_arg1:Number):void{ setScrollPosition(_arg1, true); } public function get pageScrollSize():Number{ return (((_pageScrollSize)==0) ? _pageSize : _pageScrollSize); } public function set pageSize(_arg1:Number):void{ if (_arg1 > 0){ _pageSize = _arg1; }; } public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ this.pageSize = _arg1; _minScrollPosition = _arg2; _maxScrollPosition = _arg3; if (_arg4 >= 0){ _pageScrollSize = _arg4; }; enabled = (_maxScrollPosition > _minScrollPosition); setScrollPosition(_scrollPosition, false); updateThumb(); } override public function set enabled(_arg1:Boolean):void{ super.enabled = _arg1; downArrow.enabled = (track.enabled = (thumb.enabled = (upArrow.enabled = ((enabled) && ((_maxScrollPosition > _minScrollPosition)))))); updateThumb(); } protected function updateThumb():void{ var _local1:Number; _local1 = ((_maxScrollPosition - _minScrollPosition) + _pageSize); if ((((((track.height <= 12)) || ((_maxScrollPosition <= _minScrollPosition)))) || ((((_local1 == 0)) || (isNaN(_local1)))))){ thumb.height = 12; thumb.visible = false; } else { thumb.height = Math.max(13, ((_pageSize / _local1) * track.height)); thumb.y = (track.y + ((track.height - thumb.height) * ((_scrollPosition - _minScrollPosition) / (_maxScrollPosition - _minScrollPosition)))); thumb.visible = enabled; }; } protected function thumbPressHandler(_arg1:MouseEvent):void{ inDrag = true; thumbScrollOffset = (mouseY - thumb.y); thumb.mouseStateLocked = true; mouseChildren = false; stage.addEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag, false, 0, true); stage.addEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler, false, 0, true); } protected function thumbReleaseHandler(_arg1:MouseEvent):void{ inDrag = false; mouseChildren = true; thumb.mouseStateLocked = false; stage.removeEventListener(MouseEvent.MOUSE_MOVE, handleThumbDrag); stage.removeEventListener(MouseEvent.MOUSE_UP, thumbReleaseHandler); } public function set pageScrollSize(_arg1:Number):void{ if (_arg1 >= 0){ _pageScrollSize = _arg1; }; } protected function handleThumbDrag(_arg1:MouseEvent):void{ var _local2:Number; _local2 = Math.max(0, Math.min((track.height - thumb.height), ((mouseY - track.y) - thumbScrollOffset))); setScrollPosition((((_local2 / (track.height - thumb.height)) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition)); } public function set direction(_arg1:String):void{ var _local2:Boolean; if (_direction == _arg1){ return; }; _direction = _arg1; if (isLivePreview){ return; }; setScaleY(1); _local2 = (_direction == ScrollBarDirection.HORIZONTAL); if (((_local2) && (componentInspectorSetting))){ if (rotation == 90){ return; }; setScaleX(-1); rotation = -90; }; if (!componentInspectorSetting){ if (((_local2) && ((rotation == 0)))){ rotation = -90; setScaleX(-1); } else { if (((!(_local2)) && ((rotation == -90)))){ rotation = 0; setScaleX(1); }; }; }; invalidate(InvalidationType.SIZE); } public function set lineScrollSize(_arg1:Number):void{ if (_arg1 > 0){ _lineScrollSize = _arg1; }; } override public function get height():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.width : super.height); } protected function scrollPressHandler(_arg1:ComponentEvent):void{ var _local2:Number; var _local3:Number; _arg1.stopImmediatePropagation(); if (_arg1.currentTarget == upArrow){ setScrollPosition((_scrollPosition - _lineScrollSize)); } else { if (_arg1.currentTarget == downArrow){ setScrollPosition((_scrollPosition + _lineScrollSize)); } else { _local2 = (((track.mouseY / track.height) * (_maxScrollPosition - _minScrollPosition)) + _minScrollPosition); _local3 = ((pageScrollSize)==0) ? pageSize : pageScrollSize; if (_scrollPosition < _local2){ setScrollPosition(Math.min(_local2, (_scrollPosition + _local3))); } else { if (_scrollPosition > _local2){ setScrollPosition(Math.max(_local2, (_scrollPosition - _local3))); }; }; }; }; } public function get pageSize():Number{ return (_pageSize); } public function set maxScrollPosition(_arg1:Number):void{ setScrollProperties(_pageSize, _minScrollPosition, _arg1); } public function get scrollPosition():Number{ return (_scrollPosition); } override public function get enabled():Boolean{ return (super.enabled); } override protected function draw():void{ var _local1:Number; if (isInvalid(InvalidationType.SIZE)){ _local1 = super.height; downArrow.move(0, Math.max(upArrow.height, (_local1 - downArrow.height))); track.setSize(WIDTH, Math.max(0, (_local1 - (downArrow.height + upArrow.height)))); updateThumb(); }; if (isInvalid(InvalidationType.STYLES, InvalidationType.STATE)){ setStyles(); }; downArrow.drawNow(); upArrow.drawNow(); track.drawNow(); thumb.drawNow(); validate(); } override protected function configUI():void{ super.configUI(); track = new BaseButton(); track.move(0, 14); track.useHandCursor = false; track.autoRepeat = true; track.focusEnabled = false; addChild(track); thumb = new LabelButton(); thumb.label = ""; thumb.setSize(WIDTH, 15); thumb.move(0, 15); thumb.focusEnabled = false; addChild(thumb); downArrow = new BaseButton(); downArrow.setSize(WIDTH, 14); downArrow.autoRepeat = true; downArrow.focusEnabled = false; addChild(downArrow); upArrow = new BaseButton(); upArrow.setSize(WIDTH, 14); upArrow.move(0, 0); upArrow.autoRepeat = true; upArrow.focusEnabled = false; addChild(upArrow); upArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); downArrow.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); track.addEventListener(ComponentEvent.BUTTON_DOWN, scrollPressHandler, false, 0, true); thumb.addEventListener(MouseEvent.MOUSE_DOWN, thumbPressHandler, false, 0, true); enabled = false; } public function get direction():String{ return (_direction); } public function get lineScrollSize():Number{ return (_lineScrollSize); } override public function setSize(_arg1:Number, _arg2:Number):void{ if (_direction == ScrollBarDirection.HORIZONTAL){ super.setSize(_arg2, _arg1); } else { super.setSize(_arg1, _arg2); }; } public function get maxScrollPosition():Number{ return (_maxScrollPosition); } override public function get width():Number{ return (((_direction)==ScrollBarDirection.HORIZONTAL) ? super.height : super.width); } protected function setStyles():void{ copyStylesToChild(downArrow, DOWN_ARROW_STYLES); copyStylesToChild(thumb, THUMB_STYLES); copyStylesToChild(track, TRACK_STYLES); copyStylesToChild(upArrow, UP_ARROW_STYLES); } public static function getStyleDefinition():Object{ return (defaultStyles); } } }//package fl.controls
Section 27
//ScrollBarDirection (fl.controls.ScrollBarDirection) package fl.controls { public class ScrollBarDirection { public static const HORIZONTAL:String = "horizontal"; public static const VERTICAL:String = "vertical"; } }//package fl.controls
Section 28
//UIScrollBar (fl.controls.UIScrollBar) package fl.controls { import flash.text.*; import flash.events.*; import fl.core.*; import fl.events.*; public class UIScrollBar extends ScrollBar { protected var inScroll:Boolean;// = false protected var _scrollTarget:TextField; protected var inEdit:Boolean;// = false private static var defaultStyles:Object = {}; public function UIScrollBar(){ inEdit = false; inScroll = false; super(); } protected function handleTargetScroll(_arg1:Event):void{ if (inDrag){ return; }; if (!enabled){ return; }; inEdit = true; updateScrollTargetProperties(); scrollPosition = ((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV; inEdit = false; } override public function set minScrollPosition(_arg1:Number):void{ super.minScrollPosition = ((_arg1)<0) ? 0 : _arg1; } override public function setScrollPosition(_arg1:Number, _arg2:Boolean=true):void{ super.setScrollPosition(_arg1, _arg2); if (!_scrollTarget){ inScroll = false; return; }; updateTargetScroll(); } override public function setScrollProperties(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number=0):void{ var _local5:Number; var _local6:Number; _local5 = _arg3; _local6 = ((_arg2)<0) ? 0 : _arg2; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local5 = ((_arg3)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local5; } else { _local5 = ((_arg3)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local5; }; }; super.setScrollProperties(_arg1, _local6, _local5, _arg4); } public function get scrollTargetName():String{ return (_scrollTarget.name); } public function get scrollTarget():TextField{ return (_scrollTarget); } protected function updateScrollTargetProperties():void{ var _local1:Boolean; var _local2:Number; if (_scrollTarget == null){ setScrollProperties(pageSize, minScrollPosition, maxScrollPosition, pageScrollSize); scrollPosition = 0; } else { _local1 = (direction == ScrollBarDirection.HORIZONTAL); _local2 = (_local1) ? _scrollTarget.width : 10; setScrollProperties(_local2, (_local1) ? 0 : 1, (_local1) ? _scrollTarget.maxScrollH : _scrollTarget.maxScrollV, pageScrollSize); scrollPosition = (_local1) ? _scrollTarget.scrollH : _scrollTarget.scrollV; }; } public function update():void{ inEdit = true; updateScrollTargetProperties(); inEdit = false; } public function set scrollTargetName(_arg1:String):void{ var target = _arg1; try { scrollTarget = (parent.getChildByName(target) as TextField); } catch(error:Error) { throw (new Error("ScrollTarget not found, or is not a TextField")); }; } override public function set direction(_arg1:String):void{ if (isLivePreview){ return; }; super.direction = _arg1; updateScrollTargetProperties(); } protected function handleTargetChange(_arg1:Event):void{ inEdit = true; setScrollPosition(((direction)==ScrollBarDirection.HORIZONTAL) ? _scrollTarget.scrollH : _scrollTarget.scrollV, true); updateScrollTargetProperties(); inEdit = false; } override public function set maxScrollPosition(_arg1:Number):void{ var _local2:Number; _local2 = _arg1; if (_scrollTarget != null){ if (direction == ScrollBarDirection.HORIZONTAL){ _local2 = ((_local2)>_scrollTarget.maxScrollH) ? _scrollTarget.maxScrollH : _local2; } else { _local2 = ((_local2)>_scrollTarget.maxScrollV) ? _scrollTarget.maxScrollV : _local2; }; }; super.maxScrollPosition = _local2; } protected function updateTargetScroll(_arg1:ScrollEvent=null):void{ if (inEdit){ return; }; if (direction == ScrollBarDirection.HORIZONTAL){ _scrollTarget.scrollH = scrollPosition; } else { _scrollTarget.scrollV = scrollPosition; }; } override protected function draw():void{ if (isInvalid(InvalidationType.DATA)){ updateScrollTargetProperties(); }; super.draw(); } public function set scrollTarget(_arg1:TextField):void{ if (_scrollTarget != null){ _scrollTarget.removeEventListener(Event.CHANGE, handleTargetChange, false); _scrollTarget.removeEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false); _scrollTarget.removeEventListener(Event.SCROLL, handleTargetScroll, false); removeEventListener(ScrollEvent.SCROLL, updateTargetScroll, false); }; _scrollTarget = _arg1; if (_scrollTarget != null){ _scrollTarget.addEventListener(Event.CHANGE, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(TextEvent.TEXT_INPUT, handleTargetChange, false, 0, true); _scrollTarget.addEventListener(Event.SCROLL, handleTargetScroll, false, 0, true); addEventListener(ScrollEvent.SCROLL, updateTargetScroll, false, 0, true); }; invalidate(InvalidationType.DATA); } override public function get direction():String{ return (super.direction); } public static function getStyleDefinition():Object{ return (UIComponent.mergeStyles(defaultStyles, ScrollBar.getStyleDefinition())); } } }//package fl.controls
Section 29
//ComponentShim (fl.core.ComponentShim) package fl.core { import flash.display.*; public dynamic class ComponentShim extends MovieClip { } }//package fl.core
Section 30
//InvalidationType (fl.core.InvalidationType) package fl.core { public class InvalidationType { public static const SIZE:String = "size"; public static const ALL:String = "all"; public static const DATA:String = "data"; public static const SCROLL:String = "scroll"; public static const STATE:String = "state"; public static const STYLES:String = "styles"; public static const SELECTED:String = "selected"; public static const RENDERER_STYLES:String = "rendererStyles"; } }//package fl.core
Section 31
//UIComponent (fl.core.UIComponent) package fl.core { import flash.display.*; import flash.text.*; import flash.events.*; import fl.managers.*; import fl.events.*; import flash.utils.*; import flash.system.*; public class UIComponent extends Sprite { protected var _enabled:Boolean;// = true private var _mouseFocusEnabled:Boolean;// = true protected var startHeight:Number; protected var _height:Number; protected var _oldIMEMode:String;// = null protected var startWidth:Number; public var focusTarget:IFocusManagerComponent; protected var errorCaught:Boolean;// = false protected var uiFocusRect:DisplayObject; protected var _width:Number; public var version:String;// = "3.0.0.15" protected var isFocused:Boolean;// = false protected var callLaterMethods:Dictionary; private var _focusEnabled:Boolean;// = true private var tempText:TextField; protected var invalidateFlag:Boolean;// = false protected var _inspector:Boolean;// = false protected var sharedStyles:Object; protected var invalidHash:Object; protected var isLivePreview:Boolean;// = false protected var _imeMode:String;// = null protected var instanceStyles:Object; protected var _x:Number; protected var _y:Number; public static var inCallLaterPhase:Boolean = false; private static var defaultStyles:Object = {focusRectSkin:"focusRectSkin", focusRectPadding:2, textFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), disabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultTextFormat:new TextFormat("_sans", 11, 0, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0), defaultDisabledTextFormat:new TextFormat("_sans", 11, 0x999999, false, false, false, "", "", TextFormatAlign.LEFT, 0, 0, 0, 0)}; public static var createAccessibilityImplementation:Function; private static var focusManagers:Dictionary = new Dictionary(false); public function UIComponent(){ version = "3.0.0.15"; isLivePreview = false; invalidateFlag = false; _enabled = true; isFocused = false; _focusEnabled = true; _mouseFocusEnabled = true; _imeMode = null; _oldIMEMode = null; errorCaught = false; _inspector = false; super(); instanceStyles = {}; sharedStyles = {}; invalidHash = {}; callLaterMethods = new Dictionary(); StyleManager.registerInstance(this); configUI(); invalidate(InvalidationType.ALL); tabEnabled = (this is IFocusManagerComponent); focusRect = false; if (tabEnabled){ addEventListener(FocusEvent.FOCUS_IN, focusInHandler); addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler); addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); }; initializeFocusManager(); addEventListener(Event.ENTER_FRAME, hookAccessibility, false, 0, true); } public function drawFocus(_arg1:Boolean):void{ var _local2:Number; isFocused = _arg1; if (((!((uiFocusRect == null))) && (contains(uiFocusRect)))){ removeChild(uiFocusRect); uiFocusRect = null; }; if (_arg1){ uiFocusRect = (getDisplayObjectInstance(getStyleValue("focusRectSkin")) as Sprite); if (uiFocusRect == null){ return; }; _local2 = Number(getStyleValue("focusRectPadding")); uiFocusRect.x = -(_local2); uiFocusRect.y = -(_local2); uiFocusRect.width = (width + (_local2 * 2)); uiFocusRect.height = (height + (_local2 * 2)); addChildAt(uiFocusRect, 0); }; } private function callLaterDispatcher(_arg1:Event):void{ var _local2:Dictionary; var _local3:Object; if (_arg1.type == Event.ADDED_TO_STAGE){ removeEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher); stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); return; }; _arg1.target.removeEventListener(Event.RENDER, callLaterDispatcher); if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); return; }; inCallLaterPhase = true; _local2 = callLaterMethods; for (_local3 in _local2) { _local3(); delete _local2[_local3]; }; inCallLaterPhase = false; } private function addedHandler(_arg1:Event):void{ removeEventListener("addedToStage", addedHandler); initializeFocusManager(); } protected function getStyleValue(_arg1:String):Object{ return (((instanceStyles[_arg1])==null) ? sharedStyles[_arg1] : instanceStyles[_arg1]); } protected function isOurFocus(_arg1:DisplayObject):Boolean{ return ((_arg1 == this)); } override public function get scaleX():Number{ return ((width / startWidth)); } override public function get scaleY():Number{ return ((height / startHeight)); } override public function set height(_arg1:Number):void{ if (_height == _arg1){ return; }; setSize(width, _arg1); } protected function keyDownHandler(_arg1:KeyboardEvent):void{ } protected function focusInHandler(_arg1:FocusEvent):void{ var _local2:IFocusManager; if (isOurFocus((_arg1.target as DisplayObject))){ _local2 = focusManager; if (((_local2) && (_local2.showFocusIndicator))){ drawFocus(true); isFocused = true; }; }; } public function setStyle(_arg1:String, _arg2:Object):void{ if ((((instanceStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; instanceStyles[_arg1] = _arg2; invalidate(InvalidationType.STYLES); } override public function get visible():Boolean{ return (super.visible); } public function get componentInspectorSetting():Boolean{ return (_inspector); } override public function get x():Number{ return ((isNaN(_x)) ? super.x : _x); } override public function get y():Number{ return ((isNaN(_y)) ? super.y : _y); } protected function setIMEMode(_arg1:Boolean){ var enabled = _arg1; if (_imeMode != null){ if (enabled){ IME.enabled = true; _oldIMEMode = IME.conversionMode; try { if (((!(errorCaught)) && (!((IME.conversionMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _imeMode; }; errorCaught = false; } catch(e:Error) { errorCaught = true; throw (new Error(("IME mode not supported: " + _imeMode))); }; } else { if (((!((IME.conversionMode == IMEConversionMode.UNKNOWN))) && (!((_oldIMEMode == IMEConversionMode.UNKNOWN))))){ IME.conversionMode = _oldIMEMode; }; IME.enabled = false; }; }; } public function set enabled(_arg1:Boolean):void{ if (_arg1 == _enabled){ return; }; _enabled = _arg1; invalidate(InvalidationType.STATE); } public function setSharedStyle(_arg1:String, _arg2:Object):void{ if ((((sharedStyles[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; sharedStyles[_arg1] = _arg2; if (instanceStyles[_arg1] == null){ invalidate(InvalidationType.STYLES); }; } protected function keyUpHandler(_arg1:KeyboardEvent):void{ } public function set focusEnabled(_arg1:Boolean):void{ _focusEnabled = _arg1; } override public function set scaleX(_arg1:Number):void{ setSize((startWidth * _arg1), height); } public function get mouseFocusEnabled():Boolean{ return (_mouseFocusEnabled); } override public function set scaleY(_arg1:Number):void{ setSize(width, (startHeight * _arg1)); } protected function getDisplayObjectInstance(_arg1:Object):DisplayObject{ var classDef:Object; var skin = _arg1; classDef = null; if ((skin is Class)){ return ((new (skin) as DisplayObject)); }; if ((skin is DisplayObject)){ (skin as DisplayObject).x = 0; (skin as DisplayObject).y = 0; return ((skin as DisplayObject)); }; try { classDef = getDefinitionByName(skin.toString()); } catch(e:Error) { try { classDef = (loaderInfo.applicationDomain.getDefinition(skin.toString()) as Object); } catch(e:Error) { }; }; if (classDef == null){ return (null); }; return ((new (classDef) as DisplayObject)); } protected function copyStylesToChild(_arg1:UIComponent, _arg2:Object):void{ var _local3:String; for (_local3 in _arg2) { _arg1.setStyle(_local3, getStyleValue(_arg2[_local3])); }; } protected function beforeComponentParameters():void{ } protected function callLater(_arg1:Function):void{ if (inCallLaterPhase){ return; }; callLaterMethods[_arg1] = true; if (stage != null){ stage.addEventListener(Event.RENDER, callLaterDispatcher, false, 0, true); stage.invalidate(); } else { addEventListener(Event.ADDED_TO_STAGE, callLaterDispatcher, false, 0, true); }; } protected function createFocusManager():void{ if (focusManagers[stage] == null){ focusManagers[stage] = new FocusManager(stage); }; } override public function set visible(_arg1:Boolean):void{ var _local2:String; if (super.visible == _arg1){ return; }; super.visible = _arg1; _local2 = (_arg1) ? ComponentEvent.SHOW : ComponentEvent.HIDE; dispatchEvent(new ComponentEvent(_local2, true)); } protected function hookAccessibility(_arg1:Event):void{ removeEventListener(Event.ENTER_FRAME, hookAccessibility); initializeAccessibility(); } public function set componentInspectorSetting(_arg1:Boolean):void{ _inspector = _arg1; if (_inspector){ beforeComponentParameters(); } else { afterComponentParameters(); }; } override public function set x(_arg1:Number):void{ move(_arg1, _y); } public function drawNow():void{ draw(); } override public function set y(_arg1:Number):void{ move(_x, _arg1); } protected function checkLivePreview():Boolean{ var className:String; if (parent == null){ return (false); }; try { className = getQualifiedClassName(parent); } catch(e:Error) { }; return ((className == "fl.livepreview::LivePreviewParent")); } protected function focusOutHandler(_arg1:FocusEvent):void{ if (isOurFocus((_arg1.target as DisplayObject))){ drawFocus(false); isFocused = false; }; } public function set mouseFocusEnabled(_arg1:Boolean):void{ _mouseFocusEnabled = _arg1; } public function getFocus():InteractiveObject{ if (stage){ return (stage.focus); }; return (null); } protected function validate():void{ invalidHash = {}; } override public function get height():Number{ return (_height); } public function invalidate(_arg1:String="all", _arg2:Boolean=true):void{ invalidHash[_arg1] = true; if (_arg2){ this.callLater(draw); }; } public function get enabled():Boolean{ return (_enabled); } protected function getScaleX():Number{ return (super.scaleX); } protected function getScaleY():Number{ return (super.scaleY); } public function get focusEnabled():Boolean{ return (_focusEnabled); } protected function afterComponentParameters():void{ } protected function draw():void{ if (isInvalid(InvalidationType.SIZE, InvalidationType.STYLES)){ if (((isFocused) && (focusManager.showFocusIndicator))){ drawFocus(true); }; }; validate(); } protected function configUI():void{ var _local1:Number; var _local2:Number; var _local3:Number; isLivePreview = checkLivePreview(); _local1 = rotation; rotation = 0; _local2 = super.width; _local3 = super.height; var _local4 = 1; super.scaleY = _local4; super.scaleX = _local4; setSize(_local2, _local3); move(super.x, super.y); rotation = _local1; startWidth = _local2; startHeight = _local3; if (numChildren > 0){ removeChildAt(0); }; } protected function setScaleX(_arg1:Number):void{ super.scaleX = _arg1; } protected function setScaleY(_arg1:Number):void{ super.scaleY = _arg1; } private function initializeFocusManager():void{ if (stage == null){ addEventListener(Event.ADDED_TO_STAGE, addedHandler, false, 0, true); } else { createFocusManager(); }; } public function set focusManager(_arg1:IFocusManager):void{ UIComponent.focusManagers[this] = _arg1; } public function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } protected function isInvalid(_arg1:String, ... _args):Boolean{ if (((invalidHash[_arg1]) || (invalidHash[InvalidationType.ALL]))){ return (true); }; while (_args.length > 0) { if (invalidHash[_args.pop()]){ return (true); }; }; return (false); } public function setSize(_arg1:Number, _arg2:Number):void{ _width = _arg1; _height = _arg2; invalidate(InvalidationType.SIZE); dispatchEvent(new ComponentEvent(ComponentEvent.RESIZE, false)); } override public function set width(_arg1:Number):void{ if (_width == _arg1){ return; }; setSize(_arg1, height); } public function setFocus():void{ if (stage){ stage.focus = this; }; } protected function initializeAccessibility():void{ if (UIComponent.createAccessibilityImplementation != null){ UIComponent.createAccessibilityImplementation(this); }; } public function get focusManager():IFocusManager{ var _local1:DisplayObject; _local1 = this; while (_local1) { if (UIComponent.focusManagers[_local1] != null){ return (IFocusManager(UIComponent.focusManagers[_local1])); }; _local1 = _local1.parent; }; return (null); } override public function get width():Number{ return (_width); } public function move(_arg1:Number, _arg2:Number):void{ _x = _arg1; _y = _arg2; super.x = Math.round(_arg1); super.y = Math.round(_arg2); dispatchEvent(new ComponentEvent(ComponentEvent.MOVE)); } public function validateNow():void{ invalidate(InvalidationType.ALL, false); draw(); } public function getStyle(_arg1:String):Object{ return (instanceStyles[_arg1]); } public static function getStyleDefinition():Object{ return (defaultStyles); } public static function mergeStyles(... _args):Object{ var _local2:Object; var _local3:uint; var _local4:uint; var _local5:Object; var _local6:String; _local2 = {}; _local3 = _args.length; _local4 = 0; while (_local4 < _local3) { _local5 = _args[_local4]; for (_local6 in _local5) { if (_local2[_local6] != null){ } else { _local2[_local6] = _args[_local4][_local6]; }; }; _local4++; }; return (_local2); } } }//package fl.core
Section 32
//ComponentEvent (fl.events.ComponentEvent) package fl.events { import flash.events.*; public class ComponentEvent extends Event { public static const HIDE:String = "hide"; public static const BUTTON_DOWN:String = "buttonDown"; public static const MOVE:String = "move"; public static const RESIZE:String = "resize"; public static const ENTER:String = "enter"; public static const LABEL_CHANGE:String = "labelChange"; public static const SHOW:String = "show"; public function ComponentEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false){ super(_arg1, _arg2, _arg3); } override public function toString():String{ return (formatToString("ComponentEvent", "type", "bubbles", "cancelable")); } override public function clone():Event{ return (new ComponentEvent(type, bubbles, cancelable)); } } }//package fl.events
Section 33
//ScrollEvent (fl.events.ScrollEvent) package fl.events { import flash.events.*; public class ScrollEvent extends Event { private var _position:Number; private var _direction:String; private var _delta:Number; public static const SCROLL:String = "scroll"; public function ScrollEvent(_arg1:String, _arg2:Number, _arg3:Number){ super(ScrollEvent.SCROLL, false, false); _direction = _arg1; _delta = _arg2; _position = _arg3; } override public function clone():Event{ return (new ScrollEvent(_direction, _delta, _position)); } public function get position():Number{ return (_position); } override public function toString():String{ return (formatToString("ScrollEvent", "type", "bubbles", "cancelable", "direction", "delta", "position")); } public function get delta():Number{ return (_delta); } public function get direction():String{ return (_direction); } } }//package fl.events
Section 34
//FocusManager (fl.managers.FocusManager) package fl.managers { import fl.controls.*; import flash.display.*; import flash.text.*; import flash.events.*; import fl.core.*; import flash.utils.*; import flash.ui.*; public class FocusManager implements IFocusManager { private var focusableObjects:Dictionary; private var _showFocusIndicator:Boolean;// = true private var defButton:Button; private var focusableCandidates:Array; private var _form:DisplayObjectContainer; private var _defaultButtonEnabled:Boolean;// = true private var activated:Boolean;// = false private var _defaultButton:Button; private var calculateCandidates:Boolean;// = true private var lastFocus:InteractiveObject; private var lastAction:String; public function FocusManager(_arg1:DisplayObjectContainer){ activated = false; calculateCandidates = true; _showFocusIndicator = true; _defaultButtonEnabled = true; super(); focusableObjects = new Dictionary(true); if (_arg1 != null){ _form = _arg1; addFocusables(DisplayObject(_arg1)); _arg1.addEventListener(Event.ADDED, addedHandler); _arg1.addEventListener(Event.REMOVED, removedHandler); activate(); }; } public function get showFocusIndicator():Boolean{ return (_showFocusIndicator); } private function getIndexOfNextObject(_arg1:int, _arg2:Boolean, _arg3:Boolean, _arg4:String):int{ var _local5:int; var _local6:int; var _local7:DisplayObject; var _local8:IFocusManagerGroup; var _local9:int; var _local10:DisplayObject; var _local11:IFocusManagerGroup; _local5 = focusableCandidates.length; _local6 = _arg1; while (true) { if (_arg2){ _arg1--; } else { _arg1++; }; if (_arg3){ if (((_arg2) && ((_arg1 < 0)))){ break; }; if (((!(_arg2)) && ((_arg1 == _local5)))){ break; }; } else { _arg1 = ((_arg1 + _local5) % _local5); if (_local6 == _arg1){ break; }; }; if (isValidFocusCandidate(focusableCandidates[_arg1], _arg4)){ _local7 = DisplayObject(findFocusManagerComponent(focusableCandidates[_arg1])); if ((_local7 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local7); _local9 = 0; while (_local9 < focusableCandidates.length) { _local10 = focusableCandidates[_local9]; if ((_local10 is IFocusManagerGroup)){ _local11 = IFocusManagerGroup(_local10); if ((((_local11.groupName == _local8.groupName)) && (_local11.selected))){ _arg1 = _local9; break; }; }; _local9++; }; }; return (_arg1); }; }; return (_arg1); } public function set form(_arg1:DisplayObjectContainer):void{ _form = _arg1; } private function addFocusables(_arg1:DisplayObject, _arg2:Boolean=false):void{ var focusable:IFocusManagerComponent; var io:InteractiveObject; var doc:DisplayObjectContainer; var i:int; var child:DisplayObject; var o = _arg1; var skipTopLevel = _arg2; if (!skipTopLevel){ if ((o is IFocusManagerComponent)){ focusable = IFocusManagerComponent(o); if (focusable.focusEnabled){ if (((focusable.tabEnabled) && (isTabVisible(o)))){ focusableObjects[o] = true; calculateCandidates = true; }; o.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); o.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; } else { if ((o is InteractiveObject)){ io = (o as InteractiveObject); if (((((io) && (io.tabEnabled))) && ((findFocusManagerComponent(io) == io)))){ focusableObjects[io] = true; calculateCandidates = true; }; io.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); io.addEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); }; }; }; if ((o is DisplayObjectContainer)){ doc = DisplayObjectContainer(o); o.addEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); if ((((((doc is Stage)) || ((doc.parent is Stage)))) || (doc.tabChildren))){ i = 0; while (i < doc.numChildren) { try { child = doc.getChildAt(i); if (child != null){ addFocusables(doc.getChildAt(i)); }; } catch(error:SecurityError) { }; i = (i + 1); }; }; }; } private function getChildIndex(_arg1:DisplayObjectContainer, _arg2:DisplayObject):int{ return (_arg1.getChildIndex(_arg2)); } private function mouseFocusChangeHandler(_arg1:FocusEvent):void{ if ((_arg1.relatedObject is TextField)){ return; }; _arg1.preventDefault(); } private function focusOutHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject; _local2 = (_arg1.target as InteractiveObject); } private function isValidFocusCandidate(_arg1:DisplayObject, _arg2:String):Boolean{ var _local3:IFocusManagerGroup; if (!isEnabledAndVisible(_arg1)){ return (false); }; if ((_arg1 is IFocusManagerGroup)){ _local3 = IFocusManagerGroup(_arg1); if (_arg2 == _local3.groupName){ return (false); }; }; return (true); } public function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject{ var _local2:InteractiveObject; _local2 = _arg1; while (_arg1) { if ((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))){ return (_arg1); }; _arg1 = _arg1.parent; }; return (_local2); } private function sortFocusableObjectsTabIndex():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))){ focusableCandidates.push(_local2); }; }; focusableCandidates.sort(sortByTabIndex); } private function removeFocusables(_arg1:DisplayObject):void{ var _local2:Object; var _local3:DisplayObject; if ((_arg1 is DisplayObjectContainer)){ _arg1.removeEventListener(Event.TAB_CHILDREN_CHANGE, tabChildrenChangeHandler); _arg1.removeEventListener(Event.TAB_INDEX_CHANGE, tabIndexChangeHandler); for (_local2 in focusableObjects) { _local3 = DisplayObject(_local2); if (DisplayObjectContainer(_arg1).contains(_local3)){ if (_local3 == lastFocus){ lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local2]; calculateCandidates = true; }; }; }; } private function addedHandler(_arg1:Event):void{ var _local2:DisplayObject; _local2 = DisplayObject(_arg1.target); if (_local2.stage){ addFocusables(DisplayObject(_arg1.target)); }; } private function getTopLevelFocusTarget(_arg1:InteractiveObject):InteractiveObject{ while (_arg1 != InteractiveObject(form)) { if ((((((((_arg1 is IFocusManagerComponent)) && (IFocusManagerComponent(_arg1).focusEnabled))) && (IFocusManagerComponent(_arg1).mouseFocusEnabled))) && (UIComponent(_arg1).enabled))){ return (_arg1); }; _arg1 = _arg1.parent; if (_arg1 == null){ break; }; }; return (null); } private function tabChildrenChangeHandler(_arg1:Event):void{ var _local2:DisplayObjectContainer; if (_arg1.target != _arg1.currentTarget){ return; }; calculateCandidates = true; _local2 = DisplayObjectContainer(_arg1.target); if (_local2.tabChildren){ addFocusables(_local2, true); } else { removeFocusables(_local2); }; } public function sendDefaultButtonEvent():void{ defButton.dispatchEvent(new MouseEvent(MouseEvent.CLICK)); } public function getFocus():InteractiveObject{ var _local1:InteractiveObject; _local1 = form.stage.focus; return (findFocusManagerComponent(_local1)); } private function isEnabledAndVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer; var _local3:TextField; var _local4:SimpleButton; _local2 = DisplayObject(form).parent; while (_arg1 != _local2) { if ((_arg1 is UIComponent)){ if (!UIComponent(_arg1).enabled){ return (false); }; } else { if ((_arg1 is TextField)){ _local3 = TextField(_arg1); if ((((_local3.type == TextFieldType.DYNAMIC)) || (!(_local3.selectable)))){ return (false); }; } else { if ((_arg1 is SimpleButton)){ _local4 = SimpleButton(_arg1); if (!_local4.enabled){ return (false); }; }; }; }; if (!_arg1.visible){ return (false); }; _arg1 = _arg1.parent; }; return (true); } public function set defaultButton(_arg1:Button):void{ var _local2:Button; _local2 = (_arg1) ? Button(_arg1) : null; if (_local2 != _defaultButton){ if (_defaultButton){ _defaultButton.emphasized = false; }; if (defButton){ defButton.emphasized = false; }; _defaultButton = _local2; defButton = _local2; if (_local2){ _local2.emphasized = true; }; }; } private function deactivateHandler(_arg1:Event):void{ var _local2:InteractiveObject; _local2 = InteractiveObject(_arg1.target); } public function setFocus(_arg1:InteractiveObject):void{ if ((_arg1 is IFocusManagerComponent)){ IFocusManagerComponent(_arg1).setFocus(); } else { form.stage.focus = _arg1; }; } private function setFocusToNextObject(_arg1:FocusEvent):void{ var _local2:InteractiveObject; if (!hasFocusableObjects()){ return; }; _local2 = getNextFocusManagerComponent(_arg1.shiftKey); if (_local2){ setFocus(_local2); }; } private function hasFocusableObjects():Boolean{ var _local1:Object; for (_local1 in focusableObjects) { return (true); }; return (false); } private function tabIndexChangeHandler(_arg1:Event):void{ calculateCandidates = true; } private function sortFocusableObjects():void{ var _local1:Object; var _local2:InteractiveObject; focusableCandidates = []; for (_local1 in focusableObjects) { _local2 = InteractiveObject(_local1); if (((((_local2.tabIndex) && (!(isNaN(Number(_local2.tabIndex)))))) && ((_local2.tabIndex > 0)))){ sortFocusableObjectsTabIndex(); return; }; focusableCandidates.push(_local2); }; focusableCandidates.sort(sortByDepth); } private function keyFocusChangeHandler(_arg1:FocusEvent):void{ showFocusIndicator = true; if ((((((_arg1.keyCode == Keyboard.TAB)) || ((_arg1.keyCode == 0)))) && (!(_arg1.isDefaultPrevented())))){ setFocusToNextObject(_arg1); _arg1.preventDefault(); }; } private function getIndexOfFocusedObject(_arg1:DisplayObject):int{ var _local2:int; var _local3:int; _local2 = focusableCandidates.length; _local3 = 0; _local3 = 0; while (_local3 < _local2) { if (focusableCandidates[_local3] == _arg1){ return (_local3); }; _local3++; }; return (-1); } public function hideFocus():void{ } private function removedHandler(_arg1:Event):void{ var _local2:int; var _local3:DisplayObject; var _local4:InteractiveObject; _local3 = DisplayObject(_arg1.target); if ((((_local3 is IFocusManagerComponent)) && ((focusableObjects[_local3] == true)))){ if (_local3 == lastFocus){ IFocusManagerComponent(lastFocus).drawFocus(false); lastFocus = null; }; _local3.removeEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); delete focusableObjects[_local3]; calculateCandidates = true; } else { if ((((_local3 is InteractiveObject)) && ((focusableObjects[_local3] == true)))){ _local4 = (_local3 as InteractiveObject); if (_local4){ if (_local4 == lastFocus){ lastFocus = null; }; delete focusableObjects[_local4]; calculateCandidates = true; }; _local3.addEventListener(Event.TAB_ENABLED_CHANGE, tabEnabledChangeHandler); }; }; removeFocusables(_local3); } private function sortByDepth(_arg1:InteractiveObject, _arg2:InteractiveObject):Number{ var _local3:String; var _local4:String; var _local5:int; var _local6:String; var _local7:String; var _local8:String; var _local9:DisplayObject; var _local10:DisplayObject; _local3 = ""; _local4 = ""; _local8 = "0000"; _local9 = DisplayObject(_arg1); _local10 = DisplayObject(_arg2); while (((!((_local9 == DisplayObject(form)))) && (_local9.parent))) { _local5 = getChildIndex(_local9.parent, _local9); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local3 = (_local7 + _local3); _local9 = _local9.parent; }; while (((!((_local10 == DisplayObject(form)))) && (_local10.parent))) { _local5 = getChildIndex(_local10.parent, _local10); _local6 = _local5.toString(16); if (_local6.length < 4){ _local7 = (_local8.substring(0, (4 - _local6.length)) + _local6); }; _local4 = (_local7 + _local4); _local10 = _local10.parent; }; return (((_local3 > _local4)) ? 1 : ((_local3 < _local4)) ? -1 : 0); } public function get defaultButton():Button{ return (_defaultButton); } private function activateHandler(_arg1:Event):void{ var _local2:InteractiveObject; _local2 = InteractiveObject(_arg1.target); if (lastFocus){ if ((lastFocus is IFocusManagerComponent)){ IFocusManagerComponent(lastFocus).setFocus(); } else { form.stage.focus = lastFocus; }; }; lastAction = "ACTIVATE"; } public function showFocus():void{ } public function set defaultButtonEnabled(_arg1:Boolean):void{ _defaultButtonEnabled = _arg1; } public function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject{ var _local2:DisplayObject; var _local3:String; var _local4:int; var _local5:Boolean; var _local6:int; var _local7:int; var _local8:IFocusManagerGroup; if (!hasFocusableObjects()){ return (null); }; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; _local2 = form.stage.focus; _local2 = DisplayObject(findFocusManagerComponent(InteractiveObject(_local2))); _local3 = ""; if ((_local2 is IFocusManagerGroup)){ _local8 = IFocusManagerGroup(_local2); _local3 = _local8.groupName; }; _local4 = getIndexOfFocusedObject(_local2); _local5 = false; _local6 = _local4; if (_local4 == -1){ if (_arg1){ _local4 = focusableCandidates.length; }; _local5 = true; }; _local7 = getIndexOfNextObject(_local4, _arg1, _local5, _local3); return (findFocusManagerComponent(focusableCandidates[_local7])); } private function mouseDownHandler(_arg1:MouseEvent):void{ var _local2:InteractiveObject; if (_arg1.isDefaultPrevented()){ return; }; _local2 = getTopLevelFocusTarget(InteractiveObject(_arg1.target)); if (!_local2){ return; }; showFocusIndicator = false; if (((((!((_local2 == lastFocus))) || ((lastAction == "ACTIVATE")))) && (!((_local2 is TextField))))){ setFocus(_local2); }; lastAction = "MOUSEDOWN"; } private function isTabVisible(_arg1:DisplayObject):Boolean{ var _local2:DisplayObjectContainer; _local2 = _arg1.parent; while (((((_local2) && (!((_local2 is Stage))))) && (!(((_local2.parent) && ((_local2.parent is Stage))))))) { if (!_local2.tabChildren){ return (false); }; _local2 = _local2.parent; }; return (true); } public function get nextTabIndex():int{ return (0); } private function keyDownHandler(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.TAB){ lastAction = "KEY"; if (calculateCandidates){ sortFocusableObjects(); calculateCandidates = false; }; }; if (((((((defaultButtonEnabled) && ((_arg1.keyCode == Keyboard.ENTER)))) && (defaultButton))) && (defButton.enabled))){ sendDefaultButtonEvent(); }; } private function focusInHandler(_arg1:FocusEvent):void{ var _local2:InteractiveObject; var _local3:Button; _local2 = InteractiveObject(_arg1.target); if (form.contains(_local2)){ lastFocus = findFocusManagerComponent(InteractiveObject(_local2)); if ((lastFocus is Button)){ _local3 = Button(lastFocus); if (defButton){ defButton.emphasized = false; defButton = _local3; _local3.emphasized = true; }; } else { if (((defButton) && (!((defButton == _defaultButton))))){ defButton.emphasized = false; defButton = _defaultButton; _defaultButton.emphasized = true; }; }; }; } private function tabEnabledChangeHandler(_arg1:Event):void{ var _local2:InteractiveObject; var _local3:Boolean; calculateCandidates = true; _local2 = InteractiveObject(_arg1.target); _local3 = (focusableObjects[_local2] == true); if (_local2.tabEnabled){ if (((!(_local3)) && (isTabVisible(_local2)))){ if (!(_local2 is IFocusManagerComponent)){ _local2.focusRect = false; }; focusableObjects[_local2] = true; }; } else { if (_local3){ delete focusableObjects[_local2]; }; }; } public function set showFocusIndicator(_arg1:Boolean):void{ _showFocusIndicator = _arg1; } public function get form():DisplayObjectContainer{ return (_form); } private function sortByTabIndex(_arg1:InteractiveObject, _arg2:InteractiveObject):int{ return (((_arg1.tabIndex > _arg2.tabIndex)) ? 1 : ((_arg1.tabIndex < _arg2.tabIndex)) ? -1 : sortByDepth(_arg1, _arg2)); } public function activate():void{ if (activated){ return; }; form.stage.addEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler, false, 0, true); form.stage.addEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler, false, 0, true); form.addEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.addEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.addEventListener(Event.ACTIVATE, activateHandler, false, 0, true); form.stage.addEventListener(Event.DEACTIVATE, deactivateHandler, false, 0, true); form.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = true; if (lastFocus){ setFocus(lastFocus); }; } public function deactivate():void{ form.stage.removeEventListener(FocusEvent.MOUSE_FOCUS_CHANGE, mouseFocusChangeHandler); form.stage.removeEventListener(FocusEvent.KEY_FOCUS_CHANGE, keyFocusChangeHandler); form.removeEventListener(FocusEvent.FOCUS_IN, focusInHandler, true); form.removeEventListener(FocusEvent.FOCUS_OUT, focusOutHandler, true); form.stage.removeEventListener(Event.ACTIVATE, activateHandler); form.stage.removeEventListener(Event.DEACTIVATE, deactivateHandler); form.removeEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler); form.removeEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler, true); activated = false; } public function get defaultButtonEnabled():Boolean{ return (_defaultButtonEnabled); } } }//package fl.managers
Section 35
//IFocusManager (fl.managers.IFocusManager) package fl.managers { import fl.controls.*; import flash.display.*; public interface IFocusManager { function getFocus():InteractiveObject; function deactivate():void; function set defaultButton(_arg1:Button):void; function set showFocusIndicator(_arg1:Boolean):void; function get defaultButtonEnabled():Boolean; function get nextTabIndex():int; function get defaultButton():Button; function get showFocusIndicator():Boolean; function setFocus(_arg1:InteractiveObject):void; function activate():void; function showFocus():void; function set defaultButtonEnabled(_arg1:Boolean):void; function hideFocus():void; function findFocusManagerComponent(_arg1:InteractiveObject):InteractiveObject; function getNextFocusManagerComponent(_arg1:Boolean=false):InteractiveObject; } }//package fl.managers
Section 36
//IFocusManagerComponent (fl.managers.IFocusManagerComponent) package fl.managers { public interface IFocusManagerComponent { function set focusEnabled(_arg1:Boolean):void; function drawFocus(_arg1:Boolean):void; function setFocus():void; function get focusEnabled():Boolean; function get tabEnabled():Boolean; function get tabIndex():int; function get mouseFocusEnabled():Boolean; } }//package fl.managers
Section 37
//IFocusManagerGroup (fl.managers.IFocusManagerGroup) package fl.managers { public interface IFocusManagerGroup { function set groupName(_arg1:String):void; function set selected(_arg1:Boolean):void; function get groupName():String; function get selected():Boolean; } }//package fl.managers
Section 38
//StyleManager (fl.managers.StyleManager) package fl.managers { import flash.text.*; import fl.core.*; import flash.utils.*; public class StyleManager { private var globalStyles:Object; private var classToDefaultStylesDict:Dictionary; private var styleToClassesHash:Object; private var classToStylesDict:Dictionary; private var classToInstancesDict:Dictionary; private static var _instance:StyleManager; public function StyleManager(){ styleToClassesHash = {}; classToInstancesDict = new Dictionary(true); classToStylesDict = new Dictionary(true); classToDefaultStylesDict = new Dictionary(true); globalStyles = UIComponent.getStyleDefinition(); } public static function clearComponentStyle(_arg1:Object, _arg2:String):void{ var _local3:Class; var _local4:Object; _local3 = getClassDef(_arg1); _local4 = getInstance().classToStylesDict[_local3]; if (((!((_local4 == null))) && (!((_local4[_arg2] == null))))){ delete _local4[_arg2]; invalidateComponentStyle(_local3, _arg2); }; } private static function getClassDef(_arg1:Object):Class{ var component = _arg1; if ((component is Class)){ return ((component as Class)); }; try { return ((getDefinitionByName(getQualifiedClassName(component)) as Class)); } catch(e:Error) { if ((component is UIComponent)){ try { return ((component.loaderInfo.applicationDomain.getDefinition(getQualifiedClassName(component)) as Class)); } catch(e:Error) { }; }; }; return (null); } public static function clearStyle(_arg1:String):void{ setStyle(_arg1, null); } public static function setComponentStyle(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Class; var _local5:Object; _local4 = getClassDef(_arg1); _local5 = getInstance().classToStylesDict[_local4]; if (_local5 == null){ _local5 = (getInstance().classToStylesDict[_local4] = {}); }; if (_local5 == _arg3){ return; }; _local5[_arg2] = _arg3; invalidateComponentStyle(_local4, _arg2); } private static function setSharedStyles(_arg1:UIComponent):void{ var _local2:StyleManager; var _local3:Class; var _local4:Object; var _local5:String; _local2 = getInstance(); _local3 = getClassDef(_arg1); _local4 = _local2.classToDefaultStylesDict[_local3]; for (_local5 in _local4) { _arg1.setSharedStyle(_local5, getSharedStyle(_arg1, _local5)); }; } public static function getComponentStyle(_arg1:Object, _arg2:String):Object{ var _local3:Class; var _local4:Object; _local3 = getClassDef(_arg1); _local4 = getInstance().classToStylesDict[_local3]; return (((_local4)==null) ? null : _local4[_arg2]); } private static function getInstance(){ if (_instance == null){ _instance = new (StyleManager); }; return (_instance); } private static function invalidateComponentStyle(_arg1:Class, _arg2:String):void{ var _local3:Dictionary; var _local4:Object; var _local5:UIComponent; _local3 = getInstance().classToInstancesDict[_arg1]; if (_local3 == null){ return; }; for (_local4 in _local3) { _local5 = (_local4 as UIComponent); if (_local5 == null){ } else { _local5.setSharedStyle(_arg2, getSharedStyle(_local5, _arg2)); }; }; } private static function invalidateStyle(_arg1:String):void{ var _local2:Dictionary; var _local3:Object; _local2 = getInstance().styleToClassesHash[_arg1]; if (_local2 == null){ return; }; for (_local3 in _local2) { invalidateComponentStyle(Class(_local3), _arg1); }; } public static function registerInstance(_arg1:UIComponent):void{ var inst:StyleManager; var classDef:Class; var target:Class; var defaultStyles:Object; var styleToClasses:Object; var n:String; var instance = _arg1; inst = getInstance(); classDef = getClassDef(instance); if (classDef == null){ return; }; if (inst.classToInstancesDict[classDef] == null){ inst.classToInstancesDict[classDef] = new Dictionary(true); target = classDef; while (defaultStyles == null) { if (target["getStyleDefinition"] != null){ defaultStyles = target["getStyleDefinition"](); break; }; try { target = (instance.loaderInfo.applicationDomain.getDefinition(getQualifiedSuperclassName(target)) as Class); } catch(err:Error) { try { target = (getDefinitionByName(getQualifiedSuperclassName(target)) as Class); } catch(e:Error) { defaultStyles = UIComponent.getStyleDefinition(); break; }; }; }; styleToClasses = inst.styleToClassesHash; for (n in defaultStyles) { if (styleToClasses[n] == null){ styleToClasses[n] = new Dictionary(true); }; styleToClasses[n][classDef] = true; }; inst.classToDefaultStylesDict[classDef] = defaultStyles; inst.classToStylesDict[classDef] = {}; }; inst.classToInstancesDict[classDef][instance] = true; setSharedStyles(instance); } public static function getStyle(_arg1:String):Object{ return (getInstance().globalStyles[_arg1]); } private static function getSharedStyle(_arg1:UIComponent, _arg2:String):Object{ var _local3:Class; var _local4:StyleManager; var _local5:Object; _local3 = getClassDef(_arg1); _local4 = getInstance(); _local5 = _local4.classToStylesDict[_local3][_arg2]; if (_local5 != null){ return (_local5); }; _local5 = _local4.globalStyles[_arg2]; if (_local5 != null){ return (_local5); }; return (_local4.classToDefaultStylesDict[_local3][_arg2]); } public static function setStyle(_arg1:String, _arg2:Object):void{ var _local3:Object; _local3 = getInstance().globalStyles; if ((((_local3[_arg1] === _arg2)) && (!((_arg2 is TextFormat))))){ return; }; _local3[_arg1] = _arg2; invalidateStyle(_arg1); } } }//package fl.managers
Section 39
//book_81 (witchery101_v8_fla.book_81) package witchery101_v8_fla { import flash.display.*; public dynamic class book_81 extends MovieClip { public var mcText:MovieClip; } }//package witchery101_v8_fla
Section 40
//couldron_56 (witchery101_v8_fla.couldron_56) package witchery101_v8_fla { import flash.display.*; public dynamic class couldron_56 extends MovieClip { public function couldron_56(){ addFrameScript(0, frame1, 26, frame27, 52, frame53, 94, frame95); } function frame95(){ stop(); } function frame1(){ stop(); } function frame27(){ stop(); } function frame53(){ stop(); } } }//package witchery101_v8_fla
Section 41
//hampster_15 (witchery101_v8_fla.hampster_15) package witchery101_v8_fla { import flash.display.*; public dynamic class hampster_15 extends MovieClip { public var mcHead:MovieClip; public function hampster_15(){ addFrameScript(0, frame1, 15, frame16, 30, frame31); } function frame16(){ stop(); } function frame1(){ stop(); } function frame31(){ gotoAndStop(1); } } }//package witchery101_v8_fla
Section 42
//kitty_48 (witchery101_v8_fla.kitty_48) package witchery101_v8_fla { import flash.display.*; public dynamic class kitty_48 extends MovieClip { public function kitty_48(){ addFrameScript(0, frame1, 53, frame54, 102, frame103); } function frame1(){ stop(); } function frame103(){ stop(); } function frame54(){ stop(); } } }//package witchery101_v8_fla
Section 43
//mcBar_78 (witchery101_v8_fla.mcBar_78) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBar_78 extends MovieClip { public var mcMask:MovieClip; } }//package witchery101_v8_fla
Section 44
//mcBook_Help_8 (witchery101_v8_fla.mcBook_Help_8) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBook_Help_8 extends MovieClip { public var butHelp:MovieClip; } }//package witchery101_v8_fla
Section 45
//mcBook_Help_Anim_7 (witchery101_v8_fla.mcBook_Help_Anim_7) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBook_Help_Anim_7 extends MovieClip { public function mcBook_Help_Anim_7(){ addFrameScript(0, frame1, 7, frame8, 15, frame16); } function frame16(){ gotoAndStop(1); } function frame1(){ stop(); } function frame8(){ stop(); } } }//package witchery101_v8_fla
Section 46
//mcBook_MainMenu_Anim_34 (witchery101_v8_fla.mcBook_MainMenu_Anim_34) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBook_MainMenu_Anim_34 extends MovieClip { public function mcBook_MainMenu_Anim_34(){ addFrameScript(0, frame1, 7, frame8, 15, frame16); } function frame16(){ gotoAndStop(1); } function frame1(){ stop(); } function frame8(){ stop(); } } }//package witchery101_v8_fla
Section 47
//mcBook_Play_Anim_11 (witchery101_v8_fla.mcBook_Play_Anim_11) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBook_Play_Anim_11 extends MovieClip { public function mcBook_Play_Anim_11(){ addFrameScript(0, frame1, 7, frame8, 15, frame16); } function frame16(){ gotoAndStop(1); } function frame1(){ stop(); } function frame8(){ stop(); } } }//package witchery101_v8_fla
Section 48
//mcBook_PlayAgain_Anim_92 (witchery101_v8_fla.mcBook_PlayAgain_Anim_92) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBook_PlayAgain_Anim_92 extends MovieClip { public function mcBook_PlayAgain_Anim_92(){ addFrameScript(0, frame1, 7, frame8, 15, frame16); } function frame16(){ gotoAndStop(1); } function frame1(){ stop(); } function frame8(){ stop(); } } }//package witchery101_v8_fla
Section 49
//mcBook_Quit_Anim_73 (witchery101_v8_fla.mcBook_Quit_Anim_73) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBook_Quit_Anim_73 extends MovieClip { public function mcBook_Quit_Anim_73(){ addFrameScript(0, frame1, 7, frame8, 15, frame16); } function frame16(){ gotoAndStop(1); } function frame1(){ stop(); } function frame8(){ stop(); } } }//package witchery101_v8_fla
Section 50
//mcBook_SubmitScore_Anim_89 (witchery101_v8_fla.mcBook_SubmitScore_Anim_89) package witchery101_v8_fla { import flash.display.*; public dynamic class mcBook_SubmitScore_Anim_89 extends MovieClip { public function mcBook_SubmitScore_Anim_89(){ addFrameScript(0, frame1, 7, frame8, 15, frame16); } function frame16(){ gotoAndStop(1); } function frame1(){ stop(); } function frame8(){ stop(); } } }//package witchery101_v8_fla
Section 51
//mcContinue_99 (witchery101_v8_fla.mcContinue_99) package witchery101_v8_fla { import flash.display.*; public dynamic class mcContinue_99 extends MovieClip { public function mcContinue_99(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 52
//mcGameOverScreen_95 (witchery101_v8_fla.mcGameOverScreen_95) package witchery101_v8_fla { import flash.display.*; import flash.text.*; public dynamic class mcGameOverScreen_95 extends MovieClip { public var tfYourScore:TextField; } }//package witchery101_v8_fla
Section 53
//mcHelpArrow_Left_46 (witchery101_v8_fla.mcHelpArrow_Left_46) package witchery101_v8_fla { import flash.display.*; public dynamic class mcHelpArrow_Left_46 extends MovieClip { public function mcHelpArrow_Left_46(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 54
//mcHelpArrow_Right_41 (witchery101_v8_fla.mcHelpArrow_Right_41) package witchery101_v8_fla { import flash.display.*; public dynamic class mcHelpArrow_Right_41 extends MovieClip { public function mcHelpArrow_Right_41(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 55
//mcHelpScreen1_40 (witchery101_v8_fla.mcHelpScreen1_40) package witchery101_v8_fla { import flash.display.*; import flash.text.*; public dynamic class mcHelpScreen1_40 extends MovieClip { public var mcArrowMore:MovieClip; public var tfHelp:TextField; } }//package witchery101_v8_fla
Section 56
//mcHelpScreen2_45 (witchery101_v8_fla.mcHelpScreen2_45) package witchery101_v8_fla { import flash.display.*; import flash.text.*; public dynamic class mcHelpScreen2_45 extends MovieClip { public var mcArrowBack:MovieClip; public var tfHelp2:TextField; } }//package witchery101_v8_fla
Section 57
//mcHolderMask_52 (witchery101_v8_fla.mcHolderMask_52) package witchery101_v8_fla { import flash.display.*; public dynamic class mcHolderMask_52 extends MovieClip { public var mcHolder:MovieClip; } }//package witchery101_v8_fla
Section 58
//mcLogoTween_30 (witchery101_v8_fla.mcLogoTween_30) package witchery101_v8_fla { import flash.display.*; public dynamic class mcLogoTween_30 extends MovieClip { public function mcLogoTween_30(){ addFrameScript(14, frame15); } function frame15(){ stop(); } } }//package witchery101_v8_fla
Section 59
//mcModeLevel_109 (witchery101_v8_fla.mcModeLevel_109) package witchery101_v8_fla { import flash.display.*; public dynamic class mcModeLevel_109 extends MovieClip { public function mcModeLevel_109(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 60
//mcModeNormal_105 (witchery101_v8_fla.mcModeNormal_105) package witchery101_v8_fla { import flash.display.*; public dynamic class mcModeNormal_105 extends MovieClip { public function mcModeNormal_105(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 61
//mcModeTimed_107 (witchery101_v8_fla.mcModeTimed_107) package witchery101_v8_fla { import flash.display.*; public dynamic class mcModeTimed_107 extends MovieClip { public function mcModeTimed_107(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 62
//mcMultiplierAni_87 (witchery101_v8_fla.mcMultiplierAni_87) package witchery101_v8_fla { import flash.display.*; public dynamic class mcMultiplierAni_87 extends MovieClip { public function mcMultiplierAni_87(){ addFrameScript(0, frame1, 20, frame21); } function frame1(){ stop(); } function frame21(){ stop(); } } }//package witchery101_v8_fla
Section 63
//mcPlayField_51 (witchery101_v8_fla.mcPlayField_51) package witchery101_v8_fla { import flash.display.*; public dynamic class mcPlayField_51 extends MovieClip { public function mcPlayField_51(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 64
//mcRoofCatTween_22 (witchery101_v8_fla.mcRoofCatTween_22) package witchery101_v8_fla { import flash.display.*; public dynamic class mcRoofCatTween_22 extends MovieClip { public function mcRoofCatTween_22(){ addFrameScript(0, frame1, 89, frame90); } function frame90(){ stop(); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 65
//mcScoreField_84 (witchery101_v8_fla.mcScoreField_84) package witchery101_v8_fla { import flash.display.*; import flash.text.*; public dynamic class mcScoreField_84 extends MovieClip { public var tfShowPoints:TextField; } }//package witchery101_v8_fla
Section 66
//mcScoreField2_86 (witchery101_v8_fla.mcScoreField2_86) package witchery101_v8_fla { import flash.display.*; import flash.text.*; public dynamic class mcScoreField2_86 extends MovieClip { public var tfShowPoints:TextField; } }//package witchery101_v8_fla
Section 67
//mcScoreTween_83 (witchery101_v8_fla.mcScoreTween_83) package witchery101_v8_fla { import flash.display.*; public dynamic class mcScoreTween_83 extends MovieClip { public var mcScoreField:MovieClip; public function mcScoreTween_83(){ addFrameScript(0, frame1, 89, frame90); } function frame90(){ stop(); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 68
//mcScoreTweenUp_85 (witchery101_v8_fla.mcScoreTweenUp_85) package witchery101_v8_fla { import flash.display.*; public dynamic class mcScoreTweenUp_85 extends MovieClip { public var mcScoreField:MovieClip; public function mcScoreTweenUp_85(){ addFrameScript(0, frame1, 59, frame60); } function frame1(){ stop(); } function frame60(){ stop(); } } }//package witchery101_v8_fla
Section 69
//mcScroll_37 (witchery101_v8_fla.mcScroll_37) package witchery101_v8_fla { import flash.display.*; public dynamic class mcScroll_37 extends MovieClip { public var ani:MovieClip; public function mcScroll_37(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 70
//mcSliderButton_26 (witchery101_v8_fla.mcSliderButton_26) package witchery101_v8_fla { import flash.display.*; public dynamic class mcSliderButton_26 extends MovieClip { public var mcSymbol:MovieClip; public function mcSliderButton_26(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 71
//mcSpellAni_Fire_122 (witchery101_v8_fla.mcSpellAni_Fire_122) package witchery101_v8_fla { import flash.display.*; public dynamic class mcSpellAni_Fire_122 extends MovieClip { public function mcSpellAni_Fire_122(){ addFrameScript(34, frame35); } function frame35(){ stop(); } } }//package witchery101_v8_fla
Section 72
//mcSpellAni_Nature_125 (witchery101_v8_fla.mcSpellAni_Nature_125) package witchery101_v8_fla { import flash.display.*; public dynamic class mcSpellAni_Nature_125 extends MovieClip { public function mcSpellAni_Nature_125(){ addFrameScript(34, frame35); } function frame35(){ stop(); } } }//package witchery101_v8_fla
Section 73
//mcSpellAni_Spirit_124 (witchery101_v8_fla.mcSpellAni_Spirit_124) package witchery101_v8_fla { import flash.display.*; public dynamic class mcSpellAni_Spirit_124 extends MovieClip { public function mcSpellAni_Spirit_124(){ addFrameScript(34, frame35); } function frame35(){ stop(); } } }//package witchery101_v8_fla
Section 74
//mcSpellAni_Storm_123 (witchery101_v8_fla.mcSpellAni_Storm_123) package witchery101_v8_fla { import flash.display.*; public dynamic class mcSpellAni_Storm_123 extends MovieClip { public function mcSpellAni_Storm_123(){ addFrameScript(34, frame35); } function frame35(){ stop(); } } }//package witchery101_v8_fla
Section 75
//mcTile01_Blowup_112 (witchery101_v8_fla.mcTile01_Blowup_112) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile01_Blowup_112 extends MovieClip { public function mcTile01_Blowup_112(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 76
//mcTile02_Blowup_113 (witchery101_v8_fla.mcTile02_Blowup_113) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile02_Blowup_113 extends MovieClip { public function mcTile02_Blowup_113(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 77
//mcTile03_Blowup_114 (witchery101_v8_fla.mcTile03_Blowup_114) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile03_Blowup_114 extends MovieClip { public function mcTile03_Blowup_114(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 78
//mcTile04_Blowup_115 (witchery101_v8_fla.mcTile04_Blowup_115) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile04_Blowup_115 extends MovieClip { public function mcTile04_Blowup_115(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 79
//mcTile05_Blowup_116 (witchery101_v8_fla.mcTile05_Blowup_116) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile05_Blowup_116 extends MovieClip { public function mcTile05_Blowup_116(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 80
//mcTile06_Blowup_117 (witchery101_v8_fla.mcTile06_Blowup_117) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile06_Blowup_117 extends MovieClip { public function mcTile06_Blowup_117(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 81
//mcTile07_Blowup_118 (witchery101_v8_fla.mcTile07_Blowup_118) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile07_Blowup_118 extends MovieClip { public function mcTile07_Blowup_118(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 82
//mcTile08_Blowup_119 (witchery101_v8_fla.mcTile08_Blowup_119) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile08_Blowup_119 extends MovieClip { public function mcTile08_Blowup_119(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 83
//mcTile09_Blowup_120 (witchery101_v8_fla.mcTile09_Blowup_120) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTile09_Blowup_120 extends MovieClip { public function mcTile09_Blowup_120(){ addFrameScript(10, frame11); } function frame11(){ stop(); } } }//package witchery101_v8_fla
Section 84
//mcTPOSGTween_28 (witchery101_v8_fla.mcTPOSGTween_28) package witchery101_v8_fla { import flash.display.*; public dynamic class mcTPOSGTween_28 extends MovieClip { public function mcTPOSGTween_28(){ addFrameScript(0, frame1, 50, frame51); } function frame1(){ stop(); } function frame51(){ gotoAndStop(1); } } }//package witchery101_v8_fla
Section 85
//mcWitch_Anim_GameOver_88 (witchery101_v8_fla.mcWitch_Anim_GameOver_88) package witchery101_v8_fla { import flash.display.*; public dynamic class mcWitch_Anim_GameOver_88 extends MovieClip { public var mcHamster:MovieClip; public var mcBook1:MovieClip; public var mcBook2:MovieClip; public var mcHead:MovieClip; public function mcWitch_Anim_GameOver_88(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 86
//mcWitch_Anim_Help_33 (witchery101_v8_fla.mcWitch_Anim_Help_33) package witchery101_v8_fla { import flash.display.*; public dynamic class mcWitch_Anim_Help_33 extends MovieClip { public var mcHamster:MovieClip; public var mcBook2:MovieClip; public var mcHead:MovieClip; public function mcWitch_Anim_Help_33(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 87
//mcWitch_Anim_Intro_4 (witchery101_v8_fla.mcWitch_Anim_Intro_4) package witchery101_v8_fla { import flash.display.*; public dynamic class mcWitch_Anim_Intro_4 extends MovieClip { public var mcHamster:MovieClip; public var mcBook1:MovieClip; public var mcBook2:MovieClip; public var mcHead:MovieClip; public function mcWitch_Anim_Intro_4(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 88
//mcWitchHead_Anim_19 (witchery101_v8_fla.mcWitchHead_Anim_19) package witchery101_v8_fla { import flash.display.*; public dynamic class mcWitchHead_Anim_19 extends MovieClip { public function mcWitchHead_Anim_19(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 89
//nextmove_82 (witchery101_v8_fla.nextmove_82) package witchery101_v8_fla { import flash.display.*; public dynamic class nextmove_82 extends MovieClip { public function nextmove_82(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 90
//poof_32 (witchery101_v8_fla.poof_32) package witchery101_v8_fla { import flash.display.*; public dynamic class poof_32 extends MovieClip { public function poof_32(){ addFrameScript(0, frame1, 24, frame25); } function frame1(){ stop(); } function frame25(){ stop(); } } }//package witchery101_v8_fla
Section 91
//poof_80 (witchery101_v8_fla.poof_80) package witchery101_v8_fla { import flash.display.*; public dynamic class poof_80 extends MovieClip { public function poof_80(){ addFrameScript(23, frame24); } function frame24(){ stop(); } } }//package witchery101_v8_fla
Section 92
//scroll_38 (witchery101_v8_fla.scroll_38) package witchery101_v8_fla { import flash.display.*; public dynamic class scroll_38 extends MovieClip { public function scroll_38(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package witchery101_v8_fla
Section 93
//scroll_39 (witchery101_v8_fla.scroll_39) package witchery101_v8_fla { import flash.display.*; public dynamic class scroll_39 extends MovieClip { public function scroll_39(){ addFrameScript(20, frame21); } function frame21(){ stop(); } } }//package witchery101_v8_fla
Section 94
//timer_76 (witchery101_v8_fla.timer_76) package witchery101_v8_fla { import flash.display.*; public dynamic class timer_76 extends MovieClip { public var mcBottle:MovieClip; public function timer_76(){ addFrameScript(0, frame1, 9, frame10); } function frame10(){ stop(); } function frame1(){ stop(); } } }//package witchery101_v8_fla
Section 95
//timer_77 (witchery101_v8_fla.timer_77) package witchery101_v8_fla { import flash.display.*; public dynamic class timer_77 extends MovieClip { public var mcBar:MovieClip; } }//package witchery101_v8_fla
Section 96
//witch_58 (witchery101_v8_fla.witch_58) package witchery101_v8_fla { import flash.display.*; public dynamic class witch_58 extends MovieClip { public var mcHead:MovieClip; } }//package witchery101_v8_fla
Section 97
//_internalMagicSchool (_internalMagicSchool) package { import flash.text.*; public dynamic class _internalMagicSchool extends Font { } }//package
Section 98
//_internalVerdana (_internalVerdana) package { import flash.text.*; public dynamic class _internalVerdana extends Font { } }//package
Section 99
//focusRectSkin (focusRectSkin) package { import flash.display.*; public dynamic class focusRectSkin extends MovieClip { } }//package
Section 100
//fxCat (fxCat) package { import flash.media.*; public dynamic class fxCat extends Sound { } }//package
Section 101
//fxCauldron (fxCauldron) package { import flash.media.*; public dynamic class fxCauldron extends Sound { } }//package
Section 102
//fxClick (fxClick) package { import flash.media.*; public dynamic class fxClick extends Sound { } }//package
Section 103
//fxDrop (fxDrop) package { import flash.media.*; public dynamic class fxDrop extends Sound { } }//package
Section 104
//fxDropAll (fxDropAll) package { import flash.media.*; public dynamic class fxDropAll extends Sound { } }//package
Section 105
//fxGameover (fxGameover) package { import flash.media.*; public dynamic class fxGameover extends Sound { } }//package
Section 106
//fxHint (fxHint) package { import flash.media.*; public dynamic class fxHint extends Sound { } }//package
Section 107
//fxJump (fxJump) package { import flash.media.*; public dynamic class fxJump extends Sound { } }//package
Section 108
//fxLevelCombo (fxLevelCombo) package { import flash.media.*; public dynamic class fxLevelCombo extends Sound { } }//package
Section 109
//fxMulti (fxMulti) package { import flash.media.*; public dynamic class fxMulti extends Sound { } }//package
Section 110
//fxPling (fxPling) package { import flash.media.*; public dynamic class fxPling extends Sound { } }//package
Section 111
//fxPop (fxPop) package { import flash.media.*; public dynamic class fxPop extends Sound { } }//package
Section 112
//fxPuff (fxPuff) package { import flash.media.*; public dynamic class fxPuff extends Sound { } }//package
Section 113
//fxRoofCat (fxRoofCat) package { import flash.media.*; public dynamic class fxRoofCat extends Sound { } }//package
Section 114
//fxSelect (fxSelect) package { import flash.media.*; public dynamic class fxSelect extends Sound { } }//package
Section 115
//fxShwoom (fxShwoom) package { import flash.media.*; public dynamic class fxShwoom extends Sound { } }//package
Section 116
//fxSlideIn (fxSlideIn) package { import flash.media.*; public dynamic class fxSlideIn extends Sound { } }//package
Section 117
//fxSlideOut (fxSlideOut) package { import flash.media.*; public dynamic class fxSlideOut extends Sound { } }//package
Section 118
//fxSpellFire (fxSpellFire) package { import flash.media.*; public dynamic class fxSpellFire extends Sound { } }//package
Section 119
//fxSpellNature (fxSpellNature) package { import flash.media.*; public dynamic class fxSpellNature extends Sound { } }//package
Section 120
//fxSpellSpirit (fxSpellSpirit) package { import flash.media.*; public dynamic class fxSpellSpirit extends Sound { } }//package
Section 121
//fxSpellStorm (fxSpellStorm) package { import flash.media.*; public dynamic class fxSpellStorm extends Sound { } }//package
Section 122
//fxSwap (fxSwap) package { import flash.media.*; public dynamic class fxSwap extends Sound { } }//package
Section 123
//fxSwapBack (fxSwapBack) package { import flash.media.*; public dynamic class fxSwapBack extends Sound { } }//package
Section 124
//fxWoosh (fxWoosh) package { import flash.media.*; public dynamic class fxWoosh extends Sound { } }//package
Section 125
//mcGameModes (mcGameModes) package { import flash.display.*; import flash.text.*; public dynamic class mcGameModes extends MovieClip { public var tfText2:TextField; public var tfText:TextField; public var butMode1:MovieClip; public var butMode2:MovieClip; public var butMode3:MovieClip; } }//package
Section 126
//mcHint (mcHint) package { import flash.display.*; public dynamic class mcHint extends MovieClip { } }//package
Section 127
//mcLevelModeFields (mcLevelModeFields) package { import flash.display.*; import flash.text.*; public dynamic class mcLevelModeFields extends MovieClip { public var tfMoves:TextField; public var tfCombos:TextField; } }//package
Section 128
//mcMarker (mcMarker) package { import flash.display.*; public dynamic class mcMarker extends MovieClip { } }//package
Section 129
//mcNextLevel (mcNextLevel) package { import flash.display.*; import flash.text.*; public dynamic class mcNextLevel extends MovieClip { public var butContinue:MovieClip; public var tfHeader:TextField; public var tfText:TextField; } }//package
Section 130
//mcOverlay (mcOverlay) package { import flash.display.*; import flash.text.*; public dynamic class mcOverlay extends MovieClip { public var tfHeader:TextField; public var tfText:TextField; } }//package
Section 131
//mcRollover (mcRollover) package { import flash.display.*; public dynamic class mcRollover extends MovieClip { } }//package
Section 132
//mcSpellAni (mcSpellAni) package { import flash.display.*; public dynamic class mcSpellAni extends MovieClip { public var ani:MovieClip; public function mcSpellAni(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 133
//mcTiles (mcTiles) package { import flash.display.*; public dynamic class mcTiles extends MovieClip { } }//package
Section 134
//mcTilesBlowup (mcTilesBlowup) package { import flash.display.*; public dynamic class mcTilesBlowup extends MovieClip { public var ani:MovieClip; } }//package
Section 135
//musicMain (musicMain) package { import flash.media.*; public dynamic class musicMain extends Sound { } }//package
Section 136
//ScrollArrowDown_disabledSkin (ScrollArrowDown_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_disabledSkin extends MovieClip { } }//package
Section 137
//ScrollArrowDown_downSkin (ScrollArrowDown_downSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_downSkin extends MovieClip { } }//package
Section 138
//ScrollArrowDown_overSkin (ScrollArrowDown_overSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_overSkin extends MovieClip { } }//package
Section 139
//ScrollArrowDown_upSkin (ScrollArrowDown_upSkin) package { import flash.display.*; public dynamic class ScrollArrowDown_upSkin extends MovieClip { } }//package
Section 140
//ScrollArrowUp_disabledSkin (ScrollArrowUp_disabledSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_disabledSkin extends MovieClip { } }//package
Section 141
//ScrollArrowUp_downSkin (ScrollArrowUp_downSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_downSkin extends MovieClip { } }//package
Section 142
//ScrollArrowUp_overSkin (ScrollArrowUp_overSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_overSkin extends MovieClip { } }//package
Section 143
//ScrollArrowUp_upSkin (ScrollArrowUp_upSkin) package { import flash.display.*; public dynamic class ScrollArrowUp_upSkin extends MovieClip { } }//package
Section 144
//ScrollBar_thumbIcon (ScrollBar_thumbIcon) package { import flash.display.*; public dynamic class ScrollBar_thumbIcon extends MovieClip { } }//package
Section 145
//ScrollThumb_downSkin (ScrollThumb_downSkin) package { import flash.display.*; public dynamic class ScrollThumb_downSkin extends MovieClip { } }//package
Section 146
//ScrollThumb_overSkin (ScrollThumb_overSkin) package { import flash.display.*; public dynamic class ScrollThumb_overSkin extends MovieClip { } }//package
Section 147
//ScrollThumb_upSkin (ScrollThumb_upSkin) package { import flash.display.*; public dynamic class ScrollThumb_upSkin extends MovieClip { } }//package
Section 148
//ScrollTrack_skin (ScrollTrack_skin) package { import flash.display.*; public dynamic class ScrollTrack_skin extends MovieClip { } }//package

Library Items

Symbol 1 Font {_internalMagicSchool}Used by:122 123 126 127 133 134 136 137 301 306 460 481 486
Symbol 2 Font {_internalVerdana}Used by:288 457
Symbol 3 Sound {fxWoosh}
Symbol 4 Sound {fxSwapBack}
Symbol 5 Sound {fxSwap}
Symbol 6 Sound {fxSpellStorm}
Symbol 7 Sound {fxSpellSpirit}
Symbol 8 Sound {fxSpellNature}
Symbol 9 Sound {fxSpellFire}
Symbol 10 Sound {fxSlideOut}
Symbol 11 Sound {fxSlideIn}
Symbol 12 Sound {fxShwoom}
Symbol 13 Sound {fxSelect}
Symbol 14 Sound {fxRoofCat}
Symbol 15 Sound {fxPuff}
Symbol 16 Sound {fxPop}
Symbol 17 Sound {fxPling}
Symbol 18 Sound {fxMulti}
Symbol 19 Sound {fxLevelCombo}
Symbol 20 Sound {fxJump}
Symbol 21 Sound {fxHint}
Symbol 22 Sound {fxGameover}
Symbol 23 Sound {musicMain}
Symbol 24 Sound {fxDropAll}
Symbol 25 Sound {fxDrop}
Symbol 26 Sound {fxClick}
Symbol 27 Sound {fxCauldron}
Symbol 28 Sound {fxCat}
Symbol 29 GraphicUsed by:30
Symbol 30 MovieClipUses:29Used by:42 78 84 101 111 115 118 121 130 291 305 308 325 473 477  Timeline
Symbol 31 GraphicUsed by:42 102 305
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClipUses:32Used by:42 103 305
Symbol 34 GraphicUsed by:42 104 305
Symbol 35 GraphicUsed by:36
Symbol 36 MovieClipUses:35Used by:42 105 305
Symbol 37 GraphicUsed by:42 106
Symbol 38 GraphicUsed by:42 107
Symbol 39 GraphicUsed by:42 108 308
Symbol 40 GraphicUsed by:42 109
Symbol 41 GraphicUsed by:42 110 308
Symbol 42 MovieClip {mcTiles}Uses:30 31 33 34 36 37 38 39 40 41
Symbol 43 GraphicUsed by:44
Symbol 44 MovieClipUses:43Used by:76
Symbol 45 MovieClip {fl.core.ComponentShim}Used by:76
Symbol 46 GraphicUsed by:47
Symbol 47 MovieClip {focusRectSkin}Uses:46Used by:76
Symbol 48 GraphicUsed by:49
Symbol 49 MovieClip {ScrollTrack_skin}Uses:48Used by:76
Symbol 50 GraphicUsed by:53
Symbol 51 GraphicUsed by:52 55 59 69
Symbol 52 MovieClipUses:51Used by:53 63 65
Symbol 53 MovieClip {ScrollArrowUp_downSkin}Uses:50 52Used by:76
Symbol 54 GraphicUsed by:55
Symbol 55 MovieClip {ScrollArrowDown_downSkin}Uses:54 51Used by:76
Symbol 56 GraphicUsed by:57
Symbol 57 MovieClip {ScrollThumb_downSkin}Uses:56Used by:76
Symbol 58 GraphicUsed by:59
Symbol 59 MovieClip {ScrollArrowDown_overSkin}Uses:58 51Used by:76
Symbol 60 GraphicUsed by:61
Symbol 61 MovieClip {ScrollThumb_overSkin}Uses:60Used by:76
Symbol 62 GraphicUsed by:63
Symbol 63 MovieClip {ScrollArrowUp_overSkin}Uses:62 52Used by:76
Symbol 64 GraphicUsed by:65
Symbol 65 MovieClip {ScrollArrowUp_upSkin}Uses:64 52Used by:76
Symbol 66 GraphicUsed by:67
Symbol 67 MovieClip {ScrollThumb_upSkin}Uses:66Used by:76
Symbol 68 GraphicUsed by:69
Symbol 69 MovieClip {ScrollArrowDown_upSkin}Uses:68 51Used by:76
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClip {ScrollArrowDown_disabledSkin}Uses:70Used by:76
Symbol 72 GraphicUsed by:73
Symbol 73 MovieClip {ScrollArrowUp_disabledSkin}Uses:72Used by:76
Symbol 74 GraphicUsed by:75
Symbol 75 MovieClip {ScrollBar_thumbIcon}Uses:74Used by:76
Symbol 76 MovieClip {fl.controls.UIScrollBar}Uses:44 45 47 49 53 55 57 59 61 63 65 67 69 71 73 75
Symbol 77 GraphicUsed by:78
Symbol 78 MovieClip {mcMarker}Uses:30 77
Symbol 79 ShapeTweeningUsed by:82
Symbol 80 ShapeTweeningUsed by:82
Symbol 81 GraphicUsed by:82
Symbol 82 MovieClip {mcHint}Uses:79 80 81
Symbol 83 GraphicUsed by:84
Symbol 84 MovieClip {mcRollover}Uses:30 83
Symbol 85 ShapeTweeningUsed by:88
Symbol 86 ShapeTweeningUsed by:88
Symbol 87 GraphicUsed by:88
Symbol 88 MovieClip {witchery101_v8_fla.mcSpellAni_Fire_122}Uses:85 86 87Used by:101
Symbol 89 ShapeTweeningUsed by:92
Symbol 90 ShapeTweeningUsed by:92
Symbol 91 GraphicUsed by:92
Symbol 92 MovieClip {witchery101_v8_fla.mcSpellAni_Storm_123}Uses:89 90 91Used by:101
Symbol 93 ShapeTweeningUsed by:96
Symbol 94 ShapeTweeningUsed by:96
Symbol 95 GraphicUsed by:96
Symbol 96 MovieClip {witchery101_v8_fla.mcSpellAni_Spirit_124}Uses:93 94 95Used by:101
Symbol 97 ShapeTweeningUsed by:100
Symbol 98 ShapeTweeningUsed by:100
Symbol 99 GraphicUsed by:100
Symbol 100 MovieClip {witchery101_v8_fla.mcSpellAni_Nature_125}Uses:97 98 99Used by:101
Symbol 101 MovieClip {mcSpellAni}Uses:30 88 92 96 100
Symbol 102 MovieClip {witchery101_v8_fla.mcTile01_Blowup_112}Uses:31Used by:111
Symbol 103 MovieClip {witchery101_v8_fla.mcTile02_Blowup_113}Uses:33Used by:111
Symbol 104 MovieClip {witchery101_v8_fla.mcTile03_Blowup_114}Uses:34Used by:111
Symbol 105 MovieClip {witchery101_v8_fla.mcTile04_Blowup_115}Uses:36Used by:111
Symbol 106 MovieClip {witchery101_v8_fla.mcTile05_Blowup_116}Uses:37Used by:111
Symbol 107 MovieClip {witchery101_v8_fla.mcTile06_Blowup_117}Uses:38Used by:111
Symbol 108 MovieClip {witchery101_v8_fla.mcTile07_Blowup_118}Uses:39Used by:111
Symbol 109 MovieClip {witchery101_v8_fla.mcTile08_Blowup_119}Uses:40Used by:111
Symbol 110 MovieClip {witchery101_v8_fla.mcTile09_Blowup_120}Uses:41Used by:111
Symbol 111 MovieClip {mcTilesBlowup}Uses:30 102 103 104 105 106 107 108 109 110
Symbol 112 GraphicUsed by:124
Symbol 113 GraphicUsed by:114
Symbol 114 MovieClipUses:113Used by:115
Symbol 115 MovieClip {witchery101_v8_fla.mcModeNormal_105}Uses:30 114Used by:124
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClipUses:116Used by:118
Symbol 118 MovieClip {witchery101_v8_fla.mcModeTimed_107}Uses:30 117Used by:124
Symbol 119 GraphicUsed by:120
Symbol 120 MovieClipUses:119Used by:121
Symbol 121 MovieClip {witchery101_v8_fla.mcModeLevel_109}Uses:30 120Used by:124
Symbol 122 EditableTextUses:1Used by:124
Symbol 123 EditableTextUses:1Used by:124
Symbol 124 MovieClip {mcGameModes}Uses:112 115 118 121 122 123
Symbol 125 GraphicUsed by:131 327
Symbol 126 EditableTextUses:1Used by:131
Symbol 127 EditableTextUses:1Used by:131
Symbol 128 GraphicUsed by:129
Symbol 129 MovieClipUses:128Used by:130
Symbol 130 MovieClip {witchery101_v8_fla.mcContinue_99}Uses:30 129Used by:131  Timeline
Symbol 131 MovieClip {mcNextLevel}Uses:125 126 127 130
Symbol 132 GraphicUsed by:135
Symbol 133 EditableTextUses:1Used by:135
Symbol 134 EditableTextUses:1Used by:135
Symbol 135 MovieClip {mcOverlay}Uses:132 133 134
Symbol 136 EditableTextUses:1Used by:138
Symbol 137 EditableTextUses:1Used by:138
Symbol 138 MovieClip {mcLevelModeFields}Uses:136 137
Symbol 139 GraphicUsed by:140
Symbol 140 MovieClipUses:139Used by:147
Symbol 141 GraphicUsed by:145
Symbol 142 GraphicUsed by:144
Symbol 143 GraphicUsed by:144
Symbol 144 MovieClipUses:142 143Used by:145
Symbol 145 MovieClip {witchery101_v8_fla.mcSliderButton_26}Uses:141 144Used by:147
Symbol 146 GraphicUsed by:147
Symbol 147 MovieClip {com.meteorgames.libs.slider.Slider}Uses:140 145 146Used by:Timeline
Symbol 148 GraphicUsed by:149
Symbol 149 MovieClipUses:148Used by:150
Symbol 150 MovieClipUses:149Used by:Timeline
Symbol 151 GraphicUsed by:152
Symbol 152 MovieClipUses:151Used by:266 294 431 480
Symbol 153 GraphicUsed by:266 294 386 480
Symbol 154 GraphicUsed by:266 294 387 480
Symbol 155 GraphicUsed by:266 294 388 480
Symbol 156 GraphicUsed by:266 294 393 480
Symbol 157 GraphicUsed by:266 294 396 480
Symbol 158 GraphicUsed by:266 294 403 480
Symbol 159 GraphicUsed by:160
Symbol 160 MovieClipUses:159Used by:266 294 480  Timeline
Symbol 161 GraphicUsed by:266
Symbol 162 GraphicUsed by:168 293 475
Symbol 163 GraphicUsed by:164
Symbol 164 MovieClipUses:163Used by:167 292 474
Symbol 165 GraphicUsed by:166
Symbol 166 MovieClipUses:165Used by:167
Symbol 167 MovieClip {witchery101_v8_fla.mcBook_Help_8}Uses:164 166Used by:168
Symbol 168 MovieClip {witchery101_v8_fla.mcBook_Help_Anim_7}Uses:162 167Used by:266
Symbol 169 GraphicUsed by:175 479
Symbol 170 GraphicUsed by:171
Symbol 171 MovieClipUses:170Used by:174 294 435 478
Symbol 172 GraphicUsed by:173
Symbol 173 MovieClipUses:172Used by:174
Symbol 174 MovieClipUses:171 173Used by:175
Symbol 175 MovieClip {witchery101_v8_fla.mcBook_Play_Anim_11}Uses:169 174Used by:266
Symbol 176 GraphicUsed by:202
Symbol 177 GraphicUsed by:202
Symbol 178 GraphicUsed by:199
Symbol 179 GraphicUsed by:199
Symbol 180 GraphicUsed by:199
Symbol 181 GraphicUsed by:199
Symbol 182 GraphicUsed by:199
Symbol 183 GraphicUsed by:199
Symbol 184 GraphicUsed by:199
Symbol 185 GraphicUsed by:199
Symbol 186 GraphicUsed by:199
Symbol 187 GraphicUsed by:199
Symbol 188 GraphicUsed by:199
Symbol 189 GraphicUsed by:199
Symbol 190 GraphicUsed by:199
Symbol 191 GraphicUsed by:199
Symbol 192 GraphicUsed by:199
Symbol 193 GraphicUsed by:199
Symbol 194 GraphicUsed by:199
Symbol 195 GraphicUsed by:199
Symbol 196 GraphicUsed by:199
Symbol 197 GraphicUsed by:199
Symbol 198 GraphicUsed by:199
Symbol 199 MovieClipUses:178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198Used by:202
Symbol 200 GraphicUsed by:202
Symbol 201 GraphicUsed by:202
Symbol 202 MovieClip {witchery101_v8_fla.hampster_15}Uses:176 177 199 200 201Used by:266 294 480  Timeline
Symbol 203 GraphicUsed by:204
Symbol 204 MovieClipUses:203Used by:266 294 431 480
Symbol 205 GraphicUsed by:206
Symbol 206 MovieClipUses:205Used by:266 294 431 480
Symbol 207 GraphicUsed by:266 294 404 480
Symbol 208 GraphicUsed by:265 430
Symbol 209 GraphicUsed by:265 430
Symbol 210 GraphicUsed by:265 430
Symbol 211 GraphicUsed by:265 430
Symbol 212 GraphicUsed by:265 430
Symbol 213 GraphicUsed by:265 430
Symbol 214 GraphicUsed by:265 430
Symbol 215 GraphicUsed by:265 430
Symbol 216 GraphicUsed by:265 430
Symbol 217 GraphicUsed by:265 430
Symbol 218 GraphicUsed by:265 430
Symbol 219 GraphicUsed by:265 430
Symbol 220 GraphicUsed by:265 430
Symbol 221 GraphicUsed by:222
Symbol 222 MovieClipUses:221Used by:265 430
Symbol 223 GraphicUsed by:224
Symbol 224 MovieClipUses:223Used by:265 430
Symbol 225 GraphicUsed by:265
Symbol 226 GraphicUsed by:265
Symbol 227 GraphicUsed by:265
Symbol 228 GraphicUsed by:265
Symbol 229 GraphicUsed by:265
Symbol 230 GraphicUsed by:265
Symbol 231 GraphicUsed by:265
Symbol 232 GraphicUsed by:265
Symbol 233 GraphicUsed by:265
Symbol 234 GraphicUsed by:265
Symbol 235 GraphicUsed by:265
Symbol 236 GraphicUsed by:265
Symbol 237 GraphicUsed by:265
Symbol 238 GraphicUsed by:265
Symbol 239 GraphicUsed by:265
Symbol 240 GraphicUsed by:265
Symbol 241 GraphicUsed by:265
Symbol 242 GraphicUsed by:265
Symbol 243 GraphicUsed by:265
Symbol 244 GraphicUsed by:265
Symbol 245 GraphicUsed by:265
Symbol 246 GraphicUsed by:265
Symbol 247 GraphicUsed by:265
Symbol 248 GraphicUsed by:265
Symbol 249 GraphicUsed by:265
Symbol 250 GraphicUsed by:265
Symbol 251 GraphicUsed by:265
Symbol 252 GraphicUsed by:265
Symbol 253 GraphicUsed by:265
Symbol 254 GraphicUsed by:265
Symbol 255 GraphicUsed by:265
Symbol 256 GraphicUsed by:265
Symbol 257 GraphicUsed by:265
Symbol 258 GraphicUsed by:265
Symbol 259 GraphicUsed by:265
Symbol 260 GraphicUsed by:265
Symbol 261 GraphicUsed by:265
Symbol 262 GraphicUsed by:265
Symbol 263 GraphicUsed by:265
Symbol 264 GraphicUsed by:265
Symbol 265 MovieClip {witchery101_v8_fla.mcWitchHead_Anim_19}Uses:208 209 210 211 212 213 214 215 216 217 218 219 220 222 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264Used by:266 294 480
Symbol 266 MovieClip {witchery101_v8_fla.mcWitch_Anim_Intro_4}Uses:152 153 154 155 156 157 158 160 161 168 175 202 204 206 207 265Used by:Timeline
Symbol 267 GraphicUsed by:268
Symbol 268 MovieClipUses:267Used by:269
Symbol 269 MovieClip {witchery101_v8_fla.mcRoofCatTween_22}Uses:268Used by:Timeline
Symbol 270 GraphicUsed by:271
Symbol 271 MovieClipUses:270Used by:272 319
Symbol 272 MovieClip {witchery101_v8_fla.mcTPOSGTween_28}Uses:271Used by:Timeline
Symbol 273 BitmapUsed by:274
Symbol 274 GraphicUses:273Used by:275
Symbol 275 MovieClipUses:274Used by:276
Symbol 276 MovieClip {witchery101_v8_fla.mcLogoTween_30}Uses:275Used by:Timeline
Symbol 277 GraphicUsed by:287 449
Symbol 278 GraphicUsed by:287 449
Symbol 279 GraphicUsed by:287
Symbol 280 GraphicUsed by:287
Symbol 281 GraphicUsed by:287
Symbol 282 GraphicUsed by:287 449
Symbol 283 GraphicUsed by:287 449
Symbol 284 GraphicUsed by:287 449
Symbol 285 GraphicUsed by:287
Symbol 286 GraphicUsed by:287
Symbol 287 MovieClip {witchery101_v8_fla.poof_32}Uses:277 278 279 280 281 282 283 284 285 286Used by:Timeline
Symbol 288 EditableTextUses:2Used by:Timeline
Symbol 289 GraphicUsed by:294
Symbol 290 GraphicUsed by:291
Symbol 291 MovieClipUses:30 290Used by:292
Symbol 292 MovieClipUses:164 291Used by:293
Symbol 293 MovieClip {witchery101_v8_fla.mcBook_MainMenu_Anim_34}Uses:162 292Used by:294
Symbol 294 MovieClip {witchery101_v8_fla.mcWitch_Anim_Help_33}Uses:152 153 154 155 156 157 158 160 289 293 171 202 204 206 207 265Used by:Timeline
Symbol 295 GraphicUsed by:298 299 483
Symbol 296 GraphicUsed by:298 299 484
Symbol 297 GraphicUsed by:298 299 485
Symbol 298 MovieClip {witchery101_v8_fla.scroll_38}Uses:295 296 297Used by:300
Symbol 299 MovieClip {witchery101_v8_fla.scroll_39}Uses:295 296 297Used by:300
Symbol 300 MovieClip {witchery101_v8_fla.mcScroll_37}Uses:298 299Used by:Timeline
Symbol 301 EditableTextUses:1Used by:305
Symbol 302 GraphicUsed by:303
Symbol 303 MovieClipUses:302Used by:304 307
Symbol 304 MovieClip {witchery101_v8_fla.mcHelpArrow_Right_41}Uses:303Used by:305
Symbol 305 MovieClip {witchery101_v8_fla.mcHelpScreen1_40}Uses:301 304 30 31 33 34 36Used by:Timeline
Symbol 306 EditableTextUses:1Used by:308
Symbol 307 MovieClip {witchery101_v8_fla.mcHelpArrow_Left_46}Uses:303Used by:308
Symbol 308 MovieClip {witchery101_v8_fla.mcHelpScreen2_45}Uses:306 30 39 41 307Used by:Timeline
Symbol 309 GraphicUsed by:310
Symbol 310 MovieClipUses:309Used by:Timeline
Symbol 311 GraphicUsed by:319
Symbol 312 GraphicUsed by:319
Symbol 313 GraphicUsed by:319
Symbol 314 GraphicUsed by:319
Symbol 315 GraphicUsed by:319
Symbol 316 GraphicUsed by:319
Symbol 317 GraphicUsed by:319
Symbol 318 GraphicUsed by:319
Symbol 319 MovieClip {witchery101_v8_fla.kitty_48}Uses:311 312 313 314 315 316 317 318 271Used by:Timeline
Symbol 320 GraphicUsed by:321
Symbol 321 MovieClipUses:320Used by:Timeline
Symbol 322 GraphicUsed by:323
Symbol 323 MovieClipUses:322Used by:Timeline
Symbol 324 GraphicUsed by:325
Symbol 325 MovieClip {witchery101_v8_fla.mcPlayField_51}Uses:30 324Used by:Timeline
Symbol 326 MovieClipUsed by:327  Timeline
Symbol 327 MovieClip {witchery101_v8_fla.mcHolderMask_52}Uses:125 326Used by:Timeline
Symbol 328 GraphicUsed by:329
Symbol 329 MovieClipUses:328Used by:Timeline
Symbol 330 GraphicUsed by:331
Symbol 331 MovieClipUses:330Used by:Timeline
Symbol 332 GraphicUsed by:333
Symbol 333 MovieClipUses:332Used by:385
Symbol 334 GraphicUsed by:385
Symbol 335 GraphicUsed by:385
Symbol 336 GraphicUsed by:385
Symbol 337 GraphicUsed by:385
Symbol 338 GraphicUsed by:385
Symbol 339 GraphicUsed by:385
Symbol 340 GraphicUsed by:385
Symbol 341 GraphicUsed by:385
Symbol 342 GraphicUsed by:385
Symbol 343 GraphicUsed by:385
Symbol 344 GraphicUsed by:385
Symbol 345 GraphicUsed by:385
Symbol 346 GraphicUsed by:385
Symbol 347 GraphicUsed by:385
Symbol 348 GraphicUsed by:385
Symbol 349 GraphicUsed by:385
Symbol 350 GraphicUsed by:385
Symbol 351 GraphicUsed by:385
Symbol 352 GraphicUsed by:385
Symbol 353 GraphicUsed by:385
Symbol 354 GraphicUsed by:385
Symbol 355 GraphicUsed by:385
Symbol 356 GraphicUsed by:385
Symbol 357 GraphicUsed by:385
Symbol 358 GraphicUsed by:385
Symbol 359 GraphicUsed by:385
Symbol 360 GraphicUsed by:385
Symbol 361 GraphicUsed by:385
Symbol 362 GraphicUsed by:385
Symbol 363 GraphicUsed by:385
Symbol 364 GraphicUsed by:385
Symbol 365 GraphicUsed by:385
Symbol 366 GraphicUsed by:385
Symbol 367 GraphicUsed by:385
Symbol 368 GraphicUsed by:385
Symbol 369 GraphicUsed by:385
Symbol 370 GraphicUsed by:385
Symbol 371 GraphicUsed by:385
Symbol 372 GraphicUsed by:385
Symbol 373 GraphicUsed by:385
Symbol 374 GraphicUsed by:385
Symbol 375 GraphicUsed by:385
Symbol 376 GraphicUsed by:385
Symbol 377 GraphicUsed by:385
Symbol 378 GraphicUsed by:385
Symbol 379 GraphicUsed by:385
Symbol 380 GraphicUsed by:385
Symbol 381 GraphicUsed by:385
Symbol 382 GraphicUsed by:385
Symbol 383 GraphicUsed by:385
Symbol 384 GraphicUsed by:385
Symbol 385 MovieClip {witchery101_v8_fla.couldron_56}Uses:333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384Used by:Timeline
Symbol 386 MovieClipUses:153Used by:431
Symbol 387 MovieClipUses:154Used by:431
Symbol 388 MovieClipUses:155Used by:431
Symbol 389 GraphicUsed by:390
Symbol 390 MovieClipUses:389Used by:431
Symbol 391 GraphicUsed by:392
Symbol 392 MovieClipUses:391Used by:431
Symbol 393 MovieClipUses:156Used by:431
Symbol 394 GraphicUsed by:395
Symbol 395 MovieClipUses:394Used by:431
Symbol 396 MovieClipUses:157Used by:431
Symbol 397 GraphicUsed by:398
Symbol 398 MovieClipUses:397Used by:431
Symbol 399 GraphicUsed by:400
Symbol 400 MovieClipUses:399Used by:431
Symbol 401 GraphicUsed by:402
Symbol 402 MovieClipUses:401Used by:431
Symbol 403 MovieClipUses:158Used by:431
Symbol 404 MovieClipUses:207Used by:431
Symbol 405 GraphicUsed by:430
Symbol 406 GraphicUsed by:430
Symbol 407 GraphicUsed by:430
Symbol 408 GraphicUsed by:430
Symbol 409 GraphicUsed by:430
Symbol 410 GraphicUsed by:430
Symbol 411 GraphicUsed by:430
Symbol 412 GraphicUsed by:430
Symbol 413 GraphicUsed by:430
Symbol 414 GraphicUsed by:430
Symbol 415 GraphicUsed by:430
Symbol 416 GraphicUsed by:430
Symbol 417 GraphicUsed by:430
Symbol 418 GraphicUsed by:430
Symbol 419 GraphicUsed by:430
Symbol 420 GraphicUsed by:430
Symbol 421 GraphicUsed by:430
Symbol 422 GraphicUsed by:430
Symbol 423 GraphicUsed by:430
Symbol 424 GraphicUsed by:430
Symbol 425 GraphicUsed by:430
Symbol 426 GraphicUsed by:430
Symbol 427 GraphicUsed by:430
Symbol 428 GraphicUsed by:430
Symbol 429 GraphicUsed by:430
Symbol 430 MovieClipUses:208 209 210 211 212 213 214 215 216 217 218 219 220 222 224 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429Used by:431
Symbol 431 MovieClip {witchery101_v8_fla.witch_58}Uses:152 386 387 388 390 392 393 395 396 398 400 402 403 204 206 404 430Used by:Timeline
Symbol 432 GraphicUsed by:436
Symbol 433 GraphicUsed by:434
Symbol 434 MovieClipUses:433Used by:435
Symbol 435 MovieClipUses:171 434Used by:436
Symbol 436 MovieClip {witchery101_v8_fla.mcBook_Quit_Anim_73}Uses:432 435Used by:Timeline
Symbol 437 GraphicUsed by:443
Symbol 438 GraphicUsed by:439
Symbol 439 MovieClipUses:438Used by:441
Symbol 440 GraphicUsed by:441
Symbol 441 MovieClip {witchery101_v8_fla.mcBar_78}Uses:439 440Used by:443
Symbol 442 GraphicUsed by:443
Symbol 443 MovieClip {witchery101_v8_fla.timer_77}Uses:437 441 442Used by:450
Symbol 444 GraphicUsed by:449
Symbol 445 GraphicUsed by:449
Symbol 446 GraphicUsed by:449
Symbol 447 GraphicUsed by:449
Symbol 448 GraphicUsed by:449
Symbol 449 MovieClip {witchery101_v8_fla.poof_80}Uses:277 278 444 445 446 282 283 284 447 448Used by:450
Symbol 450 MovieClip {witchery101_v8_fla.timer_76}Uses:443 449Used by:Timeline
Symbol 451 GraphicUsed by:456
Symbol 452 GraphicUsed by:455
Symbol 453 GraphicUsed by:455
Symbol 454 GraphicUsed by:455
Symbol 455 MovieClip {witchery101_v8_fla.nextmove_82}Uses:452 453 454Used by:456
Symbol 456 MovieClip {witchery101_v8_fla.book_81}Uses:451 455Used by:Timeline
Symbol 457 EditableTextUses:2Used by:Timeline
Symbol 458 FontUsed by:459 461 464 465
Symbol 459 EditableTextUses:458Used by:Timeline
Symbol 460 EditableTextUses:1Used by:Timeline
Symbol 461 EditableTextUses:458Used by:462
Symbol 462 MovieClip {witchery101_v8_fla.mcScoreField_84}Uses:461Used by:463
Symbol 463 MovieClip {witchery101_v8_fla.mcScoreTween_83}Uses:462Used by:Timeline
Symbol 464 EditableTextUses:458Used by:Timeline
Symbol 465 EditableTextUses:458Used by:466
Symbol 466 MovieClip {witchery101_v8_fla.mcScoreField2_86}Uses:465Used by:467
Symbol 467 MovieClip {witchery101_v8_fla.mcScoreTweenUp_85}Uses:466Used by:Timeline
Symbol 468 ShapeTweeningUsed by:470
Symbol 469 GraphicUsed by:470
Symbol 470 MovieClip {witchery101_v8_fla.mcMultiplierAni_87}Uses:468 469Used by:Timeline
Symbol 471 GraphicUsed by:480
Symbol 472 GraphicUsed by:473
Symbol 473 MovieClipUses:30 472Used by:474
Symbol 474 MovieClipUses:164 473Used by:475
Symbol 475 MovieClip {witchery101_v8_fla.mcBook_SubmitScore_Anim_89}Uses:162 474Used by:480
Symbol 476 GraphicUsed by:477
Symbol 477 MovieClipUses:30 476Used by:478
Symbol 478 MovieClipUses:171 477Used by:479
Symbol 479 MovieClip {witchery101_v8_fla.mcBook_PlayAgain_Anim_92}Uses:169 478Used by:480
Symbol 480 MovieClip {witchery101_v8_fla.mcWitch_Anim_GameOver_88}Uses:152 153 154 155 156 157 158 160 471 475 479 202 204 206 207 265Used by:Timeline
Symbol 481 EditableTextUses:1Used by:482
Symbol 482 MovieClip {witchery101_v8_fla.mcGameOverScreen_95}Uses:481Used by:Timeline
Symbol 483 MovieClipUses:295Used by:Timeline
Symbol 484 MovieClipUses:296Used by:Timeline
Symbol 485 MovieClipUses:297Used by:Timeline
Symbol 486 EditableTextUses:1Used by:Timeline

Instance Names

"mcWitch"Frame 2Symbol 266 MovieClip {witchery101_v8_fla.mcWitch_Anim_Intro_4}
"mcRoofCat"Frame 3Symbol 269 MovieClip {witchery101_v8_fla.mcRoofCatTween_22}
"mcMusicSlider"Frame 3Symbol 147 MovieClip {com.meteorgames.libs.slider.Slider}
"mcFXSlider"Frame 3Symbol 147 MovieClip {com.meteorgames.libs.slider.Slider}
"mcTPOSG"Frame 3Symbol 272 MovieClip {witchery101_v8_fla.mcTPOSGTween_28}
"mcWitch"Frame 3Symbol 266 MovieClip {witchery101_v8_fla.mcWitch_Anim_Intro_4}
"mcSecret"Frame 3Symbol 30 MovieClip
"mcLogo"Frame 3Symbol 276 MovieClip {witchery101_v8_fla.mcLogoTween_30}
"mcPuff"Frame 3Symbol 287 MovieClip {witchery101_v8_fla.poof_32}
"tfLegal"Frame 3Symbol 288 EditableText
"mcRoofCat"Frame 18Symbol 269 MovieClip {witchery101_v8_fla.mcRoofCatTween_22}
"mcWitch"Frame 18Symbol 294 MovieClip {witchery101_v8_fla.mcWitch_Anim_Help_33}
"mcScroll"Frame 18Symbol 300 MovieClip {witchery101_v8_fla.mcScroll_37}
"mcHelpScreen1"Frame 18Symbol 305 MovieClip {witchery101_v8_fla.mcHelpScreen1_40}
"mcHelpScreen2"Frame 28Symbol 308 MovieClip {witchery101_v8_fla.mcHelpScreen2_45}
"mcSurprise"Frame 38Symbol 319 MovieClip {witchery101_v8_fla.kitty_48}
"mcPlayField"Frame 38Symbol 325 MovieClip {witchery101_v8_fla.mcPlayField_51}
"mcHolderMask"Frame 38Symbol 327 MovieClip {witchery101_v8_fla.mcHolderMask_52}
"mcCauldron"Frame 38Symbol 385 MovieClip {witchery101_v8_fla.couldron_56}
"mcWitch"Frame 38Symbol 431 MovieClip {witchery101_v8_fla.witch_58}
"butEnd"Frame 38Symbol 436 MovieClip {witchery101_v8_fla.mcBook_Quit_Anim_73}
"mcHamster"Frame 38Symbol 202 MovieClip {witchery101_v8_fla.hampster_15}
"mcTimer"Frame 38Symbol 450 MovieClip {witchery101_v8_fla.timer_76}
"mcFXHolder"Frame 38Symbol 326 MovieClip
"butHint"Frame 38Symbol 456 MovieClip {witchery101_v8_fla.book_81}
"mcSecretBook"Frame 38Symbol 30 MovieClip
"tfFPS"Frame 38Symbol 457 EditableText
"tfScore2"Frame 38Symbol 459 EditableText
"tfScore"Frame 38Symbol 460 EditableText
"mcScoreTween"Frame 38Symbol 463 MovieClip {witchery101_v8_fla.mcScoreTween_83}
"tfMultiplier"Frame 38Symbol 464 EditableText
"mcScoreTweenUp"Frame 38Symbol 467 MovieClip {witchery101_v8_fla.mcScoreTweenUp_85}
"mcMultiplierAni"Frame 38Symbol 470 MovieClip {witchery101_v8_fla.mcMultiplierAni_87}
"mcRoofCat"Frame 53Symbol 269 MovieClip {witchery101_v8_fla.mcRoofCatTween_22}
"mcWitch"Frame 53Symbol 480 MovieClip {witchery101_v8_fla.mcWitch_Anim_GameOver_88}
"mcGameOverScroll"Frame 53Symbol 300 MovieClip {witchery101_v8_fla.mcScroll_37}
"mcGameOverScreen"Frame 53Symbol 482 MovieClip {witchery101_v8_fla.mcGameOverScreen_95}
"mcRoofCat"Frame 68Symbol 269 MovieClip {witchery101_v8_fla.mcRoofCatTween_22}
"mcCont"Frame 68Symbol 130 MovieClip {witchery101_v8_fla.mcContinue_99}
"txtSubmit"Frame 68Symbol 486 EditableText
"ani"Symbol 101 MovieClip {mcSpellAni} Frame 1Symbol 88 MovieClip {witchery101_v8_fla.mcSpellAni_Fire_122}
"ani"Symbol 101 MovieClip {mcSpellAni} Frame 2Symbol 92 MovieClip {witchery101_v8_fla.mcSpellAni_Storm_123}
"ani"Symbol 101 MovieClip {mcSpellAni} Frame 3Symbol 96 MovieClip {witchery101_v8_fla.mcSpellAni_Spirit_124}
"ani"Symbol 101 MovieClip {mcSpellAni} Frame 4Symbol 100 MovieClip {witchery101_v8_fla.mcSpellAni_Nature_125}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 1Symbol 102 MovieClip {witchery101_v8_fla.mcTile01_Blowup_112}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 2Symbol 103 MovieClip {witchery101_v8_fla.mcTile02_Blowup_113}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 3Symbol 104 MovieClip {witchery101_v8_fla.mcTile03_Blowup_114}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 4Symbol 105 MovieClip {witchery101_v8_fla.mcTile04_Blowup_115}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 5Symbol 106 MovieClip {witchery101_v8_fla.mcTile05_Blowup_116}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 6Symbol 107 MovieClip {witchery101_v8_fla.mcTile06_Blowup_117}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 7Symbol 108 MovieClip {witchery101_v8_fla.mcTile07_Blowup_118}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 8Symbol 109 MovieClip {witchery101_v8_fla.mcTile08_Blowup_119}
"ani"Symbol 111 MovieClip {mcTilesBlowup} Frame 9Symbol 110 MovieClip {witchery101_v8_fla.mcTile09_Blowup_120}
"butMode1"Symbol 124 MovieClip {mcGameModes} Frame 1Symbol 115 MovieClip {witchery101_v8_fla.mcModeNormal_105}
"butMode2"Symbol 124 MovieClip {mcGameModes} Frame 1Symbol 118 MovieClip {witchery101_v8_fla.mcModeTimed_107}
"butMode3"Symbol 124 MovieClip {mcGameModes} Frame 1Symbol 121 MovieClip {witchery101_v8_fla.mcModeLevel_109}
"tfText"Symbol 124 MovieClip {mcGameModes} Frame 1Symbol 122 EditableText
"tfText2"Symbol 124 MovieClip {mcGameModes} Frame 1Symbol 123 EditableText
"tfHeader"Symbol 131 MovieClip {mcNextLevel} Frame 1Symbol 126 EditableText
"tfText"Symbol 131 MovieClip {mcNextLevel} Frame 1Symbol 127 EditableText
"butContinue"Symbol 131 MovieClip {mcNextLevel} Frame 1Symbol 130 MovieClip {witchery101_v8_fla.mcContinue_99}
"tfHeader"Symbol 135 MovieClip {mcOverlay} Frame 1Symbol 133 EditableText
"tfText"Symbol 135 MovieClip {mcOverlay} Frame 1Symbol 134 EditableText
"tfCombos"Symbol 138 MovieClip {mcLevelModeFields} Frame 1Symbol 136 EditableText
"tfMoves"Symbol 138 MovieClip {mcLevelModeFields} Frame 1Symbol 137 EditableText
"mcSymbol"Symbol 145 MovieClip {witchery101_v8_fla.mcSliderButton_26} Frame 1Symbol 144 MovieClip
"scrollSlot"Symbol 147 MovieClip {com.meteorgames.libs.slider.Slider} Frame 1Symbol 140 MovieClip
"slider"Symbol 147 MovieClip {com.meteorgames.libs.slider.Slider} Frame 1Symbol 145 MovieClip {witchery101_v8_fla.mcSliderButton_26}
"butHelp"Symbol 167 MovieClip {witchery101_v8_fla.mcBook_Help_8} Frame 1Symbol 166 MovieClip
"mcHead"Symbol 202 MovieClip {witchery101_v8_fla.hampster_15} Frame 1Symbol 199 MovieClip
"mcBook2"Symbol 266 MovieClip {witchery101_v8_fla.mcWitch_Anim_Intro_4} Frame 1Symbol 168 MovieClip {witchery101_v8_fla.mcBook_Help_Anim_7}
"mcBook1"Symbol 266 MovieClip {witchery101_v8_fla.mcWitch_Anim_Intro_4} Frame 1Symbol 175 MovieClip {witchery101_v8_fla.mcBook_Play_Anim_11}
"mcHamster"Symbol 266 MovieClip {witchery101_v8_fla.mcWitch_Anim_Intro_4} Frame 1Symbol 202 MovieClip {witchery101_v8_fla.hampster_15}
"mcHead"Symbol 266 MovieClip {witchery101_v8_fla.mcWitch_Anim_Intro_4} Frame 1Symbol 265 MovieClip {witchery101_v8_fla.mcWitchHead_Anim_19}
"mcBook2"Symbol 294 MovieClip {witchery101_v8_fla.mcWitch_Anim_Help_33} Frame 1Symbol 293 MovieClip {witchery101_v8_fla.mcBook_MainMenu_Anim_34}
"mcHamster"Symbol 294 MovieClip {witchery101_v8_fla.mcWitch_Anim_Help_33} Frame 1Symbol 202 MovieClip {witchery101_v8_fla.hampster_15}
"mcHead"Symbol 294 MovieClip {witchery101_v8_fla.mcWitch_Anim_Help_33} Frame 1Symbol 265 MovieClip {witchery101_v8_fla.mcWitchHead_Anim_19}
"ani"Symbol 300 MovieClip {witchery101_v8_fla.mcScroll_37} Frame 1Symbol 298 MovieClip {witchery101_v8_fla.scroll_38}
"ani"Symbol 300 MovieClip {witchery101_v8_fla.mcScroll_37} Frame 10Symbol 299 MovieClip {witchery101_v8_fla.scroll_39}
"tfHelp"Symbol 305 MovieClip {witchery101_v8_fla.mcHelpScreen1_40} Frame 1Symbol 301 EditableText
"mcArrowMore"Symbol 305 MovieClip {witchery101_v8_fla.mcHelpScreen1_40} Frame 1Symbol 304 MovieClip {witchery101_v8_fla.mcHelpArrow_Right_41}
"tfHelp2"Symbol 308 MovieClip {witchery101_v8_fla.mcHelpScreen2_45} Frame 1Symbol 306 EditableText
"mcArrowBack"Symbol 308 MovieClip {witchery101_v8_fla.mcHelpScreen2_45} Frame 1Symbol 307 MovieClip {witchery101_v8_fla.mcHelpArrow_Left_46}
"mcHolder"Symbol 327 MovieClip {witchery101_v8_fla.mcHolderMask_52} Frame 1Symbol 326 MovieClip
"mcHead"Symbol 431 MovieClip {witchery101_v8_fla.witch_58} Frame 1Symbol 430 MovieClip
"mcMask"Symbol 441 MovieClip {witchery101_v8_fla.mcBar_78} Frame 1Symbol 439 MovieClip
"mcBar"Symbol 443 MovieClip {witchery101_v8_fla.timer_77} Frame 1Symbol 441 MovieClip {witchery101_v8_fla.mcBar_78}
"mcBottle"Symbol 450 MovieClip {witchery101_v8_fla.timer_76} Frame 1Symbol 443 MovieClip {witchery101_v8_fla.timer_77}
"mcText"Symbol 456 MovieClip {witchery101_v8_fla.book_81} Frame 1Symbol 455 MovieClip {witchery101_v8_fla.nextmove_82}
"tfShowPoints"Symbol 462 MovieClip {witchery101_v8_fla.mcScoreField_84} Frame 1Symbol 461 EditableText
"mcScoreField"Symbol 463 MovieClip {witchery101_v8_fla.mcScoreTween_83} Frame 1Symbol 462 MovieClip {witchery101_v8_fla.mcScoreField_84}
"tfShowPoints"Symbol 466 MovieClip {witchery101_v8_fla.mcScoreField2_86} Frame 1Symbol 465 EditableText
"mcScoreField"Symbol 467 MovieClip {witchery101_v8_fla.mcScoreTweenUp_85} Frame 1Symbol 466 MovieClip {witchery101_v8_fla.mcScoreField2_86}
"mcBook2"Symbol 480 MovieClip {witchery101_v8_fla.mcWitch_Anim_GameOver_88} Frame 1Symbol 475 MovieClip {witchery101_v8_fla.mcBook_SubmitScore_Anim_89}
"mcBook1"Symbol 480 MovieClip {witchery101_v8_fla.mcWitch_Anim_GameOver_88} Frame 1Symbol 479 MovieClip {witchery101_v8_fla.mcBook_PlayAgain_Anim_92}
"mcHamster"Symbol 480 MovieClip {witchery101_v8_fla.mcWitch_Anim_GameOver_88} Frame 1Symbol 202 MovieClip {witchery101_v8_fla.hampster_15}
"mcHead"Symbol 480 MovieClip {witchery101_v8_fla.mcWitch_Anim_GameOver_88} Frame 1Symbol 265 MovieClip {witchery101_v8_fla.mcWitchHead_Anim_19}
"tfYourScore"Symbol 482 MovieClip {witchery101_v8_fla.mcGameOverScreen_95} Frame 1Symbol 481 EditableText

Special Tags

FileAttributes (69)Timeline Frame 1Access local files only, Metadata not present, AS3.
Protect (24)Timeline Frame 10 bytes ""

Labels

"introFrame"Frame 3
"helpFrame"Frame 18
"helpFrame2"Frame 28
"gameFrame"Frame 38
"gameoverFrame"Frame 53
"postPointsFrame"Frame 68
"open"Symbol 300 MovieClip {witchery101_v8_fla.mcScroll_37} Frame 1
"close"Symbol 300 MovieClip {witchery101_v8_fla.mcScroll_37} Frame 10
"cat"Symbol 319 MovieClip {witchery101_v8_fla.kitty_48} Frame 2
"tposg"Symbol 319 MovieClip {witchery101_v8_fla.kitty_48} Frame 55
"low"Symbol 385 MovieClip {witchery101_v8_fla.couldron_56} Frame 2
"medium"Symbol 385 MovieClip {witchery101_v8_fla.couldron_56} Frame 28
"high"Symbol 385 MovieClip {witchery101_v8_fla.couldron_56} Frame 54




http://swfchan.com/10/46256/info.shtml
Created: 11/8 -2019 08:02:11 Last modified: 11/8 -2019 08:02:11 Server time: 30/04 -2024 04:07:12