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

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

Snowman Match.swf

This is the info page for
Flash #67475

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


Text
1

Score

User

Smallzworld

Attention Deficit Disorder

Content

Continue

Programming - Scott Slaby

Artwork
Nutter666

Soundtrack - Snowing Forever -r
Rawrthaas

Credits

level

Time

Score

High Scores

Draw a line connecting snowmen of the same color to match and score points.

The more snowmen connected to the line, the higher the multiplier.

Clear all the snowmen before time runs out.

Be careful not to leave a snowman without a match, or the game is over!

Instructions

Play Game

Instructions

Credits

View High Scores

Leaderboards

Game Title

nonoba_text

Game Paused

150000

Continue

Default

User Name :

Score :

Cancel

Submit

Game Over

100000

Audio Clips

Title Text

This is example of text you might want to put here on your popup

This is an example of some headline text that you can put in a game.

Hello

This is an example of achievement text.

Smallzworld.com

ActionScript [AS3]

Section 1
//audio_clips_36 (snowman_match_fla.audio_clips_36) package snowman_match_fla { import flash.display.*; public dynamic class audio_clips_36 extends MovieClip { public function audio_clips_36(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package snowman_match_fla
Section 2
//CancelButton_32 (snowman_match_fla.CancelButton_32) package snowman_match_fla { import flash.display.*; import flash.text.*; public dynamic class CancelButton_32 extends MovieClip { public var message_text:TextField; } }//package snowman_match_fla
Section 3
//content_holder_13 (snowman_match_fla.content_holder_13) package snowman_match_fla { import flash.display.*; public dynamic class content_holder_13 extends MovieClip { public function content_holder_13(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package snowman_match_fla
Section 4
//earth2_4 (snowman_match_fla.earth2_4) package snowman_match_fla { import flash.display.*; public dynamic class earth2_4 extends MovieClip { public var earth:MovieClip; } }//package snowman_match_fla
Section 5
//LoadBar_11 (snowman_match_fla.LoadBar_11) package snowman_match_fla { import flash.display.*; public dynamic class LoadBar_11 extends MovieClip { public var Fill:MovieClip; } }//package snowman_match_fla
Section 6
//NonobaSubmitBox_28 (snowman_match_fla.NonobaSubmitBox_28) package snowman_match_fla { import flash.display.*; import flash.text.*; public dynamic class NonobaSubmitBox_28 extends MovieClip { public var score:TextField; public var Continue:MovieClip; } }//package snowman_match_fla
Section 7
//PointText_35 (snowman_match_fla.PointText_35) package snowman_match_fla { import flash.display.*; import flash.text.*; public dynamic class PointText_35 extends MovieClip { public var PointText:TextField; } }//package snowman_match_fla
Section 8
//PreloaderScreen_2 (snowman_match_fla.PreloaderScreen_2) package snowman_match_fla { import flash.display.*; public dynamic class PreloaderScreen_2 extends MovieClip { public var loader:LoadBarSymbol; } }//package snowman_match_fla
Section 9
//smallz_earth_3 (snowman_match_fla.smallz_earth_3) package snowman_match_fla { import flash.display.*; public dynamic class smallz_earth_3 extends MovieClip { public var earth:MovieClip; } }//package snowman_match_fla
Section 10
//SmallzSubmitBox_31 (snowman_match_fla.SmallzSubmitBox_31) package snowman_match_fla { import flash.display.*; import flash.text.*; public dynamic class SmallzSubmitBox_31 extends MovieClip { public var Submit:MovieClip; public var user_name:TextField; public var message_text:TextField; public var score:TextField; public var Cancel:MovieClip; } }//package snowman_match_fla
Section 11
//SubmitButton_33 (snowman_match_fla.SubmitButton_33) package snowman_match_fla { import flash.display.*; import flash.text.*; public dynamic class SubmitButton_33 extends MovieClip { public var message_text:TextField; } }//package snowman_match_fla
Section 12
//submitcancelButton_30 (snowman_match_fla.submitcancelButton_30) package snowman_match_fla { import flash.display.*; import flash.text.*; public dynamic class submitcancelButton_30 extends MovieClip { public var message_text:TextField; } }//package snowman_match_fla
Section 13
//AchievementBox (AchievementBox) package { import flash.geom.*; import flash.display.*; import flash.text.*; import flash.utils.*; public class AchievementBox extends MovieClip { public var _duration:Number; public var _isComplete:Boolean; public var _type:int; public var achievement_text:TextField; public var _speed:Number; public var _scale:Number; public var _initTime:Number; public var _spawnState:Boolean;// = true public var user_name:TextField; public var _state:String; public var _defaultAchievementText:String;// = "You know how we do!" public var _defaultDuration:Number;// = 3 public var _scaleSpeed:Number;// = 250 public var _defalutLoc:Point; public function AchievementBox():void{ _scaleSpeed = 250; _defaultDuration = 3; _defalutLoc = new Point(0, 0); _defaultAchievementText = "You know how we do!"; _spawnState = true; super(); deactivate(); } public function startTimer():void{ _initTime = getTimer(); } public function activate():void{ _state = "Active"; visible = true; _spawnState = false; } public function transitionIn():void{ _scale = 0.01; scaleX = _scale; scaleY = _scale; _state = "Grow"; } public function deactivate():void{ _state = "Inactive"; visible = false; _isComplete = true; } public function transitionOut():void{ _state = "Shrink"; } public function update(_arg1:Number):void{ switch (_state){ case "Active": if (isDone()){ transitionOut(); }; break; case "Grow": _scale = (_scale + ((_arg1 * _scaleSpeed) / 100)); if (_scale >= 1){ _scale = 1; startTimer(); _state = "Active"; }; scaleX = _scale; scaleY = _scale; break; case "Shrink": _scale = (_scale - ((_arg1 * _scaleSpeed) / 100)); if (_scale <= 0.1){ _scale = 1; deactivate(); }; scaleX = _scale; scaleY = _scale; break; case "Inactive": break; }; } public function isDone():Boolean{ var _local1:Boolean; _local1 = false; if (GameManager.elapsedTime(_initTime) >= _duration){ _local1 = true; }; return (_local1); } } }//package
Section 14
//AchievementBoxManager (AchievementBoxManager) package { import flash.display.*; public class AchievementBoxManager extends MovieClip { public var active:Array; public var clips:Array; public function AchievementBoxManager():void{ clips = new Array(); active = new Array(); super(); } public function init(_arg1:Number):void{ var _local2:int; _local2 = 0; while (_local2 < _arg1) { clips[_local2] = new AchievementBox(); clips[_local2].alpha = 0.75; addChild(clips[_local2]); _local2++; }; } public function inactiveAchievementBox():int{ var _local1:int; var _local2:int; var _local3:int; _local2 = -1; _local3 = clips.length; _local1 = 0; while (_local1 < _local3) { if (clips[_local1]._spawnState){ _local2 = _local1; break; }; _local1++; }; return (_local2); } public function deactivateAllAchievementBoxes():void{ var _local1:int; var _local2:int; _local2 = clips.length; _local1 = 0; while (_local1 < _local2) { clips[_local1].deactivate(); clips[_local1]._spawnState = true; _local1++; }; active = new Array(); } public function spawn(_arg1:String, _arg2:Number):void{ var clipIndex:int; var achievementText = _arg1; var duration = _arg2; clipIndex = inactiveAchievementBox(); if (clipIndex >= 0){ var _local4 = clips[clipIndex]; with (_local4) { activate(); scaleX = 1; scaleY = 1; x = (15 + (201 * clipIndex)); y = (150 - (height + 25)); user_name.text = GameManager._userName; achievement_text.text = achievementText; _duration = duration; transitionIn(); _isComplete = false; active.push(clips[clipIndex]); }; }; } public function update(_arg1:Number):void{ var index:int; var clipCount:int; var elapsedTime = _arg1; clipCount = active.length; index = 0; while (index < clipCount) { var _local3 = active[index]; with (_local3) { if (_state == "Inactive"){ _spawnState = true; active.splice(index, 1); index--; clipCount--; } else { update(elapsedTime); }; }; index = (index + 1); }; } } }//package
Section 15
//AchievementRecord (AchievementRecord) package { public class AchievementRecord { public var _experiencePoints:int; public var _achievementKey:String; public var _achievementName:String; public var _isAchieved:Boolean; public function AchievementRecord(_arg1:String, _arg2:String, _arg3:int):void{ _achievementName = _arg1; _achievementKey = _arg2; _experiencePoints = _arg3; _isAchieved = false; } } }//package
Section 16
//Background (Background) package { import flash.display.*; public dynamic class Background extends MovieClip { } }//package
Section 17
//BloopSFX (BloopSFX) package { import flash.media.*; public dynamic class BloopSFX extends Sound { } }//package
Section 18
//CreditsScreen (CreditsScreen) package { import flash.display.*; import flash.events.*; public class CreditsScreen extends MovieClip { public var _state:String; public var Continue:MovieClip; public function CreditsScreen():void{ x = 0; y = 0; _state = "Inactive"; visible = false; } public function activate():void{ _state = "Active"; visible = true; } public function check_rollovers(){ if (Continue.hitTestPoint(mouseX, mouseY)){ Continue.scaleX = 1.25; Continue.scaleY = 1.25; } else { Continue.scaleX = 1; Continue.scaleY = 1; }; } public function menu_mouseUp(_arg1:MouseEvent){ if (Continue.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "MainMenu"; }; } public function deactivate():void{ _state = "Inactive"; visible = false; } public function update():void{ switch (_state){ case "Active": break; }; } } }//package
Section 19
//DrawingManager (DrawingManager) package { import flash.geom.*; import flash.display.*; import flash.utils.*; public class DrawingManager extends MovieClip { public var _penDown:Boolean;// = false public var _moveTimerInit:Number; public var _moveTimerDuration:Number; public var _pixelsTraveled:Number;// = 0 public var _matchType:int; public var _highlightedTiles:Array; public var LevelControl:LevelManager; public var _timerOffset:Number;// = 0 private var SnowmanControl:SnowmanManager; public var _tagged:Array; public var _lastLoc:Point; public var _pauseState:Boolean;// = false public var _drawLayer:MovieClip; public function DrawingManager():void{ _penDown = false; _tagged = new Array(); _timerOffset = 0; _pixelsTraveled = 0; _lastLoc = new Point(0, 0); _pauseState = false; super(); } public function init(_arg1:SnowmanManager, _arg2:LevelManager):void{ SnowmanControl = _arg1; LevelControl = _arg2; _drawLayer = new MovieClip(); addChild(_drawLayer); smallzFilter.glow(_drawLayer, "0xFF0000", 10, 1, 2, 2); smallzFilter.glow(_drawLayer, "0xFF0000", 2, 1, 12, 12); } public function checkCollision():void{ var _local1:int; var _local2:Array; var _local3:int; var _local4:Number; var _local5:Point; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Number; var _local10:int; var _local11:Number; var _local12:int; _local2 = SnowmanControl.active; _local3 = _local2.length; _local7 = 15; _local4 = smallzMath.pDistance(_lastLoc, new Point(mouseX, mouseY)); if (_local4 > _local7){ _local10 = Math.floor((_local4 / _local7)); _local8 = (_local4 / _local10); } else { _local10 = 0; _local8 = 0; }; _local6 = smallzMath.pGetAngle(new Point(mouseX, mouseY), _lastLoc); _local1 = 0; while (_local1 < (_local10 + 1)) { _local11 = (_local1 * _local8); _local5 = new Point(0, 0); _local5.x = (mouseX + (_local11 * Math.cos(_local6))); _local5.y = (mouseY + (_local11 * Math.sin(_local6))); _local12 = 0; while (_local12 < _local3) { if (isHit(_local2[_local12], _local5)){ if (!_local2[_local12]._tagged){ _tagged.push(_local2[_local12]); _local2[_local12]._tagged = true; }; }; _local12++; }; _local1++; }; } private function isHit(_arg1:MovieClip, _arg2:Point):Boolean{ var _local3:Boolean; _local3 = false; if (_arg1.hitTestPoint(_arg2.x, _arg2.y, true)){ _local3 = true; }; if (_arg1.hitTestPoint((_arg2.x + 1), _arg2.y, true)){ _local3 = true; }; if (_arg1.hitTestPoint((_arg2.x - 1), _arg2.y, true)){ _local3 = true; }; if (_arg1.hitTestPoint(_arg2.x, (_arg2.y - 1), true)){ _local3 = true; }; if (_arg1.hitTestPoint(_arg2.x, (_arg2.y + 1), true)){ _local3 = true; }; return (_local3); } public function isGameOver():Boolean{ var _local1:Boolean; _local1 = false; return (_local1); } public function clearTagged():void{ var _local1:int; var _local2:int; _local2 = _tagged.length; _local1 = 0; while (_local1 < _local2) { _tagged[_local1]._tagged = false; _local1++; }; _tagged = new Array(); } public function plotPoint():void{ var distance:Number; var intensity:Number; distance = smallzMath.pDistance(_lastLoc, new Point(mouseX, mouseY)); _pixelsTraveled = (_pixelsTraveled + distance); var _local2 = _drawLayer.graphics; with (_local2) { lineStyle(1.5, 0xFFFFFF, 1); lineTo(mouseX, mouseY); }; checkCollision(); _lastLoc = new Point(mouseX, mouseY); smallzFilter.removeFilters(_drawLayer); intensity = (Math.random() * 5); smallzFilter.glow(_drawLayer, "0xFF0000", intensity, 1, 2, 2); smallzFilter.glow(_drawLayer, "0xFF0000", 2, 1, 12, 12); } public function solveCheck():void{ var _local1:int; var _local2:int; var _local3:Boolean; _local2 = _tagged.length; _local3 = false; if (isSolved()){ scoreTagged(); explodeTagged(); SoundManager.playSound("Tinkle"); } else { SoundManager.playSound("Bloop"); }; resetDrawing(); } public function pctMoveTimeRemaining():Number{ var _local1:Number; var _local2:Number; _local1 = (GameManager.elapsedTime(_moveTimerInit) - _timerOffset); _local2 = (((_moveTimerDuration - _local1) / _moveTimerDuration) * 100); return (_local2); } public function spawnCheck():void{ if ((GameManager.elapsedTime(_moveTimerInit) - _timerOffset) >= _moveTimerDuration){ startNextMove(); }; } public function explodeTagged():void{ var _local1:int; var _local2:int; _local2 = _tagged.length; _local1 = 0; while (_local1 < _local2) { _tagged[_local1].explode(); _local1++; }; } public function update(_arg1:Number):void{ if (!_pauseState){ if (_penDown){ plotPoint(); }; } else { _timerOffset = (_timerOffset + _arg1); }; } public function resetDrawing():void{ _penDown = false; clearTagged(); SnowmanControl.unhighlightAll(); _drawLayer.graphics.clear(); GameManager._multiplierValid = false; GameManager._timerBonusValid = false; } public function isSolved():Boolean{ var _local1:int; var _local2:int; var _local3:Boolean; _local2 = _tagged.length; _local3 = false; if (_local2 > 1){ _local3 = true; _local1 = 0; while (_local1 < _local2) { if (_tagged[_local1]._type != _tagged[0]._type){ _local3 = false; }; _local1++; }; }; return (_local3); } public function scoreTagged():void{ var _local1:int; var _local2:int; var _local3:Number; var _local4:Point; _local2 = _tagged.length; _local3 = 0; if (GameManager._multiplierValid){ _local3 = (_local3 * GameManager._multiplier); if (_local3 > GameManager._highBonus){ GameManager._highBonus = _local3; }; if (GameManager._multiplier > GameManager._mostMultipliers){ GameManager._mostMultipliers = GameManager._multiplier; }; }; _local3 = ((_local2 * 25) * _local2); GameManager.scorePopUp(((("x" + String(_local2)) + " ") + String(_local3)), new Point(320, 240)); GameManager.incrementScore(_local3); GameManager.updateUI(); if (GameManager._timerBonusValid){ _timerOffset = (_timerOffset + 3); GameManager._timeBonusCounter++; if ((GameManager.elapsedTime(_moveTimerInit) - _timerOffset) < 0){ _timerOffset = (_timerOffset - Math.abs((GameManager.elapsedTime(_moveTimerInit) - _timerOffset))); }; }; GameManager._multiplier++; } public function startNextMove():void{ if (LevelControl.timerValue() > LevelControl._duration){ LevelControl.nextLevel(); LevelControl.initLevel(); GameManager.updateUI(); LevelControl._timerInit = getTimer(); SoundManager.playSound("NewLevel"); }; resetDrawing(); GameManager._multiplier = 2; _timerOffset = 0; } public function resetVariables():void{ resetDrawing(); } } }//package
Section 20
//GameManager (GameManager) package { import flash.geom.*; import flash.utils.*; public class GameManager { public static var _highScores:Array; public static var ScorePopUpControl:ScorePopUpManager; public static var _scrollSpeedY:Number = 100; public static var _gameTitle:String = "Snowman Match"; public static var _timerBonusValid:Boolean = false; public static var _multiplierValid:Boolean = false; public static var gameID:int = 342; public static var _mostMultipliers:int = 0; public static var _nonobaHighScoresEnabled:Boolean = false; public static var _nonobaDebuggerEnabled:Boolean = false; public static var _highBonus:int = 0; public static var _highScoresLoaded:Boolean = false; public static var _timeBonusCounter:int = 0; public static var centerLoc:Point = new Point((screenWidth / 2), (screenHeight / 2)); public static var playerScore:uint = 0; public static var Debug:Boolean = false; public static var screenWidth:Number = 640; public static var _nonobaAchievementsEnabled:Boolean = false; public static var isMochi:Boolean = true; public static var screenHeight:Number = 480; public static var gameState:String = "MainMenu"; public static var clockPulseInitTime:Number = getTimer(); public static var isNonoba:Boolean = false; public static var _userName:String; public static var _nonobaSendEnabled:Boolean = false; public static var health:Number = 100; public static var mochiID:String = "8a7a4c5d2cadc825"; public static var _highScoresEnabled:Boolean = true; public static var LevelControl:LevelManager; public static var UI_Game:GameUIScreen; public static var _multiplier:Number; public static var _detailLevel:String = ""; public function GameManager():void{ } public static function updateUI():void{ UI_Game.score.text = ("Score " + playerScore); UI_Game.level.text = ("Level " + LevelControl._currentLevel); UI_Game.time_remaining.text = timeString((LevelControl._duration - LevelControl.timerValue())); } public static function initUI(_arg1:GameUIScreen, _arg2:LevelManager):void{ UI_Game = _arg1; LevelControl = _arg2; } public static function timeString(_arg1:int):String{ var _local2:int; var _local3:String; _local2 = Math.floor((_arg1 / 60)); _arg1 = (_arg1 - (_local2 * 60)); _local3 = ((_local2 + ":") + String((_arg1 + 100)).substr(1, 2)); return (_local3); } public static function initScorePopUpManager(_arg1:ScorePopUpManager):void{ ScorePopUpControl = _arg1; } public static function clockPulse():Number{ var _local1:Number; _local1 = elapsedTime(clockPulseInitTime); clockPulseInitTime = getTimer(); return (_local1); } public static function decrementHealth(_arg1:Number):void{ health = (health - _arg1); if (health < 0){ health = 0; }; } public static function incrementHealth(_arg1:Number):void{ health = (health + _arg1); if (health > 100){ health = 100; }; } public static function scorePopUp(_arg1:String, _arg2:Point):void{ ScorePopUpControl.activate(_arg2, _arg1); } public static function resetGame():void{ playerScore = 0; _multiplier = 2; _mostMultipliers = 0; _timeBonusCounter = 0; _highBonus = 0; } public static function incrementScore(_arg1:int):void{ playerScore = (playerScore + _arg1); } public static function elapsedTime(_arg1:Number):Number{ var _local2:Number; _local2 = ((getTimer() - _arg1) / 1000); return (_local2); } } }//package
Section 21
//GameUIScreen (GameUIScreen) package { import flash.display.*; import flash.text.*; public class GameUIScreen extends MovieClip { public var time_remaining:TextField; public var level:TextField; public var score:TextField; public var _state:String; public function GameUIScreen():void{ x = 0; y = 0; deactivate(); } public function activate():void{ _state = "Active"; visible = true; } public function deactivate():void{ _state = "Inactive"; visible = false; } public function update():void{ switch (_state){ case "Active": break; }; } } }//package
Section 22
//HighScoreListingSymbol (HighScoreListingSymbol) package { import flash.display.*; import flash.text.*; public dynamic class HighScoreListingSymbol extends MovieClip { public var User:TextField; public var Rank:TextField; public var Score:TextField; } }//package
Section 23
//HighScoreManager (HighScoreManager) package { import flash.display.*; import flash.events.*; import flash.net.*; public class HighScoreManager extends MovieClip { public function HighScoreManager():void{ } public function load_highscores(_arg1:int):void{ var _local2:URLRequest; var _local3:URLVariables; var _local4:URLLoader; _local2 = new URLRequest("http://games.smallzworld.com/RecordManagement.php"); _local3 = new URLVariables(); _local3.Routine = "AS3LoadHighScores"; _local3.Game_ID = _arg1; _local2.data = _local3; _local4 = new URLLoader(); _local4.dataFormat = URLLoaderDataFormat.VARIABLES; _local4.addEventListener(Event.COMPLETE, highscores_handler); _local4.load(_local2); GameManager.gameState = "Loading"; GameManager._highScoresLoaded = false; trace("high scores sent"); } private function highscores_handler(_arg1:Event):void{ var _local2:URLLoader; var _local3:int; var _local4:Array; _local2 = URLLoader(_arg1.target); _local4 = new Array(); trace("high scores handler"); _local3 = 1; while (_local3 <= 10) { if (_local2.data[("Score_" + _local3)]){ _local4[(_local3 - 1)] = new HighScoreRecord(_local3, _local2.data[("User_" + _local3)], _local2.data[("Score_" + _local3)], 0, ""); }; _local3++; }; GameManager._highScores = _local4; GameManager._highScoresLoaded = true; GameManager.gameState = "HighScores"; } public function save_highscore(_arg1:int, _arg2:int, _arg3:String, _arg4:int, _arg5:int, _arg6:int, _arg7:String):void{ var _local8:URLRequest; var _local9:URLVariables; var _local10:URLLoader; _local8 = new URLRequest("http://games.smallzworld.com/RecordManagement.php"); _local9 = new URLVariables(); _local9.Routine = "AddHighScore"; _local9.Game_ID = _arg1; _local9.Profile_ID = _arg2; _local9.UserName = _arg3; _local9.Level = _arg4; _local9.Score = _arg5; _local9.TimeScore = _arg6; _local9.Comment = _arg7; _local8.data = _local9; _local10 = new URLLoader(); _local10.dataFormat = URLLoaderDataFormat.VARIABLES; _local10.addEventListener(Event.COMPLETE, save_highscore_handler); _local10.load(_local8); GameManager.gameState = "Saving"; trace("Sent High Score"); } private function save_highscore_handler(_arg1:Event):void{ var _local2:URLLoader; var _local3:int; _local2 = URLLoader(_arg1.target); trace("Back from save high score"); GameManager.gameState = "HighScores"; } } }//package
Section 24
//HighScoreRecord (HighScoreRecord) package { public class HighScoreRecord { public var _comment:String; public var _level:int; public var _rank:int; public var _user:String; public var _score:Number; public function HighScoreRecord(_arg1:int, _arg2:String, _arg3:Number, _arg4:int, _arg5:String):void{ _rank = _arg1; _user = _arg2; _score = _arg3; _level = _arg4; _comment = _arg5; } } }//package
Section 25
//HighScoresScreen (HighScoresScreen) package { import flash.display.*; import flash.events.*; public class HighScoresScreen extends MovieClip { public var score_10:HighScoreListingSymbol; public var _state:String; public var score_2:HighScoreListingSymbol; public var score_6:HighScoreListingSymbol; public var score_7:HighScoreListingSymbol; public var score_9:HighScoreListingSymbol; public var score_3:HighScoreListingSymbol; public var Continue:MovieClip; public var score_5:HighScoreListingSymbol; public var score_8:HighScoreListingSymbol; public var score_1:HighScoreListingSymbol; public var score_4:HighScoreListingSymbol; public function HighScoresScreen():void{ x = 0; y = 0; _state = "Inactive"; visible = false; } public function activate():void{ var _local1:int; _state = "Active"; visible = true; _local1 = 1; while (_local1 <= 10) { this[("score_" + _local1)].visible = false; _local1++; }; } public function check_rollovers():void{ if (Continue.hitTestPoint(mouseX, mouseY)){ Continue.scaleX = 1.25; Continue.scaleY = 1.25; } else { Continue.scaleX = 1; Continue.scaleY = 1; }; } public function menu_mouseUp(_arg1:MouseEvent):void{ if (Continue.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "MainMenu"; }; } public function deactivate():void{ _state = "Inactive"; visible = false; } public function update():void{ var index:int; var score_count:int; var score_index:int; score_count = GameManager._highScores.length; index = 0; while (index < score_count) { var _local2 = GameManager; with (_local2) { score_index = (index + 1); this[("score_" + score_index)].Rank.text = String(_highScores[index]._rank); this[("score_" + score_index)].Score.text = String(_highScores[index]._score); this[("score_" + score_index)].User.text = _highScores[index]._user; this[("score_" + score_index)].visible = true; }; index = (index + 1); }; } } }//package
Section 26
//InstructionsScreen (InstructionsScreen) package { import flash.display.*; import flash.events.*; public class InstructionsScreen extends MovieClip { public var _state:String; public var Continue:MovieClip; public function InstructionsScreen():void{ x = 0; y = 0; _state = "Inactive"; visible = false; } public function activate():void{ _state = "Active"; visible = true; } public function check_rollovers():void{ if (Continue.hitTestPoint(mouseX, mouseY)){ Continue.scaleX = 1.25; Continue.scaleY = 1.25; } else { Continue.scaleX = 1; Continue.scaleY = 1; }; } public function menu_mouseUp(_arg1:MouseEvent):void{ if (Continue.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "MainMenu"; }; } public function deactivate():void{ _state = "Inactive"; visible = false; } public function update():void{ switch (_state){ case "Active": break; }; } } }//package
Section 27
//LevelChangeSFX (LevelChangeSFX) package { import flash.media.*; public dynamic class LevelChangeSFX extends Sound { } }//package
Section 28
//LevelManager (LevelManager) package { import flash.utils.*; public class LevelManager { public var _scale:Number; public var _count:int; public var _type:String; public var _caption:String; public var _moveTimerDuration:Number; public var _currentLevel:int; public var _colors:int; public var _timerInit:Number; public var _duration:Number; public var _description:String; public function LevelManager():void{ } public function startTimer():void{ _timerInit = getTimer(); } public function nextLevel():void{ _currentLevel++; } public function initLevel():void{ trace(("current level : " + _currentLevel)); switch (_currentLevel){ case 1: _caption = "Just 3 colors"; _description = "Draw a line to connect the same colored snowmen before time runs out.\n\nMake sure you match them all or you can't complete the level!"; _duration = 30; _scale = 1; _count = 4; _colors = 3; break; case 2: _caption = "Lets add another color!"; _description = "A little bit tougher.\n\nRemember the more you match with one line, the higher the multiplier"; _duration = 30; _scale = 1; _count = 4; _colors = 4; break; case 3: _duration = 30; _scale = 0.75; _count = 6; _colors = 4; _caption = "Smaller Snowmen!"; _description = "The screen was getting crowded.\n\n I needed more room!"; break; case 4: _duration = 15; _scale = 0.75; _count = 6; _colors = 4; _caption = "Do that again in 15 seconds!"; _description = "Now lets work on your speed.\n\nThis time you only have 15 seconds to clear them."; break; case 5: _caption = "Even Smaller"; _description = "Yep, they need to be smaller for me to fit them all!"; _duration = 30; _scale = 0.5; _count = 7; _colors = 4; break; case 6: _duration = 30; _scale = 0.5; _count = 8; _colors = 5; _caption = "Lets add some green!"; _description = "There are five colors now.\n\nBetter draw quickly!"; break; case 7: _duration = 45; _scale = 0.45; _count = 12; _colors = 5; _caption = "This is it folks!"; _description = "Try and finish this one in 45 seconds!\n\n Also a great place to earn a big multiplier and boost your score!"; break; }; } public function timerValue():Number{ var _local1:Number; _local1 = GameManager.elapsedTime(_timerInit); return (_local1); } } }//package
Section 29
//LoadBarSymbol (LoadBarSymbol) package { import flash.display.*; public dynamic class LoadBarSymbol extends MovieClip { public var load_bar:MovieClip; } }//package
Section 30
//MainMenuScreen (MainMenuScreen) package { import flash.display.*; import flash.events.*; import flash.text.*; import flash.net.*; public class MainMenuScreen extends MovieClip { public var _smallzScale:Number; public var PlayGame:MovieClip; public var HighScores:MovieClip; public var _state:String; public var Credits:MovieClip; public var nonoba_text:TextField; public var Instructions:MovieClip; public var game_title:TextField; public var LeaderBoards:MovieClip; public var Smallzworld:MovieClip; public function MainMenuScreen():void{ x = 0; y = 0; _state = "Inactive"; visible = false; _smallzScale = Smallzworld.scaleX; game_title.text = GameManager._gameTitle; } public function activate():void{ _state = "Active"; visible = true; Smallzworld.earth.earth.gotoAndPlay(1); } public function check_rollovers():void{ if (PlayGame.hitTestPoint(mouseX, mouseY)){ PlayGame.scaleX = 1.25; PlayGame.scaleY = 1.25; } else { PlayGame.scaleX = 1; PlayGame.scaleY = 1; }; if (Instructions.hitTestPoint(mouseX, mouseY)){ Instructions.scaleX = 1.25; Instructions.scaleY = 1.25; } else { Instructions.scaleX = 1; Instructions.scaleY = 1; }; if (Credits.hitTestPoint(mouseX, mouseY)){ Credits.scaleX = 1.25; Credits.scaleY = 1.25; } else { Credits.scaleX = 1; Credits.scaleY = 1; }; if (HighScores.hitTestPoint(mouseX, mouseY)){ HighScores.scaleX = 1.25; HighScores.scaleY = 1.25; } else { HighScores.scaleX = 1; HighScores.scaleY = 1; }; if (Smallzworld.earth.earth.hitTestPoint(mouseX, mouseY)){ Smallzworld.scaleX = (_smallzScale + 0.05); Smallzworld.scaleY = (_smallzScale + 0.05); } else { Smallzworld.scaleX = _smallzScale; Smallzworld.scaleY = _smallzScale; }; if (LeaderBoards.hitTestPoint(mouseX, mouseY)){ LeaderBoards.scaleX = 1.25; LeaderBoards.scaleY = 1.25; } else { LeaderBoards.scaleX = 1; LeaderBoards.scaleY = 1; }; } public function menu_mouseUp(_arg1:MouseEvent){ var _local2:URLRequest; var _local3:URLRequest; if (PlayGame.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "Reset"; }; if (Instructions.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "Instructions"; }; if (Credits.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "Credits"; }; if (((HighScores.hitTestPoint(_arg1.stageX, _arg1.stageY)) && (!(GameManager.isNonoba)))){ deactivate(); GameManager.gameState = "HighScores"; }; if (((LeaderBoards.hitTestPoint(_arg1.stageX, _arg1.stageY)) && (!(GameManager.isNonoba)))){ _local2 = new URLRequest(("http://games.smallzworld.com/Main.php?PageType=DisplayHighScores&Game_ID=" + GameManager.gameID)); navigateToURL(_local2); }; if (Smallzworld.hitTestPoint(_arg1.stageX, _arg1.stageY)){ _local3 = new URLRequest("http://games.smallzworld.com/"); navigateToURL(_local3); }; } public function deactivate():void{ _state = "Inactive"; visible = false; Smallzworld.earth.earth.gotoAndStop(1); } public function update():void{ switch (_state){ case "Active": break; }; } } }//package
Section 31
//Message (Message) package { import flash.display.*; import flash.events.*; import flash.text.*; import flash.net.*; public class Message extends MovieClip { public var loader:Loader; public var _messageText:String; public var imageIcon:MovieClip; public var message_text:TextField; public var _imageLoaded:Boolean;// = false public var _imageURL:String; public var _state:String; public var _linkURL:String; public function Message():void{ _imageLoaded = false; loader = new Loader(); super(); _state = "Inactive"; visible = false; } public function activate():void{ _state = "Active"; visible = true; } public function deactivate():void{ _state = "Inactive"; visible = false; } public function display_message(_arg1:Number, _arg2:Number, _arg3:String, _arg4:String):void{ var _local5:URLRequest; if (imageIcon){ removeChild(imageIcon); }; imageIcon = new MovieClip(); addChild(imageIcon); loader = new Loader(); if (_arg4 == ""){ _arg4 = "http://www.smallzworld.com/media/images/avatars/smallz_avatar.jpg"; }; _local5 = new URLRequest((_arg4 + "?hey=1")); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, iconLoaded); activate(); message_text.text = _arg3; x = _arg1; y = _arg2; loader.load(_local5); trace("make request for message"); } private function iconLoaded(_arg1:Event):void{ var _local2:String; trace("icon is loaded"); imageIcon.addChild(loader.content); imageIcon.x = 30; imageIcon.y = 20; _local2 = _imageURL.substr((_imageURL.length - 3), 3); trace(_local2); if (_local2 != "swf"){ imageIcon.width = 60; imageIcon.height = 60; }; } } }//package
Section 32
//MochiAd (MochiAd) package { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.system.*; import flash.net.*; public class MochiAd { public static function getVersion():String{ return ("2.5"); } public static function showClickAwayAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_timeout:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var sendHostProgress:Boolean; var options = _arg1; DEFAULTS = {ad_timeout:2000, regpt:"o", method:"showClickAwayAd", res:"300x250", no_bg:true, ad_started:function ():void{ }, ad_finished:function ():void{ }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_timeout = options.ad_timeout; delete options.ad_timeout; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; sendHostProgress = false; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; if (!this.parent){ delete this.onEnterFrame; return; }; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; _local3 = true; chk.started = getTimer(); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (this.root == null){ _local3 = true; }; if (_local3){ delete this.onEnterFrame; }; }; doOnEnterFrame(chk); } public static function _isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function _allowDomains(_arg1:String):String{ var _local2:String; _local2 = _arg1.split("/")[2].split(":")[0]; Security.allowDomain("*"); Security.allowDomain(_local2); Security.allowInsecureDomain("*"); Security.allowInsecureDomain(_local2); return (_local2); } public static function unload(_arg1:Object):Boolean{ if (((_arg1.clip) && (_arg1.clip._mochiad))){ _arg1 = _arg1.clip; }; if (_arg1.origFrameRate != undefined){ _arg1.stage.frameRate = _arg1.origFrameRate; }; if (!_arg1._mochiad){ return (false); }; if (_arg1._mochiad._containerLCName != undefined){ _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "notify", {id:"unload"}); }; if (_arg1._mochiad.onUnload){ _arg1._mochiad.onUnload(); }; delete _arg1._mochiad_loaded; delete _arg1._mochiad; return (true); } public static function showInterLevelAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showInterLevelAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ MochiAd._cleanup(mc); options.ad_finished(); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; mc.unloadAd = function ():void{ MochiAd.unload(clip); }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = (_arg1 - 250); }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Number; var _local3:Boolean; var _local4:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; _local1 = this.parent._mochiad_ctr; _local2 = (getTimer() - this.started); _local3 = false; if (!chk.showing){ _local4 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local4 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if (_local2 > chk.ad_timeout){ options.ad_failed(); _local3 = true; }; }; }; if (_local2 > chk.ad_msec){ _local3 = true; }; if (_local3){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = this.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function _parseOptions(_arg1:Object, _arg2:Object):Object{ var _local3:Object; var _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; _local3 = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; if (_arg1){ for (_local4 in _arg1) { _local3[_local4] = _arg1[_local4]; }; }; if (_local3.clip == undefined){ throw (new Error("MochiAd is missing the 'clip' parameter. This should be a MovieClip, Sprite or an instance of a class that extends MovieClip or Sprite.")); }; _arg1 = _local3.clip.loaderInfo.parameters.mochiad_options; if (_arg1){ _local5 = _arg1.split("&"); _local6 = 0; while (_local6 < _local5.length) { _local7 = _local5[_local6].split("="); _local3[unescape(_local7[0])] = unescape(_local7[1]); _local6++; }; }; if (_local3.id == "test"){ trace("[MochiAd] WARNING: Using the MochiAds test identifier, make sure to use the code from your dashboard, not this example!"); }; return (_local3); } public static function _cleanup(_arg1:Object):void{ var idx:Number; var k:String; var lc:LocalConnection; var f:Function; var mc = _arg1; if (("lc" in mc)){ lc = mc.lc; f = function ():void{ try { lc.client = null; lc.close(); } catch(e:Error) { }; }; setTimeout(f, 0); }; idx = DisplayObjectContainer(mc).numChildren; while (idx > 0) { idx = (idx - 1); DisplayObjectContainer(mc).removeChildAt(idx); }; for (k in mc) { delete mc[k]; }; } public static function load(_arg1:Object):MovieClip{ var DEFAULTS:Object; var clip:Object; var depth:Number; var mc:MovieClip; var wh:Array; var lv:URLVariables; var k:String; var server:String; var hostname:String; var lc:LocalConnection; var name:String; var loader:Loader; var g:Function; var req:URLRequest; var v:Object; var options = _arg1; DEFAULTS = {server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"}; options = MochiAd._parseOptions(options, DEFAULTS); options.swfv = 9; options.mav = MochiAd.getVersion(); clip = options.clip; if (!MochiAd._isNetworkAvailable()){ return (null); }; try { if (clip._mochiad_loaded){ return (null); }; } catch(e:Error) { throw (new Error("MochiAd requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; depth = options.depth; delete options.depth; mc = createEmptyMovieClip(clip, "_mochiad", depth); wh = MochiAd._getRes(options, clip); options.res = ((wh[0] + "x") + wh[1]); options.server = (options.server + options.id); delete options.id; clip._mochiad_loaded = true; if (clip.loaderInfo.loaderURL.indexOf("http") == 0){ options.as3_swf = clip.loaderInfo.loaderURL; }; lv = new URLVariables(); for (k in options) { v = options[k]; if (!(v is Function)){ lv[k] = v; }; }; server = lv.server; delete lv.server; hostname = _allowDomains(server); lc = new LocalConnection(); lc.client = mc; name = ["", Math.floor(new Date().getTime()), Math.floor((Math.random() * 999999))].join("_"); lc.allowDomain("*", "localhost"); lc.allowInsecureDomain("*", "localhost"); lc.connect(name); mc.lc = lc; mc.lcName = name; lv.lc = name; lv.st = getTimer(); loader = new Loader(); g = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); MochiAd.unload(clip); }; loader.contentLoaderInfo.addEventListener(Event.UNLOAD, g); req = new URLRequest((server + ".swf")); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.load(req); mc.addChild(loader); mc._mochiad_ctr = loader; return (mc); } public static function runMethod(_arg1:Object, _arg2:String, _arg3:Array):Object{ var _local4:Array; var _local5:Number; _local4 = _arg2.split("."); _local5 = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return (undefined); }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; if (typeof(_arg1[_local4[_local5]]) == "function"){ return (_arg1[_local4[_local5]].apply(_arg1, _arg3)); }; return (undefined); } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number):MovieClip{ var _local4:MovieClip; _local4 = new MovieClip(); if (((false) && (_arg3))){ _arg1.addChildAt(_local4, _arg3); } else { _arg1.addChild(_local4); }; _arg1[_arg2] = _local4; _local4["_name"] = _arg2; return (_local4); } public static function _getRes(_arg1:Object, _arg2:Object):Array{ var _local3:Object; var _local4:Number; var _local5:Number; var _local6:Array; _local3 = _arg2.getBounds(_arg2.root); _local4 = 0; _local5 = 0; if (typeof(_arg1.res) != "undefined"){ _local6 = _arg1.res.split("x"); _local4 = parseFloat(_local6[0]); _local5 = parseFloat(_local6[1]); } else { _local4 = (_local3.xMax - _local3.xMin); _local5 = (_local3.yMax - _local3.yMin); }; if ((((_local4 == 0)) || ((_local5 == 0)))){ _local4 = _arg2.stage.stageWidth; _local5 = _arg2.stage.stageHeight; }; return ([_local4, _local5]); } public static function adShowing(_arg1:Object):void{ _arg1.origFrameRate = _arg1.stage.frameRate; _arg1.stage.frameRate = 30; } public static function getValue(_arg1:Object, _arg2:String):Object{ var _local3:Array; var _local4:Number; _local3 = _arg2.split("."); _local4 = 0; while (_local4 < (_local3.length - 1)) { if ((((_arg1[_local3[_local4]] == undefined)) || ((_arg1[_local3[_local4]] == null)))){ return (undefined); }; _arg1 = _arg1[_local3[_local4]]; _local4++; }; return (_arg1[_local3[_local4]]); } public static function rpc(_arg1:Object, _arg2:Number, _arg3:Object):void{ var _local4:Object; var _local5:Object; switch (_arg3.id){ case "setValue": MochiAd.setValue(_arg1, _arg3.objectName, _arg3.value); break; case "getValue": _local4 = MochiAd.getValue(_arg1, _arg3.objectName); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local4); break; case "runMethod": _local5 = MochiAd.runMethod(_arg1, _arg3.method, _arg3.args); _arg1._mochiad.lc.send(_arg1._mochiad._containerLCName, "rpcResult", _arg2, _local5); break; default: trace(("[mochiads rpc] unknown rpc id: " + _arg3.id)); }; } public static function setValue(_arg1:Object, _arg2:String, _arg3:Object):void{ var _local4:Array; var _local5:Number; _local4 = _arg2.split("."); _local5 = 0; while (_local5 < (_local4.length - 1)) { if ((((_arg1[_local4[_local5]] == undefined)) || ((_arg1[_local4[_local5]] == null)))){ return; }; _arg1 = _arg1[_local4[_local5]]; _local5++; }; _arg1[_local4[_local5]] = _arg3; } public static function showPreGameAd(_arg1:Object):void{ var DEFAULTS:Object; var clip:Object; var ad_msec:Number; var ad_timeout:Number; var fadeout_time:Number; var mc:MovieClip; var wh:Array; var w:Number; var h:Number; var chk:MovieClip; var bar:MovieClip; var bar_color:Number; var bar_background:Number; var bar_outline:Number; var backing_mc:MovieClip; var backing:Object; var inside_mc:MovieClip; var inside:Object; var outline_mc:MovieClip; var outline:Object; var complete:Boolean; var unloaded:Boolean; var f:Function; var sendHostProgress:Boolean; var r:MovieClip; var options = _arg1; DEFAULTS = {ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:0xFF8A00, background:16777161, outline:13994812, no_progress_bar:false, ad_started:function ():void{ if ((this.clip is MovieClip)){ this.clip.stop(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_finished:function ():void{ if ((this.clip is MovieClip)){ this.clip.play(); } else { throw (new Error("MochiAd.showPreGameAd requires a clip that is a MovieClip or is an instance of a class that extends MovieClip. If your clip is a Sprite, then you must provide custom ad_started and ad_finished handlers.")); }; }, ad_loaded:function (_arg1:Number, _arg2:Number):void{ }, ad_failed:function ():void{ trace("[MochiAd] Couldn't load an ad, make sure your game's local security sandbox is configured for Access Network Only and that you are not using ad blocking software"); }, ad_skipped:function ():void{ }, ad_progress:function (_arg1:Number):void{ }}; options = MochiAd._parseOptions(options, DEFAULTS); if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){ options.ad_started(); setTimeout(options.ad_finished, 100); return; }; clip = options.clip; ad_msec = 11000; ad_timeout = options.ad_timeout; delete options.ad_timeout; fadeout_time = options.fadeout_time; delete options.fadeout_time; if (!MochiAd.load(options)){ options.ad_failed(); options.ad_finished(); return; }; options.ad_started(); mc = clip._mochiad; mc["onUnload"] = function ():void{ var fn:Function; MochiAd._cleanup(mc); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; wh = MochiAd._getRes(options, clip); w = wh[0]; h = wh[1]; mc.x = (w * 0.5); mc.y = (h * 0.5); chk = createEmptyMovieClip(mc, "_mochiad_wait", 3); chk.x = (w * -0.5); chk.y = (h * -0.5); bar = createEmptyMovieClip(chk, "_mochiad_bar", 4); if (options.no_progress_bar){ bar.visible = false; delete options.no_progress_bar; } else { bar.x = 10; bar.y = (h - 20); }; bar_color = options.color; delete options.color; bar_background = options.background; delete options.background; bar_outline = options.outline; delete options.outline; backing_mc = createEmptyMovieClip(bar, "_outline", 1); backing = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo((w - 20), 0); backing.lineTo((w - 20), 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); inside_mc = createEmptyMovieClip(bar, "_inside", 2); inside = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo((w - 20), 0); inside.lineTo((w - 20), 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; outline_mc = createEmptyMovieClip(bar, "_outline", 3); outline = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo((w - 20), 0); outline.lineTo((w - 20), 10); outline.lineTo(0, 10); outline.lineTo(0, 0); chk.ad_msec = ad_msec; chk.ad_timeout = ad_timeout; chk.started = getTimer(); chk.showing = false; chk.last_pcnt = 0; chk.fadeout_time = fadeout_time; chk.fadeFunction = function ():void{ var _local1:Number; _local1 = (100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time))); if (_local1 > 0){ this.parent.alpha = (_local1 * 0.01); } else { MochiAd.unload(clip); delete this["onEnterFrame"]; }; }; complete = false; unloaded = false; f = function (_arg1:Event):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); complete = true; if (unloaded){ MochiAd.unload(clip); }; }; clip.loaderInfo.addEventListener(Event.COMPLETE, f); if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; }; }; mc.unloadAd = function ():void{ unloaded = true; if (complete){ MochiAd.unload(clip); }; }; mc.adLoaded = options.ad_loaded; mc.adSkipped = options.ad_skipped; mc.adjustProgress = function (_arg1:Number):void{ var _local2:Object; _local2 = mc._mochiad_wait; _local2.server_control = true; _local2.showing = true; _local2.started = getTimer(); _local2.ad_msec = _arg1; }; mc.rpc = function (_arg1:Number, _arg2:Object):void{ MochiAd.rpc(clip, _arg1, _arg2); }; mc.rpcTestFn = function (_arg1:String):Object{ trace(("[MOCHIAD rpcTestFn] " + _arg1)); return (_arg1); }; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; sendHostProgress = false; mc.sendHostLoadProgress = function (_arg1:String):void{ sendHostProgress = true; }; chk["onEnterFrame"] = function ():void{ var _local1:Object; var _local2:Object; var _local3:Number; var _local4:Boolean; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:Object; var _local10:Number; var _local11:Number; if (((!(this.parent)) || (!(this.parent.parent)))){ delete this["onEnterFrame"]; return; }; _local1 = this.parent.parent.root; _local2 = this.parent._mochiad_ctr; _local3 = (getTimer() - this.started); _local4 = false; _local5 = _local1.loaderInfo.bytesTotal; _local6 = _local1.loaderInfo.bytesLoaded; if (complete){ _local6 = Math.max(1, _local6); _local5 = _local6; }; _local7 = ((100 * _local6) / _local5); _local8 = ((100 * _local3) / chk.ad_msec); _local9 = this._mochiad_bar._inside; _local10 = Math.min(100, Math.min(((_local7) || (0)), _local8)); _local10 = Math.max(this.last_pcnt, _local10); this.last_pcnt = _local10; _local9.scaleX = (_local10 * 0.01); options.ad_progress(_local10); if (sendHostProgress){ clip._mochiad.lc.send(clip._mochiad._containerLCName, "notify", {id:"hostLoadPcnt", pcnt:_local7}); if (_local7 == 100){ sendHostProgress = false; }; }; if (!chk.showing){ _local11 = this.parent._mochiad_ctr.contentLoaderInfo.bytesTotal; if (_local11 > 0){ chk.showing = true; chk.started = getTimer(); MochiAd.adShowing(clip); } else { if ((((_local3 > chk.ad_timeout)) && ((_local7 == 100)))){ options.ad_failed(); _local4 = true; }; }; }; if (_local3 > chk.ad_msec){ _local4 = true; }; if (((complete) && (_local4))){ if (this.server_control){ delete this.onEnterFrame; } else { this.fadeout_start = getTimer(); this.onEnterFrame = chk.fadeFunction; }; }; }; doOnEnterFrame(chk); } public static function showPreloaderAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showPreloaderAd was renamed to showPreGameAd in 2.0"); MochiAd.showPreGameAd(_arg1); } public static function showTimedAd(_arg1:Object):void{ trace("[MochiAd] DEPRECATED: showTimedAd was renamed to showInterLevelAd in 2.0"); MochiAd.showInterLevelAd(_arg1); } public static function doOnEnterFrame(_arg1:MovieClip):void{ var f:Function; var mc = _arg1; f = function (_arg1:Object):void{ if (((("onEnterFrame" in mc)) && (mc.onEnterFrame))){ mc.onEnterFrame(); } else { _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; }; mc.addEventListener(Event.ENTER_FRAME, f); } } }//package
Section 33
//MuteButton (MuteButton) package { import flash.display.*; public dynamic class MuteButton extends MovieClip { } }//package
Section 34
//MyArial (MyArial) package { import flash.text.*; public dynamic class MyArial extends Font { } }//package
Section 35
//NonobaAPI (NonobaAPI) package { import flash.display.*; import flash.events.*; import flash.system.*; import flash.net.*; public class NonobaAPI { public static const SUCCESS:String = "success"; public static const ERROR:String = "error"; public static const NOT_LOGGED_IN:String = "user not logged in"; private static var isInited:Boolean = false; private static var cachedRequests:Array = []; private static var api:Object; private static var loading:Boolean = false; private static var failed:Boolean = false; public function NonobaAPI(){ throw (new Error("You cannot create an instance of the NonobaAPI class!")); } public static function SubmitScore(_arg1:Stage, _arg2:String, _arg3:Number, _arg4:Function=null){ var stage = _arg1; var key = _arg2; var score = _arg3; var callback = _arg4; if (!isInited){ init(stage); }; if (failed){ if (callback != null){ callback(ERROR); }; return; }; if (((api.content) && (api.content.SubmitScore))){ api.content.SubmitScore(stage, key, score, callback); } else { cachedRequests.push(function (){ SubmitScore(stage, key, score, callback); }); }; } private static function handleLoadCompleate(_arg1:Event){ emptyQueue(); } private static function emptyQueue(){ var _local1:int; _local1 = 0; while (_local1 < cachedRequests.length) { var _local2 = cachedRequests; _local2[_local1](); _local1++; }; cachedRequests = []; } private static function init(_arg1:Stage){ var _local2:Object; var _local3:URLRequest; isInited = true; _local2 = LoaderInfo(_arg1.root.loaderInfo).parameters; if (!_local2.nonoba$apicodeas3){ enterErrorState(); return; }; Security.allowDomain("*"); Security.allowInsecureDomain("*"); api = new Loader(); _local3 = new URLRequest(_local2.nonoba$apicodeas3); api.contentLoaderInfo.addEventListener(Event.COMPLETE, handleLoadCompleate); api.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, enterErrorState); api.load(_local3); } private static function enterErrorState(_arg1:Event=null){ failed = true; emptyQueue(); } public static function GetUserData(_arg1:Stage, _arg2:String, _arg3:Function=null){ var stage = _arg1; var key = _arg2; var callback = _arg3; if (!isInited){ init(stage); }; if (failed){ if (callback != null){ callback(ERROR); }; return; }; if (((api.content) && (api.content.GetUserData))){ api.content.GetUserData(stage, key, callback); } else { cachedRequests.push(function (){ GetUserData(stage, key, callback); }); }; } public static function AwardAchievement(_arg1:Stage, _arg2:String, _arg3:Function=null){ var stage = _arg1; var key = _arg2; var callback = _arg3; if (!isInited){ init(stage); }; if (failed){ if (callback != null){ callback(ERROR, 0); }; return; }; if (((api.content) && (api.content.AwardAchievement))){ api.content.AwardAchievement(stage, key, callback); } else { cachedRequests.push(function (){ AwardAchievement(stage, key, callback); }); }; } public static function GetUsername(_arg1:Stage, _arg2:Function=null){ var stage = _arg1; var callback = _arg2; if (!isInited){ init(stage); }; if (failed){ if (callback != null){ callback(ERROR, ""); }; return; }; if (((api.content) && (api.content.GetUsername))){ api.content.GetUsername(stage, callback); } else { cachedRequests.push(function (){ GetUsername(stage, callback); }); }; } public static function SetUserData(_arg1:Stage, _arg2:String, _arg3:String, _arg4:Function=null){ var stage = _arg1; var key = _arg2; var value = _arg3; var callback = _arg4; if (!isInited){ init(stage); }; if (failed){ if (callback != null){ callback(ERROR); }; return; }; if (((api.content) && (api.content.SetUserData))){ api.content.SetUserData(stage, key, value, callback); } else { cachedRequests.push(function (){ SetUserData(stage, key, value, callback); }); }; } } }//package
Section 36
//NonobaDebugBox (NonobaDebugBox) package { import flash.display.*; import flash.text.*; public dynamic class NonobaDebugBox extends MovieClip { public var log:TextField; } }//package
Section 37
//NonobaManager (NonobaManager) package { import flash.display.*; import flash.utils.*; public class NonobaManager extends MovieClip { public var _achievements:Array; public var _userName:String;// = "Default" public var AchievementBoxControl:AchievementBoxManager; public var _state:String; public var _debugToggleDelay:Number;// = 0.25 public var _debugBox:NonobaDebugBox; public var _debugToggleInitTime:Number; public function NonobaManager():void{ _userName = "Default"; _achievements = new Array(); _debugToggleDelay = 0.25; super(); AchievementBoxControl = new AchievementBoxManager(); addChild(AchievementBoxControl); AchievementBoxControl.init(15); if (GameManager._nonobaDebuggerEnabled){ _debugBox = new NonobaDebugBox(); addChild(_debugBox); _debugToggleInitTime = getTimer(); }; } public function toggleDebugBox():void{ if (((GameManager.isNonoba) && (GameManager._nonobaDebuggerEnabled))){ if (GameManager.elapsedTime(_debugToggleInitTime) > _debugToggleDelay){ trace("toggle it"); if (_debugBox.visible){ _debugBox.visible = false; } else { trace("hide"); _debugBox.visible = true; }; _debugToggleInitTime = getTimer(); }; }; } public function resetAchievements():void{ var _local1:int; var _local2:int; _local2 = _achievements.length; _local1 = 0; while (_local1 < _local2) { _achievements[_local1]._isAchieved = false; _local1++; }; } public function markAchievement(_arg1:String):void{ var _local2:int; var _local3:int; _local3 = _achievements.length; _local2 = 0; while (_local2 < _local3) { if (_achievements[_local2]._achievementKey == _arg1){ setAchievement(_arg1); _achievements[_local2]._isAchieved = true; spawnAchievementBox((("Congrats, you achieved " + _achievements[_local2]._achievementName) + "!"), 3); break; }; _local2++; }; } public function getUsername():void{ _userName = "Error Clown Sent"; NonobaAPI.GetUsername(stage, function (_arg1:String, _arg2:String){ switch (_arg1){ case NonobaAPI.SUCCESS: _userName = _arg2; break; case NonobaAPI.NOT_LOGGED_IN: _arg2 = "Clown"; break; case NonobaAPI.ERROR: _arg2 = "Error Clown"; break; }; _userName = _arg2; GameManager._userName = _userName; }); } public function updateDebugBox():void{ if (((GameManager.isNonoba) && (GameManager._nonobaDebuggerEnabled))){ _debugBox.log.text = achievementsLogString(); }; } public function spawnAchievementBox(_arg1:String, _arg2:Number):void{ AchievementBoxControl.spawn(_arg1, _arg2); } public function setAchievement(_arg1:String):void{ var achievementKey = _arg1; if (GameManager._nonobaSendEnabled){ NonobaAPI.AwardAchievement(this.stage, achievementKey, function (_arg1:String, _arg2:Number){ switch (_arg1){ case NonobaAPI.SUCCESS: trace("The achievement was successfully awarded."); trace((("It has been awarded " + _arg2) + " times.")); break; case NonobaAPI.NOT_LOGGED_IN: trace("The user is not logged in."); break; case NonobaAPI.ERROR: trace("An error occurred."); break; }; }); }; } public function isAchieved(_arg1:String):Boolean{ var _local2:int; var _local3:int; var _local4:Boolean; _local3 = _achievements.length; _local2 = 0; while (_local2 < _local3) { if (_achievements[_local2]._achievementKey == _arg1){ _local4 = _achievements[_local2]._isAchieved; break; }; _local2++; }; return (_local4); } public function saveHighscore(_arg1:String, _arg2:Number):void{ var keyName = _arg1; var playerScore = _arg2; if (GameManager._nonobaSendEnabled){ NonobaAPI.SubmitScore(this.stage, keyName, playerScore, function (_arg1:String){ switch (_arg1){ case NonobaAPI.SUCCESS: break; case NonobaAPI.NOT_LOGGED_IN: break; case NonobaAPI.ERROR: break; }; }); }; } public function achievementsLogString():String{ var _local1:String; var _local2:int; var _local3:int; _local1 = ""; _local3 = _achievements.length; _local2 = 0; while (_local2 < _local3) { _local1 = ((((_local1 + _achievements[_local2]._achievementName) + " : ") + String(_achievements[_local2]._isAchieved)) + "\n"); _local2++; }; return (_local1); } public function addAchievement(_arg1:String, _arg2:String, _arg3:int):void{ _achievements[_achievements.length] = new AchievementRecord(_arg1, _arg2, _arg3); } } }//package
Section 38
//PauseScreen (PauseScreen) package { import flash.display.*; import flash.events.*; public class PauseScreen extends MovieClip { public var _state:String; public var Continue:MovieClip; public function PauseScreen():void{ x = 0; y = 0; _state = "Inactive"; visible = false; } public function activate():void{ _state = "Active"; visible = true; } public function menu_mouseUp(_arg1:MouseEvent):void{ if (Continue.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "MainMenu"; }; } public function deactivate():void{ _state = "Inactive"; visible = false; } public function update():void{ switch (_state){ case "Active": break; }; } } }//package
Section 39
//PopUp (PopUp) package { import flash.geom.*; import flash.display.*; import flash.text.*; import flash.utils.*; public class PopUp extends MovieClip { public var _duration:Number; public var _isComplete:Boolean; public var box_text:TextField; public var _scale:Number; public var _initTime:Number; public var _state:String; public var _defaultCaption:String;// = "You know how we do!" public var title_text:TextField; public var _defaultDuration:Number;// = 3 public var _scaleSpeed:Number;// = 250 public var _defalutLoc:Point; public var _defaultBody:String;// = "This is where you put popup text" public function PopUp():void{ _scaleSpeed = 250; _defaultDuration = 3; _defalutLoc = new Point(0, 0); _defaultCaption = "You know how we do!"; _defaultBody = "This is where you put popup text"; super(); deactivate(); } public function startTimer():void{ _initTime = getTimer(); } public function activate(_arg1, _arg2:String, _arg3:Point, _arg4:Number):void{ x = _arg3.x; y = _arg3.y; _state = "Active"; title_text.text = _arg1; box_text.text = _arg2; _duration = _arg4; transitionIn(); _isComplete = false; visible = true; } public function transitionIn():void{ _scale = 0.01; scaleX = _scale; scaleY = _scale; _state = "Grow"; } public function deactivate():void{ _state = "Inactive"; visible = false; _isComplete = true; } public function transitionOut():void{ _state = "Shrink"; } public function update(_arg1:Number):void{ switch (_state){ case "Active": if (isDone()){ transitionOut(); }; break; case "Grow": _scale = (_scale + ((_arg1 * _scaleSpeed) / 100)); if (_scale >= 1){ _scale = 1; startTimer(); _state = "Active"; }; scaleX = _scale; scaleY = _scale; break; case "Shrink": _scale = (_scale - ((_arg1 * _scaleSpeed) / 100)); if (_scale <= 0.1){ _scale = 1; deactivate(); }; scaleX = _scale; scaleY = _scale; break; case "Inactive": break; }; } public function isDone():Boolean{ var _local1:Boolean; _local1 = false; if (GameManager.elapsedTime(_initTime) >= _duration){ _local1 = true; }; return (_local1); } } }//package
Section 40
//ScorePopUp (ScorePopUp) package { import flash.display.*; import classes.smallz.*; import classes.game.*; public class ScorePopUp extends MovieClip { public var _speed;// = 100 public var _spawnState:Boolean;// = true public var _state:String; public var _scoreValue:String; public var PointText:MovieClip; public function ScorePopUp():void{ _speed = 100; _spawnState = true; super(); addFrameScript(22, frame23); deactivate(); } public function activate():void{ visible = true; _state = "Active"; _spawnState = false; } public function deactivate():void{ _state = "Inactive"; visible = false; } function frame23(){ this.stop(); } public function update(_arg1:Number):void{ switch (_state){ case "Active": y = (y - (_arg1 * _speed)); if (PointText){ if (PointText.PointText){ PointText.PointText.text = _scoreValue; }; }; if (currentFrame == totalFrames){ deactivate(); }; break; }; } } }//package
Section 41
//ScorePopUpManager (ScorePopUpManager) package { import flash.geom.*; import flash.display.*; public class ScorePopUpManager extends MovieClip { public var active:Array; public var popups:Array; public var _scale:Number;// = 0.5 public function ScorePopUpManager():void{ popups = new Array(); active = new Array(); _scale = 0.5; super(); } public function inactive_popup():int{ var _local1:int; var _local2:int; var _local3:int; _local2 = -1; _local3 = popups.length; _local1 = 0; while (_local1 < _local3) { if (popups[_local1]._spawnState){ _local2 = _local1; break; }; _local1++; }; return (_local2); } public function activate(_arg1:Point, _arg2:String):void{ var popupIndex:int; var screenLoc = _arg1; var scoreString = _arg2; popupIndex = inactive_popup(); active.push(popups[popupIndex]); var _local4 = popups[popupIndex]; with (_local4) { activate(); x = screenLoc.x; y = screenLoc.y; scaleX = _scale; scaleY = _scale; _scoreValue = scoreString; gotoAndPlay(1); }; } public function init(_arg1:int){ var _local2:int; _local2 = 0; while (_local2 < _arg1) { popups[_local2] = new ScorePopUp(); addChild(popups[_local2]); _local2++; }; } public function deactivateAllPopups():void{ var _local1:int; var _local2:int; _local2 = popups.length; _local1 = 0; while (_local1 < _local2) { popups[_local1].deactivate(); popups[_local1]._spawnState = true; _local1++; }; active = new Array(); } public function update(_arg1:Number):void{ var index:int; var popupCount:int; var elapsedTime = _arg1; popupCount = active.length; index = 0; while (index < popupCount) { var _local3 = active[index]; with (_local3) { if (_state == "Inactive"){ _spawnState = true; active.splice(index, 1); index--; popupCount--; } else { update(elapsedTime); }; }; index = (index + 1); }; } } }//package
Section 42
//smallzDebug (smallzDebug) package { import flash.text.*; import flash.filters.*; public class smallzDebug { private var _log:Array; private var _active:Boolean; public var _window:TextField; public function smallzDebug(_arg1:Number, _arg2:Number, _arg3:Boolean):void{ var _local4:DropShadowFilter; var _local5:GlowFilter; var _local6:TextFormat; super(); _local4 = new DropShadowFilter(2, 45, 0, 25, 3, 3, 2, 2); _local5 = new GlowFilter(0, 100, 2, 2, 2000, 1, false, false); _active = _arg3; _window = new TextField(); _window.x = _arg1; _window.y = _arg2; _window.multiline = true; _window.wordWrap = true; _window.width = 640; _window.height = 480; _window.selectable = false; _window.text = ""; _window.filters = [_local5]; _log = new Array(); _local6 = new TextFormat(); _local6.font = "Arial"; _local6.bold = true; _local6.size = 16; _local6.color = 0xFFFFFF; _window.defaultTextFormat = _local6; } public function update():void{ var _local1:int; if (_active){ if (!_window.visible){ _window.visible = true; }; _window.text = ""; _local1 = 0; while (_local1 <= (_log.length - 1)) { _window.appendText(_log[_local1]); _window.appendText("\n"); _local1++; }; } else { if (_window.visible){ _window.visible = false; }; }; } public function add_trace(_arg1:String):void{ if (GameManager.Debug){ _log.push(_arg1); }; } public function clear_log():void{ var _local1:int; var _local2:int; _local2 = _log.length; _local1 = 0; while (_local1 < _local2) { _log.pop(); _local1++; }; } public function deactivate():void{ _active = false; } public function activate():void{ _active = true; } } }//package
Section 43
//smallzFilter (smallzFilter) package { import flash.display.*; import flash.filters.*; public class smallzFilter { public function smallzFilter():void{ } public static function bevel(_arg1:MovieClip, _arg2:String, _arg3:Number, _arg4:String, _arg5:Number, _arg6:Number, _arg7:Number, _arg8:Number, _arg9:Number, _arg10:Number, _arg11:int, _arg12:String, _arg13:Boolean):void{ var _local14:BevelFilter; var _local15:Array; _local14 = new BevelFilter(); _local15 = new Array(); _local15 = _arg1.filters; _local14.distance = _arg6; _local14.angle = _arg7; _local14.highlightColor = new Number(_arg2); _local14.highlightAlpha = _arg3; _local14.shadowColor = new Number(_arg4); _local14.shadowAlpha = _arg5; _local14.blurX = _arg8; _local14.blurY = _arg9; _local14.strength = _arg10; _local14.quality = _arg11; _local14.type = _arg12; _local14.knockout = _arg13; _local15.push(_local14); _arg1.filters = _local15; } public static function glow(_arg1:MovieClip, _arg2:String, _arg3:Number, _arg4:Number, _arg5:Number, _arg6:Number):void{ var _local7:GlowFilter; var _local8:Array; _local7 = new GlowFilter(); _local8 = new Array(); _local8 = _arg1.filters; _local7.color = new Number(_arg2); _local7.alpha = _arg4; _local7.strength = _arg3; _local7.blurX = _arg5; _local7.blurY = _arg6; _local8.push(_local7); _arg1.filters = _local8; } public static function removeFilters(_arg1:MovieClip):void{ var _local2:Array; _local2 = new Array(); _arg1.filters = _local2; } } }//package
Section 44
//smallzFPS (smallzFPS) package { import flash.text.*; import flash.utils.*; public class smallzFPS { private var _frameCount:int; private var _initTime:Number; private var _fps:Number; private var _curTime:Number; private var _sampleSize:int; public var _fpsCounter:TextField; public function smallzFPS(_arg1:Number, _arg2:Number, _arg3:int):void{ var _local4:Font; var _local5:TextFormat; super(); _local4 = new MyArial(); _local5 = new TextFormat(); _local5.font = _local4.fontName; _local5.bold = true; _local5.size = 14; _local5.color = 0xFFFFFF; _initTime = getTimer(); _sampleSize = _arg3; _frameCount = 0; _fps = 0; _fpsCounter = new TextField(); _fpsCounter.embedFonts = true; _fpsCounter.defaultTextFormat = _local5; _fpsCounter.x = _arg1; _fpsCounter.y = _arg2; } public function get_fps():Number{ return (_fps); } public function update(){ var _local1:Number; _frameCount++; _curTime = getTimer(); if (_frameCount == _sampleSize){ _local1 = (_curTime - _initTime); _fps = ((_frameCount / _local1) * 1000); _initTime = _curTime; _frameCount = 0; _fpsCounter.text = String(("FPS : " + int(_fps))); }; } } }//package
Section 45
//smallzKeyboardManager (smallzKeyboardManager) package { import flash.display.*; import flash.events.*; public class smallzKeyboardManager extends Sprite { public var pressed:Array; public function smallzKeyboardManager(){ pressed = new Array(); super(); } public function init(){ stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased); } public function kill(){ stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyPressed); stage.removeEventListener(KeyboardEvent.KEY_UP, keyReleased); } public function isPressed(_arg1:int){ if (pressed.indexOf(_arg1) == -1){ return (false); }; return (true); } public function keyPressed(_arg1:KeyboardEvent){ var _local2:int; _local2 = pressed.indexOf(_arg1.keyCode); if (_local2 == -1){ pressed.push(_arg1.keyCode); }; } public function keyReleased(_arg1:KeyboardEvent){ var _local2:int; _local2 = pressed.indexOf(_arg1.keyCode); if (_local2 != -1){ pressed.splice(_local2, 1); }; } } }//package
Section 46
//smallzMath (smallzMath) package { import flash.geom.*; public class smallzMath { public static function random_point(_arg1:Number, _arg2:Number):Point{ var _local3:Point; _local3 = new Point(0, 0); _local3.x = (Math.random() * _arg1); _local3.y = (Math.random() * _arg2); return (_local3); } public static function pGetAngle(_arg1:Point, _arg2:Point):Number{ return (Math.atan2((_arg2.y - _arg1.y), (_arg2.x - _arg1.x))); } public static function pDistance(_arg1:Point, _arg2:Point):Number{ var _local3:Number; _local3 = Math.sqrt((((_arg1.x - _arg2.x) * (_arg1.x - _arg2.x)) + ((_arg1.y - _arg2.y) * (_arg1.y - _arg2.y)))); return (_local3); } public static function getDistance(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ var _local5:Number; _local5 = Math.sqrt((((_arg1 - _arg3) * (_arg1 - _arg3)) + ((_arg2 - _arg4) * (_arg2 - _arg4)))); return (_local5); } public static function get_angle_point(_arg1:Point, _arg2:Point):Number{ return (Math.atan2((_arg2.y - _arg1.y), (_arg2.x - _arg1.x))); } public static function getAngle(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (Math.atan2((_arg4 - _arg2), (_arg3 - _arg1))); } } }//package
Section 47
//Snowman (Snowman) package { import flash.geom.*; import flash.display.*; public class Snowman extends MovieClip { public var _type:int; public var _clip:MovieClip; public var _scale:Number; public var _currentFrame:int;// = 0 public var _targetLoc:Point; public var _spawnState:Boolean;// = true public var _number:int; public var _frame:Array; public var _state:String; public var _tagged:Boolean;// = false public var _highlighted:Boolean;// = false public var _scaleSpeed:Number;// = 6 public var _index:int; public function Snowman():void{ _scaleSpeed = 6; _spawnState = true; _highlighted = false; _tagged = false; _targetLoc = new Point(0, 0); _currentFrame = 0; super(); _clip = new MovieClip(); _frame = new Array(); _frame.push(new Snowman_Blue()); _frame.push(new Snowman_Red()); _frame.push(new Snowman_Yellow()); _frame.push(new Snowman_Purple()); _frame.push(new Snowman_Green()); setFrame(_currentFrame); addChild(_clip); deactivate(); } public function activate():void{ _state = "Active"; visible = true; _spawnState = false; } public function unhighlight():void{ smallzFilter.removeFilters(this); _highlighted = false; } public function setFrame(_arg1:int):void{ if (_clip.numChildren > 0){ _clip.removeChild(_frame[_currentFrame]); }; _currentFrame = _arg1; _clip.addChild(_frame[_currentFrame]); } public function deactivate():void{ _state = "Inactive"; visible = false; } public function highlight():void{ var _local1:Number; smallzFilter.removeFilters(this); _local1 = ((Math.random() * 5) + 2); smallzFilter.glow(this, "0xFFFF00", _local1, 1, 10, 10); _highlighted = true; } public function update(_arg1:Number):void{ switch (_state){ case "Active": if (_tagged){ highlight(); }; break; case "Inactive": break; case "Explode": _scale = (_scale - (_scaleSpeed * _arg1)); if (_scale < 0.25){ deactivate(); _scale = 1; }; scaleX = _scale; scaleY = _scale; break; }; } public function explode():void{ _state = "Explode"; } } }//package
Section 48
//Snowman_Blue (Snowman_Blue) package { import flash.display.*; public dynamic class Snowman_Blue extends MovieClip { } }//package
Section 49
//Snowman_Green (Snowman_Green) package { import flash.display.*; public dynamic class Snowman_Green extends MovieClip { } }//package
Section 50
//snowman_match (snowman_match) package { import flash.geom.*; import flash.display.*; import flash.events.*; import flash.text.*; import flash.utils.*; import flash.system.*; import flash.net.*; public dynamic class snowman_match extends MovieClip { private var faultCount:int;// = 0 private var UI_MainMenu:MainMenuScreen; private var UI_Submit:SubmitScoreScreen; public var Mute:MuteButton; private var TheBackground:Background; private var UI_Pause:PauseScreen; public var _backgroundScale:Number;// = 1.25 private var SnowmanControl:SnowmanManager; public var ScorePopUpControl:ScorePopUpManager; public var _backgroundScaleMin:Number;// = 1 private var UI_Game:GameUIScreen; public var NonobaControl:NonobaManager; private var UI_HighScores:HighScoresScreen; public var PopUp_UI:PopUp; public var FPS_Display:smallzFPS; public var _loader:Loader; public var HighScoreControl:HighScoreManager; public var KeyboardControl:smallzKeyboardManager; public var LevelControl:LevelManager; private var DrawingControl:DrawingManager; private var UI_Instructions:InstructionsScreen; public var _backgroundRotationSpeed:Number;// = 15 public var _backgroundScaleMax:Number;// = 3 private var Soundtrack:SoundtrackMusic; private var UI_Credits:CreditsScreen; public var _backgroundScaleSpeed:Number;// = 0.25 public var load_screen:MovieClip; public var _browser:MovieClip; private var load_percent:Number; public static var Debug:smallzDebug; public static var LevelChange:LevelChangeSFX; public static var Tinkle:TinkleSFX; public static var Bloop:BloopSFX; public function snowman_match(){ _backgroundScale = 1.25; _backgroundRotationSpeed = 15; _backgroundScaleSpeed = 0.25; _backgroundScaleMax = 3; _backgroundScaleMin = 1; faultCount = 0; super(); addFrameScript(0, frame1, 2, frame3, 3, frame4); Security.allowDomain("*"); Security.allowInsecureDomain("*"); Security.loadPolicyFile("http://games.smallzworld.com/crossdomain.xml"); } public function faultCheck(_arg1:Number):Number{ if (_arg1 > 0.09){ faultCount++; _arg1 = 0.09; if (faultCount > 10){ stage.quality = StageQuality.MEDIUM; GameManager._detailLevel = "medium detail"; }; }; return (_arg1); } public function initApplication(){ loadBrowser(("http://games.smallzworld.com/media/flash/headers/browser.swf?rand=" + String(int((Math.random() * 100))))); Soundtrack = new SoundtrackMusic(); Bloop = new BloopSFX(); Tinkle = new TinkleSFX(); LevelChange = new LevelChangeSFX(); TheBackground = new Background(); addChild(TheBackground); TheBackground.x = GameManager.centerLoc.x; TheBackground.y = GameManager.centerLoc.y; SoundManager.addSound("Bloop", Bloop); SoundManager.addSound("Tinkle", Tinkle); SoundManager.addSound("NewLevel", LevelChange); SoundManager.addSound("Soundtrack", Soundtrack); LevelControl = new LevelManager(); NonobaControl = new NonobaManager(); SnowmanControl = new SnowmanManager(); SnowmanControl.init(60); addChild(SnowmanControl); DrawingControl = new DrawingManager(); DrawingControl.init(SnowmanControl, LevelControl); addChild(DrawingControl); UI_Game = new GameUIScreen(); addChild(UI_Game); UI_MainMenu = new MainMenuScreen(); addChild(UI_MainMenu); UI_Instructions = new InstructionsScreen(); addChild(UI_Instructions); UI_Credits = new CreditsScreen(); addChild(UI_Credits); UI_Pause = new PauseScreen(); addChild(UI_Pause); UI_HighScores = new HighScoresScreen(); addChild(UI_HighScores); UI_Submit = new SubmitScoreScreen(); addChild(UI_Submit); PopUp_UI = new PopUp(); addChild(PopUp_UI); GameManager.initUI(UI_Game, LevelControl); ScorePopUpControl = new ScorePopUpManager(); addChild(ScorePopUpControl); ScorePopUpControl.init(10); GameManager.initScorePopUpManager(ScorePopUpControl); addChild(NonobaControl); Mute = new MuteButton(); addChild(Mute); Mute.gotoAndStop(1); Mute.x = 10; Mute.y = 10; HighScoreControl = new HighScoreManager(); KeyboardControl = new smallzKeyboardManager(); addChild(KeyboardControl); KeyboardControl.init(); stage.addEventListener(Event.ENTER_FRAME, mainLoop); stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp_handler); stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown_handler); stage.focus = this; if (GameManager.isNonoba){ NonobaControl.getUsername(); defineAchievements(); UI_MainMenu.LeaderBoards.visible = false; UI_MainMenu.HighScores.visible = false; }; SoundManager.loopSound("Soundtrack"); addChild(_browser); } public function mouseUp_handler(_arg1:MouseEvent){ if (Mute.hitTestPoint(mouseX, mouseY)){ if (!SoundManager._mute){ SoundManager._mute = true; SoundManager.stopSound("Soundtrack"); Mute.gotoAndStop(2); } else { SoundManager._mute = false; SoundManager.restartSound("Soundtrack", 999); Mute.gotoAndStop(1); }; } else { switch (GameManager.gameState){ case "Game": if (DrawingControl._penDown){ DrawingControl.solveCheck(); }; DrawingControl._penDown = false; break; case "LevelPrompt": PopUp_UI._duration = 0; break; case "MainMenu": UI_MainMenu.menu_mouseUp(_arg1); break; case "Instructions": UI_Instructions.menu_mouseUp(_arg1); break; case "Credits": UI_Credits.menu_mouseUp(_arg1); break; case "Pause": UI_Pause.menu_mouseUp(_arg1); break; case "HighScores": UI_HighScores.menu_mouseUp(_arg1); break; case "GameOver": UI_Submit.menu_mouseUp(_arg1); break; }; }; } public function showProgress(_arg1:Event):void{ load_percent = Math.round(((this.loaderInfo.bytesLoaded / this.loaderInfo.bytesTotal) * 100)); load_screen.loader.load_bar.Fill.width = (198 * (load_percent / 100)); trace("Preloading"); if (this.loaderInfo.bytesLoaded == this.loaderInfo.bytesTotal){ trace("Done loading"); this.removeEventListener(Event.ENTER_FRAME, showProgress); load_screen.visible = false; showAds(GameManager.mochiID, GameManager.isMochi); }; } private function checkAchievements():void{ if (!NonobaControl.isAchieved("gotsum")){ if (GameManager.playerScore >= 20000){ NonobaControl.markAchievement("gotsum"); }; }; if (!NonobaControl.isAchieved("mathematician")){ if (GameManager.playerScore >= 30000){ NonobaControl.markAchievement("mathematician"); }; }; if (!NonobaControl.isAchieved("multisummaster")){ if (GameManager.playerScore >= 50000){ NonobaControl.markAchievement("multisummaster"); }; }; if (!NonobaControl.isAchieved("massmult")){ if (GameManager._mostMultipliers >= 10){ NonobaControl.markAchievement("massmult"); }; }; if (!NonobaControl.isAchieved("timebandit")){ if (GameManager._timeBonusCounter >= 10){ NonobaControl.markAchievement("timebandit"); }; }; if (!NonobaControl.isAchieved("bigbonus")){ if (GameManager._highBonus >= 2000){ NonobaControl.markAchievement("bigbonus"); }; }; if (!NonobaControl.isAchieved("massivebonus")){ if (GameManager._highBonus >= 3000){ NonobaControl.markAchievement("massivebonus"); }; }; if (!NonobaControl.isAchieved("monsterbonus")){ if (GameManager._highBonus >= 5000){ NonobaControl.markAchievement("monsterbonus"); }; }; } private function checkEndLevelAchievements():void{ } public function isItLoaded(_arg1:Event):void{ if (loaderInfo.bytesLoaded == loaderInfo.bytesTotal){ this.removeEventListener(Event.ENTER_FRAME, isItLoaded); this.loaderInfo.removeEventListener(ProgressEvent.PROGRESS, loadProgress); showAds(GameManager.mochiID, GameManager.isMochi); }; } function frame3(){ stop(); } function frame4(){ gotoAndStop(3); } public function showAds(_arg1:String, _arg2:Boolean){ stop(); if (_arg2){ MochiAd.showPreGameAd({clip:root, id:_arg1, res:"640x480", background:0, color:204, outline:0xFFFFFF, no_bg:false, ad_finished:adFinished}); } else { adFinished(); }; } function frame1(){ this.stop(); load_screen.alpha = 100; this.loaderInfo.addEventListener(ProgressEvent.PROGRESS, loadProgress); this.addEventListener(Event.ENTER_FRAME, isItLoaded); } private function defineAchievements():void{ NonobaControl.addAchievement("Got Sum", "gotsum", 3); NonobaControl.addAchievement("The Mathematician", "mathematician", 5); NonobaControl.addAchievement("Multi Sum Master", "multisummaster", 10); NonobaControl.addAchievement("Massive Multiplier", "massmult", 5); NonobaControl.addAchievement("Time Bandit", "timebandit", 5); NonobaControl.addAchievement("Big Bonus", "bigbonus", 3); NonobaControl.addAchievement("Massive Bonus", "massivebonus", 5); NonobaControl.addAchievement("Monster Bonus", "monsterbonus", 10); } private function processInput(){ if (KeyboardControl.isPressed(37)){ SoundManager.stopSound("Soundtrack"); }; if (KeyboardControl.isPressed(38)){ }; if (KeyboardControl.isPressed(39)){ }; if (KeyboardControl.isPressed(40)){ }; if (KeyboardControl.isPressed(32)){ }; } private function checkEndGameAchievements():void{ } public function loadProgress(_arg1:ProgressEvent):void{ var _local2:Number; _local2 = ((_arg1.bytesLoaded / _arg1.bytesTotal) * 100); load_screen.loader.load_bar.scaleX = (_local2 / 100); } function browserLoadedHandler(_arg1:Event):void{ trace(((_browser.height + " : ") + stage.height)); _browser.addChild(_loader.content); _browser.x = 0; trace(((_browser.height + " : ") + stage.height)); _browser.y = 175; } function loadBrowser(_arg1:String):void{ var _local2:URLRequest; _local2 = new URLRequest(((_arg1 + "?") + String(getTimer()))); _browser = new MovieClip(); _loader = new Loader(); _loader.contentLoaderInfo.addEventListener(Event.COMPLETE, browserLoadedHandler); _loader.load(_local2); } public function adFinished():void{ load_screen.visible = false; GameManager.gameState = "MainMenu"; gotoAndStop(3); initApplication(); } public function mouseDown_handler(_arg1:MouseEvent){ switch (GameManager.gameState){ case "Game": DrawingControl._penDown = true; DrawingControl._drawLayer.graphics.moveTo(mouseX, mouseY); DrawingControl._lastLoc = new Point(mouseX, mouseY); DrawingControl._pixelsTraveled = 0; break; }; } private function mainLoop(_arg1:Event){ var _local2:Number; var _local3:String; _local2 = GameManager.clockPulse(); processInput(); if (GameManager.isNonoba){ NonobaControl.AchievementBoxControl.update(_local2); }; if (_browser){ if (GameManager.gameState != "MainMenu"){ if (_browser.visible){ _browser.visible = false; }; }; }; TheBackground.rotation = (TheBackground.rotation + (_backgroundRotationSpeed * _local2)); _backgroundScale = (_backgroundScale + (_backgroundScaleSpeed * _local2)); if ((((_backgroundScale < _backgroundScaleMin)) || ((_backgroundScale > _backgroundScaleMax)))){ _backgroundScaleSpeed = -(_backgroundScaleSpeed); _backgroundScale = (_backgroundScale + (_backgroundScaleSpeed * _local2)); }; TheBackground.scaleX = _backgroundScale; TheBackground.scaleY = _backgroundScale; switch (GameManager.gameState){ case "Game": if (UI_Game._state == "Inactive"){ UI_Game.activate(); DrawingControl.startNextMove(); }; if (((GameManager.isNonoba) && (GameManager._nonobaAchievementsEnabled))){ checkAchievements(); NonobaControl.updateDebugBox(); }; ScorePopUpControl.update(_local2); SnowmanControl.update(_local2); DrawingControl.update(_local2); GameManager.updateUI(); if (ScorePopUpControl.active.length == 0){ if (SnowmanControl.active.length == 0){ if (LevelControl._currentLevel < 7){ LevelControl.nextLevel(); GameManager.gameState = "LevelSetup"; } else { GameManager.gameState = "GameOver"; }; }; if ((((LevelControl.timerValue() > LevelControl._duration)) || ((SnowmanControl.active.length == 1)))){ if (SnowmanControl.active.length > 0){ GameManager.gameState = "GameOver"; }; }; }; break; case "MainMenu": if (UI_MainMenu._state == "Inactive"){ UI_MainMenu.activate(); UI_Game.deactivate(); _browser.visible = true; }; if (GameManager.isNonoba){ UI_MainMenu.nonoba_text.text = (("Welcome " + NonobaControl._userName) + "!\nGood luck in Multi Sum, and don't forget to check out my profile for new games!"); } else { UI_MainMenu.nonoba_text.visible = false; }; UI_MainMenu.check_rollovers(); break; case "LevelSetup": LevelControl.initLevel(); GameManager.updateUI(); SnowmanControl.multiSpawn(LevelControl._count, LevelControl._colors, LevelControl._scale); UI_Game.time_remaining.text = GameManager.timeString(LevelControl._duration); GameManager.gameState = "LevelPrompt"; break; case "LevelPrompt": if (PopUp_UI._state == "Inactive"){ PopUp_UI.activate(LevelControl._caption, LevelControl._description, GameManager.centerLoc, 300); }; PopUp_UI.update(_local2); if (PopUp_UI._isComplete){ LevelControl.startTimer(); GameManager.gameState = "Game"; }; break; case "Instructions": if (UI_Instructions._state == "Inactive"){ UI_Instructions.activate(); }; UI_Instructions.check_rollovers(); break; case "Credits": if (UI_Credits._state == "Inactive"){ UI_Credits.activate(); }; UI_Credits.check_rollovers(); break; case "GameOver": if (UI_Submit._state == "Inactive"){ SnowmanControl.deactivateAll(); UI_Game.deactivate(); UI_Submit.activate(); if (GameManager.isNonoba){ if (GameManager._nonobaAchievementsEnabled){ checkEndGameAchievements(); }; if (GameManager._nonobaHighScoresEnabled){ NonobaControl.saveHighscore("highscores", GameManager.playerScore); }; }; }; UI_Submit.check_rollovers(); break; case "Pause": if (UI_Pause._state == "Inactive"){ UI_Pause.activate(); }; break; case "SaveHighScore": if (GameManager._highScoresEnabled){ if (GameManager.isNonoba){ _local3 = ("Nonoba - " + GameManager._userName); } else { _local3 = GameManager._userName; }; trace(("send : " + GameManager._userName)); HighScoreControl.save_highscore(GameManager.gameID, 0, _local3, LevelControl._currentLevel, GameManager.playerScore, 0, "No Comment"); if (GameManager.isMochi){ MochiAd.showInterLevelAd({clip:root, id:GameManager.mochiID, res:"640x480"}); }; }; break; case "HighScores": if (UI_HighScores._state == "Inactive"){ UI_HighScores.activate(); HighScoreControl.load_highscores(GameManager.gameID); }; if (GameManager._highScoresLoaded){ UI_HighScores.update(); GameManager._highScoresLoaded = false; }; UI_HighScores.check_rollovers(); break; case "Reset": GameManager.resetGame(); NonobaControl.resetAchievements(); LevelControl._currentLevel = 1; GameManager.gameState = "LevelSetup"; break; }; } } }//package
Section 51
//Snowman_Purple (Snowman_Purple) package { import flash.display.*; public dynamic class Snowman_Purple extends MovieClip { } }//package
Section 52
//Snowman_Red (Snowman_Red) package { import flash.display.*; public dynamic class Snowman_Red extends MovieClip { } }//package
Section 53
//Snowman_Yellow (Snowman_Yellow) package { import flash.display.*; public dynamic class Snowman_Yellow extends MovieClip { } }//package
Section 54
//SnowmanManager (SnowmanManager) package { import flash.geom.*; import flash.display.*; public class SnowmanManager extends MovieClip { public var active:Array; public var clips:Array; private var verticalMargin:Number;// = 80 public var _pauseState:Boolean;// = false private var horizontalMargin:Number;// = 80 public function SnowmanManager():void{ clips = new Array(); active = new Array(); _pauseState = false; horizontalMargin = 80; verticalMargin = 80; super(); } public function init(_arg1:Number):void{ var _local2:int; _local2 = 0; while (_local2 < _arg1) { clips[_local2] = new Snowman(); addChild(clips[_local2]); clips[_local2]._index = _local2; _local2++; }; } private function getValidLoc(_arg1:Number):Point{ var _local2:int; var _local3:int; var _local4:Boolean; var _local5:Point; var _local6:Number; var _local7:int; var _local8:Snowman; _local3 = active.length; _local4 = false; _local5 = new Point(0, 0); _local7 = 0; while (((!(_local4)) && ((_local7 < 100)))) { _local4 = true; _local5 = new Point(0, 0); _local5.x = ((Math.random() * (640 - (horizontalMargin * 2))) + horizontalMargin); _local5.y = ((Math.random() * (480 - (verticalMargin * 2))) + verticalMargin); _local2 = 0; while (_local2 < _local3) { _local8 = active[_local2]; _local6 = smallzMath.getDistance(_local8.x, _local8.y, _local5.x, _local5.y); if (_local6 <= _arg1){ _local4 = false; break; }; _local2++; }; _local7++; }; return (_local5); } public function inactiveClip():int{ var _local1:int; var _local2:int; var _local3:int; _local2 = -1; _local3 = clips.length; _local1 = 0; while (_local1 < _local3) { if (clips[_local1]._spawnState){ _local2 = _local1; break; }; _local1++; }; return (_local2); } public function unhighlightAll():void{ var index:int; var count:int; count = active.length; index = 0; while (index < count) { var _local2 = active[index]; with (_local2) { unhighlight(); }; index = (index + 1); }; } public function spawn(_arg1:int, _arg2:Number):int{ var clipIndex:int; var screenLoc:Point; var colorIndex = _arg1; var scaleFactor = _arg2; clipIndex = inactiveClip(); if (clipIndex >= 0){ var _local4 = clips[clipIndex]; with (_local4) { activate(); _scale = scaleFactor; scaleX = _scale; scaleY = _scale; screenLoc = getValidLoc(height); x = screenLoc.x; y = screenLoc.y; _tagged = false; unhighlight(); _type = colorIndex; setFrame(_type); active.push(clips[clipIndex]); }; }; return (clipIndex); } public function deactivateAll():void{ var _local1:int; var _local2:int; _local2 = clips.length; _local1 = 0; while (_local1 < _local2) { clips[_local1].deactivate(); clips[_local1]._spawnState = true; _local1++; }; active = new Array(); } public function multiSpawn(_arg1:int, _arg2:int, _arg3:Number):void{ var _local4:int; var _local5:int; _local5 = 0; while (_local5 < _arg2) { _local4 = 0; while (_local4 < _arg1) { spawn(_local5, _arg3); _local4++; }; _local5++; }; } public function update(_arg1:Number):void{ var index:int; var count:int; var elapsedTime = _arg1; count = active.length; _pauseState = false; index = 0; while (index < count) { var _local3 = active[index]; with (_local3) { if (_state == "Explode"){ _pauseState = true; }; if (_state == "Inactive"){ _spawnState = true; active.splice(index, 1); index--; count--; } else { update(elapsedTime); }; }; index = (index + 1); }; } } }//package
Section 55
//SoundManager (SoundManager) package { import flash.media.*; public class SoundManager { public static var _sounds:Array = new Array(); public static var _mute:Boolean = false; public function SoundManager():void{ } public static function loopSound(_arg1:String):void{ var _local2:int; var _local3:int; _local3 = _sounds.length; if (!_mute){ _local2 = 0; while (_local2 < _local3) { if (_sounds[_local2]._identifier == _arg1){ _sounds[_local2]._channel = _sounds[_local2]._sound.play(0, 999, _sounds[_local2]._transform); break; }; _local2++; }; }; } public static function restartSound(_arg1:String, _arg2:int=0):void{ var _local3:int; var _local4:int; _local4 = _sounds.length; _local3 = 0; while (_local3 < _local4) { if (_sounds[_local3]._identifier == _arg1){ _sounds[_local3]._channel = _sounds[_local3]._sound.play(_sounds[_local3]._position, _arg2); break; }; _local3++; }; } public static function stopAllSounds():void{ var _local1:int; var _local2:int; _local2 = _sounds.length; _local1 = 0; while (_local1 < _local2) { _local1++; }; } public static function playSound(_arg1:String):void{ var _local2:int; var _local3:int; _local3 = _sounds.length; if (!_mute){ _local2 = 0; while (_local2 < _local3) { if (_sounds[_local2]._identifier == _arg1){ _sounds[_local2]._channel = _sounds[_local2]._sound.play(0, 0, _sounds[_local2]._transform); break; }; _local2++; }; }; } public static function stopSound(_arg1:String):void{ var _local2:int; var _local3:int; _local3 = _sounds.length; _local2 = 0; while (_local2 < _local3) { if (_sounds[_local2]._identifier == _arg1){ _sounds[_local2]._position = _sounds[_local2]._channel.position; _sounds[_local2]._channel.stop(); break; }; _local2++; }; } public static function addSound(_arg1:String, _arg2:Sound):void{ var _local3:SoundRecord; var _local4:SoundChannel; var _local5:SoundTransform; _local5 = new SoundTransform(); _local5.volume = 1; _local3 = new SoundRecord(_arg1, _arg2, _local4, _local5); _sounds.push(_local3); } } }//package
Section 56
//SoundRecord (SoundRecord) package { import flash.media.*; public class SoundRecord { public var _channel:SoundChannel; public var _position:Number; public var _transform:SoundTransform; public var _identifier:String; public var _sound:Sound; public function SoundRecord(_arg1:String, _arg2:Sound, _arg3:SoundChannel, _arg4:SoundTransform):void{ _identifier = _arg1; _sound = _arg2; _channel = _arg3; _transform = _arg4; _position = 0; } } }//package
Section 57
//SoundtrackMusic (SoundtrackMusic) package { import flash.media.*; public dynamic class SoundtrackMusic extends Sound { } }//package
Section 58
//Starfield (Starfield) package { import flash.display.*; public dynamic class Starfield extends MovieClip { } }//package
Section 59
//SubmitScoreScreen (SubmitScoreScreen) package { import flash.display.*; import flash.events.*; public class SubmitScoreScreen extends MovieClip { public var _state:String; public var nonoba_box:MovieClip; public var smallz_box:MovieClip; public function SubmitScoreScreen():void{ x = 0; y = 0; _state = "Inactive"; visible = false; } public function activate():void{ _state = "Active"; visible = true; if (GameManager.isNonoba){ nonoba_box.visible = true; smallz_box.visible = false; nonoba_box.x = 190; nonoba_box.y = 180; nonoba_box.score.text = ("Final Score " + String(GameManager.playerScore)); } else { nonoba_box.visible = false; smallz_box.visible = true; smallz_box.x = 190; smallz_box.y = 180; smallz_box.score.text = ("Final Score " + String(GameManager.playerScore)); }; } public function check_rollovers():void{ if (GameManager.isNonoba){ if (nonoba_box.Continue.hitTestPoint(mouseX, mouseY)){ nonoba_box.Continue.scaleX = 1.25; nonoba_box.Continue.scaleY = 1.25; } else { nonoba_box.Continue.scaleX = 1; nonoba_box.Continue.scaleY = 1; }; } else { if (smallz_box.Submit.hitTestPoint(mouseX, mouseY)){ smallz_box.Submit.scaleX = 1.25; smallz_box.Submit.scaleY = 1.25; } else { smallz_box.Submit.scaleX = 1; smallz_box.Submit.scaleY = 1; }; if (smallz_box.Cancel.hitTestPoint(mouseX, mouseY)){ smallz_box.Cancel.scaleX = 1.25; smallz_box.Cancel.scaleY = 1.25; } else { smallz_box.Cancel.scaleX = 1; smallz_box.Cancel.scaleY = 1; }; }; } public function menu_mouseUp(_arg1:MouseEvent):void{ if (GameManager.isNonoba){ if (nonoba_box.Continue.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "SaveHighScore"; }; } else { if (smallz_box.Cancel.hitTestPoint(_arg1.stageX, _arg1.stageY)){ deactivate(); GameManager.gameState = "MainMenu"; }; if (((smallz_box.Submit.hitTestPoint(_arg1.stageX, _arg1.stageY)) && (smallz_box.Submit.visible))){ deactivate(); GameManager._userName = smallz_box.user_name.text; GameManager.gameState = "SaveHighScore"; }; }; } public function deactivate():void{ _state = "Inactive"; visible = false; } public function update():void{ switch (_state){ case "Active": break; }; } } }//package
Section 60
//TinkleSFX (TinkleSFX) package { import flash.media.*; public dynamic class TinkleSFX extends Sound { } }//package

