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

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

Pyramid Solitaire - Ancient Egypt.swf

This is the info page for
Flash #131242

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


Text
More
Cards

1.
2.
3.
4.
5.
6.
7.
8.
9.
10.

Play More Games
at Solitaire Paradise

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Back

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

My High Score

Online Leaders

Menu

Undo

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

Time Bonus:

Score:

Card Run:

Round:

<p align="left"><font face="Vinque" size="19" color="#ffffff" letterSpacing="1.000000" kerning="1">0</font></p>

<p align="left"><font face="Augusta" size="24" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

<p align="left"><font face="Vinque" size="19" color="#ffffff" letterSpacing="1.000000" kerning="1">0</font></p>

<p align="left"><font face="Vinque" size="19" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

0

Take Points

<p align="center"><font face="Possum Saltare NF" size="20" color="#ffffff" letterSpacing="1.000000" kerning="1">help</font></p><p align="center"></p><p align="center"></p><p align="center"></p><p align="center"></p>

Resume

Instructions

Exit

Your goal is to clear the pyramid of
cards by creating combinations of 2
cards that add up to 13.
Aces count as 1, Jacks as 11 and Queens
as 12. Kings count as 13 and can be
removed on their own. All other cards
are at their face value.
Temporarily place cards in the Temp
Card Store to increase your options.

Instructions

Main Menu

Temp
Card
Store

Play Next Round

<p align="left"><font face="Vinque" size="24" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

<p align="left"><font face="Vinque" size="24" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

<p align="left"><font face="Vinque" size="24" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

<p align="left"><font face="Vinque" size="24" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

Time Bonus:

Deck Card Bonus:

Round Number Bonus:

Your Score:

<p align="left"><font face="Vinque" size="24" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

All Cards Cleared:

© Glowing Eye Games 2008

Play

High Scores

Credits

Go to Glowing Eye
Games Site

Director, Designer and Producer:
Mark Klocek
Coding:               _
Art:                          _
Special Thanks:
Janine Sinclair, Clare Flanagan, Chris
Barrett, Katie Bennett and David Pringle.

www.vectory.mybin.eu

Credits

Ok

Congratulations!

You have a High Score.

Type Your Name:

<p align="center"><font face="Possum Saltare NF" size="21" color="#b50000" letterSpacing="0.000000" kerning="1">Player</font></p>

<p align="center"><font face="Vinque" size="30" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

<p align="center"><font face="Vinque" size="35" color="#ffffff" letterSpacing="0.000000" kerning="1">0</font></p>

Your Score:

Your goal is to clear the pyramid of
cards by combining pairs of cards that
add up to 13.
Aces count as 1, Jacks as 11 and Queens
as 12. Kings count as 13 and can be
removed on their own. All other cards
are at their face value.
Temporarily place a
single card in the Temp Card Store to
increase your pairing options.

Instructions

Next
Card

ActionScript [AS3]

Section 1
//TweenLite (gs.TweenLite) package gs { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.geom.*; public class TweenLite { public var delay:Number; protected var _hasUpdate:Boolean; protected var _subTweens:Array; protected var _initted:Boolean; public var startTime:int; public var target:Object; public var duration:Number; protected var _hst:Boolean; protected var _isDisplayObject:Boolean; protected var _active:Boolean; public var tweens:Array; public var vars:Object; public var initTime:int; protected var _timeScale:Number; private static var _timer:Timer = new Timer(2000); private static var _classInitted:Boolean; public static var defaultEase:Function = TweenLite.easeOut; public static var version:Number = 8.13; protected static var _all:Dictionary = new Dictionary(); private static var _sprite:Sprite = new Sprite(); protected static var _curTime:uint; public static var overwriteManager:Object; public static var killDelayedCallsTo:Function = TweenLite.killTweensOf; private static var _listening:Boolean; public function TweenLite(_arg1:Object, _arg2:Number, _arg3:Object){ var _local5:*; super(); if (_arg1 == null){ return; }; if (!_classInitted){ _curTime = getTimer(); _sprite.addEventListener(Event.ENTER_FRAME, executeAll); if (overwriteManager == null){ overwriteManager = {mode:1, enabled:false}; }; _classInitted = true; }; this.vars = _arg3; this.duration = ((_arg2) || (0.001)); this.delay = ((_arg3.delay) || (0)); _timeScale = ((_arg3.timeScale) || (1)); _active = (((_arg2 == 0)) && ((this.delay == 0))); this.target = _arg1; _isDisplayObject = (_arg1 is DisplayObject); if (!(this.vars.ease is Function)){ this.vars.ease = defaultEase; }; if (this.vars.easeParams != null){ this.vars.proxiedEase = this.vars.ease; this.vars.ease = easeProxy; }; if (!isNaN(Number(this.vars.autoAlpha))){ this.vars.alpha = Number(this.vars.autoAlpha); this.vars.visible = (this.vars.alpha > 0); }; this.tweens = []; _subTweens = []; _hst = (_initted = false); this.initTime = _curTime; this.startTime = (this.initTime + (this.delay * 1000)); var _local4:int = ((((_arg3.overwrite == undefined)) || (((!(overwriteManager.enabled)) && ((_arg3.overwrite > 1)))))) ? overwriteManager.mode : int(_arg3.overwrite); if ((((_all[_arg1] == undefined)) || (((!((_arg1 == null))) && ((_local4 == 1)))))){ delete _all[_arg1]; _all[_arg1] = new Dictionary(true); } else { if ((((_local4 > 1)) && ((this.delay == 0)))){ overwriteManager.manageOverwrites(this, _all[_arg1]); }; }; _all[_arg1][this] = this; if ((((((this.vars.runBackwards == true)) && (!((this.vars.renderOnStart == true))))) || (_active))){ initTweenVals(); this.startTime = _curTime; if (_active){ render((this.startTime + 1)); } else { render(this.startTime); }; _local5 = this.vars.visible; if (this.vars.isTV == true){ _local5 = this.vars.exposedProps.visible; }; if (((((!((_local5 == null))) && ((this.vars.runBackwards == true)))) && (_isDisplayObject))){ this.target.visible = Boolean(_local5); }; }; if (((!(_listening)) && (!(_active)))){ _timer.addEventListener("timer", killGarbage); _timer.start(); _listening = true; }; } protected function addSubTween(_arg1:String, _arg2:Function, _arg3:Object, _arg4:Object, _arg5:Object=null):void{ var _local7:String; var _local6:Object = {name:_arg1, proxy:_arg2, target:_arg3, info:_arg5}; _subTweens[_subTweens.length] = _local6; for (_local7 in _arg4) { if (typeof(_arg4[_local7]) == "number"){ this.tweens[this.tweens.length] = {o:_arg3, p:_local7, s:_arg3[_local7], c:(_arg4[_local7] - _arg3[_local7]), sub:_local6, name:_arg1}; } else { this.tweens[this.tweens.length] = {o:_arg3, p:_local7, s:_arg3[_local7], c:Number(_arg4[_local7]), sub:_local6, name:_arg1}; }; }; _hst = true; } public function initTweenVals(_arg1:Boolean=false, _arg2:String=""):void{ var _local3:String; var _local4:int; var _local6:Array; var _local7:ColorTransform; var _local8:ColorTransform; var _local9:Object; var _local5:Object = this.vars; if (_local5.isTV == true){ _local5 = _local5.exposedProps; }; if (((!(_arg1)) && (overwriteManager.enabled))){ overwriteManager.manageOverwrites(this, _all[this.target]); }; if ((this.target is Array)){ _local6 = ((this.vars.endArray) || ([])); _local4 = 0; while (_local4 < _local6.length) { if (((!((this.target[_local4] == _local6[_local4]))) && (!((this.target[_local4] == undefined))))){ this.tweens[this.tweens.length] = {o:this.target, p:_local4.toString(), s:this.target[_local4], c:(_local6[_local4] - this.target[_local4]), name:_local4.toString()}; }; _local4++; }; } else { if (((((!((typeof(_local5.tint) == "undefined"))) || ((this.vars.removeTint == true)))) && (_isDisplayObject))){ _local7 = this.target.transform.colorTransform; _local8 = new ColorTransform(); if (_local5.alpha != undefined){ _local8.alphaMultiplier = _local5.alpha; delete _local5.alpha; } else { _local8.alphaMultiplier = this.target.alpha; }; if (((!((this.vars.removeTint == true))) && (((((!((_local5.tint == null))) && (!((_local5.tint == ""))))) || ((_local5.tint == 0)))))){ _local8.color = _local5.tint; }; addSubTween("tint", tintProxy, {progress:0}, {progress:1}, {target:this.target, color:_local7, endColor:_local8}); }; if (((!((_local5.frame == null))) && (_isDisplayObject))){ addSubTween("frame", frameProxy, {frame:this.target.currentFrame}, {frame:_local5.frame}, {target:this.target}); }; if (((!(isNaN(this.vars.volume))) && (this.target.hasOwnProperty("soundTransform")))){ addSubTween("volume", volumeProxy, this.target.soundTransform, {volume:this.vars.volume}, {target:this.target}); }; for (_local3 in _local5) { if ((((((((((((((((((((((((((((((((((((((_local3 == "ease")) || ((_local3 == "delay")))) || ((_local3 == "overwrite")))) || ((_local3 == "onComplete")))) || ((_local3 == "onCompleteParams")))) || ((_local3 == "runBackwards")))) || ((_local3 == "visible")))) || ((_local3 == "autoOverwrite")))) || ((_local3 == "persist")))) || ((_local3 == "onUpdate")))) || ((_local3 == "onUpdateParams")))) || ((_local3 == "autoAlpha")))) || ((_local3 == "timeScale")))) || ((_local3 == "onStart")))) || ((_local3 == "onStartParams")))) || ((_local3 == "renderOnStart")))) || ((_local3 == "proxiedEase")))) || ((_local3 == "easeParams")))) || (((_arg1) && (!((_arg2.indexOf(((" " + _local3) + " ")) == -1))))))){ } else { if (((!(((_isDisplayObject) && ((((((_local3 == "tint")) || ((_local3 == "removeTint")))) || ((_local3 == "frame"))))))) && (!((((_local3 == "volume")) && (this.target.hasOwnProperty("soundTransform"))))))){ if (typeof(_local5[_local3]) == "number"){ this.tweens[this.tweens.length] = {o:this.target, p:_local3, s:this.target[_local3], c:(_local5[_local3] - this.target[_local3]), name:_local3}; } else { this.tweens[this.tweens.length] = {o:this.target, p:_local3, s:this.target[_local3], c:Number(_local5[_local3]), name:_local3}; }; }; }; }; }; if (this.vars.runBackwards == true){ _local4 = (this.tweens.length - 1); while (_local4 > -1) { _local9 = this.tweens[_local4]; this.tweens[_local4].s = (_local9.s + _local9.c); _local9.c = (_local9.c * -1); _local4--; }; }; if ((((_local5.visible == true)) && (_isDisplayObject))){ this.target.visible = true; }; if (this.vars.onUpdate != null){ _hasUpdate = true; }; _initted = true; } public function get active():Boolean{ if (_active){ return (true); }; if (((_curTime - this.initTime) / 1000) > this.delay){ _active = true; if (!_initted){ initTweenVals(); } else { if (((!((this.vars.visible == undefined))) && (_isDisplayObject))){ this.target.visible = true; }; }; if (this.vars.onStart != null){ this.vars.onStart.apply(null, this.vars.onStartParams); }; if (this.duration == 0.001){ this.startTime = (this.startTime - 1); }; return (true); //unresolved jump }; return (false); } public function render(_arg1:uint):void{ var _local3:Number; var _local4:Object; var _local5:int; var _local2:Number = ((_arg1 - this.startTime) / 1000); if (_local2 >= this.duration){ _local2 = this.duration; _local3 = 1; } else { _local3 = this.vars.ease(_local2, 0, 1, this.duration); }; _local5 = (this.tweens.length - 1); while (_local5 > -1) { _local4 = this.tweens[_local5]; _local4.o[_local4.p] = (_local4.s + (_local3 * _local4.c)); _local5--; }; if (_hst){ _local5 = (_subTweens.length - 1); while (_local5 > -1) { _subTweens[_local5].proxy(_subTweens[_local5]); _local5--; }; }; if (_hasUpdate){ this.vars.onUpdate.apply(null, this.vars.onUpdateParams); }; if (_local2 == this.duration){ complete(true); }; } protected function easeProxy(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ return (this.vars.proxiedEase.apply(null, arguments.concat(this.vars.easeParams))); } public function killVars(_arg1:Object):void{ if (overwriteManager.enabled){ overwriteManager.killVars(_arg1, this.vars, this.tweens, _subTweens, []); }; } public function complete(_arg1:Boolean=false):void{ if (!_arg1){ if (!_initted){ initTweenVals(); }; this.startTime = (_curTime - ((this.duration * 1000) / _timeScale)); render(_curTime); return; }; if (((!((this.vars.visible == undefined))) && (_isDisplayObject))){ if (((!(isNaN(this.vars.autoAlpha))) && ((this.target.alpha == 0)))){ this.target.visible = false; } else { if (this.vars.runBackwards != true){ this.target.visible = this.vars.visible; }; }; }; if (this.vars.persist != true){ removeTween(this); }; if (this.vars.onComplete != null){ this.vars.onComplete.apply(null, this.vars.onCompleteParams); }; } public static function easeOut(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ _arg1 = (_arg1 / _arg4); return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2)); } public static function frameProxy(_arg1:Object):void{ _arg1.info.target.gotoAndStop(Math.round(_arg1.target.frame)); } public static function removeTween(_arg1:TweenLite=null):void{ if (((!((_arg1 == null))) && (!((_all[_arg1.target] == undefined))))){ _all[_arg1.target][_arg1] = null; delete _all[_arg1.target][_arg1]; }; } public static function killTweensOf(_arg1:Object=null, _arg2:Boolean=false):void{ var _local3:Object; var _local4:*; if (((!((_arg1 == null))) && (!((_all[_arg1] == undefined))))){ if (_arg2){ _local3 = _all[_arg1]; for (_local4 in _local3) { _local3[_local4].complete(false); }; }; delete _all[_arg1]; }; } public static function delayedCall(_arg1:Number, _arg2:Function, _arg3:Array=null):TweenLite{ return (new TweenLite(_arg2, 0, {delay:_arg1, onComplete:_arg2, onCompleteParams:_arg3, overwrite:0})); } public static function from(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ _arg3.runBackwards = true; return (new TweenLite(_arg1, _arg2, _arg3)); } public static function executeAll(_arg1:Event=null):void{ var _local3:Dictionary; var _local4:Object; var _local5:Object; var _local2:uint = (_curTime = getTimer()); if (_listening){ _local3 = _all; for each (_local4 in _local3) { for (_local5 in _local4) { if (((!((_local4[_local5] == undefined))) && (_local4[_local5].active))){ _local4[_local5].render(_local2); }; }; }; }; } public static function volumeProxy(_arg1:Object):void{ _arg1.info.target.soundTransform = _arg1.target; } public static function killGarbage(_arg1:TimerEvent):void{ var _local3:Boolean; var _local4:Object; var _local5:Object; var _local6:Object; var _local2:uint; for (_local4 in _all) { _local3 = false; for (_local5 in _all[_local4]) { _local3 = true; break; }; if (!_local3){ delete _all[_local4]; } else { _local2++; }; }; if (_local2 == 0){ _timer.removeEventListener("timer", killGarbage); _timer.stop(); _listening = false; }; } public static function tintProxy(_arg1:Object):void{ var _local2:Number = _arg1.target.progress; var _local3:Number = (1 - _local2); var _local4:Object = _arg1.info.color; var _local5:Object = _arg1.info.endColor; _arg1.info.target.transform.colorTransform = new ColorTransform(((_local4.redMultiplier * _local3) + (_local5.redMultiplier * _local2)), ((_local4.greenMultiplier * _local3) + (_local5.greenMultiplier * _local2)), ((_local4.blueMultiplier * _local3) + (_local5.blueMultiplier * _local2)), ((_local4.alphaMultiplier * _local3) + (_local5.alphaMultiplier * _local2)), ((_local4.redOffset * _local3) + (_local5.redOffset * _local2)), ((_local4.greenOffset * _local3) + (_local5.greenOffset * _local2)), ((_local4.blueOffset * _local3) + (_local5.blueOffset * _local2)), ((_local4.alphaOffset * _local3) + (_local5.alphaOffset * _local2))); } public static function to(_arg1:Object, _arg2:Number, _arg3:Object):TweenLite{ return (new TweenLite(_arg1, _arg2, _arg3)); } } }//package gs
Section 2
//MochiAd (mochi.MochiAd) package mochi { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; public class MochiAd { public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showClickAwayAd(_arg1:Object):void{ var clip:Object; var mc:MovieClip; var chk:MovieClip; var options = _arg1; var DEFAULTS:Object = {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; var ad_timeout:Number = 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(); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = 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); }; var sendHostProgress:Boolean; mc.regContLC = function (_arg1:String):void{ mc._containerLCName = _arg1; }; chk["onEnterFrame"] = function ():void{ var _local4:Number; if (!this.parent){ delete this.onEnterFrame; return; }; var _local1:Object = this.parent._mochiad_ctr; var _local2:Number = (getTimer() - this.started); var _local3:Boolean; 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 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType == "application"){ return (_local2); }; 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 clip:Object; var mc:MovieClip; var chk:MovieClip; var options = _arg1; var DEFAULTS:Object = {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; var ad_msec:Number = 11000; var ad_timeout:Number = options.ad_timeout; delete options.ad_timeout; var fadeout_time:Number = 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(); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = 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{ if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; var _local1:Number = (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 = 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 _local4:Number; if (!this.parent){ delete this.onEnterFrame; delete this.fadeFunction; return; }; var _local1:Object = this.parent._mochiad_ctr; var _local2:Number = (getTimer() - this.started); var _local3:Boolean; 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 _local4:String; var _local5:Array; var _local6:Number; var _local7:Array; var _local3:Object = {}; 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 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); }; var idx:Number = 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 clip:Object; 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; var DEFAULTS:Object = {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.")); }; var depth:Number = options.depth; delete options.depth; var mc:MovieClip = createEmptyMovieClip(clip, "_mochiad", depth); var wh:Array = 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; } else { trace("[MochiAd] NOTE: Security Sandbox Violation errors below are normal"); }; var lv:URLVariables = 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?cacheBust=") + new Date().getTime())); req.contentType = "application/x-www-form-urlencoded"; req.method = URLRequestMethod.POST; req.data = lv; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, function (_arg1:IOErrorEvent):void{ trace("[MochiAds] Blocked URL"); }); 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 = _arg2.split("."); var _local5:Number = 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 = 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 _local6:Array; var _local3:Object = _arg2.getBounds(_arg2.root); var _local4:Number = 0; var _local5:Number = 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 = _arg2.split("."); var _local4:Number = 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 = _arg2.split("."); var _local5:Number = 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 clip:Object; var mc:MovieClip; var chk:MovieClip; var complete:Boolean; var unloaded:Boolean; var sendHostProgress:Boolean; var fn:Function; var r:MovieClip; var options = _arg1; var DEFAULTS:Object = {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{ }, bar_offset:0}; options = MochiAd._parseOptions(options, DEFAULTS); if ("c862232051e0a94e1c3609b3916ddb17".substr(0) == "dfeada81ac97cde83665f81c12da7def"){ options.ad_started(); fn = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); return; }; clip = options.clip; var ad_msec:Number = 11000; var ad_timeout:Number = options.ad_timeout; delete options.ad_timeout; var fadeout_time:Number = 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); var fn:Function = function ():void{ options.ad_finished(); }; setTimeout(fn, 100); }; var wh:Array = MochiAd._getRes(options, clip); var w:Number = wh[0]; var h:Number = 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); var bar:MovieClip = createEmptyMovieClip(chk, "_mochiad_bar", 4); if (options.no_progress_bar){ bar.visible = false; delete options.no_progress_bar; } else { bar.x = (10 + options.bar_offset); bar.y = (h - 20); }; var bar_w:Number = (w - 20); var bar_color:Number = options.color; delete options.color; var bar_background:Number = options.background; delete options.background; var bar_outline:Number = options.outline; delete options.outline; var backing_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 1); var backing:Object = backing_mc.graphics; backing.beginFill(bar_background); backing.moveTo(0, 0); backing.lineTo(bar_w, 0); backing.lineTo(bar_w, 10); backing.lineTo(0, 10); backing.lineTo(0, 0); backing.endFill(); var inside_mc:MovieClip = createEmptyMovieClip(bar, "_inside", 2); var inside:Object = inside_mc.graphics; inside.beginFill(bar_color); inside.moveTo(0, 0); inside.lineTo(bar_w, 0); inside.lineTo(bar_w, 10); inside.lineTo(0, 10); inside.lineTo(0, 0); inside.endFill(); inside_mc.scaleX = 0; var outline_mc:MovieClip = createEmptyMovieClip(bar, "_outline", 3); var outline:Object = outline_mc.graphics; outline.lineStyle(0, bar_outline, 100); outline.moveTo(0, 0); outline.lineTo(bar_w, 0); outline.lineTo(bar_w, 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 = (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; var f:Function = function (_arg1:Event):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); complete = true; if (unloaded){ MochiAd.unload(clip); }; }; if (clip.loaderInfo.bytesLoaded == clip.loaderInfo.bytesTotal){ complete = true; } else { if ((clip.root is MovieClip)){ r = (clip.root as MovieClip); if (r.framesLoaded >= r.totalFrames){ complete = true; } else { clip.loaderInfo.addEventListener(Event.COMPLETE, f); }; } else { clip.loaderInfo.addEventListener(Event.COMPLETE, f); }; }; 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 = 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 _local11:Number; if (((!(this.parent)) || (!(this.parent.parent)))){ delete this["onEnterFrame"]; return; }; var _local1:Object = this.parent.parent.root; var _local2:Object = this.parent._mochiad_ctr; var _local3:Number = (getTimer() - this.started); var _local4:Boolean; var _local5:Number = _local1.loaderInfo.bytesTotal; var _local6:Number = _local1.loaderInfo.bytesLoaded; if (complete){ _local6 = Math.max(1, _local6); _local5 = _local6; }; var _local7:Number = ((100 * _local6) / _local5); var _local8:Number = ((100 * _local3) / chk.ad_msec); var _local9:Object = this._mochiad_bar._inside; var _local10:Number = 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 mc = _arg1; var f:Function = 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 mochi
Section 3
//MochiBot (mochi.MochiBot) package mochi { import flash.display.*; import flash.net.*; import flash.system.*; public dynamic class MochiBot extends Sprite { public static function track(_arg1:Sprite, _arg2:String):MochiBot{ if (Security.sandboxType == "localWithFile"){ return (null); }; var _local3:MochiBot = new (MochiBot); _arg1.addChild(_local3); Security.allowDomain("*"); Security.allowInsecureDomain("*"); var _local4 = "http://core.mochibot.com/my/core.swf"; var _local5:URLVariables = new URLVariables(); _local5["sb"] = Security.sandboxType; _local5["v"] = Capabilities.version; _local5["swfid"] = _arg2; _local5["mv"] = "8"; _local5["fv"] = "9"; var _local6:String = _local3.root.loaderInfo.loaderURL; if (_local6.indexOf("http") == 0){ _local5["url"] = _local6; } else { _local5["url"] = "local"; }; var _local7:URLRequest = new URLRequest(_local4); _local7.contentType = "application/x-www-form-urlencoded"; _local7.method = URLRequestMethod.POST; _local7.data = _local5; var _local8:Loader = new Loader(); _local3.addChild(_local8); _local8.load(_local7); return (_local3); } } }//package mochi
Section 4
//MochiCoins (mochi.MochiCoins) package mochi { public class MochiCoins { public static const STORE_HIDE:String = "StoreHide"; public static const LOGGED_IN:String = "LoggedIn"; public static const STORE_ITEMS:String = "StoreItems"; public static const NO_USER:String = "NoUser"; public static const PROPERTIES_SIZE:String = "PropertiesSize"; public static const ITEM_NEW:String = "ItemNew"; public static const USER_INFO:String = "UserInfo"; public static const IO_ERROR:String = "IOError"; public static const ITEM_OWNED:String = "ItemOwned"; public static const PROPERTIES_SAVED:String = "PropertySaved"; public static const WIDGET_LOADED:String = "WidgetLoaded"; public static const ERROR:String = "Error"; public static const LOGGED_OUT:String = "LoggedOut"; public static const PROFILE_SHOW:String = "ProfileShow"; public static const LOGIN_HIDE:String = "LoginHide"; public static const LOGIN_SHOW:String = "LoginShow"; public static const STORE_SHOW:String = "StoreShow"; public static const PROFILE_HIDE:String = "ProfileHide"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); public static function showItem(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showItem call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showItem", {options:_arg1}, null, null); } public static function saveUserProperties(_arg1:Object):void{ MochiServices.send("coins_saveUserProperties", _arg1); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function showLoginWidget(_arg1:Object=null):void{ MochiServices.setContainer(); MochiServices.bringToTop(); MochiServices.send("coins_showLoginWidget", {options:_arg1}); } public static function getStoreItems():void{ MochiServices.send("coins_getStoreItems"); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function showStore(_arg1:Object=null):void{ MochiServices.bringToTop(); MochiServices.send("coins_showStore", {options:_arg1}, null, null); } public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function getUserInfo():void{ MochiServices.send("coins_getUserInfo"); } public static function hideLoginWidget():void{ MochiServices.send("coins_hideLoginWidget"); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function showVideo(_arg1:Object=null):void{ if (((!(_arg1)) || (!((typeof(_arg1.item) == "string"))))){ trace("ERROR: showVideo call must pass an Object with an item key"); return; }; MochiServices.bringToTop(); MochiServices.send("coins_showVideo", {options:_arg1}, null, null); } } }//package mochi
Section 5
//MochiDigits (mochi.MochiDigits) package mochi { public final class MochiDigits { private var Sibling:MochiDigits; private var Fragment:Number; private var Encoder:Number; public function MochiDigits(_arg1:Number=0, _arg2:uint=0):void{ Encoder = 0; setValue(_arg1, _arg2); } public function reencode():void{ var _local1:uint = int((2147483647 * Math.random())); Fragment = (Fragment ^ (_local1 ^ Encoder)); Encoder = _local1; } public function set value(_arg1:Number):void{ setValue(_arg1); } public function toString():String{ var _local1:String = String.fromCharCode((Fragment ^ Encoder)); if (Sibling != null){ _local1 = (_local1 + Sibling.toString()); }; return (_local1); } public function setValue(_arg1:Number=0, _arg2:uint=0):void{ var _local3:String = _arg1.toString(); var _temp1 = _arg2; _arg2 = (_arg2 + 1); Fragment = (_local3.charCodeAt(_temp1) ^ Encoder); if (_arg2 < _local3.length){ Sibling = new MochiDigits(_arg1, _arg2); } else { Sibling = null; }; reencode(); } public function get value():Number{ return (Number(this.toString())); } public function addValue(_arg1:Number):void{ value = (value + _arg1); } } }//package mochi
Section 6
//MochiEventDispatcher (mochi.MochiEventDispatcher) package mochi { public class MochiEventDispatcher { private var eventTable:Object; public function MochiEventDispatcher():void{ eventTable = {}; } public function triggerEvent(_arg1:String, _arg2:Object):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ return; }; for (_local3 in eventTable[_arg1]) { var _local6 = eventTable[_arg1]; _local6[_local3](_arg2); }; } public function removeEventListener(_arg1:String, _arg2:Function):void{ var _local3:Object; if (eventTable[_arg1] == undefined){ eventTable[_arg1] = []; return; }; for (_local3 in eventTable[_arg1]) { if (eventTable[_arg1][_local3] != _arg2){ } else { eventTable[_arg1].splice(Number(_local3), 1); }; }; } public function addEventListener(_arg1:String, _arg2:Function):void{ removeEventListener(_arg1, _arg2); eventTable[_arg1].push(_arg2); } } }//package mochi
Section 7
//MochiEvents (mochi.MochiEvents) package mochi { import flash.display.*; public class MochiEvents { public static const ALIGN_BOTTOM_LEFT:String = "ALIGN_BL"; public static const FORMAT_LONG:String = "LongForm"; public static const ALIGN_BOTTOM:String = "ALIGN_B"; public static const ACHIEVEMENT_RECEIVED:String = "AchievementReceived"; public static const FORMAT_SHORT:String = "ShortForm"; public static const ALIGN_TOP_RIGHT:String = "ALIGN_TR"; public static const ALIGN_BOTTOM_RIGHT:String = "ALIGN_BR"; public static const ALIGN_TOP:String = "ALIGN_T"; public static const ALIGN_LEFT:String = "ALIGN_L"; public static const ALIGN_RIGHT:String = "ALIGN_R"; public static const ALIGN_TOP_LEFT:String = "ALIGN_TL"; public static const ALIGN_CENTER:String = "ALIGN_C"; private static var _dispatcher:MochiEventDispatcher = new MochiEventDispatcher(); private static var gameStart:Number; private static var levelStart:Number; public static function addEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.addEventListener(_arg1, _arg2); } public static function removeEventListener(_arg1:String, _arg2:Function):void{ _dispatcher.removeEventListener(_arg1, _arg2); } public static function startSession(_arg1:String):void{ MochiServices.send("events_beginSession", {achievementID:_arg1}, null, null); } public static function triggerEvent(_arg1:String, _arg2:Object):void{ _dispatcher.triggerEvent(_arg1, _arg2); } public static function setNotifications(_arg1:MovieClip, _arg2:Object):void{ var _local4:Object; var _local3:Object = {}; for (_local4 in _arg2) { _local3[_local4] = _arg2[_local4]; }; _local3.clip = _arg1; MochiServices.send("events_setNotifications", _local3, null, null); } public static function endGame():void{ var _local1:Number = (new Date().time - gameStart); trigger("end_game", {time:_local1}); } public static function startGame():void{ gameStart = new Date().time; trigger("start_game"); } public static function trigger(_arg1:String, _arg2:Object=null):void{ if (_arg2 == null){ _arg2 = {}; } else { if (_arg2["kind"] != undefined){ trace("WARNING: optional arguements package contains key 'id', it will be overwritten"); _arg2["kind"] = _arg1; }; }; MochiServices.send("events_triggerEvent", {eventObject:_arg2}, null, null); } public static function getVersion():String{ return (MochiServices.getVersion()); } public static function startLevel():void{ levelStart = new Date().time; trigger("start_level"); } public static function endLevel():void{ var _local1:Number = (new Date().time - levelStart); trigger("end_level", {time:_local1}); } } }//package mochi
Section 8
//MochiScores (mochi.MochiScores) package mochi { import flash.display.*; import flash.text.*; public class MochiScores { private static var boardID:String; public static var onErrorHandler:Object; public static var onCloseHandler:Object; public static function showLeaderboard(_arg1:Object=null):void{ var n:Number; var options = _arg1; if (options != null){ delete options.clip; MochiServices.setContainer(); MochiServices.bringToTop(); if (options.name != null){ if ((options.name is TextField)){ if (options.name.text.length > 0){ options.name = options.name.text; }; }; }; if (options.score != null){ if ((options.score is TextField)){ if (options.score.text.length > 0){ options.score = options.score.text; }; } else { if ((options.score is MochiDigits)){ options.score = options.score.value; }; }; n = Number(options.score); if (isNaN(n)){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is 'Not a Number'")); } else { if ((((n == Number.NEGATIVE_INFINITY)) || ((n == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + options.score) + "' will be rejected, score is an infinite")); } else { if (Math.floor(n) != n){ trace((("WARNING: Submitted score '" + options.score) + "' will be truncated")); }; options.score = n; }; }; }; if (options.onDisplay != null){ options.onDisplay(); } else { if (MochiServices.clip != null){ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; }; } else { options = {}; if ((MochiServices.clip is MovieClip)){ MochiServices.clip.stop(); } else { trace("Warning: Container is not a MovieClip, cannot call default onDisplay."); }; }; if (options.onClose != null){ onCloseHandler = options.onClose; } else { onCloseHandler = function ():void{ if ((MochiServices.clip is MovieClip)){ MochiServices.clip.play(); } else { trace("Warning: Container is not a MovieClip, cannot call default onClose."); }; }; }; if (options.onError != null){ onErrorHandler = options.onError; } else { onErrorHandler = null; }; if (options.boardID == null){ if (MochiScores.boardID != null){ options.boardID = MochiScores.boardID; }; }; MochiServices.warnID(options.boardID, true); trace("[MochiScores] NOTE: Security Sandbox Violation errors below are normal"); MochiServices.send("scores_showLeaderboard", {options:options}, null, onClose); } public static function closeLeaderboard():void{ MochiServices.send("scores_closeLeaderboard"); } public static function getPlayerInfo(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_getPlayerInfo", null, _arg1, _arg2); } public static function requestList(_arg1:Object, _arg2:Object=null):void{ MochiServices.send("scores_requestList", null, _arg1, _arg2); } public static function scoresArrayToObjects(_arg1:Object):Object{ var _local3:Number; var _local4:Number; var _local5:Object; var _local6:Object; var _local7:String; var _local8:String; var _local2:Object = {}; for (_local7 in _arg1) { if (typeof(_arg1[_local7]) == "object"){ if (((!((_arg1[_local7].cols == null))) && (!((_arg1[_local7].rows == null))))){ _local2[_local7] = []; _local5 = _arg1[_local7]; _local4 = 0; while (_local4 < _local5.rows.length) { _local6 = {}; _local3 = 0; while (_local3 < _local5.cols.length) { _local6[_local5.cols[_local3]] = _local5.rows[_local4][_local3]; _local3++; }; _local2[_local7].push(_local6); _local4++; }; } else { _local2[_local7] = {}; for (_local8 in _arg1[_local7]) { _local2[_local7][_local8] = _arg1[_local7][_local8]; }; }; } else { _local2[_local7] = _arg1[_local7]; }; }; return (_local2); } public static function submit(_arg1:Number, _arg2:String, _arg3:Object=null, _arg4:Object=null):void{ _arg1 = Number(_arg1); if (isNaN(_arg1)){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is 'Not a Number'")); } else { if ((((_arg1 == Number.NEGATIVE_INFINITY)) || ((_arg1 == Number.POSITIVE_INFINITY)))){ trace((("ERROR: Submitted score '" + String(_arg1)) + "' will be rejected, score is an infinite")); } else { if (Math.floor(_arg1) != _arg1){ trace((("WARNING: Submitted score '" + String(_arg1)) + "' will be truncated")); }; _arg1 = Number(_arg1); }; }; MochiServices.send("scores_submit", {score:_arg1, name:_arg2}, _arg3, _arg4); } public static function onClose(_arg1:Object=null):void{ if (((((_arg1) && ((_arg1.error == true)))) && (onErrorHandler))){ if (_arg1.errorCode == null){ _arg1.errorCode = "IOError"; }; onErrorHandler(_arg1.errorCode); MochiServices.doClose(); return; }; onCloseHandler(); MochiServices.doClose(); } public static function setBoardID(_arg1:String):void{ MochiServices.warnID(_arg1, true); MochiScores.boardID = _arg1; MochiServices.send("scores_setBoardID", {boardID:_arg1}); } } }//package mochi
Section 9
//MochiServices (mochi.MochiServices) package mochi { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.net.*; import flash.system.*; import flash.geom.*; public class MochiServices { private static var _container:Object; private static var _connected:Boolean = false; private static var _swfVersion:String; private static var _preserved:Object; public static var netupAttempted:Boolean = false; private static var _sendChannel:LocalConnection; public static var servicesSync:MochiSync = new MochiSync(); private static var _clip:MovieClip; private static var _id:String; private static var _services:String = "services.swf"; private static var _servURL:String = "http://www.mochiads.com/static/lib/services/"; public static var widget:Boolean = false; private static var _timer:Timer; private static var _sendChannelName:String; private static var _loader:Loader; private static var _connecting:Boolean = false; private static var _mochiLocalConnection:MovieClip; private static var _listenChannelName:String = "__ms_"; public static var onError:Object; public static var netup:Boolean = true; private static var _mochiLC:String = "MochiLC.swf"; public static function isNetworkAvailable():Boolean{ return (!((Security.sandboxType == "localWithFile"))); } public static function get connected():Boolean{ return (_connected); } private static function onReceive(_arg1:Object):void{ var methodName:String; var pkg = _arg1; var cb:String = pkg.callbackID; var cblst:Object = _clip._callbacks[cb]; if (!cblst){ return; }; var method:* = cblst.callbackMethod; methodName = ""; var obj:Object = cblst.callbackObject; if (((obj) && ((typeof(method) == "string")))){ methodName = method; if (obj[method] != null){ method = obj[method]; } else { trace((("Error: Method " + method) + " does not exist.")); }; }; if (method != undefined){ try { method.apply(obj, pkg.args); } catch(error:Error) { trace(((("Error invoking callback method '" + methodName) + "': ") + error.toString())); }; } else { if (obj != null){ try { obj(pkg.args); } catch(error:Error) { trace(("Error invoking method on object: " + error.toString())); }; }; }; delete _clip._callbacks[cb]; } public static function get childClip():Object{ return (_clip); } public static function send(_arg1:String, _arg2:Object=null, _arg3:Object=null, _arg4:Object=null):void{ if (_connected){ _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); } else { if ((((_clip == null)) || (!(_connecting)))){ trace(("Error: MochiServices not connected. Please call MochiServices.connect(). Function: " + _arg1)); handleError(_arg2, _arg3, _arg4); flush(true); return; }; _clip._queue.push({methodName:_arg1, args:_arg2, callbackID:_clip._nextcallbackID}); }; if (_clip != null){ if (((!((_clip._callbacks == null))) && (!((_clip._nextcallbackID == null))))){ _clip._callbacks[_clip._nextcallbackID] = {callbackObject:_arg3, callbackMethod:_arg4}; _clip._nextcallbackID++; }; }; } private static function init(_arg1:String, _arg2:Object):void{ _id = _arg1; if (_arg2 != null){ _container = _arg2; loadCommunicator(_arg1, _container); }; } private static function clickMovie(_arg1:String, _arg2:Function):MovieClip{ var _local4:int; var _local14:Loader; var _local3:Array = [150, 21, 0, 7, 1, 0, 0, 0, 0, 98, 116, 110, 0, 7, 2, 0, 0, 0, 0, 116, 104, 105, 115, 0, 28, 150, 22, 0, 0, 99, 114, 101, 97, 116, 101, 69, 109, 112, 116, 121, 77, 111, 118, 105, 101, 67, 108, 105, 112, 0, 82, 135, 1, 0, 0, 23, 150, 13, 0, 4, 0, 0, 111, 110, 82, 101, 108, 101, 97, 115, 101, 0, 142, 8, 0, 0, 0, 0, 2, 42, 0, 114, 0, 150, 17, 0, 0, 32, 0, 7, 1, 0, 0, 0, 8, 0, 0, 115, 112, 108, 105, 116, 0, 82, 135, 1, 0, 1, 23, 150, 7, 0, 4, 1, 7, 0, 0, 0, 0, 78, 150, 8, 0, 0, 95, 98, 108, 97, 110, 107, 0, 154, 1, 0, 0, 150, 7, 0, 0, 99, 108, 105, 99, 107, 0, 150, 7, 0, 4, 1, 7, 1, 0, 0, 0, 78, 150, 27, 0, 7, 2, 0, 0, 0, 7, 0, 0, 0, 0, 0, 76, 111, 99, 97, 108, 67, 111, 110, 110, 101, 99, 116, 105, 111, 110, 0, 64, 150, 6, 0, 0, 115, 101, 110, 100, 0, 82, 79, 150, 15, 0, 4, 0, 0, 95, 97, 108, 112, 104, 97, 0, 7, 0, 0, 0, 0, 79, 150, 23, 0, 7, 0xFF, 0, 0xFF, 0, 7, 1, 0, 0, 0, 4, 0, 0, 98, 101, 103, 105, 110, 70, 105, 108, 108, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 109, 111, 118, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 100, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 100, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 25, 0, 7, 0, 0, 0, 0, 7, 0, 0, 0, 0, 7, 2, 0, 0, 0, 4, 0, 0, 108, 105, 110, 101, 84, 111, 0, 82, 23, 150, 16, 0, 7, 0, 0, 0, 0, 4, 0, 0, 101, 110, 100, 70, 105, 108, 108, 0, 82, 23]; var _local5:Array = [104, 0, 31, 64, 0, 7, 208, 0, 0, 12, 1, 0, 67, 2, 0xFF, 0xFF, 0xFF, 63, 3]; var _local6:Array = [0, 64, 0, 0, 0]; var _local7:MovieClip = new MovieClip(); var _local8:LocalConnection = new LocalConnection(); var _local9:String = ((("_click_" + Math.floor((Math.random() * 999999))) + "_") + Math.floor(new Date().time)); _local8 = new LocalConnection(); _local7.lc = _local8; _local7.click = _arg2; _local8.client = _local7; _local8.connect(_local9); var _local10:ByteArray = new ByteArray(); var _local11:ByteArray = new ByteArray(); _local11.endian = Endian.LITTLE_ENDIAN; _local11.writeShort(1); _local11.writeUTFBytes(((_arg1 + " ") + _local9)); _local11.writeByte(0); var _local12:uint = ((_local3.length + _local11.length) + 4); var _local13:uint = (_local12 + 35); _local10.endian = Endian.LITTLE_ENDIAN; _local10.writeUTFBytes("FWS"); _local10.writeByte(8); _local10.writeUnsignedInt(_local13); for each (_local4 in _local5) { _local10.writeByte(_local4); }; _local10.writeUnsignedInt(_local12); _local10.writeByte(136); _local10.writeShort(_local11.length); _local10.writeBytes(_local11); for each (_local4 in _local3) { _local10.writeByte(_local4); }; for each (_local4 in _local6) { _local10.writeByte(_local4); }; _local14 = new Loader(); _local14.loadBytes(_local10); _local7.addChild(_local14); return (_local7); } public static function stayOnTop():void{ _container.addEventListener(Event.ENTER_FRAME, MochiServices.bringToTop, false, 0, true); if (_clip != null){ _clip.visible = true; }; } public static function addLinkEvent(_arg1:String, _arg2:String, _arg3:DisplayObjectContainer, _arg4:Function=null):void{ var avm1Click:DisplayObject; var x:String; var req:URLRequest; var loader:Loader; var setURL:Function; var err:Function; var complete:Function; var url = _arg1; var burl = _arg2; var btn = _arg3; var onClick = _arg4; var vars:Object = new Object(); vars["mav"] = getVersion(); vars["swfv"] = "9"; vars["swfurl"] = btn.loaderInfo.loaderURL; vars["fv"] = Capabilities.version; vars["os"] = Capabilities.os; vars["lang"] = Capabilities.language; vars["scres"] = ((Capabilities.screenResolutionX + "x") + Capabilities.screenResolutionY); var s = "?"; var i:Number = 0; for (x in vars) { if (i != 0){ s = (s + "&"); }; i = (i + 1); s = (((s + x) + "=") + escape(vars[x])); }; req = new URLRequest("http://x.mochiads.com/linkping.swf"); loader = new Loader(); setURL = function (_arg1:String):void{ if (avm1Click){ btn.removeChild(avm1Click); }; avm1Click = clickMovie(_arg1, onClick); var _local2:Rectangle = btn.getBounds(btn); btn.addChild(avm1Click); avm1Click.x = _local2.x; avm1Click.y = _local2.y; avm1Click.scaleX = (0.01 * _local2.width); avm1Click.scaleY = (0.01 * _local2.height); }; err = function (_arg1:Object):void{ netup = false; _arg1.target.removeEventListener(_arg1.type, arguments.callee); setURL(burl); }; complete = function (_arg1:Object):void{ _arg1.target.removeEventListener(_arg1.type, arguments.callee); }; if (netup){ setURL((url + s)); } else { setURL(burl); }; if (!((netupAttempted) || (_connected))){ netupAttempted = true; loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, err); loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.load(req); }; } public static function warnID(_arg1:String, _arg2:Boolean):void{ _arg1 = _arg1.toLowerCase(); if (_arg1.length != 16){ trace((("WARNING: " + (_arg2) ? "board" : "game") + " ID is not the appropriate length")); return; } else { if (_arg1 == "1e113c7239048b3f"){ if (_arg2){ trace("WARNING: Using testing board ID"); } else { trace("WARNING: Using testing board ID as game ID"); }; return; } else { if (_arg1 == "84993a1de4031cd8"){ if (_arg2){ trace("WARNING: Using testing game ID as board ID"); } else { trace("WARNING: Using testing game ID"); }; return; }; }; }; var _local3:Number = 0; while (_local3 < _arg1.length) { switch (_arg1.charAt(_local3)){ case "0": case "1": case "2": case "3": case "4": case "5": case "6": case "7": case "8": case "9": case "a": case "b": case "c": case "d": case "e": case "f": break; default: trace(("WARNING: Board ID contains illegal characters: " + _arg1)); return; }; _local3++; }; } public static function disconnect():void{ if (((_connected) || (_connecting))){ if (_clip != null){ if (_clip.parent != null){ if ((_clip.parent is Sprite)){ Sprite(_clip.parent).removeChild(_clip); _clip = null; }; }; }; _connecting = (_connected = false); flush(true); try { _mochiLocalConnection.close(); } catch(error:Error) { }; }; if (_timer != null){ try { _timer.stop(); } catch(error:Error) { }; }; } public static function allowDomains(_arg1:String):String{ var _local2:String; if (Security.sandboxType != "application"){ Security.allowDomain("*"); Security.allowInsecureDomain("*"); }; if (_arg1.indexOf("http://") != -1){ _local2 = _arg1.split("/")[2].split(":")[0]; if (Security.sandboxType != "application"){ Security.allowDomain(_local2); Security.allowInsecureDomain(_local2); }; }; return (_local2); } public static function getVersion():String{ return ("3.2 as3"); } public static function doClose():void{ _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); } private static function flush(_arg1:Boolean):void{ var _local2:Object; var _local3:Object; if (((_clip) && (_clip._queue))){ while (_clip._queue.length > 0) { _local2 = _clip._queue.shift(); _local3 = null; if (_local2 != null){ if (_local2.callbackID != null){ _local3 = _clip._callbacks[_local2.callbackID]; }; delete _clip._callbacks[_local2.callbackID]; if (((_arg1) && (!((_local3 == null))))){ handleError(_local2.args, _local3.callbackObject, _local3.callbackMethod); }; }; }; }; } public static function get id():String{ return (_id); } private static function onEvent(_arg1:Object):void{ var _local2:String = _arg1.target; var _local3:String = _arg1.event; switch (_local2){ case "events": MochiEvents.triggerEvent(_arg1.event, _arg1.args); break; case "coins": MochiCoins.triggerEvent(_arg1.event, _arg1.args); break; case "sync": servicesSync.triggerEvent(_arg1.event, _arg1.args); break; }; } private static function urlOptions(_arg1:Object):Object{ var _local4:Array; var _local5:Number; var _local6:Array; var _local2:Object = {}; var _local3:String = _arg1.loaderInfo.parameters.mochiad_options; if (_local3){ _local4 = _local3.split("&"); _local5 = 0; while (_local5 < _local4.length) { _local6 = _local4[_local5].split("="); _local2[unescape(_local6[0])] = unescape(_local6[1]); _local5++; }; }; return (_local2); } public static function setContainer(_arg1:Object=null, _arg2:Boolean=true):void{ if (_arg1 != null){ if ((_arg1 is Sprite)){ _container = _arg1; }; }; if (_arg2){ if ((_container is Sprite)){ Sprite(_container).addChild(_clip); }; }; } private static function handleError(_arg1:Object, _arg2:Object, _arg3:Object):void{ var args = _arg1; var callbackObject = _arg2; var callbackMethod = _arg3; if (args != null){ if (args.onError != null){ args.onError.apply(null, ["NotConnected"]); }; if (((!((args.options == null))) && (!((args.options.onError == null))))){ args.options.onError.apply(null, ["NotConnected"]); }; }; if (callbackMethod != null){ args = {}; args.error = true; args.errorCode = "NotConnected"; if (((!((callbackObject == null))) && ((callbackMethod is String)))){ try { var _local5 = callbackObject; _local5[callbackMethod](args); } catch(error:Error) { }; } else { if (callbackMethod != null){ try { callbackMethod.apply(args); } catch(error:Error) { }; }; }; }; } private static function loadError(_arg1:Object):void{ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load."); MochiServices.disconnect(); MochiServices.onError("IOError"); } private static function initComChannels():void{ if (!_connected){ trace("[SERVICES_API] connected!"); _connecting = false; _connected = true; _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"handshakeDone"}); _mochiLocalConnection.send(_sendChannelName, "onReceive", {methodName:"registerGame", preserved:_preserved, id:_id, clip:_container, version:getVersion(), parentURL:_container.loaderInfo.loaderURL}); _clip.onReceive = onReceive; _clip.onEvent = onEvent; _clip.onError = function ():void{ MochiServices.onError("IOError"); }; while (_clip._queue.length > 0) { _mochiLocalConnection.send(_sendChannelName, "onReceive", _clip._queue.shift()); }; }; } private static function loadLCBridge(_arg1:Object):void{ var loader:Loader; var clip = _arg1; loader = new Loader(); var mochiLCURL:String = (_servURL + _mochiLC); var req:URLRequest = new URLRequest(mochiLCURL); var complete:Function = function (_arg1:Object):void{ _mochiLocalConnection = MovieClip(loader.content); listen(); }; loader.contentLoaderInfo.addEventListener(Event.COMPLETE, complete); loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); loader.load(req); clip.addChild(loader); } private static function listen():void{ _mochiLocalConnection.connect(_listenChannelName); _clip.handshake = function (_arg1:Object):void{ MochiServices.comChannelName = _arg1.newChannel; }; trace("Waiting for MochiAds services to connect..."); } public static function get clip():Object{ return (_container); } public static function set comChannelName(_arg1:String):void{ if (_arg1 != null){ if (_arg1.length > 3){ _sendChannelName = (_arg1 + "_fromgame"); initComChannels(); }; }; } private static function loadCommunicator(_arg1:String, _arg2:Object):MovieClip{ var _local3:String = ("_mochiservices_com_" + _arg1); if (_clip != null){ return (_clip); }; if (!MochiServices.isNetworkAvailable()){ return (null); }; if (urlOptions(_arg2).servURL){ _servURL = urlOptions(_arg2).servURL; }; var _local4:String = (_servURL + _services); if (urlOptions(_arg2).servicesURL){ _local4 = urlOptions(_arg2).servicesURL; }; _listenChannelName = (_listenChannelName + ((Math.floor(new Date().time) + "_") + Math.floor((Math.random() * 99999)))); MochiServices.allowDomains(_local4); _clip = createEmptyMovieClip(_arg2, _local3, 10336, false); loadLCBridge(_clip); _loader = new Loader(); _loader.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, loadError); var _local5:URLRequest = new URLRequest(_local4); var _local6:URLVariables = new URLVariables(); _local6.listenLC = _listenChannelName; _local6.mochiad_options = _arg2.loaderInfo.parameters.mochiad_options; _local6.api_version = getVersion(); if (widget){ _local6.widget = true; }; _local5.data = _local6; _loader.load(_local5); _clip.addChild(_loader); _clip._mochiservices_com = _loader; _sendChannel = new LocalConnection(); _clip._queue = []; _clip._nextcallbackID = 0; _clip._callbacks = {}; _timer = new Timer(10000, 1); _timer.addEventListener(TimerEvent.TIMER, connectWait); _timer.start(); return (_clip); } public static function connect(_arg1:String, _arg2:Object, _arg3:Object=null):void{ var id = _arg1; var clip = _arg2; var onError = _arg3; warnID(id, false); if ((clip is DisplayObject)){ if (((!(_connected)) && ((_clip == null)))){ trace("MochiServices Connecting..."); _connecting = true; init(id, clip); }; } else { trace("Error, MochiServices requires a Sprite, Movieclip or instance of the stage."); }; if (onError != null){ MochiServices.onError = onError; } else { if (MochiServices.onError == null){ MochiServices.onError = function (_arg1:String):void{ trace(_arg1); }; }; }; } public static function createEmptyMovieClip(_arg1:Object, _arg2:String, _arg3:Number, _arg4:Boolean=true):MovieClip{ var parent = _arg1; var name = _arg2; var depth = _arg3; var doAdd = _arg4; var mc:MovieClip = new MovieClip(); if (doAdd){ if (((false) && (depth))){ parent.addChildAt(mc, depth); } else { parent.addChild(mc); }; }; try { parent[name] = mc; } catch(e:Error) { throw (new Error("MochiServices requires a clip that is an instance of a dynamic class. If your class extends Sprite or MovieClip, you must make it dynamic.")); }; mc["_name"] = name; return (mc); } public static function bringToTop(_arg1:Event=null):void{ var e = _arg1; if (((!((MochiServices.clip == null))) && (!((MochiServices.childClip == null))))){ try { if (MochiServices.clip.numChildren > 1){ MochiServices.clip.setChildIndex(MochiServices.childClip, (MochiServices.clip.numChildren - 1)); }; } catch(errorObject:Error) { trace("Warning: Depth sort error."); _container.removeEventListener(Event.ENTER_FRAME, MochiServices.bringToTop); }; }; } public static function connectWait(_arg1:TimerEvent):void{ if (!_connected){ _clip._mochiad_ctr_failed = true; trace("MochiServices could not load. (timeout)"); MochiServices.disconnect(); MochiServices.onError("IOError"); }; } } }//package mochi
Section 10
//MochiSync (mochi.MochiSync) package mochi { import flash.utils.*; public dynamic class MochiSync extends Proxy { private var _syncContainer:Object; public static var SYNC_PROPERTY:String = "UpdateProperty"; public static var SYNC_REQUEST:String = "SyncRequest"; public function MochiSync():void{ _syncContainer = {}; } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function setProperty(_arg1, _arg2):void{ if (_syncContainer[_arg1] == _arg2){ return; }; var _local3:String = _arg1.toString(); _syncContainer[_local3] = _arg2; MochiServices.send("sync_propUpdate", {name:_local3, value:_arg2}); } override "http://www.adobe.com/2006/actionscript/flash/proxy"?? function getProperty(_arg1){ return (_syncContainer[_arg1]); } public function triggerEvent(_arg1:String, _arg2:Object):void{ switch (_arg1){ case SYNC_REQUEST: MochiServices.send("sync_syncronize", _syncContainer); break; case SYNC_PROPERTY: _syncContainer[_arg2.name] = _arg2.value; break; }; } } }//package mochi
Section 11
//mcTimeBonus_8 (pyramid_fla.mcTimeBonus_8) package pyramid_fla { import flash.display.*; public dynamic class mcTimeBonus_8 extends MovieClip { public var mc:MovieClip; public function mcTimeBonus_8(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package pyramid_fla
Section 12
//AllPilesRemoved (AllPilesRemoved) package { import flash.media.*; public dynamic class AllPilesRemoved extends Sound { } }//package
Section 13
//BackGround (BackGround) package { import flash.display.*; import flash.text.*; public class BackGround extends MovieClip { public var tfScore:TextField; public var btPause:SimpleButton; public var tfCardRun:TextField; public var mcPointsEffect:MovieClip; public var mcTimer:TimerClass; public var _txtHelp:TextField; public var lastRun:String; public var mcSound:SoundButton; public var lastScore:int; public var tfRoundNumber:TextField; public var _smcPyramid:MovieClip; public var tfPointsEffect:TextField; public var _sbtTakePoints:SimpleButton; public function BackGround(){ score = 0; mcTimer.onInitialize(Game.GAME); mcTimer.setEndFunction(Game.GAME.timeOut); var _local1:DisplayObjectContainer = (mcPointsEffect.getChildAt(0) as DisplayObjectContainer); tfPointsEffect = (_local1.getChildAt(0) as TextField); } public function set help(_arg1:String):void{ _txtHelp.text = (_arg1 as String); } public function addRunCount(_arg1:int):void{ var _local2:int; if (_arg1 < 0){ _local2 = 0; } else { _local2 = (int(tfCardRun.text) + _arg1); }; lastRun = tfCardRun.text; tfCardRun.text = String(_local2); } public function returnScore():void{ tfScore.text = String(lastScore); tfCardRun.text = lastRun; tfPointsEffect.text = String((lastScore - score)); if (tfPointsEffect.text != "0"){ mcPointsEffect.gotoAndPlay(1); }; } public function set score(_arg1:int):void{ if (tfPointsEffect != null){ tfPointsEffect.text = String((_arg1 - score)); }; lastScore = int(tfScore.text); tfScore.text = String(_arg1); if (_arg1 != 0){ mcPointsEffect.gotoAndPlay(1); }; } public function get score():int{ return (int(tfScore.text)); } } }//package
Section 14
//btnMenu (btnMenu) package { import flash.display.*; public class btnMenu extends SimpleButton { public function btnMenu(_arg1:DisplayObject=null, _arg2:DisplayObject=null, _arg3:DisplayObject=null, _arg4:DisplayObject=null){ super(_arg1, _arg2, _arg3, _arg4); } } }//package
Section 15
//btnUndo (btnUndo) package { import flash.display.*; public class btnUndo extends SimpleButton { public function btnUndo(_arg1:DisplayObject=null, _arg2:DisplayObject=null, _arg3:DisplayObject=null, _arg4:DisplayObject=null){ super(_arg1, _arg2, _arg3, _arg4); } } }//package
Section 16
//ButtonClick (ButtonClick) package { import flash.media.*; public dynamic class ButtonClick extends Sound { } }//package
Section 17
//c1 (c1) package { import flash.display.*; public dynamic class c1 extends MovieClip { public function c1(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 18
//c10 (c10) package { import flash.display.*; public dynamic class c10 extends MovieClip { public function c10(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 19
//c11 (c11) package { import flash.display.*; public dynamic class c11 extends MovieClip { } }//package
Section 20
//c12 (c12) package { import flash.display.*; public dynamic class c12 extends MovieClip { } }//package
Section 21
//c13 (c13) package { import flash.display.*; public dynamic class c13 extends MovieClip { } }//package
Section 22
//c2 (c2) package { import flash.display.*; public dynamic class c2 extends MovieClip { public function c2(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 23
//c3 (c3) package { import flash.display.*; public dynamic class c3 extends MovieClip { public function c3(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 24
//c4 (c4) package { import flash.display.*; public dynamic class c4 extends MovieClip { public function c4(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 25
//c5 (c5) package { import flash.display.*; public dynamic class c5 extends MovieClip { public function c5(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 26
//c6 (c6) package { import flash.display.*; public dynamic class c6 extends MovieClip { public function c6(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 27
//c7 (c7) package { import flash.display.*; public dynamic class c7 extends MovieClip { public function c7(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 28
//c8 (c8) package { import flash.display.*; public dynamic class c8 extends MovieClip { public function c8(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 29
//c9 (c9) package { import flash.display.*; public dynamic class c9 extends MovieClip { public function c9(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 30
//Card (Card) package { import flash.display.*; import flash.events.*; import gs.*; import flash.utils.*; public class Card extends Sprite { public var placementOld:String; public var posY:int; public var posX:int; public var posOldY:int; public var posOldX:int; public var active:Boolean; public var numRunCnt:Number; public var numFilter:Number;// = 0 public var topPyramid:Boolean; public var cardValue:int; public var depth:int; public var isWildCard:Boolean;// = false public var step:int; public var numInDrawPileOpened:int;// = 0 public var colour:String; public var cardsPair:String; public var _b:CardBack; public var depthOld:int; public var placement:String; public var back:Boolean; public var _g:cardGlow; public var _c:DisplayObject; public var value:int;// = 0 public var placementIndexOld:int; public static var cardHolder:CardHolder; public function Card(_arg1:String){ cardValue = int(_arg1.substr(1)); var _local2:Class = (getDefinitionByName(_arg1) as Class); _c = addChild(new (_local2)); _b = new CardBack(); _g = new cardGlow(); _g.gotoAndStop(1); this.addChild(_c); this.addChild(_b); this.addChild(_g); setcardsPair(); _c["numFilter"] = 4; name = _arg1; buttonMode = true; _g.mcBugless.addEventListener(MouseEvent.CLICK, releaseCard); _g.mcBugless.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); _g.mcBugless.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); addEventListener("REMOVE_GLOW", onRemoveGlow); addEventListener("REMOVE_GLOW_NOW", onRemoveGlowNow); } private function onMouseOver(_arg1:MouseEvent=null):void{ if (active == false){ return; }; if (cardHolder.ifRoundOver){ return; }; if (((isWildCard) && (cardHolder.lastCardClicked))){ TweenLite.to((_c as Sprite).getChildAt(0), 0.15, {tint:16575661, onUpdate:onUpdateTween}); return; }; if (((isWildCard) && (!(cardHolder.lastCardClicked)))){ return; }; TweenLite.to(_g, 0.15, {frame:10, onUpdate:onUpdateTween}); } public function turnCard(_arg1:Boolean=true):void{ if (_arg1 == false){ _b.alpha = 1; _c.alpha = 0; back = true; return; }; if (back){ _c.alpha = 1; _b.alpha = 0; } else { _c.alpha = 0; _b.alpha = 1; }; back = !(back); } private function releaseCard(_arg1):void{ if (cardHolder.ifRoundOver){ return; }; if (((isWildCard) && (cardHolder.lastCardClicked))){ TweenLite.to((_c as Sprite).getChildAt(0), 0.15, {removeTint:true, onUpdate:onUpdateTween}); }; if (_g.currentFrame > 1){ _g.mcBugless.removeEventListener(MouseEvent.MOUSE_OVER, onMouseOver); _g.mcBugless.removeEventListener(MouseEvent.MOUSE_OUT, onMouseOut); if (placement != "drawpile"){ _g.gotoAndStop(11); } else { onRemoveGlowNow(); }; } else { _g.mcBugless.removeEventListener(MouseEvent.MOUSE_OVER, onMouseOver); _g.mcBugless.removeEventListener(MouseEvent.MOUSE_OUT, onMouseOut); if ((((((active == true)) && (!((placement == "drawpile"))))) && (!(isWildCard)))){ TweenLite.to(_g, 0.15, {frame:11, onUpdate:onUpdateTween}); }; }; if (cardHolder.arrPyramid.length == 0){ return; }; if (!active){ SoundController.sndUnAccessibleCard.play(); return; }; if (isWildCard){ cardHolder.moveToSparePlace(); }; if (((back) && ((placement == "drawpile")))){ cardHolder.giveDrawCards(); return; }; if (((!(back)) && (!((placement == "drawpile"))))){ cardHolder.checkThirteen(this); cardHolder.checkActiveCards(); return; }; } public function setcardsPair():void{ switch (cardValue){ case 1: cardsPair = "Queen"; break; case 2: cardsPair = "Jack"; break; case 3: cardsPair = "10"; break; case 4: cardsPair = "9"; break; case 5: cardsPair = "8"; break; case 6: cardsPair = "7"; break; case 7: cardsPair = "6"; break; case 8: cardsPair = "5"; break; case 9: cardsPair = "4"; break; case 10: cardsPair = "3"; break; case 11: cardsPair = "2"; break; case 12: cardsPair = "Ace"; break; case 13: cardsPair = " "; break; }; } public function get _width():Number{ return (_c.width); } public function removeMe():void{ } private function onRemoveGlowNow(_arg1:Event=null):void{ _g.gotoAndStop(1); _g.mcBugless.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); _g.mcBugless.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); } private function onUpdateTween():void{ if (active == false){ return; }; } private function onReachedPlace():void{ if (placement == "drawpileopened"){ cardHolder.organiseDrawOpened(); }; cardHolder.checkNextStep(); this.filters = []; } public function get _height():Number{ return (_c.height); } public function gotoNewPlace(_arg1:Object):void{ TweenLite.to(this, 0.3, {x:_arg1.x, y:_arg1.y, onComplete:onReachedPlace}); } private function onReturned():void{ this.depth = this.depthOld; if (!isWildCard){ cardHolder.mcCardHolder.setChildIndex(this, this.depth); }; cardHolder.checkActiveCards(); if (this.placement == "drawpile"){ turnCard(); }; if (this.placement == "drawpileopened"){ cardHolder.organiseDrawOpened(); }; } public function gotoStack():void{ TweenLite.to(this, 0.3, {x:CardHolder.numPackX, y:CardHolder.numDrawY, onComplete:onReachedPlace}); } private function onMouseOut(_arg1:MouseEvent=null):void{ if (active == false){ return; }; if (cardHolder.ifRoundOver){ return; }; if (((isWildCard) && (cardHolder.lastCardClicked))){ TweenLite.to((_c as Sprite).getChildAt(0), 0.15, {removeTint:true, onUpdate:onUpdateTween}); return; }; if (((isWildCard) && (!(cardHolder.lastCardClicked)))){ return; }; TweenLite.to(_g, 0.15, {frame:1, onUpdate:onUpdateTween}); } private function onRemoveGlow(_arg1:Event):void{ onMouseOut(); _g.mcBugless.addEventListener(MouseEvent.MOUSE_OVER, onMouseOver); _g.mcBugless.addEventListener(MouseEvent.MOUSE_OUT, onMouseOut); } public function goBack():void{ TweenLite.to(this, 0.3, {x:this.posX, y:this.posY, onComplete:onReturned}); } } }//package
Section 31
//CardBack (CardBack) package { import flash.display.*; public class CardBack extends MovieClip { public var mcBugless:Sprite; } }//package
Section 32
//CardClick (CardClick) package { import flash.media.*; public dynamic class CardClick extends Sound { } }//package
Section 33
//CardDeselect (CardDeselect) package { import flash.media.*; public dynamic class CardDeselect extends Sound { } }//package
Section 34
//cardGlow (cardGlow) package { import flash.display.*; public dynamic class cardGlow extends MovieClip { public var mcBugless:MovieClip; } }//package
Section 35
//CardHolder (CardHolder) package { import flash.display.*; import flash.events.*; import gs.*; import flash.utils.*; public class CardHolder { public var lastCardClicked:Card; public var arrCards:Array; private var pointForRemoved:int;// = 500 private var lastDroped:Number;// = 0 public var arrDrawOpened:Array; public var mcCardHolder:Sprite; private var numNewX1:int;// = 213 private var numNewX2:int;// = 320 public var arrSuit:Array; public var arrPack:Array; private var numPyramidYShift:Number; public var wildCard:Card; private var scoreGiven:Boolean; private var numPyramidX:Number; public var arrPyramid:Array; private var numPyramidY:Number; private var numNewX3:int;// = 427 private var numDrawOpenShift:Number;// = 0 private var numCardWidth:int;// = 60 public var arrDraw:Array; private var lastCard:Card; private var arrLastCard:Array; public var arrMove:Array; private var packPlac:int; private var numNewY:int;// = 430 public var ifRoundOver:Boolean; public var mcToCheckAnimation:MovieClip; private var _Game:Game; private var numPyramidXShift:Number; public var disable:Boolean;// = true private var numDrawCloseShift:Number;// = 12 private var numCardHeight:int;// = 85 public var speadSoundPlayed:Boolean; public static var numDrawX:int = 110; public static var numPackX:int = -100; public static var numDrawY:int = 420; public function CardHolder(_arg1:Sprite, _arg2:Game){ arrSuit = new Array("c", "d", "h", "s"); arrDraw = new Array(); arrDrawOpened = new Array(); arrCards = new Array(); arrPack = new Array(); arrPyramid = new Array(); arrMove = new Array(); arrLastCard = []; super(); _Game = _arg2; mcToCheckAnimation = null; mcCardHolder = _arg1; Card.cardHolder = this; numPyramidX = (289 + (numCardWidth / 2)); numPyramidY = (5 + (numCardHeight / 2)); numPyramidXShift = (numCardWidth + 10); numPyramidYShift = ((numCardHeight / 2) - 5); _Game._mcBG._sbtTakePoints.visible = false; ifRoundOver = false; arrDrawOpened[0] = new Array(); arrDrawOpened[1] = new Array(); arrDrawOpened[2] = new Array(); createDeck(); shuffleDeck(); arrangeCards(); spreadCard(); } private function delayShowNextPanel():void{ _Game.showNewRoundPanel(packPlac); } private function arrangeCards():void{ var _local7:Card; var _local8:int; disable = true; var _local1:int; while (_local1 < 24) { _local7 = arrCards[_local1]; _local7.posX = numDrawX; _local7.posY = numDrawY; _local7.placement = "drawpile"; _local7.x = _local7.posX; _local7.y = _local7.posY; arrDraw[_local1] = arrCards[_local1]; _local1++; }; arrDraw[23].active = true; var _local2 = 24; var _local3:int; var _local4:int; var _local5:int; var _local6:int; while (_local6 < 7) { _local3 = (numPyramidX - (35 * _local6)); _local4 = (numPyramidY + (numPyramidYShift * _local6)); _local8 = 0; while (_local8 < (_local6 + 1)) { if (_local6 == 0){ arrCards[_local2].topPyramid = true; }; arrCards[_local2].placement = "pyramid"; arrCards[_local2].posX = _local3; _local3 = (_local3 + numPyramidXShift); arrCards[_local2].posY = _local4; arrCards[_local2].turnCard(); if (_local6 == 6){ arrCards[_local2].active = true; }; arrCards[_local2].x = arrCards[_local2].posX; arrCards[_local2].y = arrCards[_local2].posY; arrPyramid[_local5] = arrCards[_local2]; _local5++; var _temp1 = _local2; _local2 = (_local2 + 1); if (_temp1 >= (arrCards.length - 1)){ break; }; _local8++; }; _local6++; }; } public function playAgain():void{ Game.isPlayAgain = true; mcCardHolder.removeEventListener(Event.ENTER_FRAME, dropCard); lastCard = null; ifRoundOver = false; _Game.enableUndo(false); _Game.enableMenu(false); _Game._mcBG._sbtTakePoints.visible = false; arrPack.splice(0); arrPack.length = 0; arrLastCard.splice(0); arrLastCard.length = 0; mcToCheckAnimation = null; lastCardClicked = null; arrDrawOpened[0].splice(0); arrDrawOpened[1].splice(0); arrDrawOpened[2].splice(0); arrDrawOpened[0].length = 0; arrDrawOpened[1].length = 0; arrDrawOpened[2].length = 0; createDeck(); wildCard.x = 1000; var _local1:int; while (_local1 < arrCards.length) { arrCards[_local1].turnCard(false); arrCards[_local1]._c["numFilter"] = 4; arrCards[_local1].numFilter = 0; arrCards[_local1].depth = _local1; _local1++; }; shuffleDeck(); arrangeCards(); spreadCard(); } private function dropCard(_arg1):void{ if (lastDroped == Math.floor(lastDroped)){ arrCards[lastDroped]._g.gotoAndStop(1); arrCards[lastDroped].visible = true; mcCardHolder.setChildIndex(arrCards[lastDroped], lastDroped); if (lastDroped < 51){ TweenLite.from(arrCards[lastDroped], 0.4, {rotation:(Math.random() * 360), x:-100, y:-100, onComplete:endCardDrop, onCompleteParams:[arrCards[lastDroped]]}); } else { TweenLite.from(arrCards[lastDroped], 0.4, {rotation:(Math.random() * 360), x:-100, y:-100, onComplete:activateAllElements}); }; }; lastDroped = (lastDroped + 1); if (lastDroped >= 52){ mcCardHolder.removeEventListener(Event.ENTER_FRAME, dropCard); addWildCard(); }; } private function endCardDrop(_arg1:Card):void{ if (_arg1.placement == "drawpile"){ _arg1.visible = false; }; arrDraw[0].visible = true; if (!speadSoundPlayed){ SoundController.sndNewDeal.play(); speadSoundPlayed = true; }; } public function checkNextStep():void{ if ((((arrDraw.length == 0)) && (!(ifRoundOver)))){ if (arrPyramid.length != 0){ _Game._mcBG._sbtTakePoints.visible = true; }; _Game.showNextCardMC(false); }; if (arrPyramid.length > 0){ return; }; if (arrPyramid.length == 0){ if (ifRoundOver){ return; }; ifRoundOver = true; _Game.enableUndo(false); _Game.enableMenu(false); _Game._mcBG._sbtTakePoints.visible = false; _Game._mcTimer.stopTimer(); SoundController.sndAllPilesRemoved.play(); TweenLite.to(_Game._mcBG._smcPyramid, 3, {y:0, onComplete:checkCastleAnimation}); return; }; } private function spreadCard():void{ mcCardHolder.addEventListener(Event.ENTER_FRAME, dropCard); speadSoundPlayed = false; disable = true; trace("set disable"); } public function moveToSparePlace():void{ if (lastCardClicked){ arrLastCard.splice(0); arrLastCard.length = 0; arrLastCard[0] = lastCardClicked; arrLastCard[0].posOldX = lastCardClicked.x; arrLastCard[0].posOldY = lastCardClicked.y; arrLastCard[0].placementOld = lastCardClicked.placement; arrLastCard[0].depthOld = lastCardClicked.depth; if (!lastCardClicked.isWildCard){ _Game.enableUndo(true); }; scoreGiven = false; packingCard(lastCardClicked, {x:wildCard.x, y:wildCard.y}); organiseDrawOpened(); }; } private function moveDrawPile(_arg1:int):void{ var _local2:int; while (_local2 < arrDraw.length) { arrDraw[_local2].x = (arrDraw[_local2].x + (12 * _arg1)); _local2++; }; } public function checkThirteen(_arg1:Card):void{ if (_arg1.cardValue == 13){ SoundController.sndTwoCardsRemoved.play(); arrLastCard.splice(0); arrLastCard.length = 0; arrLastCard[0] = _arg1; arrLastCard[0].posOldX = _arg1.x; arrLastCard[0].posOldY = _arg1.y; arrLastCard[0].placementOld = _arg1.placement; arrLastCard[0].depthOld = _arg1.depth; _Game.enableUndo(true); _arg1.dispatchEvent(new Event("REMOVE_GLOW")); _Game._mcBG.score = (_Game._mcBG.score + pointForRemoved); _Game._mcBG.help = " "; packingCard(_arg1); if (lastCardClicked){ lastCardClicked.dispatchEvent(new Event("REMOVE_GLOW")); lastCardClicked = null; }; organiseDrawOpened(); scoreGiven = true; return; }; if (!lastCardClicked){ if (!_arg1.isWildCard){ SoundController.sndCardClick.play(); }; lastCardClicked = _arg1; if (_arg1.cardsPair){ _Game._mcBG.help = (_arg1.cardsPair + " required to complete the pair"); }; return; } else { if (lastCardClicked == _arg1){ if (!_arg1.isWildCard){ SoundController.sndCardDeselect.play(); }; _arg1.dispatchEvent(new Event("REMOVE_GLOW_NOW")); lastCardClicked = null; _Game._mcBG.help = " "; return; }; }; if ((lastCardClicked.cardValue + _arg1.cardValue) == 13){ SoundController.sndTwoCardsRemoved.play(); _Game._mcBG.score = (_Game._mcBG.score + pointForRemoved); _Game._mcBG.help = " "; arrLastCard.splice(0); arrLastCard.length = 0; arrLastCard[0] = lastCardClicked; arrLastCard[0].posOldX = lastCardClicked.x; arrLastCard[0].posOldY = lastCardClicked.y; arrLastCard[0].placementOld = lastCardClicked.placement; arrLastCard[0].depthOld = lastCardClicked.depth; arrLastCard[1] = _arg1; arrLastCard[1].posOldX = _arg1.x; arrLastCard[1].posOldY = _arg1.y; arrLastCard[1].placementOld = _arg1.placement; arrLastCard[1].depthOld = _arg1.depth; _Game.enableUndo(true); lastCardClicked.dispatchEvent(new Event("REMOVE_GLOW")); _arg1.dispatchEvent(new Event("REMOVE_GLOW")); packingCard(lastCardClicked); packingCard(_arg1); lastCardClicked = null; organiseDrawOpened(); scoreGiven = true; } else { if (_arg1.cardsPair){ _Game._mcBG.help = (_arg1.cardsPair + " required to complete the pair"); }; lastCardClicked.dispatchEvent(new Event("REMOVE_GLOW")); lastCardClicked = _arg1; if (!_arg1.isWildCard){ SoundController.sndCardClick.play(); }; }; if (_arg1.isWildCard){ _Game._mcBG.help = " "; }; } private function addWildCard():void{ if (!Game.isPlayAgain){ wildCard = new Card("WildCard"); }; wildCard.isWildCard = true; mcCardHolder.addChildAt(wildCard, 0); wildCard.value = 0; wildCard.active = true; wildCard.topPyramid = false; wildCard.depth = 0; wildCard.placement = "pack"; wildCard.x = (numDrawX - 70); wildCard.y = numDrawY; wildCard.step = 0; wildCard.back = false; wildCard._b.alpha = 0; } private function checkCastleAnimation():void{ var _local1:int; setTimeout(delayShowNextPanel, 1000); packPlac = 0; while (_local1 < arrCards.length) { if (arrCards[_local1].placement == "pack"){ packPlac++; }; arrCards[_local1].dispatchEvent(new Event("REMOVE_GLOW_NOW")); _local1++; }; trace(("packPlac " + packPlac)); } private function activateAllElements():void{ _Game._mcTimer.startNewCountDown(_Game._nRoundTime); _Game.enableMenu(true); _Game.showNextCardMC(true); disable = false; giveDrawCards(); } public function removeCards():void{ trace(arrCards.length); var _local1:int; while (_local1 < arrCards.length) { arrCards[_local1].x = -200; _local1++; }; } public function organiseDrawOpened():void{ var _local2:int; var _local1:int; while (_local1 < 3) { if (arrDrawOpened[_local1].length == 1){ arrDrawOpened[_local1][0].y = numNewY; }; if (arrDrawOpened[_local1].length == 2){ arrDrawOpened[_local1][0].y = (numNewY - 17); arrDrawOpened[_local1][1].y = numNewY; }; if (arrDrawOpened[_local1].length == 3){ arrDrawOpened[_local1][0].y = (numNewY - (17 * 2)); arrDrawOpened[_local1][1].y = (numNewY - 17); arrDrawOpened[_local1][2].y = numNewY; }; if (arrDrawOpened[_local1].length == 4){ arrDrawOpened[_local1][0].y = (numNewY - (17 * 3)); arrDrawOpened[_local1][1].y = (numNewY - (17 * 2)); arrDrawOpened[_local1][2].y = (numNewY - 17); arrDrawOpened[_local1][3].y = numNewY; }; if (arrDrawOpened[_local1].length == 5){ arrDrawOpened[_local1][4].y = numNewY; arrDrawOpened[_local1][3].y = (numNewY - 17); arrDrawOpened[_local1][2].y = (numNewY - (17 * 2)); arrDrawOpened[_local1][1].y = (arrDrawOpened[_local1][2].y - 16); arrDrawOpened[_local1][0].y = (arrDrawOpened[_local1][1].y - 15); }; if (arrDrawOpened[_local1].length == 6){ arrDrawOpened[_local1][5].y = numNewY; arrDrawOpened[_local1][4].y = (numNewY - 17); arrDrawOpened[_local1][3].y = (arrDrawOpened[_local1][4].y - 16); arrDrawOpened[_local1][2].y = (arrDrawOpened[_local1][3].y - 15); arrDrawOpened[_local1][1].y = (arrDrawOpened[_local1][2].y - 15); arrDrawOpened[_local1][0].y = (arrDrawOpened[_local1][1].y - 2); }; if (arrDrawOpened[_local1].length == 7){ arrDrawOpened[_local1][6].y = numNewY; arrDrawOpened[_local1][5].y = (numNewY - 16); arrDrawOpened[_local1][4].y = (arrDrawOpened[_local1][5].y - 16); arrDrawOpened[_local1][3].y = (arrDrawOpened[_local1][4].y - 15); arrDrawOpened[_local1][2].y = (arrDrawOpened[_local1][3].y - 15); arrDrawOpened[_local1][1].y = (arrDrawOpened[_local1][2].y - 2); arrDrawOpened[_local1][0].y = (arrDrawOpened[_local1][1].y - 2); }; if (arrDrawOpened[_local1].length == 8){ arrDrawOpened[_local1][7].y = numNewY; arrDrawOpened[_local1][6].y = (numNewY - 15); arrDrawOpened[_local1][5].y = (arrDrawOpened[_local1][6].y - 15); arrDrawOpened[_local1][4].y = (arrDrawOpened[_local1][5].y - 15); arrDrawOpened[_local1][3].y = (arrDrawOpened[_local1][4].y - 14); arrDrawOpened[_local1][2].y = (arrDrawOpened[_local1][3].y - 2); arrDrawOpened[_local1][1].y = (arrDrawOpened[_local1][2].y - 2); arrDrawOpened[_local1][0].y = (arrDrawOpened[_local1][1].y - 2); }; _local1++; }; if (arrDraw.length < 2){ return; }; while (_local2 < (arrDraw.length - 1)) { arrDraw[_local2].visible = false; _local2++; }; arrDraw[(arrDraw.length - 1)].visible = true; } private function shuffleDeck():void{ var _local1:Card; var _local2:int; Utils.numRandomSeed = Math.floor((Math.random() * 200)); var _local3:int; while (_local3 < arrCards.length) { _local1 = arrCards[_local3]; _local2 = Utils.getRandomValue(arrCards.length); arrCards[_local3] = arrCards[_local2]; arrCards[_local2] = _local1; arrCards[_local3].depth = _local3; mcCardHolder.swapChildren(arrCards[_local3], arrCards[_local2]); arrCards[_local2].depth = _local2; _local3++; }; } private function createDeck():void{ var _local4:int; var _local5:Card; _Game._mcBG.help = " "; var _local1:int; var _local2 = ""; lastDroped = 0; var _local3 = 1; while (_local3 <= 13) { _local4 = 0; while (_local4 < arrSuit.length) { _local2 = (arrSuit[_local4] + _local3); if (!Game.isPlayAgain){ _local5 = new Card(_local2); mcCardHolder.addChild(_local5); arrCards[_local1] = _local5; } else { _local5 = (arrCards[_local1] as Card); }; _local5.colour = ((((arrSuit[_local4] == "d")) || ((arrSuit[_local4] == "h")))) ? "red" : "black"; if (!Game.isPlayAgain){ _local5.value = _local3; }; _local5.active = false; _local5.topPyramid = false; _local5.depth = 0; _local5.placement = "pack"; _local5.x = numDrawX; _local5.y = numDrawY; _local5.posX = numDrawX; _local5.posY = numDrawY; _local5.step = 0; _local5.back = true; _local5.visible = false; _local1++; _local4++; }; _local3++; }; } public function checkActiveCards(_arg1:MovieClip=null):void{ var _local2:Boolean; var _local4:int; var _local3:int = (arrPyramid.length - 1); while (_local3 >= 0) { _local2 = false; _local4 = (arrPyramid.length - 1); while (_local4 >= 0) { if (((!((_local3 == _local4))) && (arrPyramid[_local3]._g.mcBugless.hitTestObject(arrPyramid[_local4]._g.mcBugless)))){ if ((((arrPyramid[_local4].depth > arrPyramid[_local3].depth)) && ((arrPyramid[_local4].depth < 100)))){ _local2 = true; break; }; }; _local4--; }; if (!_local2){ arrPyramid[_local3].active = true; } else { if (_local2){ arrPyramid[_local3].active = false; }; }; _local3--; }; } public function packingCard(_arg1:Card, _arg2:Object=null):void{ var _local3:int; if (arrPyramid.length == 0){ _Game.enableUndo(false); _Game.enableMenu(false); }; _arg1.posY = numDrawY; _arg1.posX = numPackX; if (_arg1.placement == "pyramid"){ _arg1.placement = "pack"; _local3 = (arrPyramid.length - 1); while (_local3 >= 0) { if (_arg1 == arrPyramid[_local3]){ arrPyramid.splice(_local3, 1); if (arrPyramid.length == 0){ _Game._mcBG.score = (_Game._mcBG.score + 20000); }; _arg1.placementIndexOld = _local3; break; }; _local3--; }; } else { if (_arg1.placement == "drawpile"){ _arg1.placement = "drawpileopened"; } else { if (_arg1.placement == "drawpileopened"){ arrDrawOpened[_arg1.numInDrawPileOpened].pop(); if (arrDrawOpened[_arg1.numInDrawPileOpened].length > 0){ arrDrawOpened[_arg1.numInDrawPileOpened][(arrDrawOpened[_arg1.numInDrawPileOpened].length - 1)].active = true; }; _arg1.placement = "pack"; }; }; }; if (_arg2){ _arg1.gotoNewPlace(_arg2); } else { _arg1.gotoStack(); }; } public function checkValid(_arg1:Card, _arg2:Card):Boolean{ if (((_arg1.isWildCard) || (_arg2.isWildCard))){ return (true); }; if ((((Math.abs((_arg1.value - _arg2.value)) == 1)) || ((Math.abs((_arg1.value - _arg2.value)) == 12)))){ return (true); }; return (false); } public function organiseDrawOpened1():void{ var _local2:int; var _local3:Number; var _local4:int; var _local1:int; while (_local1 < 3) { if (arrDrawOpened[_local1].length > 5){ if ((arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].y + (arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].height / 2)) > 490){ arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].y = (480 - (arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].height / 2)); _local3 = (65 / (arrDrawOpened[_local1].length - 1)); _local4 = 1; while (_local4 < (arrDrawOpened[_local1].length - 1)) { arrDrawOpened[_local1][_local4].y = (arrDrawOpened[_local1][0].y + (_local3 * _local4)); _local4++; }; } else { if ((arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].y + (arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].height / 2)) > ((480 - (arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].height / 2)) - 5)){ arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].y = (480 - (arrDrawOpened[_local1][(arrDrawOpened[_local1].length - 1)].height / 2)); _local3 = (65 / (arrDrawOpened[_local1].length - 1)); _local4 = 1; while (_local4 < (arrDrawOpened[_local1].length - 1)) { arrDrawOpened[_local1][_local4].y = (arrDrawOpened[_local1][0].y + (_local3 * _local4)); _local4++; }; }; }; }; if (arrDrawOpened[_local1].length < 6){ _local3 = 15; _local4 = 1; while (_local4 < arrDrawOpened[_local1].length) { arrDrawOpened[_local1][_local4].y = (arrDrawOpened[_local1][0].y + (_local3 * _local4)); _local4++; }; }; _local1++; }; if (arrDraw.length < 2){ return; }; while (_local2 < (arrDraw.length - 1)) { arrDraw[_local2].visible = false; _local2++; }; arrDraw[(arrDraw.length - 1)].visible = true; } public function returningCard():void{ var _local1:int; while (_local1 < 3) { if (arrLastCard[_local1]){ arrLastCard[_local1].posY = arrLastCard[_local1].posOldY; arrLastCard[_local1].posX = arrLastCard[_local1].posOldX; } else { break; }; if (arrLastCard[_local1].placementOld == "drawpile"){ arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened].pop(); if (arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened].length > 0){ arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened][(arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened].length - 1)].active = true; }; arrDraw.push(arrLastCard[_local1]); organiseDrawOpened(); if (arrDraw.length > 3){ arrDraw[(arrDraw.length - 4)].visible = true; }; if (arrDraw.length == 1){ _Game._mcBG._sbtTakePoints.visible = false; _Game.showNextCardMC(true); }; }; if (arrLastCard[_local1].placementOld == "drawpileopened"){ if (arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened].length > 0){ arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened][(arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened].length - 1)].active = false; }; arrDrawOpened[arrLastCard[_local1].numInDrawPileOpened].push(arrLastCard[_local1]); }; if (arrLastCard[_local1].placementOld == "pyramid"){ arrPyramid.splice(arrLastCard[_local1].placementIndexOld, 0, arrLastCard[_local1]); }; arrLastCard[_local1].placement = arrLastCard[_local1].placementOld; arrLastCard[_local1].goBack(); _local1++; }; _Game.enableUndo(false); if (scoreGiven){ _Game._mcBG.score = (_Game._mcBG.score - pointForRemoved); }; } public function giveDrawCards():void{ var _local3:Card; var _local4:Number; SoundController.sndMoreCards.play(); if (lastCardClicked){ lastCardClicked.dispatchEvent(new Event("REMOVE_GLOW")); }; lastCardClicked = null; var _local1:int = ((arrDraw.length)>3) ? 2 : (arrDraw.length - 1); arrLastCard.splice(0); arrLastCard.length = 0; var _local2:int = _local1; while (_local2 >= 0) { _local3 = arrDraw[(arrDraw.length - 1)]; _local3.visible = true; _local3.active = true; _local3.turnCard(); mcCardHolder.setChildIndex(_local3, (mcCardHolder.numChildren - 1)); _local3.depth = mcCardHolder.getChildIndex(_local3); if (arrDrawOpened[_local2].length > 0){ arrDrawOpened[_local2][(arrDrawOpened[_local2].length - 1)].active = false; }; _local3.numInDrawPileOpened = _local2; _local4 = numNewY; arrDrawOpened[_local2].push(_local3); packingCard(_local3, {x:this[("numNewX" + (_local2 + 1))], y:_local4}); arrDraw.splice((arrDraw.length - 1), 1); arrLastCard[_local2] = _local3; arrLastCard[_local2].posOldX = _local3.x; arrLastCard[_local2].posOldY = _local3.y; arrLastCard[_local2].placementOld = "drawpile"; arrLastCard[_local2].depthOld = _local3.depth; _local2--; }; _Game.enableUndo(true); scoreGiven = false; if (arrDraw.length > 0){ arrDraw[(arrDraw.length - 1)].active = true; arrDraw[(arrDraw.length - 1)].visible = true; } else { _Game._mcBG._sbtTakePoints.visible = true; }; } } }//package
Section 36
//d1 (d1) package { import flash.display.*; public dynamic class d1 extends MovieClip { public function d1(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 37
//d10 (d10) package { import flash.display.*; public dynamic class d10 extends MovieClip { public function d10(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 38
//d11 (d11) package { import flash.display.*; public dynamic class d11 extends MovieClip { } }//package
Section 39
//d12 (d12) package { import flash.display.*; public dynamic class d12 extends MovieClip { public function d12(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 40
//d13 (d13) package { import flash.display.*; public dynamic class d13 extends MovieClip { public function d13(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 41
//d2 (d2) package { import flash.display.*; public dynamic class d2 extends MovieClip { public function d2(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 42
//d3 (d3) package { import flash.display.*; public dynamic class d3 extends MovieClip { public function d3(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 43
//d4 (d4) package { import flash.display.*; public dynamic class d4 extends MovieClip { public function d4(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 44
//d5 (d5) package { import flash.display.*; public dynamic class d5 extends MovieClip { public function d5(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 45
//d6 (d6) package { import flash.display.*; public dynamic class d6 extends MovieClip { public function d6(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 46
//d7 (d7) package { import flash.display.*; public dynamic class d7 extends MovieClip { public function d7(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 47
//d8 (d8) package { import flash.display.*; public dynamic class d8 extends MovieClip { public function d8(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 48
//d9 (d9) package { import flash.display.*; public dynamic class d9 extends MovieClip { public function d9(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 49
//Game (Game) package { import flash.display.*; import flash.events.*; import gs.*; import mochi.*; import flash.ui.*; public class Game { private var _nTimerPause:Number;// = 0 public var _nRoundNumber:int; private var _cardHolder:CardHolder; public var _mcTimer:TimerClass; private var _mcNextPanel:NextRoundPanel; private var _bGameInPause:Boolean; private var _mcCardContainer:Sprite; private var _mcMenu:Menu; public var _mcBG:BackGround; private var _root:MovieClip; public var _nRoundTime:Number;// = 150 public var _nFullTimeBonus:int;// = 20000 private var packPlac:int; private var _mcOverPanel:GameOverPanel; private var _nRoundScore:Number; public var _btUndo:btnUndo; public var _btMenu:btnMenu; private var _mcNextCard:nextCard_mc; private var _mcInstructions:instructions; public static var GAME; public static var isPlayAgain:Boolean = false; public function Game(_arg1:MovieClip){ GAME = this; _root = _arg1; _btUndo = new btnUndo(); _btUndo.x = 545; _btUndo.y = 425; _root.addChild(_btUndo); enableUndo(false); _btMenu = new btnMenu(); _btMenu.x = 545; _btMenu.y = 375; _root.addChild(_btMenu); enableMenu(false); _mcCardContainer = new Sprite(); _root.addChild(_mcCardContainer); _mcBG = new BackGround(); _root.addChildAt(_mcBG, 0); _mcBG._sbtTakePoints.visible = false; _mcBG._sbtTakePoints.addEventListener(MouseEvent.CLICK, showGameOverPanel); _mcTimer = _mcBG.mcTimer; _mcNextCard = new nextCard_mc(); _mcNextCard.x = 83; _mcNextCard.y = 400; _mcNextCard.mouseChildren = false; _mcNextCard.mouseEnabled = false; _mcNextCard.visible = false; _root.addChild(_mcNextCard); _bGameInPause = false; if (!_root.showInstr){ startGame(); } else { showInstructions(1); }; } public function mochiSent(_arg1):void{ _mcOverPanel._smcHigh.txtSent.text = "Online score submitted"; _mcOverPanel._smcHigh._sbtOnlineSend.visible = false; _mcOverPanel._smcHigh._sbtOnlineSend.removeEventListener(MouseEvent.CLICK, sendHighScore); } public function enableMenu(_arg1:Boolean):void{ if (_arg1){ if (_btMenu.enabled){ return; }; _btMenu.addEventListener(MouseEvent.CLICK, onMenuClicked); _btMenu.enabled = true; } else { _btMenu.removeEventListener(MouseEvent.CLICK, onMenuClicked); _btMenu.enabled = false; }; } public function playAgain():void{ _mcBG.score = 0; _mcBG.lastScore = 0; _mcBG.lastRun = "0"; _mcBG.tfCardRun.text = "0"; _cardHolder.playAgain(); _bGameInPause = false; _nRoundNumber = 1; _mcBG.tfRoundNumber.text = _nRoundNumber.toString(); _mcTimer.setTime(0); } public function enableUndo(_arg1:Boolean):void{ if (_arg1){ if (_btUndo.enabled){ return; }; _btUndo.enabled = true; _btUndo.addEventListener(MouseEvent.CLICK, onUndoClicked); _btUndo.alpha = 1; } else { _btUndo.enabled = false; _btUndo.removeEventListener(MouseEvent.CLICK, onUndoClicked); _btUndo.alpha = 0.7; }; } private function pauseGame(_arg1:Boolean):void{ if (_arg1){ _bGameInPause = true; _nTimerPause = _mcTimer.getTime(); _mcTimer.stopTimer(); } else { _bGameInPause = false; _mcTimer.startNewCountDown(_nTimerPause); }; } private function showHighScore(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); sendMochiLeaderBoard(); HighScorePanel.saveNewUser(_mcOverPanel.tfName.text, _mcBG.score); _mcOverPanel._smcHigh.init("over"); _mcOverPanel._smcHigh.visible = true; _mcOverPanel._smcHigh._sbtOnlineSend.visible = true; _mcOverPanel._smcHigh._sbtOnlineSend.addEventListener(MouseEvent.CLICK, sendHighScore); _mcOverPanel._smcHigh._sbtBack.addEventListener(MouseEvent.CLICK, showStartPanelFromEnd); _mcOverPanel._sbtOK.removeEventListener(MouseEvent.CLICK, showHighScore); _mcOverPanel._sbtOK.enabled = false; } private function sendHighScore(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); MochiScores.showLeaderboard({boardID:"af0275dcee298fca", score:_mcBG.score, name:_mcOverPanel.tfName.text, onClose:mochiSent}); } private function playAgainFromInstructions(_arg1:MouseEvent):void{ _root.removeChild(_mcInstructions); playAgain(); } public function allSoundsLoaded(_arg1){ } public function playAgainFromMain():void{ _mcBG.mcSound.initBtn(); _cardHolder.removeCards(); if (!_root.showInstr){ playAgain(); } else { showInstructions(2); }; } public function showStartPanelFromEnd(_arg1:MouseEvent=null):void{ SoundController.sndButtonClick.play(); if (_mcOverPanel){ _root.removeChild(_mcOverPanel); }; _root.showStartPanel(); } private function showInstructions(_arg1:int):void{ _mcInstructions = new instructions(); if (_arg1 == 1){ _mcInstructions._sbtOk.addEventListener(MouseEvent.CLICK, startFromInstructions); } else { _mcInstructions._sbtOk.addEventListener(MouseEvent.CLICK, playAgainFromInstructions); }; _root.addChild(_mcInstructions); } private function onUndoClicked(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _cardHolder.returningCard(); } public function showGameOverPanel(_arg1:MouseEvent=null):void{ if (_cardHolder.arrPyramid.length == 0){ return; }; _mcOverPanel = new GameOverPanel(); _mcOverPanel.noHigh.visible = false; _mcOverPanel.tfName.text = HighScorePanel.showLastTypedName(); _mcOverPanel._stxScore.text = _mcBG.score.toString(); TweenLite.from(_mcOverPanel, 1, {alpha:0}); trace(_root.getMinScore(), _mcBG.score); if (_root.getMinScore() > _mcBG.score){ _mcOverPanel.noHigh.visible = true; _mcOverPanel.noHigh._stxScore.text = _mcBG.score.toString(); _mcOverPanel.noHigh._sbtMainMenu.addEventListener(MouseEvent.CLICK, showStartPanelFromEnd); } else { _mcOverPanel.tfName.addEventListener(KeyboardEvent.KEY_DOWN, reportKeyDown, false, 0, true); _mcOverPanel._sbtOK.addEventListener(MouseEvent.CLICK, showHighScore); _mcOverPanel._sbtMainMenu.addEventListener(MouseEvent.CLICK, showStartPanelFromEnd); }; _root.addChild(_mcOverPanel); SoundController.sndGameOver.play(); SoundController.sndButtonClick.play(); _mcTimer.stopTimer(); showNextCardMC(false); } private function reportKeyDown(_arg1:KeyboardEvent):void{ if (_arg1.keyCode == Keyboard.ENTER){ showHighScore(null); }; } public function functionsFor4Frame():void{ _root.removeChild(_mcOverPanel); _root.showStartPanel(); } public function startNewRound(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _mcNextPanel.removeBtnListeners(); _root.removeChild(_mcNextPanel); _cardHolder.playAgain(); _nRoundNumber++; _mcBG.tfRoundNumber.text = _nRoundNumber.toString(); _mcBG._smcPyramid.y = 200; _mcTimer.setTime(0); } public function showNextCardMC(_arg1:Boolean):void{ _mcNextCard.visible = _arg1; } public function showNewRoundPanel(_arg1:int):void{ packPlac = _arg1; _mcNextPanel = new NextRoundPanel(); _mcNextPanel._sbtNextRound.addEventListener(MouseEvent.CLICK, startNewRound); _root.addChild(_mcNextPanel); SoundController.sndRoundComplete.play(); TweenLite.from(_mcNextPanel, 1, {alpha:0, onComplete:newRoundPanelAppeared}); } private function sendMochiLeaderBoard():void{ MochiScores.submit(_mcBG.score, _mcOverPanel.tfName.text, this, mochiSent); } public function showStartPanelFromMenu(_arg1:MouseEvent=null):void{ SoundController.sndButtonClick.play(); if (_mcMenu){ _root.removeChild(_mcMenu); }; showNextCardMC(false); _root.showStartPanel(); } public function onMenuClicked(_arg1:MouseEvent=null):void{ pauseGame(!(_bGameInPause)); SoundController.sndButtonClick.play(); if (_bGameInPause){ _mcMenu = new Menu(); _mcMenu.init(this); _root.addChild(_mcMenu); } else { _root.removeChild(_mcMenu); }; } public function timeOut():void{ } private function startFromInstructions(_arg1:MouseEvent):void{ _root.removeChild(_mcInstructions); startGame(); } private function newRoundPanelAppeared():void{ var _local1:Number = (_cardHolder.arrDraw.length * 1000); var _local2:Number = (_nRoundNumber * 1000); var _local3:Number = ((packPlac)==52) ? 10000 : 0; _nRoundScore = (((_mcTimer._nBonusLeft + _local1) + _local2) + _local3); _mcBG.score = (_mcBG.score + _nRoundScore); _mcNextPanel._stxTimeBonus.text = _mcTimer._nBonusLeft.toString(); _mcNextPanel._stxDeckBonus.text = _local1.toString(); _mcNextPanel._stxRoundBonus.text = _local2.toString(); _mcNextPanel._stxAllCardsBonus.text = _local3.toString(); _mcNextPanel._stxScore.text = _mcBG.score.toString(); _mcNextPanel.showBonuses(); showNextCardMC(false); } public function startGame():void{ _cardHolder = new CardHolder(_mcCardContainer, this); _nRoundNumber = 1; _mcBG.tfRoundNumber.text = _nRoundNumber.toString(); } } }//package
Section 50
//GameOver (GameOver) package { import flash.media.*; public dynamic class GameOver extends Sound { } }//package
Section 51
//GameOverPanel (GameOverPanel) package { import flash.display.*; import flash.text.*; public class GameOverPanel extends MovieClip { public var _stxScore:TextField; public var _sbtOK:SimpleButton; public var noHigh:MovieClip; public var _smcHigh:HighScorePanel; public var tfName:TextField; public var _sbtMainMenu:SimpleButton; public function setMinScore(_arg1:Number):void{ } } }//package
Section 52
//h1 (h1) package { import flash.display.*; public dynamic class h1 extends MovieClip { public function h1(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 53
//h10 (h10) package { import flash.display.*; public dynamic class h10 extends MovieClip { public function h10(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 54
//h11 (h11) package { import flash.display.*; public dynamic class h11 extends MovieClip { } }//package
Section 55
//h12 (h12) package { import flash.display.*; public dynamic class h12 extends MovieClip { public function h12(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 56
//h13 (h13) package { import flash.display.*; public dynamic class h13 extends MovieClip { public function h13(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 57
//h2 (h2) package { import flash.display.*; public dynamic class h2 extends MovieClip { public function h2(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 58
//h3 (h3) package { import flash.display.*; public dynamic class h3 extends MovieClip { public function h3(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 59
//h4 (h4) package { import flash.display.*; public dynamic class h4 extends MovieClip { public function h4(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 60
//h5 (h5) package { import flash.display.*; public dynamic class h5 extends MovieClip { public function h5(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 61
//h6 (h6) package { import flash.display.*; public dynamic class h6 extends MovieClip { public function h6(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 62
//h7 (h7) package { import flash.display.*; public dynamic class h7 extends MovieClip { public function h7(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 63
//h8 (h8) package { import flash.display.*; public dynamic class h8 extends MovieClip { public function h8(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 64
//h9 (h9) package { import flash.display.*; public dynamic class h9 extends MovieClip { public function h9(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 65
//HighScorePanel (HighScorePanel) package { import flash.display.*; import flash.events.*; import mochi.*; import flash.text.*; import flash.net.*; public class HighScorePanel extends Sprite { public var txtSent:TextField; public var txtS4:TextField; public var txtS7:TextField; public var txtS1:TextField; public var txtS2:TextField; public var txtS3:TextField; public var txtS5:TextField; public var txtS6:TextField; public var txtS8:TextField; public var txtS9:TextField; public var _sbtOnline:SimpleButton; public var _btPlayMore:SimpleButton; public var txtS10:TextField; public var _sbtBack:SimpleButton; public var txtP1:TextField; public var txtP2:TextField; public var txtP3:TextField; public var txtP4:TextField; public var txtP5:TextField; public var txtP6:TextField; public var txtP7:TextField; public var txtP8:TextField; public var txtP9:TextField; public var _sbtOnlineSend:SimpleButton; public var txtP10:TextField; private static var _soData:SharedObject; private static var _soLastScoreData:SharedObject; public function HighScorePanel(){ visible = false; _sbtOnlineSend.visible = false; } private function onCloseOnline():void{ } public function init(_arg1:String):void{ if (_arg1 == "start"){ _sbtBack.addEventListener(MouseEvent.CLICK, onCloseHigh); }; _sbtOnline.addEventListener(MouseEvent.CLICK, onShowOnline); readSO(_arg1); _btPlayMore.addEventListener(MouseEvent.CLICK, onPlayMore); } private function onCloseHigh(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); visible = false; } private function setTFcolors():void{ var _local2:TextField; var _local3:TextField; var _local1 = 1; while (_local1 <= 10) { _local2 = this[("txtP" + _local1)]; _local3 = this[("txtS" + _local1)]; if (((((!((_local1 == 1))) && (!((_local1 == 4))))) && (!((_local1 == 8))))){ _local2.textColor = 14027274; _local3.textColor = 14027274; } else { _local2.textColor = 710154; _local3.textColor = 710154; }; _local1++; }; } private function onPlayMore(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); var _local2:URLRequest = new URLRequest("http://www.solitaireparadise.com"); navigateToURL(_local2); } private function onShowOnline(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); MochiScores.showLeaderboard({boardID:"af0275dcee298fca", onClose:onCloseOnline}); } public function readSO(_arg1:String):void{ var _local3:String; var _local4:int; var _local8:Object; var _local9:TextField; var _local10:TextField; _soData = SharedObject.getLocal("LocalScoreData"); _soLastScoreData = SharedObject.getLocal("LastScoreData"); var _local2:Array = new Array(); for (_local3 in _soData.data) { _local8 = {n:_local3, s:_soData.data[_local3]}; if (_local3.indexOf("^") != -1){ _local8.n = _local3.substr(0, _local3.indexOf("^")); }; _local2.push(_local8); trace([_local8.n, _local8.s]); }; _local2.sortOn("s", Array.NUMERIC); _local2.reverse(); _local4 = ((_local2.length)<10) ? _local2.length : 10; var _local5:int; while (_local5 < _local4) { _local9 = this[("txtP" + int((_local5 + 1)))]; _local10 = this[("txtS" + int((_local5 + 1)))]; _local9.text = _local2[_local5].n; _local10.text = _local2[_local5].s; _local5++; }; var _local6:* = parent; var _local7:* = ((_local2.length)<10) ? 0 : _local2[9].s; _local6.setMinScore(Number(_local7)); if (_arg1 != "over"){ return; }; if (_soLastScoreData.data.nLastUser != undefined){ _local5 = 0; while (_local5 < _local4) { _local9 = this[("txtP" + int((_local5 + 1)))]; _local10 = this[("txtS" + int((_local5 + 1)))]; if ((((_local9.text == _soLastScoreData.data["nLastUser"])) && ((_local10.text == _soLastScoreData.data["nLastScore"])))){ _local9 = this[("txtP" + int((_local5 + 1)))]; _local10 = this[("txtS" + int((_local5 + 1)))]; _local9.textColor = 658134; _local10.textColor = 658134; }; _local5++; }; }; } public static function showLastTypedName():String{ var _local1:String = (_soLastScoreData.data["nLastUser"]) ? _soLastScoreData.data["nLastUser"] : "Player"; return (_local1); } public static function saveNewUser(_arg1:String, _arg2:Number):void{ if (_arg2 == 0){ return; }; var _local3:Number = Math.random(); if (_soData.data[((_arg1 + "^") + _local3)] == undefined){ _soData.data[((_arg1 + "^") + _local3)] = _arg2; }; if (_soData.data[((_arg1 + "^") + _local3)] < _arg2){ _soData.data[((_arg1 + "^") + _local3)] = _arg2; }; _soLastScoreData.data["nLastUser"] = _arg1; _soLastScoreData.data["nLastScore"] = _arg2; _soData.flush(); _soLastScoreData.flush(); } } }//package
Section 66
//instructions (instructions) package { import flash.display.*; public dynamic class instructions extends MovieClip { public var _sbtOk:SimpleButton; } }//package
Section 67
//Main (Main) package { import flash.display.*; import flash.events.*; import mochi.*; import flash.text.*; public dynamic class Main extends MovieClip { private var startPanel:StartPanel; public var percent:TextField; private var shield:MovieClip; public var soundController:SoundController; public var showInstr:Boolean; private var game:Game; public var minScoreToGet:Number; public function Main():void{ stop(); init(); } public function setMinScore(_arg1:Number):void{ minScoreToGet = _arg1; trace(("setMinScore " + minScoreToGet)); } public function getMinScore():Number{ trace(minScoreToGet); return (minScoreToGet); } private function init(_arg1:Event=null):void{ addEventListener(Event.ENTER_FRAME, onEnterFrame); soundController = new SoundController(); MochiAd.showPreGameAd({clip:this, id:"e3e7928beb264da0", res:"640x480"}); MochiServices.connect("e3e7928beb264da0", this); MochiBot.track(this, "90bc4d57"); MochiScores.setBoardID("af0275dcee298fca"); } public function initGame(_arg1:Boolean):void{ removeChild(startPanel); showInstr = _arg1; if (!game){ game = new Game(this); } else { game.playAgainFromMain(); }; } private function onEnterFrame(_arg1:Event){ if (framesLoaded == totalFrames){ removeEventListener(Event.ENTER_FRAME, onEnterFrame); addEventListener(Event.ENTER_FRAME, EFlistener); }; } private function EFlistener(_arg1:Event):void{ if (currentFrame == 3){ stop(); showStartPanel(true); removeEventListener(Event.ENTER_FRAME, EFlistener); }; } public function showStartPanel(_arg1:Boolean=false):void{ startPanel = new StartPanel(this, _arg1); addChild(startPanel); } } }//package
Section 68
//McMask (McMask) package { import flash.display.*; public class McMask extends MovieClip { } }//package
Section 69
//Menu (Menu) package { import flash.display.*; import flash.events.*; public class Menu extends MovieClip { public var _sbtExit:SimpleButton; public var _sbtInstructions:SimpleButton; public var _smcInstructions:MovieClip; private var _Game:Game; public var _sbtResume:SimpleButton; public var _smcBoard:MovieClip; public function Menu(){ _smcInstructions.visible = false; _smcInstructions._sbtBack.visible = false; var _local1:SimpleButton = (getChildAt(0) as SimpleButton); _local1.useHandCursor = false; } private function removeMenu(_arg1:Boolean):void{ _smcBoard.visible = _arg1; _sbtResume.visible = _arg1; _sbtExit.visible = _arg1; _sbtInstructions.visible = _arg1; } private function onInstructionsExit(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _smcInstructions.visible = false; _smcInstructions._sbtResume.removeEventListener(MouseEvent.CLICK, onInstructionsExit); removeMenu(true); } private function onInstructions(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _smcInstructions.visible = true; _smcInstructions._sbtResume.addEventListener(MouseEvent.CLICK, onInstructionsExit); removeMenu(false); } private function onResume(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); removeListeners(); _Game.onMenuClicked(); } public function init(_arg1:Game):void{ _Game = _arg1; _sbtResume.addEventListener(MouseEvent.CLICK, onResume); _sbtExit.addEventListener(MouseEvent.CLICK, onExit); _sbtInstructions.addEventListener(MouseEvent.CLICK, onInstructions); } private function removeListeners():void{ _sbtResume.removeEventListener(MouseEvent.CLICK, onResume); _sbtExit.removeEventListener(MouseEvent.CLICK, onExit); _sbtInstructions.removeEventListener(MouseEvent.CLICK, onInstructions); } private function onExit(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); removeListeners(); _Game.showStartPanelFromMenu(); } } }//package
Section 70
//MFNWLogo (MFNWLogo) package { import flash.display.*; import flash.events.*; import flash.net.*; public class MFNWLogo extends SimpleButton { public function MFNWLogo(){ this.addEventListener(MouseEvent.CLICK, onMouseClick); this.mouseEnabled = true; } private function onMouseClick(_arg1:MouseEvent){ var _local2:URLRequest = new URLRequest("http://www.makeflashnotwar.com"); navigateToURL(_local2); } } }//package
Section 71
//MoreCards (MoreCards) package { import flash.media.*; public dynamic class MoreCards extends Sound { } }//package
Section 72
//NewDeal (NewDeal) package { import flash.media.*; public dynamic class NewDeal extends Sound { } }//package
Section 73
//nextCard_mc (nextCard_mc) package { import flash.display.*; import flash.text.*; public dynamic class nextCard_mc extends MovieClip { public var _stxTimeBonus:TextField; } }//package
Section 74
//NextRoundPanel (NextRoundPanel) package { import flash.display.*; import flash.events.*; import flash.text.*; import flash.net.*; public class NextRoundPanel extends MovieClip { public var _btPlayMore:SimpleButton; public var _stxAllCardsBonus:TextField; public var _stxScore:TextField; public var _stxRoundBonus:TextField; public var _sbtNextRound:SimpleButton; private var _nTimer:Number; public var _stxTimeBonus:TextField; public var _stxDeckBonus:TextField; public function NextRoundPanel(){ _sbtNextRound.visible = false; _stxTimeBonus.visible = false; _stxDeckBonus.visible = false; _stxRoundBonus.visible = false; _stxAllCardsBonus.visible = false; _stxScore.visible = false; _btPlayMore.addEventListener(MouseEvent.CLICK, onPlayMore); } private function onPlayMore(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); var _local2:URLRequest = new URLRequest("http://www.solitaireparadise.com"); navigateToURL(_local2); } public function removeBtnListeners():void{ _btPlayMore.removeEventListener(MouseEvent.CLICK, onPlayMore); } public function showBonuses():void{ _nTimer = 90; this.addEventListener(Event.ENTER_FRAME, enterFrameListener); } public function enterFrameListener(_arg1:Event):void{ _nTimer--; if (_nTimer == 75){ _stxTimeBonus.visible = true; SoundController.sndScorePing.play(); }; if (_nTimer == 60){ _stxAllCardsBonus.visible = true; SoundController.sndScorePing.play(); }; if (_nTimer == 45){ _stxDeckBonus.visible = true; SoundController.sndScorePing.play(); }; if (_nTimer == 30){ _stxRoundBonus.visible = true; SoundController.sndScorePing.play(); }; if (_nTimer == 15){ _stxScore.visible = true; SoundController.sndScorePing.play(); }; if (_nTimer == 0){ _sbtNextRound.visible = true; this.removeEventListener(Event.ENTER_FRAME, enterFrameListener); }; } } }//package
Section 75
//RoundComplete (RoundComplete) package { import flash.media.*; public dynamic class RoundComplete extends Sound { } }//package
Section 76
//s1 (s1) package { import flash.display.*; public dynamic class s1 extends MovieClip { public function s1(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 77
//s10 (s10) package { import flash.display.*; public dynamic class s10 extends MovieClip { public function s10(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 78
//s11 (s11) package { import flash.display.*; public dynamic class s11 extends MovieClip { } }//package
Section 79
//s12 (s12) package { import flash.display.*; public dynamic class s12 extends MovieClip { public function s12(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 80
//s13 (s13) package { import flash.display.*; public dynamic class s13 extends MovieClip { public function s13(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 81
//s2 (s2) package { import flash.display.*; public dynamic class s2 extends MovieClip { public function s2(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 82
//s3 (s3) package { import flash.display.*; public dynamic class s3 extends MovieClip { public function s3(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 83
//s4 (s4) package { import flash.display.*; public dynamic class s4 extends MovieClip { public function s4(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 84
//s5 (s5) package { import flash.display.*; public dynamic class s5 extends MovieClip { public function s5(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 85
//s6 (s6) package { import flash.display.*; public dynamic class s6 extends MovieClip { public function s6(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 86
//s7 (s7) package { import flash.display.*; public dynamic class s7 extends MovieClip { public function s7(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 87
//s8 (s8) package { import flash.display.*; public dynamic class s8 extends MovieClip { public function s8(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 88
//s9 (s9) package { import flash.display.*; public dynamic class s9 extends MovieClip { public function s9(){ addFrameScript(0, frame1); } function frame1(){ stop(); } } }//package
Section 89
//ScorePing (ScorePing) package { import flash.media.*; public dynamic class ScorePing extends Sound { } }//package
Section 90
//Shield (Shield) package { import flash.display.*; public dynamic class Shield extends MovieClip { } }//package
Section 91
//SoundButton (SoundButton) package { import flash.display.*; import flash.events.*; import flash.net.*; public class SoundButton extends MovieClip { private var _soData:SharedObject; private var _enable:Boolean; public var btSoundOff:SimpleButton; public var btSoundOn:SimpleButton; public function SoundButton(){ btSoundOff.addEventListener(MouseEvent.CLICK, setSoundOn); btSoundOn.addEventListener(MouseEvent.CLICK, setSoundOff); readSO(); } private function saveSound(_arg1:Boolean):void{ _soData.data.sound = _arg1; _soData.flush(); } private function setSoundOff(_arg1:Event):void{ enable = false; } private function get enable():Boolean{ return (_enable); } private function set enable(_arg1:Boolean){ if (_arg1 == false){ btSoundOff.visible = true; btSoundOn.visible = !(btSoundOff.visible); } else { btSoundOff.visible = false; btSoundOn.visible = !(btSoundOff.visible); }; _enable = _arg1; onSetSound(_arg1); } private function setSoundOn(_arg1:Event):void{ enable = true; SoundController.sndButtonClick.play(); } private function onSetSound(_arg1:Boolean):void{ saveSound(_arg1); SoundController.enable = _arg1; } private function readSO():void{ var _local1:*; var _local2:*; _soData = SharedObject.getLocal("soundData"); for (_local1 in _soData.data) { trace(((_local1 + ": ") + _soData.data[_local1])); }; _local2 = ((_soData.data.sound)==undefined) ? true : _soData.data.sound; enable = _local2; } public function initBtn():void{ readSO(); } } }//package
Section 92
//SoundController (SoundController) package { import flash.media.*; public class SoundController { private var indexLoaded:int;// = 0 public static var sndTwoCardsRemoved:TwoCardsRemoved; public static var sndNewDeal:NewDeal; public static var sndButtonClick:ButtonClick; private static var __enable:Boolean; public static var sndMoreCards:MoreCards; public static var sndUnAccessibleCard:UnAccessibleCard; public static var sndGameOver:GameOver; public static var sndCardClick:CardClick; public static var sndAllPilesRemoved:AllPilesRemoved; public static var sndScorePing:ScorePing; public static var sndCardDeselect:CardDeselect; public static var sndRoundComplete:RoundComplete; public function SoundController(){ sndAllPilesRemoved = new AllPilesRemoved(); sndCardClick = new CardClick(); sndButtonClick = new ButtonClick(); sndNewDeal = new NewDeal(); sndGameOver = new GameOver(); sndScorePing = new ScorePing(); sndUnAccessibleCard = new UnAccessibleCard(); sndCardDeselect = new CardDeselect(); sndMoreCards = new MoreCards(); sndRoundComplete = new RoundComplete(); sndTwoCardsRemoved = new TwoCardsRemoved(); } public static function get enable():Boolean{ return (Boolean(true)); } public static function set enable(_arg1:Boolean){ var _local2:SoundTransform = new SoundTransform(); SoundMixer.soundTransform = new SoundTransform(Number(_arg1)); } } }//package
Section 93
//StartPanel (StartPanel) package { import flash.display.*; import flash.events.*; import gs.*; import flash.utils.*; import flash.net.*; public class StartPanel extends MovieClip { private var _mainClass:Main; private var _soData:SharedObject; public var _sbtHigh:SimpleButton; public var _sbtInstructions:SimpleButton; public var _smcInstructions:MovieClip; public var _sbtPlay:SimpleButton; public var btnPlayMoreGames:SimpleButton; public var btnGoToWebsite:SimpleButton; public var _smcSound:SoundButton; public var _smcHighScore:HighScorePanel; public var enableShow:Boolean; public var _smcShowInstructions:MovieClip; public var _smcCredits:MovieClip; public var _sbtCredits:SimpleButton; public var _btSolParadise:SimpleButton; public function StartPanel(_arg1:Main, _arg2:Boolean=false){ _mainClass = _arg1; init(_arg2); } private function onShowUs(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); var _local2:URLRequest = new URLRequest("http://www.makeflashnotwar.com/"); navigateToURL(_local2); } private function onCredits(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _smcCredits.visible = true; } private function onCloseInst(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _smcInstructions.visible = false; } private function showInstructions(_arg1:Boolean):void{ (_soData.data.show = _arg1); _soData.flush(); } private function onShowArt(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); var _local2:URLRequest = new URLRequest("http://www.vectory.mybin.eu"); navigateToURL(_local2); } private function onSetShowInstructions(_arg1:Boolean):void{ showInstructions(_arg1); (enableShow = _arg1); } private function onShowParadiseFaded():void{ _btSolParadise.visible = false; _btSolParadise.alpha = 1; } private function init(_arg1:Boolean=false):void{ readSO(); _smcHighScore.init("start"); _smcInstructions.visible = false; _smcInstructions._sbtResume.visible = false; _smcInstructions._sbtBack.addEventListener(MouseEvent.CLICK, onCloseInst); btnGoToWebsite.addEventListener(MouseEvent.CLICK, goToWebsite); btnPlayMoreGames.addEventListener(MouseEvent.CLICK, playMoreGames); _btSolParadise.addEventListener(MouseEvent.CLICK, playMoreGames); _smcCredits.visible = false; _smcCredits._sbtBack.addEventListener(MouseEvent.CLICK, onCloseCredits); _smcCredits._sbtArt.addEventListener(MouseEvent.CLICK, onShowArt); _smcCredits._sbtOur.addEventListener(MouseEvent.CLICK, onShowUs); _sbtPlay.addEventListener(MouseEvent.CLICK, onStartGame); _sbtInstructions.addEventListener(MouseEvent.CLICK, onInstructions); _sbtCredits.addEventListener(MouseEvent.CLICK, onCredits); _sbtHigh.addEventListener(MouseEvent.CLICK, onHigh); _smcShowInstructions.addEventListener(MouseEvent.CLICK, onShow); if (_arg1){ setTimeout(hideShowParadise, 3000); } else { _btSolParadise.visible = false; }; } private function onCloseCredits(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _smcCredits.visible = false; } private function goToWebsite(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); var _local2:URLRequest = new URLRequest("http://www.glowingeyegames.com/index.html"); navigateToURL(_local2); } public function onHigh(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _smcHighScore.visible = true; } private function onStartGame(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _mainClass.initGame(enableShow); } public function setMinScore(_arg1:Number):void{ _mainClass.setMinScore(_arg1); } private function onInstructions(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); _smcInstructions.visible = true; } private function playMoreGames(_arg1:MouseEvent):void{ SoundController.sndButtonClick.play(); var _local2:URLRequest = new URLRequest("http://www.solitaireparadise.com"); navigateToURL(_local2); } private function readSO():void{ var _local1:*; var _local2:*; _soData = SharedObject.getLocal("showInstructions"); for (_local1 in _soData.data) { }; _local2 = ((_soData.data.show)==undefined) ? true : _soData.data.show; (enableShow = _local2); if (_local2){ _smcShowInstructions.gotoAndStop(2); } else { _smcShowInstructions.gotoAndStop(1); }; } private function onShow(_arg1:MouseEvent):void{ if (_smcShowInstructions.currentFrame == 1){ _smcShowInstructions.gotoAndStop(2); onSetShowInstructions(true); } else { _smcShowInstructions.gotoAndStop(1); onSetShowInstructions(false); }; } private function hideShowParadise():void{ _btSolParadise.removeEventListener(MouseEvent.CLICK, onShowUs); TweenLite.to(_btSolParadise, 0.5, {alpha:0, onComplete:onShowParadiseFaded}); } } }//package
Section 94
//TimerClass (TimerClass) package { import flash.display.*; import flash.events.*; import flash.utils.*; import flash.text.*; public class TimerClass extends MovieClip { public var _nTimeTarget:Number; private var _nSeconds:Number;// = 0 public var _nTimer:Number; public var _nBonusLeft:Number; private var _nTotalFrames:Number; private var _fTickFunction:Function;// = null private var _bTimerOn:Boolean; private var _fTimeRanOut:Function; private var _nOldTime:Number; public var _nTimeWarning:Number; private var _fEnterFrameFunction:Function; private var _fBonusTick:Function; private var _nStartingTime:Number; public var timerDisplay:TextField; public var _smcTimerTarget:MovieClip; public var _smcTimerModifier:MovieClip; public var _sTimeModifier:String; private var _nBonusPerSecond:Number; private var _bWarned:Boolean; public var _bPlayerWarned:Boolean; public var _Game:Game; private var _fTimeTargetFunction:Function; public function TimerClass(){ timerDisplay = (getChildAt(0) as TextField); } public function startTimer():void{ _nOldTime = (getTimer() / 1000); _bTimerOn = true; } public function countUp(_arg1:Event):void{ var _local2:Number = (getTimer() / 1000); if (_bTimerOn == true){ _nTimer = (_nTimer + (_local2 - _nOldTime)); if ((((_nTimer > _nTimeWarning)) && ((_bPlayerWarned == false)))){ _bPlayerWarned = true; }; }; _nOldTime = _local2; var _local3:Number = Math.floor((_nTimer / 60)); var _local4:Number = Math.floor((_nTimer % 60)); if (_local4 != _nSeconds){ _nSeconds = _local4; if (_fTickFunction != null){ _fTickFunction(); }; _local3 = (_local3 % 24); if (_local3 > 11){ _local3 = (_local3 % 12); _smcTimerModifier._sdtTimerModifier.text = "PM"; } else { _smcTimerModifier._sdtTimerModifier.text = "AM"; }; if (_local3 == 0){ _local3 = 12; }; if (_local4 > 9){ timerDisplay.text = ((String(_local3) + ":") + String(_local4)); } else { timerDisplay.text = ((String(_local3) + ":") + ("0" + String(_local4))); }; }; } public function setTargetFunction(_arg1:Function):void{ _fTimeTargetFunction = _arg1; } public function addTime(_arg1:Number):void{ setTime((_nTimer + _arg1)); } public function setEndFunction(_arg1:Function):void{ _fTimeRanOut = _arg1; } public function startNewCountDown(_arg1:Number):void{ clearTimer(); _nStartingTime = _arg1; setTime(_arg1); _nSeconds = Math.floor((_nTimer % 60)); _nOldTime = (getTimer() / 1000); _bTimerOn = true; if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); }; _fEnterFrameFunction = countDown; this.addEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); } public function setTickFunction(_arg1:Function):void{ _fTickFunction = _arg1; } public function playBonusCountdown(_arg1:Function):void{ _fBonusTick = _arg1; if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); }; _fEnterFrameFunction = countDown; this.addEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); } public function getTimeTarget():Number{ return (_nTimeTarget); } public function playBonusCountUp(_arg1:Function):void{ _bPlayerWarned = true; _fBonusTick = _arg1; if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); }; _fEnterFrameFunction = bonusCountUp; this.addEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); } public function getTime():Number{ return (_nTimer); } public function setTimeTarget(_arg1:Number):void{ _nTimeTarget = _arg1; _nTimeWarning = (_nTimeTarget - 10); var _local2:Number = Math.floor((_arg1 / 60)); var _local3:Number = Math.floor((_arg1 % 60)); if (_local2 == 0){ _local2 = 12; }; if (_local3 > 9){ _smcTimerTarget._sdtTimerTarget.text = ((String(_local2) + ":") + String(_local3)); } else { _smcTimerTarget._sdtTimerTarget.text = ((String(_local2) + ":") + ("0" + String(_local3))); }; } public function onInitialize(_arg1:Game):void{ _Game = _arg1; _nTotalFrames = this.totalFrames; this.stop(); _bTimerOn = false; _bWarned = false; _nBonusPerSecond = (_Game._nFullTimeBonus / _Game._nRoundTime); _nBonusLeft = _Game._nFullTimeBonus; setTickFunction(decrementBonus); } public function countDown(_arg1:Event):void{ var _local2:Number = (getTimer() / 1000); if (_bTimerOn == true){ _nTimer = (_nTimer - (_local2 - _nOldTime)); if (_nTimer <= 0){ _nTimer = 0; _bTimerOn = false; _fTimeRanOut(); }; }; _nOldTime = _local2; var _local3:Number = Math.floor(_nTimer); if (_local3 != _nSeconds){ _nSeconds = _local3; if (_fTickFunction != null){ _fTickFunction(); }; }; _nBonusLeft = Math.floor((_nSeconds * _nBonusPerSecond)); timerDisplay.text = String(_nBonusLeft); } private function decrementBonus():void{ var _local1:int = Math.floor((_nBonusPerSecond * _nTimer)); timerDisplay.text = String(_local1); } public function setTime(_arg1:Number):void{ _nTimer = _arg1; } public function startNewCountUp(_arg1:Number):void{ clearTimer(); _bPlayerWarned = false; _nStartingTime = _arg1; setTime(_arg1); _nOldTime = (getTimer() / 1000); if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); }; _fEnterFrameFunction = countUp; this.addEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); _bTimerOn = true; } public function stopTimer():void{ _bTimerOn = false; } public function bonusCountUp(_arg1:Event):void{ var _local2:Number; var _local3:Number; if (_bTimerOn == true){ _nTimer = (_nTimer + 1); if (_nTimer > _nTimeTarget){ _nTimer = _nTimeTarget; }; _local2 = Math.floor((_nTimer / 60)); _local3 = Math.floor((_nTimer % 60)); if (_local3 != _nSeconds){ _nSeconds = _local3; if (_fTickFunction != null){ _fTickFunction(); }; _local2 = (_local2 % 24); if (_local2 > 11){ _local2 = 0; _smcTimerModifier._sdtTimerModifier.text = "PM"; } else { _smcTimerModifier._sdtTimerModifier.text = "AM"; }; if (_local2 == 0){ _local2 = 12; }; if (_local3 > 9){ timerDisplay.text = ((String(_local2) + ":") + String(_local3)); } else { timerDisplay.text = ((String(_local2) + ":") + ("0" + String(_local3))); }; }; _fBonusTick(); if (_nTimer == _nTimeTarget){ _fTimeTargetFunction(); _fTimeTargetFunction = new Function(); clearTimer(); }; }; } public function bonusCountDown(_arg1:Event):void{ var _local2:int = this.currentFrame; if (_local2 == _nTotalFrames){ if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); }; _fTimeRanOut(); } else { _local2++; this.gotoAndStop(_local2); _fBonusTick(); }; } public function clearTimer():void{ if (this.hasEventListener(Event.ENTER_FRAME)){ this.removeEventListener(Event.ENTER_FRAME, _fEnterFrameFunction); }; } } }//package
Section 95
//TwoCardsRemoved (TwoCardsRemoved) package { import flash.media.*; public dynamic class TwoCardsRemoved extends Sound { } }//package
Section 96
//UnAccessibleCard (UnAccessibleCard) package { import flash.media.*; public dynamic class UnAccessibleCard extends Sound { } }//package
Section 97
//Utils (Utils) package { public class Utils { private static const A:int = 3423313; private static const C:int = 2435; public static var numRandomSeed:int; public static function getRandomValue(_arg1:int):int{ numRandomSeed = ((numRandomSeed * A) % 2147352576); var _local2:int = (Math.floor(((numRandomSeed * _arg1) / C)) % _arg1); return (_local2); } } }//package
Section 98
//WildCard (WildCard) package { import flash.display.*; import flash.text.*; public dynamic class WildCard extends Sprite { public var _txtHelp:TextField; public var mcBugless:MovieClip; } }//package