Library Items

Symbol 1 Font {MyArial}Used by:31 33 34 36 37 38 40 42 43 45 47 49 51 53 55 58 62 63 66 67 68 69 71 74 76 88 89 91 93 97
Symbol 2 FontUsed by:3 4 5 56 96
Symbol 3 EditableTextUses:2Used by:6
Symbol 4 EditableTextUses:2Used by:6
Symbol 5 EditableTextUses:2Used by:6
Symbol 6 MovieClip {HighScoreListingSymbol}Uses:3 4 5Used by:41
Symbol 7 GraphicUsed by:10
Symbol 8 GraphicUsed by:9
Symbol 9 MovieClipUses:8Used by:10
Symbol 10 MovieClip {snowman_match_fla.LoadBar_11}Uses:7 9Used by:11
Symbol 11 MovieClip {LoadBarSymbol}Uses:10Used by:28
Symbol 12 GraphicUsed by:13 28
Symbol 13 MovieClipUses:12Used by:Timeline
Symbol 14 GraphicUsed by:15
Symbol 15 MovieClipUses:14Used by:20
Symbol 16 GraphicUsed by:17
Symbol 17 MovieClipUses:16Used by:19
Symbol 18 GraphicUsed by:19
Symbol 19 MovieClipUses:17 18Used by:20
Symbol 20 MovieClip {snowman_match_fla.earth2_4}Uses:15 19Used by:27
Symbol 21 FontUsed by:22
Symbol 22 TextUses:21Used by:23
Symbol 23 MovieClipUses:22Used by:24
Symbol 24 MovieClipUses:23Used by:27
Symbol 25 FontUsed by:26
Symbol 26 TextUses:25Used by:27
Symbol 27 MovieClip {snowman_match_fla.smallz_earth_3}Uses:20 24 26Used by:28 57
Symbol 28 MovieClip {snowman_match_fla.PreloaderScreen_2}Uses:12 27 11Used by:Timeline
Symbol 29 FontUsed by:30 79
Symbol 30 EditableTextUses:29Used by:120
Symbol 31 EditableTextUses:1Used by:32
Symbol 32 MovieClipUses:31Used by:35 41 44 59
Symbol 33 EditableTextUses:1Used by:35
Symbol 34 EditableTextUses:1Used by:35
Symbol 35 MovieClip {CreditsScreen}Uses:32 33 34Used by:120
Symbol 36 EditableTextUses:1Used by:39
Symbol 37 EditableTextUses:1Used by:39
Symbol 38 EditableTextUses:1Used by:39
Symbol 39 MovieClip {GameUIScreen}Uses:36 37 38Used by:120
Symbol 40 EditableTextUses:1Used by:41
Symbol 41 MovieClip {HighScoresScreen}Uses:6 32 40Used by:120
Symbol 42 EditableTextUses:1Used by:44
Symbol 43 EditableTextUses:1Used by:44
Symbol 44 MovieClip {InstructionsScreen}Uses:42 32 43Used by:120
Symbol 45 EditableTextUses:1Used by:46
Symbol 46 MovieClipUses:45Used by:57
Symbol 47 EditableTextUses:1Used by:48
Symbol 48 MovieClipUses:47Used by:57
Symbol 49 EditableTextUses:1Used by:50
Symbol 50 MovieClipUses:49Used by:57
Symbol 51 EditableTextUses:1Used by:52
Symbol 52 MovieClipUses:51Used by:57
Symbol 53 EditableTextUses:1Used by:54
Symbol 54 MovieClipUses:53Used by:57
Symbol 55 EditableTextUses:1Used by:57
Symbol 56 EditableTextUses:2Used by:57
Symbol 57 MovieClip {MainMenuScreen}Uses:27 46 48 50 52 54 55 56Used by:120
Symbol 58 EditableTextUses:1Used by:59
Symbol 59 MovieClip {PauseScreen}Uses:58 32Used by:120
Symbol 60 GraphicUsed by:61
Symbol 61 MovieClipUses:60Used by:65 73 92
Symbol 62 EditableTextUses:1Used by:65
Symbol 63 EditableTextUses:1Used by:64
Symbol 64 MovieClip {snowman_match_fla.submitcancelButton_30}Uses:63Used by:65
Symbol 65 MovieClip {snowman_match_fla.NonobaSubmitBox_28}Uses:61 62 64Used by:75
Symbol 66 EditableTextUses:1Used by:73
Symbol 67 EditableTextUses:1Used by:73
Symbol 68 EditableTextUses:1Used by:73
Symbol 69 EditableTextUses:1Used by:70
Symbol 70 MovieClip {snowman_match_fla.CancelButton_32}Uses:69Used by:73
Symbol 71 EditableTextUses:1Used by:72
Symbol 72 MovieClip {snowman_match_fla.SubmitButton_33}Uses:71Used by:73
Symbol 73 MovieClip {snowman_match_fla.SmallzSubmitBox_31}Uses:61 66 67 68 70 72Used by:75
Symbol 74 EditableTextUses:1Used by:75
Symbol 75 MovieClip {SubmitScoreScreen}Uses:65 73 74Used by:120
Symbol 76 EditableTextUses:1Used by:77
Symbol 77 MovieClip {snowman_match_fla.PointText_35}Uses:76Used by:78
Symbol 78 MovieClip {ScorePopUp}Uses:77Used by:120
Symbol 79 EditableTextUses:29Used by:84
Symbol 80 Sound {SoundtrackMusic}Used by:84
Symbol 81 Sound {BloopSFX}Used by:84
Symbol 82 Sound {TinkleSFX}Used by:84
Symbol 83 Sound {LevelChangeSFX}Used by:84
Symbol 84 MovieClip {snowman_match_fla.audio_clips_36}Uses:79 80 81 82 83Used by:120
Symbol 85 GraphicUsed by:86
Symbol 86 MovieClipUses:85Used by:90
Symbol 87 GraphicUsed by:90
Symbol 88 EditableTextUses:1Used by:90
Symbol 89 EditableTextUses:1Used by:90
Symbol 90 MovieClip {PopUp}Uses:86 87 88 89Used by:120
Symbol 91 EditableTextUses:1Used by:92
Symbol 92 MovieClip {Message}Uses:61 91Used by:120
Symbol 93 EditableTextUses:1Used by:94
Symbol 94 MovieClip {NonobaDebugBox}Uses:93Used by:120
Symbol 95 GraphicUsed by:98
Symbol 96 EditableTextUses:2Used by:98
Symbol 97 EditableTextUses:1Used by:98
Symbol 98 MovieClip {AchievementBox}Uses:95 96 97Used by:120
Symbol 99 BitmapUsed by:100
Symbol 100 GraphicUses:99Used by:101
Symbol 101 MovieClip {Background}Uses:100Used by:120
Symbol 102 GraphicUsed by:103
Symbol 103 MovieClip {Starfield}Uses:102Used by:120
Symbol 104 GraphicUsed by:109
Symbol 105 BitmapUsed by:106
Symbol 106 GraphicUses:105Used by:109
Symbol 107 BitmapUsed by:108
Symbol 108 GraphicUses:107Used by:109
Symbol 109 MovieClip {MuteButton}Uses:104 106 108Used by:120
Symbol 110 GraphicUsed by:111
Symbol 111 MovieClip {Snowman_Red}Uses:110Used by:120
Symbol 112 GraphicUsed by:113
Symbol 113 MovieClip {Snowman_Blue}Uses:112Used by:120
Symbol 114 GraphicUsed by:115
Symbol 115 MovieClip {Snowman_Yellow}Uses:114Used by:120
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClip {Snowman_Purple}Uses:116Used by:120
Symbol 118 GraphicUsed by:119
Symbol 119 MovieClip {Snowman_Green}Uses:118Used by:120
Symbol 120 MovieClip {snowman_match_fla.content_holder_13}Uses:30 35 39 41 44 57 59 75 78 84 90 92 94 98 101 103 109 111 113 115 117 119Used by:Timeline

Instance Names

"load_screen"Frame 1Symbol 28 MovieClip {snowman_match_fla.PreloaderScreen_2}
"Rank"Symbol 6 MovieClip {HighScoreListingSymbol} Frame 1Symbol 3 EditableText
"Score"Symbol 6 MovieClip {HighScoreListingSymbol} Frame 1Symbol 4 EditableText
"User"Symbol 6 MovieClip {HighScoreListingSymbol} Frame 1Symbol 5 EditableText
"Fill"Symbol 10 MovieClip {snowman_match_fla.LoadBar_11} Frame 1Symbol 9 MovieClip
"load_bar"Symbol 11 MovieClip {LoadBarSymbol} Frame 1Symbol 10 MovieClip {snowman_match_fla.LoadBar_11}
"earth"Symbol 20 MovieClip {snowman_match_fla.earth2_4} Frame 1Symbol 15 MovieClip
"earth"Symbol 27 MovieClip {snowman_match_fla.smallz_earth_3} Frame 1Symbol 20 MovieClip {snowman_match_fla.earth2_4}
"loader"Symbol 28 MovieClip {snowman_match_fla.PreloaderScreen_2} Frame 1Symbol 11 MovieClip {LoadBarSymbol}
"Continue"Symbol 35 MovieClip {CreditsScreen} Frame 1Symbol 32 MovieClip
"level"Symbol 39 MovieClip {GameUIScreen} Frame 1Symbol 36 EditableText
"time_remaining"Symbol 39 MovieClip {GameUIScreen} Frame 1Symbol 37 EditableText
"score"Symbol 39 MovieClip {GameUIScreen} Frame 1Symbol 38 EditableText
"score_1"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_2"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_3"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_4"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_5"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_6"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_7"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_8"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_9"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"score_10"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 6 MovieClip {HighScoreListingSymbol}
"Continue"Symbol 41 MovieClip {HighScoresScreen} Frame 1Symbol 32 MovieClip
"Continue"Symbol 44 MovieClip {InstructionsScreen} Frame 1Symbol 32 MovieClip
"Smallzworld"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 27 MovieClip {snowman_match_fla.smallz_earth_3}
"PlayGame"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 46 MovieClip
"Instructions"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 48 MovieClip
"Credits"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 50 MovieClip
"HighScores"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 52 MovieClip
"LeaderBoards"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 54 MovieClip
"game_title"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 55 EditableText
"nonoba_text"Symbol 57 MovieClip {MainMenuScreen} Frame 1Symbol 56 EditableText
"Continue"Symbol 59 MovieClip {PauseScreen} Frame 1Symbol 32 MovieClip
"message_text"Symbol 64 MovieClip {snowman_match_fla.submitcancelButton_30} Frame 1Symbol 63 EditableText
"score"Symbol 65 MovieClip {snowman_match_fla.NonobaSubmitBox_28} Frame 1Symbol 62 EditableText
"Continue"Symbol 65 MovieClip {snowman_match_fla.NonobaSubmitBox_28} Frame 1Symbol 64 MovieClip {snowman_match_fla.submitcancelButton_30}
"message_text"Symbol 70 MovieClip {snowman_match_fla.CancelButton_32} Frame 1Symbol 69 EditableText
"message_text"Symbol 72 MovieClip {snowman_match_fla.SubmitButton_33} Frame 1Symbol 71 EditableText
"user_name"Symbol 73 MovieClip {snowman_match_fla.SmallzSubmitBox_31} Frame 1Symbol 66 EditableText
"message_text"Symbol 73 MovieClip {snowman_match_fla.SmallzSubmitBox_31} Frame 1Symbol 67 EditableText
"score"Symbol 73 MovieClip {snowman_match_fla.SmallzSubmitBox_31} Frame 1Symbol 68 EditableText
"Cancel"Symbol 73 MovieClip {snowman_match_fla.SmallzSubmitBox_31} Frame 1Symbol 70 MovieClip {snowman_match_fla.CancelButton_32}
"Submit"Symbol 73 MovieClip {snowman_match_fla.SmallzSubmitBox_31} Frame 1Symbol 72 MovieClip {snowman_match_fla.SubmitButton_33}
"nonoba_box"Symbol 75 MovieClip {SubmitScoreScreen} Frame 1Symbol 65 MovieClip {snowman_match_fla.NonobaSubmitBox_28}
"smallz_box"Symbol 75 MovieClip {SubmitScoreScreen} Frame 1Symbol 73 MovieClip {snowman_match_fla.SmallzSubmitBox_31}
"PointText"Symbol 77 MovieClip {snowman_match_fla.PointText_35} Frame 1Symbol 76 EditableText
"PointText"Symbol 78 MovieClip {ScorePopUp} Frame 1Symbol 77 MovieClip {snowman_match_fla.PointText_35}
"title_text"Symbol 90 MovieClip {PopUp} Frame 1Symbol 88 EditableText
"box_text"Symbol 90 MovieClip {PopUp} Frame 1Symbol 89 EditableText
"message_text"Symbol 92 MovieClip {Message} Frame 1Symbol 91 EditableText
"log"Symbol 94 MovieClip {NonobaDebugBox} Frame 1Symbol 93 EditableText
"achievement_text"Symbol 98 MovieClip {AchievementBox} Frame 1Symbol 96 EditableText
"user_name"Symbol 98 MovieClip {AchievementBox} Frame 1Symbol 97 EditableText

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata not present, AS3.




http://swfchan.com/14/67475/info.shtml
Created: 11/4 -2019 12:51:08 Last modified: 11/4 -2019 12:51:08 Server time: 27/06 -2024 17:42:05