Library Items

Symbol 1 Sound {UnAccessibleCard}
Symbol 2 Sound {TwoCardsRemoved}
Symbol 3 Sound {ScorePing}
Symbol 4 Sound {RoundComplete}
Symbol 5 Sound {AllPilesRemoved}
Symbol 6 Sound {ButtonClick}
Symbol 7 Sound {MoreCards}
Symbol 8 Sound {GameOver}
Symbol 9 Sound {NewDeal}
Symbol 10 Sound {CardDeselect}
Symbol 11 Sound {CardClick}
Symbol 12 GraphicUsed by:13
Symbol 13 MovieClip {Shield}Uses:12
Symbol 14 FontUsed by:15 19 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 54 55 124 152 164 165 166 167 169 365 366 367 369 375
Symbol 15 TextUses:14Used by:16
Symbol 16 MovieClip {nextCard_mc}Uses:15
Symbol 17 BitmapUsed by:18
Symbol 18 GraphicUses:17Used by:58 143 201 380
Symbol 19 TextUses:14Used by:58
Symbol 20 BitmapUsed by:21 48 65
Symbol 21 GraphicUses:20Used by:27 194
Symbol 22 FontUsed by:23 49 56 66 70 122 124 133 135 137 140 141 156 174 176 179 192 200 363 369 379
Symbol 23 TextUses:22Used by:27
Symbol 24 BitmapUsed by:25 26 50 51 67 193
Symbol 25 GraphicUses:24Used by:27 194
Symbol 26 GraphicUses:24Used by:27
Symbol 27 ButtonUses:21 23 25 26Used by:58 170 206
Symbol 28 EditableTextUses:14Used by:58
Symbol 29 EditableTextUses:14Used by:58
Symbol 30 EditableTextUses:14Used by:58
Symbol 31 EditableTextUses:14Used by:58
Symbol 32 EditableTextUses:14Used by:58
Symbol 33 EditableTextUses:14Used by:58
Symbol 34 EditableTextUses:14Used by:58
Symbol 35 EditableTextUses:14Used by:58
Symbol 36 EditableTextUses:14Used by:58
Symbol 37 EditableTextUses:14Used by:58
Symbol 38 EditableTextUses:14Used by:58
Symbol 39 EditableTextUses:14Used by:58
Symbol 40 EditableTextUses:14Used by:58
Symbol 41 EditableTextUses:14Used by:58
Symbol 42 EditableTextUses:14Used by:58
Symbol 43 EditableTextUses:14Used by:58
Symbol 44 EditableTextUses:14Used by:58
Symbol 45 EditableTextUses:14Used by:58
Symbol 46 EditableTextUses:14Used by:58
Symbol 47 EditableTextUses:14Used by:58
Symbol 48 GraphicUses:20Used by:53 57 123 134 136 138 142 157 177 178 180
Symbol 49 TextUses:22Used by:53
Symbol 50 GraphicUses:24Used by:53 57 123 134 136 138 142 157 177 178 180
Symbol 51 GraphicUses:24Used by:53 57 123 134 136 138 142 157 177 178 180
Symbol 52 GraphicUsed by:53 57 123 134 136 138 142 157 177 178 180
Symbol 53 ButtonUses:48 49 50 51 52Used by:58 143
Symbol 54 EditableTextUses:14Used by:58
Symbol 55 TextUses:14Used by:58
Symbol 56 TextUses:22Used by:57
Symbol 57 ButtonUses:48 56 50 51 52Used by:58
Symbol 58 MovieClip {HighScorePanel}Uses:18 19 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 53 54 55 57Used by:206 377
Symbol 59 BitmapUsed by:60
Symbol 60 GraphicUses:59Used by:61 62
Symbol 61 MovieClipUses:60Used by:62
Symbol 62 Button {MFNWLogo}Uses:61 60Used by:201
Symbol 63 GraphicUsed by:64
Symbol 64 MovieClip {McMask}Uses:63Used by:206
Symbol 65 GraphicUses:20Used by:69 71 175 364
Symbol 66 TextUses:22Used by:69
Symbol 67 GraphicUses:24Used by:69 71 175 364
Symbol 68 GraphicUsed by:69 71 175 364
Symbol 69 Button {btnMenu}Uses:65 66 67 68Used by:403
Symbol 70 TextUses:22Used by:71
Symbol 71 Button {btnUndo}Uses:65 70 67 68Used by:403
Symbol 72 BitmapUsed by:73
Symbol 73 GraphicUses:72Used by:77
Symbol 74 BitmapUsed by:75 76 82
Symbol 75 GraphicUses:74Used by:77
Symbol 76 GraphicUses:74Used by:77
Symbol 77 ButtonUses:73 75 76Used by:84
Symbol 78 BitmapUsed by:79
Symbol 79 GraphicUses:78Used by:83
Symbol 80 BitmapUsed by:81
Symbol 81 GraphicUses:80Used by:83
Symbol 82 GraphicUses:74Used by:83
Symbol 83 ButtonUses:79 81 82Used by:84
Symbol 84 MovieClip {SoundButton}Uses:77 83Used by:125 206
Symbol 85 BitmapUsed by:86 155 173 203 373
Symbol 86 GraphicUses:85Used by:Timeline
Symbol 87 FontUsed by:88
Symbol 88 EditableTextUses:87Used by:Timeline
Symbol 89 GraphicUsed by:403
Symbol 90 BitmapUsed by:91
Symbol 91 GraphicUses:90Used by:125
Symbol 92 BitmapUsed by:93
Symbol 93 GraphicUses:92Used by:94
Symbol 94 MovieClipUses:93Used by:125
Symbol 95 BitmapUsed by:96
Symbol 96 GraphicUses:95Used by:125
Symbol 97 FontUsed by:98 99 100 101 104 381
Symbol 98 TextUses:97Used by:125
Symbol 99 TextUses:97Used by:125
Symbol 100 TextUses:97Used by:125
Symbol 101 TextUses:97Used by:125
Symbol 102 FontUsed by:103 105 110 139 158 159 160 161 168 171 195 196 370 374 378
Symbol 103 EditableTextUses:102Used by:125
Symbol 104 EditableTextUses:97Used by:125
Symbol 105 EditableTextUses:102Used by:125
Symbol 106 BitmapUsed by:109
Symbol 107 BitmapUsed by:109
Symbol 108 BitmapUsed by:109
Symbol 109 GraphicUses:106 107 108Used by:125
Symbol 110 EditableTextUses:102Used by:111
Symbol 111 MovieClip {TimerClass}Uses:110Used by:125 403
Symbol 112 FontUsed by:113
Symbol 113 EditableTextUses:112Used by:114
Symbol 114 MovieClipUses:113Used by:115
Symbol 115 MovieClip {pyramid_fla.mcTimeBonus_8}Uses:114Used by:125
Symbol 116 BitmapUsed by:117 120
Symbol 117 GraphicUses:116Used by:121
Symbol 118 BitmapUsed by:119
Symbol 119 GraphicUses:118Used by:121
Symbol 120 GraphicUses:116Used by:121
Symbol 121 ButtonUses:117 119 120Used by:125
Symbol 122 TextUses:22Used by:123
Symbol 123 ButtonUses:48 122 50 51 52Used by:125
Symbol 124 EditableTextUses:14 22Used by:125
Symbol 125 MovieClip {BackGround}Uses:91 94 96 98 99 100 101 103 104 105 109 84 111 115 121 123 124Used by:403
Symbol 126 BitmapUsed by:127
Symbol 127 GraphicUses:126Used by:129
Symbol 128 GraphicUsed by:129
Symbol 129 ButtonUses:127 128Used by:144
Symbol 130 BitmapUsed by:131
Symbol 131 GraphicUses:130Used by:132
Symbol 132 MovieClipUses:131Used by:144
Symbol 133 TextUses:22Used by:134
Symbol 134 ButtonUses:48 133 50 51 52Used by:144
Symbol 135 TextUses:22Used by:136 178
Symbol 136 ButtonUses:48 135 50 51 52Used by:144
Symbol 137 TextUses:22Used by:138
Symbol 138 ButtonUses:48 137 50 51 52Used by:144
Symbol 139 TextUses:102Used by:143
Symbol 140 TextUses:22Used by:143
Symbol 141 TextUses:22Used by:142
Symbol 142 ButtonUses:48 141 50 51 52Used by:143 201 376 377
Symbol 143 MovieClipUses:18 139 140 53 142Used by:144 206
Symbol 144 MovieClip {Menu}Uses:129 132 134 136 138 143Used by:403
Symbol 145 BitmapUsed by:146
Symbol 146 GraphicUses:145Used by:147
Symbol 147 MovieClip {CardBack}Uses:146Used by:403
Symbol 148 BitmapUsed by:149
Symbol 149 GraphicUses:148Used by:153
Symbol 150 GraphicUsed by:151
Symbol 151 MovieClipUses:150Used by:153 402
Symbol 152 TextUses:14Used by:153
Symbol 153 MovieClip {WildCard}Uses:149 151 152Used by:403
Symbol 154 BitmapUsed by:155 173
Symbol 155 GraphicUses:154 85Used by:170 377
Symbol 156 TextUses:22Used by:157
Symbol 157 ButtonUses:48 156 50 51 52Used by:170
Symbol 158 EditableTextUses:102Used by:170
Symbol 159 EditableTextUses:102Used by:170
Symbol 160 EditableTextUses:102Used by:170
Symbol 161 EditableTextUses:102Used by:170
Symbol 162 BitmapUsed by:163
Symbol 163 GraphicUses:162Used by:170
Symbol 164 TextUses:14Used by:170
Symbol 165 TextUses:14Used by:170
Symbol 166 TextUses:14Used by:170
Symbol 167 TextUses:14Used by:170
Symbol 168 EditableTextUses:102Used by:170
Symbol 169 TextUses:14Used by:170
Symbol 170 MovieClip {NextRoundPanel}Uses:155 157 158 159 160 161 163 164 165 166 167 168 169 27Used by:403
Symbol 171 TextUses:102Used by:206
Symbol 172 BitmapUsed by:173
Symbol 173 GraphicUses:172 154 85Used by:206
Symbol 174 TextUses:22Used by:175
Symbol 175 ButtonUses:65 174 67 68Used by:206  Timeline
Symbol 176 TextUses:22Used by:177
Symbol 177 ButtonUses:48 176 50 51 52Used by:206
Symbol 178 ButtonUses:48 135 50 51 52Used by:206
Symbol 179 TextUses:22Used by:180
Symbol 180 ButtonUses:48 179 50 51 52Used by:206
Symbol 181 BitmapUsed by:182
Symbol 182 GraphicUses:181Used by:185
Symbol 183 BitmapUsed by:184
Symbol 184 GraphicUses:183Used by:185
Symbol 185 ButtonUses:182 184Used by:191
Symbol 186 BitmapUsed by:187
Symbol 187 GraphicUses:186Used by:190
Symbol 188 BitmapUsed by:189
Symbol 189 GraphicUses:188Used by:190
Symbol 190 ButtonUses:187 189Used by:191
Symbol 191 MovieClipUses:185 190Used by:206
Symbol 192 TextUses:22Used by:194
Symbol 193 GraphicUses:24Used by:194
Symbol 194 ButtonUses:21 192 25 193Used by:206
Symbol 195 TextUses:102Used by:201
Symbol 196 TextUses:102Used by:199
Symbol 197 GraphicUsed by:199
Symbol 198 GraphicUsed by:199
Symbol 199 ButtonUses:196 197 198Used by:201
Symbol 200 TextUses:22Used by:201
Symbol 201 MovieClipUses:18 195 199 142 62 200Used by:206
Symbol 202 BitmapUsed by:203
Symbol 203 GraphicUses:202 85Used by:205
Symbol 204 GraphicUsed by:205
Symbol 205 ButtonUses:203 204Used by:206
Symbol 206 MovieClip {StartPanel}Uses:171 173 64 175 177 178 180 191 27 194 84 143 201 58 205Used by:403
Symbol 207 BitmapUsed by:208
Symbol 208 GraphicUses:207Used by:209
Symbol 209 MovieClip {c1}Uses:208Used by:403
Symbol 210 BitmapUsed by:211
Symbol 211 GraphicUses:210Used by:212
Symbol 212 MovieClip {c2}Uses:211Used by:403
Symbol 213 BitmapUsed by:214
Symbol 214 GraphicUses:213Used by:215
Symbol 215 MovieClip {c3}Uses:214Used by:403
Symbol 216 BitmapUsed by:217
Symbol 217 GraphicUses:216Used by:218
Symbol 218 MovieClip {c4}Uses:217Used by:403
Symbol 219 BitmapUsed by:220
Symbol 220 GraphicUses:219Used by:221
Symbol 221 MovieClip {c5}Uses:220Used by:403
Symbol 222 BitmapUsed by:223
Symbol 223 GraphicUses:222Used by:224
Symbol 224 MovieClip {c6}Uses:223Used by:403
Symbol 225 BitmapUsed by:226
Symbol 226 GraphicUses:225Used by:227
Symbol 227 MovieClip {c7}Uses:226Used by:403
Symbol 228 BitmapUsed by:229
Symbol 229 GraphicUses:228Used by:230
Symbol 230 MovieClip {c8}Uses:229Used by:403
Symbol 231 BitmapUsed by:232
Symbol 232 GraphicUses:231Used by:233
Symbol 233 MovieClip {c9}Uses:232Used by:403
Symbol 234 BitmapUsed by:235
Symbol 235 GraphicUses:234Used by:236
Symbol 236 MovieClip {c10}Uses:235Used by:403
Symbol 237 BitmapUsed by:238
Symbol 238 GraphicUses:237Used by:239
Symbol 239 MovieClip {c11}Uses:238Used by:403
Symbol 240 BitmapUsed by:241
Symbol 241 GraphicUses:240Used by:242
Symbol 242 MovieClip {c12}Uses:241Used by:403
Symbol 243 BitmapUsed by:244
Symbol 244 GraphicUses:243Used by:245
Symbol 245 MovieClip {c13}Uses:244Used by:403
Symbol 246 BitmapUsed by:247
Symbol 247 GraphicUses:246Used by:248
Symbol 248 MovieClip {d1}Uses:247Used by:403
Symbol 249 BitmapUsed by:250
Symbol 250 GraphicUses:249Used by:251
Symbol 251 MovieClip {d2}Uses:250Used by:403
Symbol 252 BitmapUsed by:253
Symbol 253 GraphicUses:252Used by:254
Symbol 254 MovieClip {d3}Uses:253Used by:403
Symbol 255 BitmapUsed by:256
Symbol 256 GraphicUses:255Used by:257
Symbol 257 MovieClip {d4}Uses:256Used by:403
Symbol 258 BitmapUsed by:259
Symbol 259 GraphicUses:258Used by:260
Symbol 260 MovieClip {d5}Uses:259Used by:403
Symbol 261 BitmapUsed by:262
Symbol 262 GraphicUses:261Used by:263
Symbol 263 MovieClip {d6}Uses:262Used by:403
Symbol 264 BitmapUsed by:265
Symbol 265 GraphicUses:264Used by:266
Symbol 266 MovieClip {d7}Uses:265Used by:403
Symbol 267 BitmapUsed by:268
Symbol 268 GraphicUses:267Used by:269
Symbol 269 MovieClip {d8}Uses:268Used by:403
Symbol 270 BitmapUsed by:271
Symbol 271 GraphicUses:270Used by:272
Symbol 272 MovieClip {d9}Uses:271Used by:403
Symbol 273 BitmapUsed by:274
Symbol 274 GraphicUses:273Used by:275
Symbol 275 MovieClip {d10}Uses:274Used by:403
Symbol 276 BitmapUsed by:277
Symbol 277 GraphicUses:276Used by:278
Symbol 278 MovieClip {d11}Uses:277Used by:403
Symbol 279 BitmapUsed by:280
Symbol 280 GraphicUses:279Used by:281
Symbol 281 MovieClip {d12}Uses:280Used by:403
Symbol 282 BitmapUsed by:283
Symbol 283 GraphicUses:282Used by:284
Symbol 284 MovieClip {d13}Uses:283Used by:403
Symbol 285 BitmapUsed by:286
Symbol 286 GraphicUses:285Used by:287
Symbol 287 MovieClip {h1}Uses:286Used by:403
Symbol 288 BitmapUsed by:289
Symbol 289 GraphicUses:288Used by:290
Symbol 290 MovieClip {h2}Uses:289Used by:403
Symbol 291 BitmapUsed by:292
Symbol 292 GraphicUses:291Used by:293
Symbol 293 MovieClip {h3}Uses:292Used by:403
Symbol 294 BitmapUsed by:295
Symbol 295 GraphicUses:294Used by:296
Symbol 296 MovieClip {h4}Uses:295Used by:403
Symbol 297 BitmapUsed by:298
Symbol 298 GraphicUses:297Used by:299
Symbol 299 MovieClip {h5}Uses:298Used by:403
Symbol 300 BitmapUsed by:301
Symbol 301 GraphicUses:300Used by:302
Symbol 302 MovieClip {h6}Uses:301Used by:403
Symbol 303 BitmapUsed by:304
Symbol 304 GraphicUses:303Used by:305
Symbol 305 MovieClip {h7}Uses:304Used by:403
Symbol 306 BitmapUsed by:307
Symbol 307 GraphicUses:306Used by:308
Symbol 308 MovieClip {h8}Uses:307Used by:403
Symbol 309 BitmapUsed by:310
Symbol 310 GraphicUses:309Used by:311
Symbol 311 MovieClip {h9}Uses:310Used by:403
Symbol 312 BitmapUsed by:313
Symbol 313 GraphicUses:312Used by:314
Symbol 314 MovieClip {h10}Uses:313Used by:403
Symbol 315 BitmapUsed by:316
Symbol 316 GraphicUses:315Used by:317
Symbol 317 MovieClip {h11}Uses:316Used by:403
Symbol 318 BitmapUsed by:319
Symbol 319 GraphicUses:318Used by:320
Symbol 320 MovieClip {h12}Uses:319Used by:403
Symbol 321 BitmapUsed by:322
Symbol 322 GraphicUses:321Used by:323
Symbol 323 MovieClip {h13}Uses:322Used by:403
Symbol 324 BitmapUsed by:325
Symbol 325 GraphicUses:324Used by:326
Symbol 326 MovieClip {s1}Uses:325Used by:403
Symbol 327 BitmapUsed by:328
Symbol 328 GraphicUses:327Used by:329
Symbol 329 MovieClip {s2}Uses:328Used by:403
Symbol 330 BitmapUsed by:331
Symbol 331 GraphicUses:330Used by:332
Symbol 332 MovieClip {s3}Uses:331Used by:403
Symbol 333 BitmapUsed by:334
Symbol 334 GraphicUses:333Used by:335
Symbol 335 MovieClip {s4}Uses:334Used by:403
Symbol 336 BitmapUsed by:337
Symbol 337 GraphicUses:336Used by:338
Symbol 338 MovieClip {s5}Uses:337Used by:403
Symbol 339 BitmapUsed by:340
Symbol 340 GraphicUses:339Used by:341
Symbol 341 MovieClip {s6}Uses:340Used by:403
Symbol 342 BitmapUsed by:343
Symbol 343 GraphicUses:342Used by:344
Symbol 344 MovieClip {s7}Uses:343Used by:403
Symbol 345 BitmapUsed by:346
Symbol 346 GraphicUses:345Used by:347
Symbol 347 MovieClip {s8}Uses:346Used by:403
Symbol 348 BitmapUsed by:349
Symbol 349 GraphicUses:348Used by:350
Symbol 350 MovieClip {s9}Uses:349Used by:403
Symbol 351 BitmapUsed by:352
Symbol 352 GraphicUses:351Used by:353
Symbol 353 MovieClip {s10}Uses:352Used by:403
Symbol 354 BitmapUsed by:355
Symbol 355 GraphicUses:354Used by:356
Symbol 356 MovieClip {s11}Uses:355Used by:403
Symbol 357 BitmapUsed by:358
Symbol 358 GraphicUses:357Used by:359
Symbol 359 MovieClip {s12}Uses:358Used by:403
Symbol 360 BitmapUsed by:361
Symbol 361 GraphicUses:360Used by:362
Symbol 362 MovieClip {s13}Uses:361Used by:403
Symbol 363 TextUses:22Used by:364
Symbol 364 ButtonUses:65 363 67 68Used by:377 380
Symbol 365 TextUses:14Used by:377
Symbol 366 TextUses:14Used by:377
Symbol 367 TextUses:14Used by:377
Symbol 368 GraphicUsed by:377
Symbol 369 EditableTextUses:14 22Used by:377
Symbol 370 EditableTextUses:102Used by:377
Symbol 371 BitmapUsed by:372 373
Symbol 372 GraphicUses:371Used by:377
Symbol 373 GraphicUses:371 85Used by:376
Symbol 374 EditableTextUses:102Used by:376
Symbol 375 TextUses:14Used by:376
Symbol 376 MovieClipUses:373 374 375 142Used by:377
Symbol 377 MovieClip {GameOverPanel}Uses:155 364 142 365 366 367 368 369 370 372 376 58Used by:403
Symbol 378 TextUses:102Used by:380
Symbol 379 TextUses:22Used by:380
Symbol 380 MovieClip {instructions}Uses:18 378 364 379Used by:403
Symbol 381 TextUses:97Used by:403
Symbol 382 BitmapUsed by:383
Symbol 383 GraphicUses:382Used by:402
Symbol 384 BitmapUsed by:385
Symbol 385 GraphicUses:384Used by:402
Symbol 386 BitmapUsed by:387
Symbol 387 GraphicUses:386Used by:402
Symbol 388 BitmapUsed by:389
Symbol 389 GraphicUses:388Used by:402
Symbol 390 BitmapUsed by:391
Symbol 391 GraphicUses:390Used by:402
Symbol 392 BitmapUsed by:393
Symbol 393 GraphicUses:392Used by:402
Symbol 394 BitmapUsed by:395
Symbol 395 GraphicUses:394Used by:402
Symbol 396 BitmapUsed by:397
Symbol 397 GraphicUses:396Used by:402
Symbol 398 BitmapUsed by:399
Symbol 399 GraphicUses:398Used by:402
Symbol 400 BitmapUsed by:401
Symbol 401 GraphicUses:400Used by:402
Symbol 402 MovieClip {cardGlow}Uses:151 383 385 387 389 391 393 395 397 399 401Used by:403
Symbol 403 MovieClipUses:89 125 144 111 147 153 71 69 170 206 209 212 215 218 221 224 227 230 233 236 239 242 245 248 251 254 257 260 263 266 269 272 275 278 281 284 287 290 293 296 299 302 305 308 311 314 317 320 323 326 329 332 335 338 341 344 347 350 353 356 359 362 377 380 381 402Used by:Timeline

Instance Names

"percent"Frame 1Symbol 88 EditableText
"btnPlayAgain"Frame 2Symbol 175 Button
"_btPlayMore"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 27 Button
"txtP1"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 28 EditableText
"txtS1"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 29 EditableText
"txtP2"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 30 EditableText
"txtS2"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 31 EditableText
"txtP3"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 32 EditableText
"txtS3"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 33 EditableText
"txtP4"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 34 EditableText
"txtS4"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 35 EditableText
"txtP5"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 36 EditableText
"txtS5"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 37 EditableText
"txtP6"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 38 EditableText
"txtS6"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 39 EditableText
"txtP7"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 40 EditableText
"txtS7"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 41 EditableText
"txtP8"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 42 EditableText
"txtS8"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 43 EditableText
"txtP9"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 44 EditableText
"txtS9"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 45 EditableText
"txtP10"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 46 EditableText
"txtS10"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 47 EditableText
"_sbtBack"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 53 Button
"txtSent"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 54 EditableText
"_sbtOnline"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 57 Button
"_sbtOnlineSend"Symbol 58 MovieClip {HighScorePanel} Frame 1Symbol 57 Button
"btSoundOff"Symbol 84 MovieClip {SoundButton} Frame 1Symbol 77 Button
"btSoundOn"Symbol 84 MovieClip {SoundButton} Frame 1Symbol 83 Button
"tf"Symbol 114 MovieClip Frame 1Symbol 113 EditableText
"mc"Symbol 115 MovieClip {pyramid_fla.mcTimeBonus_8} Frame 1Symbol 114 MovieClip
"_smcPyramid"Symbol 125 MovieClip {BackGround} Frame 1Symbol 94 MovieClip
"tfScore"Symbol 125 MovieClip {BackGround} Frame 1Symbol 103 EditableText
"tfCardRun"Symbol 125 MovieClip {BackGround} Frame 1Symbol 104 EditableText
"tfRoundNumber"Symbol 125 MovieClip {BackGround} Frame 1Symbol 105 EditableText
"mcSound"Symbol 125 MovieClip {BackGround} Frame 1Symbol 84 MovieClip {SoundButton}
"mcTimer"Symbol 125 MovieClip {BackGround} Frame 1Symbol 111 MovieClip {TimerClass}
"mcPointsEffect"Symbol 125 MovieClip {BackGround} Frame 1Symbol 115 MovieClip {pyramid_fla.mcTimeBonus_8}
"btPause"Symbol 125 MovieClip {BackGround} Frame 1Symbol 121 Button
"_sbtTakePoints"Symbol 125 MovieClip {BackGround} Frame 1Symbol 123 Button
"_txtHelp"Symbol 125 MovieClip {BackGround} Frame 1Symbol 124 EditableText
"_sbtResume"Symbol 143 MovieClip Frame 1Symbol 53 Button
"_sbtBack"Symbol 143 MovieClip Frame 1Symbol 142 Button
"_smcBoard"Symbol 144 MovieClip {Menu} Frame 1Symbol 132 MovieClip
"_sbtResume"Symbol 144 MovieClip {Menu} Frame 1Symbol 134 Button
"_sbtInstructions"Symbol 144 MovieClip {Menu} Frame 1Symbol 136 Button
"_sbtExit"Symbol 144 MovieClip {Menu} Frame 1Symbol 138 Button
"_smcInstructions"Symbol 144 MovieClip {Menu} Frame 1Symbol 143 MovieClip
"mcBugless"Symbol 153 MovieClip {WildCard} Frame 1Symbol 151 MovieClip
"_sbtNextRound"Symbol 170 MovieClip {NextRoundPanel} Frame 1Symbol 157 Button
"_stxTimeBonus"Symbol 170 MovieClip {NextRoundPanel} Frame 1Symbol 158 EditableText
"_stxDeckBonus"Symbol 170 MovieClip {NextRoundPanel} Frame 1Symbol 159 EditableText
"_stxRoundBonus"Symbol 170 MovieClip {NextRoundPanel} Frame 1Symbol 160 EditableText
"_stxScore"Symbol 170 MovieClip {NextRoundPanel} Frame 1Symbol 161 EditableText
"_stxAllCardsBonus"Symbol 170 MovieClip {NextRoundPanel} Frame 1Symbol 168 EditableText
"_btPlayMore"Symbol 170 MovieClip {NextRoundPanel} Frame 1Symbol 27 Button
"_sbtArt"Symbol 201 MovieClip Frame 1Symbol 199 Button
"_sbtBack"Symbol 201 MovieClip Frame 1Symbol 142 Button
"_sbtOur"Symbol 201 MovieClip Frame 1Symbol 62 Button {MFNWLogo}
"_sbtPlay"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 175 Button
"_sbtHigh"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 177 Button
"_sbtInstructions"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 178 Button
"_sbtCredits"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 180 Button
"_smcShowInstructions"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 191 MovieClip
"btnPlayMoreGames"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 27 Button
"btnGoToWebsite"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 194 Button
"_smcSound"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 84 MovieClip {SoundButton}
"_smcInstructions"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 143 MovieClip
"_smcCredits"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 201 MovieClip
"_smcHighScore"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 58 MovieClip {HighScorePanel}
"_btSolParadise"Symbol 206 MovieClip {StartPanel} Frame 1Symbol 205 Button
"_stxScore"Symbol 376 MovieClip Frame 1Symbol 374 EditableText
"_sbtMainMenu"Symbol 376 MovieClip Frame 1Symbol 142 Button
"_sbtOK"Symbol 377 MovieClip {GameOverPanel} Frame 1Symbol 364 Button
"_sbtMainMenu"Symbol 377 MovieClip {GameOverPanel} Frame 1Symbol 142 Button
"tfName"Symbol 377 MovieClip {GameOverPanel} Frame 1Symbol 369 EditableText
"_stxScore"Symbol 377 MovieClip {GameOverPanel} Frame 1Symbol 370 EditableText
"noHigh"Symbol 377 MovieClip {GameOverPanel} Frame 1Symbol 376 MovieClip
"_smcHigh"Symbol 377 MovieClip {GameOverPanel} Frame 1Symbol 58 MovieClip {HighScorePanel}
"_sbtOk"Symbol 380 MovieClip {instructions} Frame 1Symbol 364 Button
"mcBugless"Symbol 402 MovieClip {cardGlow} Frame 1Symbol 151 MovieClip

Special Tags

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




http://swfchan.com/27/131242/info.shtml
Created: 21/2 -2019 13:17:25 Last modified: 21/2 -2019 13:17:25 Server time: 29/04 -2024 06:25:25