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

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

DaysofourLives.swf

This is the info page for
Flash #246742

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


Text
Morbi feugiat sem ac lacus. Vestibulum ut ante. Sed tortor. Nam ornare nisl. Praesent consectetuer, turpis eu adipiscing gravida, neque nisl malesuada mi, eu ultricies sapien felis at urna.

Morbi feugiat sem ac lacus. Vestibulum ut ante. Sed tortor. Nam ornare nisl. Praesent consectetuer, turpis eu adipiscing gravida, neque nisl malesuada mi, eu ultricies sapien felis at urna.

Quit game

Quit game

Score

9999

Time

10:00

Game over

Game over

Score

Bonus

Total score

9999

9999

9999

Sign up now and keep playing!
Compete for real cash prizes!

I understand that by signing up, I will be leaving this
site and will be transferred to King.com, the world's
largest game community.

PLAY AGAIN

You build downward in alternating colours. All cards in sequence
can be moved as one unit. However, only Kings can be put on
empty spaces.

Your goal is to move all cards to the foundation. Start with the
Ace and work your way up in order. A card can be moved back
from the foundation, but doing so will result in a score penalty.

SOLITAIRE

Game starts in 00

ActionScript [AS3]

Section 1
//allunlocked (sound.allunlocked) package sound { import flash.media.*; public dynamic class allunlocked extends Sound { } }//package sound
Section 2
//badend (sound.badend) package sound { import flash.media.*; public dynamic class badend extends Sound { } }//package sound
Section 3
//card (sound.card) package sound { import flash.media.*; public dynamic class card extends Sound { } }//package sound
Section 4
//gamemusic (sound.gamemusic) package sound { import flash.media.*; public dynamic class gamemusic extends Sound { } }//package sound
Section 5
//gameovermusic (sound.gameovermusic) package sound { import flash.media.*; public dynamic class gameovermusic extends Sound { } }//package sound
Section 6
//goodend (sound.goodend) package sound { import flash.media.*; public dynamic class goodend extends Sound { } }//package sound
Section 7
//severalcards (sound.severalcards) package sound { import flash.media.*; public dynamic class severalcards extends Sound { } }//package sound
Section 8
//shuffle (sound.shuffle) package sound { import flash.media.*; public dynamic class shuffle extends Sound { } }//package sound
Section 9
//timewarning (sound.timewarning) package sound { import flash.media.*; public dynamic class timewarning extends Sound { } }//package sound
Section 10
//titlemusic (sound.titlemusic) package sound { import flash.media.*; public dynamic class titlemusic extends Sound { } }//package sound
Section 11
//unlockLevel (sound.unlockLevel) package sound { import flash.media.*; public dynamic class unlockLevel extends Sound { } }//package sound
Section 12
//Texture (src.globe.Texture) package src.globe { import flash.display.*; public dynamic class Texture extends BitmapData { public function Texture(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package src.globe
Section 13
//Triangle (src.globe.Triangle) package src.globe { import flash.display.*; import flash.geom.*; public class Triangle extends Sprite { public var v0:Vertex; public var v1:Vertex; public var v2:Vertex; public function Triangle(_arg1:Vertex, _arg2:Vertex, _arg3:Vertex, _arg4:BitmapData){ this.v0 = _arg1; this.v1 = _arg2; this.v2 = _arg3; var _local5:Matrix = new Matrix(1, 0, 0, 1, v0.x, v0.y); _local5.a = (v1.x - v0.x); _local5.b = (v1.y - v0.y); _local5.c = (v2.x - v0.x); _local5.d = (v2.y - v0.y); _local5.invert(); graphics.clear(); graphics.beginBitmapFill(_arg4, _local5, true, true); graphics.moveTo(0, 0); graphics.lineTo(1.05, 0); graphics.lineTo(0, 1.05); graphics.endFill(); } public function update(_arg1:Matrix):void{ var _local2:* = (((((v1.y - v0.y) / (v1.x - v0.x)) - ((v2.y - v0.y) / (v2.x - v0.x))))<0) ? 1 : 0; var _local3:* = (((v0.x <= v1.x))==(v0.x > v2.x)) ? 1 : 0; if ((_local2 ^ _local3) == 1){ visible = true; _arg1.tx = v0.x; _arg1.ty = v0.y; _arg1.a = (v1.x - v0.x); _arg1.b = (v1.y - v0.y); _arg1.c = (v2.x - v0.x); _arg1.d = (v2.y - v0.y); transform.matrix = _arg1; } else { visible = false; }; } } }//package src.globe
Section 14
//Vertex (src.globe.Vertex) package src.globe { public class Vertex { public var px:Number; public var py:Number; public var pz:Number; public var x:Number; public var y:Number; public function Vertex(_arg1:Number, _arg2:Number){ this.x = _arg1; this.y = _arg2; } public function setCoordinates(_arg1:Number, _arg2:Number):void{ _arg1 = (_arg1 * (Math.PI * 2)); _arg2 = (_arg2 * Math.PI); px = (Math.sin(_arg2) * Math.sin(_arg1)); py = -(Math.cos(_arg2)); pz = (Math.sin(_arg2) * Math.cos(_arg1)); } public function rot(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):void{ var _local5:Number = ((px * _arg2) - (pz * _arg1)); var _local6:Number = py; var _local7:Number = ((px * _arg1) + (pz * _arg2)); var _local8:Number = _local5; var _local9:Number = ((_local6 * _arg4) + (_local7 * _arg3)); var _local10:Number = ((_local6 * _arg3) - (_local7 * _arg4)); _local10 = ((_local10 * 0.14) + 1); x = ((_local8 / _local10) * 100); y = ((_local9 / _local10) * 100); } } }//package src.globe
Section 15
//BouncingCoin (src.intro.BouncingCoin) package src.intro { import flash.display.*; import flash.events.*; import flash.utils.*; public class BouncingCoin extends MovieClip { public var coinAnim:MovieClip; private var lastTime:Number;// = 0 private var ya:Number; private var xa:Number; private var yp:Number; private var xp:Number; private var yt:Number;// = 0 private var TICKS_PER_SECOND:Number;// = 30 public function BouncingCoin(){ xp = (yp = (xa = (ya = 0))); xp = x; yt = y; y = (y - 550); yp = y; gotoAndStop(1); } public function advanceTime(_arg1:Event):void{ var _local2:Number = getTimer(); while ((_local2 - lastTime) >= TICKS_PER_SECOND) { lastTime = (lastTime + (1000 / TICKS_PER_SECOND)); xp = (xp + xa); yp = (yp + ya); ya = (ya + 0.8); xa = (xa + 0); if (yp >= yt){ yp = yt; ya = ((-(ya) * 0.4) + 0.4); if (ya > -1){ ya = 0; }; }; }; var _local3:Number = ((_local2 - lastTime) / TICKS_PER_SECOND); x = int(((xp + (xa * _local3)) - 0.5)); y = int(((yp + (ya * _local3)) - 0.5)); var _local4:int = ((int(((_local2 / 1000) * TICKS_PER_SECOND)) % 16) + 1); coinAnim.gotoAndStop(_local4); } public function startAnim():void{ lastTime = getTimer(); addEventListener(Event.ENTER_FRAME, advanceTime); } } }//package src.intro
Section 16
//GlobeAnim (src.intro.GlobeAnim) package src.intro { import flash.display.*; import src.globe.*; import flash.geom.*; import flash.utils.*; public class GlobeAnim extends MovieClip { public var lastTime:Number; private var continentMap:Array; public var glow:MovieClip; private var target:int;// = 0 public var texture:BitmapData; public var cloud1:MovieClip; public var cloud2:MovieClip; public var yRot:Number; private var continentMap2:Array; public var nodes:Array; private var rotStartTime:Number;// = 0 private var currentContinent:int;// = -1 public var cloud0:MovieClip; private var rotStart:Number;// = 0 public var xRot:Number; public var yRotA:Number; public var xRotA:Number; public var positions:Array; public var triangles:Array; public var yRotO:Number; public var xRotO:Number; private var selectTime:Number;// = 0 public var globeHolder:MovieClip; private var remainingTime:Number;// = 0 public function GlobeAnim(){ var _local4:int; var _local5:Vertex; var _local6:Vertex; var _local7:Vertex; var _local8:Vertex; var _local9:Triangle; var _local10:Triangle; continentMap = [2, 0, 3, 1, 5, 4]; continentMap2 = [0, 4, 6, 3, 5, 1, 2]; nodes = new Array(); triangles = new Array(); positions = [[(Math.PI * 0.8), 0.3], [-2.7375, 0.1375], [-1.5, 0.6875], [-0.8, -0.4625], [-2.7125, 1.15], [1.4625, 0.9375], [2.125, -0.425]]; super(); texture = new Texture(400, 400); var _local1 = 10; var _local2 = 20; var _local3:int; while (_local3 < _local1) { _local4 = 0; while (_local4 < _local2) { nodes[((_local3 * _local2) + _local4)] = new Vertex(((texture.width * _local4) / (_local2 - 1)), ((texture.height * _local3) / (_local1 - 1))); nodes[((_local3 * _local2) + _local4)].setCoordinates((_local4 / (_local2 - 1)), (_local3 / (_local1 - 1))); _local4++; }; _local3++; }; _local3 = 0; while (_local3 < (_local1 - 1)) { _local4 = 0; while (_local4 < (_local2 - 1)) { _local5 = nodes[(((_local3 + 0) * _local2) + (_local4 + 0))]; _local6 = nodes[(((_local3 + 0) * _local2) + (_local4 + 1))]; _local7 = nodes[(((_local3 + 1) * _local2) + (_local4 + 0))]; _local8 = nodes[(((_local3 + 1) * _local2) + (_local4 + 1))]; _local9 = new Triangle(_local5, _local6, _local8, texture); triangles.push(_local9); globeHolder.addChild(_local9); _local10 = new Triangle(_local5, _local8, _local7, texture); triangles.push(_local10); globeHolder.addChild(_local10); _local4++; }; _local3++; }; xRot = positions[target][0]; yRot = positions[target][1]; xRotA = 0; yRotA = 0; xRotO = -10000; yRotO = -10000; rotStartTime = getTimer(); } public function lerp(_arg1:int, _arg2:Number):void{ var _local3:Number = positions[_arg1][0]; var _local4:Number = positions[_arg1][1]; _local3 = (_local3 - ((16 * (1 - _arg2)) * (1 - _arg2))); _local4 = ((_local4 * _arg2) + (positions[0][1] * (1 - _arg2))); updateTriangles(_local3, _local4); } private function tick():void{ var _local5:Number; var _local1:Number = 0.5; xRotO = xRot; yRotO = yRot; var _local2:Number = positions[target][0]; if (target == 0){ _local2 = (rotStart - (((((getTimer() - rotStartTime) % 10000) / 10000) * Math.PI) * 2)); } else { rotStart = _local2; rotStartTime = getTimer(); }; var _local3:Number = (_local2 - xRot); var _local4:Number = (positions[target][1] - yRot); while (_local3 < -(Math.PI)) { _local3 = (_local3 + (Math.PI * 2)); }; while (_local3 >= Math.PI) { _local3 = (_local3 - (Math.PI * 2)); }; xRotA = (xRotA * 0.8); yRotA = (yRotA * 0.8); if (((!((_local3 == 0))) || (!((_local4 == 0))))){ _local5 = Math.sqrt(((_local3 * _local3) + (_local4 * _local4))); _local3 = (_local3 / _local5); _local4 = (_local4 / _local5); if (_local5 > _local1){ _local5 = _local1; }; _local3 = (_local3 * (_local5 * 0.2)); _local4 = (_local4 * (_local5 * 0.2)); _local3 = (_local3 - xRotA); _local4 = (_local4 - yRotA); }; xRotA = (xRotA + _local3); yRotA = (yRotA + _local4); xRot = (xRot + xRotA); yRot = (yRot + yRotA); } public function updateTriangles(_arg1:Number, _arg2:Number):void{ var _local3:Number = Math.sin(_arg1); var _local4:Number = Math.cos(_arg1); var _local5:Number = Math.sin(_arg2); var _local6:Number = Math.cos(_arg2); var _local7:int; while (_local7 < nodes.length) { nodes[_local7].rot(_local3, _local4, _local5, _local6); _local7++; }; var _local8:Matrix = new Matrix(1, 0, 0, 1, 0, 0); _local7 = 0; while (_local7 < triangles.length) { triangles[_local7].update(_local8); _local7++; }; } public function advanceTime(_arg1:int, _arg2:Number):Boolean{ var _local3:Number = (getTimer() / 50); cloud0.rotation = ((_local3 * 1) + 313); cloud1.rotation = ((-(_local3) * 0.85) + 281); cloud2.rotation = ((_local3 * 0.9) + 428); var _local4:Number = (1000 / 60); remainingTime = (remainingTime + _arg2); while (remainingTime > _local4) { target = continentMap2[(_arg1 + 1)]; tick(); remainingTime = (remainingTime - _local4); }; var _local5:Number = (remainingTime / _local4); var _local6:Number = (xRot - xRotO); var _local7:Number = (yRot - yRotO); if (Math.sqrt(((_local6 * _local6) + (_local7 * _local7))) < 0.0001){ return (true); }; updateTriangles((xRotO + (_local6 * _local5)), (yRotO + (_local7 * _local5))); return (false); } } }//package src.intro
Section 17
//Glowers (src.intro.Glowers) package src.intro { import flash.display.*; import flash.events.*; import flash.utils.*; public class Glowers extends MovieClip { public var glow0:MovieClip; public var glow1:MovieClip; public var glow2:MovieClip; public var glow4:MovieClip; public var glow3:MovieClip; public var glow5:MovieClip; public function Glowers(){ addEventListener(Event.ENTER_FRAME, animate); } public function animate(_arg1:Event):void{ var _local2:Number = ((getTimer() / 0x0400) * 3); var _local3:Number = ((getTimer() / 1164) * -3); var _local4:Number = ((getTimer() / 1424) * 3); _local2 = (_local2 - (Math.sin((_local2 * 2)) * 0.2)); _local3 = (_local3 - (Math.sin((_local3 * 2)) * 0.2)); _local4 = (_local4 - (Math.sin((_local4 * 2)) * 0.2)); glow0.x = (Math.sin(_local2) * 90); glow2.x = (Math.sin(_local3) * 166); glow4.x = (Math.sin(_local4) * 217); glow0.y = (Math.cos(_local2) * 112); glow2.y = (Math.cos(_local3) * 112); glow4.y = (Math.cos(_local4) * 112); var _local5:Number = (glow0.y / 112); var _local6:Number = (glow2.y / 112); var _local7:Number = (glow4.y / 112); _local5 = (1 - ((_local5 * _local5) * 0.7)); _local6 = (1 - ((_local6 * _local6) * 0.7)); _local7 = (1 - ((_local7 * _local7) * 0.7)); glow0.scaleX = (glow0.scaleY = (glow1.scaleX = (glow1.scaleY = _local5))); glow2.scaleX = (glow2.scaleY = (glow3.scaleX = (glow3.scaleY = _local6))); glow4.scaleX = (glow4.scaleY = (glow5.scaleX = (glow5.scaleY = _local7))); glow1.x = -(glow0.x); glow1.y = -(glow0.y); glow3.x = -(glow2.x); glow3.y = -(glow2.y); glow5.x = -(glow4.x); glow5.y = -(glow4.y); } } }//package src.intro
Section 18
//Hoverer (src.intro.Hoverer) package src.intro { import flash.display.*; import flash.events.*; import flash.utils.*; public class Hoverer { private var wobbleOffset:Number; public var hoverLevel:Number;// = 0 public var hovered:Boolean; private var intro:Intro; private var target:MovieClip; private var orgRot:Number; private var source:MovieClip; private var wobbleTime:Number; public function Hoverer(_arg1:Intro, _arg2:int, _arg3:MovieClip, _arg4:MovieClip){ this.intro = _arg1; this.source = _arg3; this.target = _arg4; this.orgRot = _arg3.rotation; wobbleOffset = ((Math.random() * Math.PI) * 2); wobbleTime = (((Math.random() + Math.random()) * 100) + 400); _arg3.addEventListener(MouseEvent.MOUSE_OVER, mouseOver); _arg3.addEventListener(MouseEvent.MOUSE_OUT, mouseOut); _arg3.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); } public function mouseDown(_arg1:MouseEvent):void{ intro.cardClicked(true); } public function mouseOut(_arg1:MouseEvent):void{ hovered = false; } public function advanceTime(_arg1:Boolean, _arg2:Number):void{ var _local3:Number = hoverLevel; _arg2 = ((_arg2 * 10) / 1000); if (_arg1){ hoverLevel = (hoverLevel + _arg2); } else { hoverLevel = (hoverLevel - _arg2); }; if (hoverLevel <= 0){ hoverLevel = 0; }; if (hoverLevel >= 1){ hoverLevel = 1; }; source.rotation = (orgRot + (Math.sin(((getTimer() / wobbleTime) + wobbleOffset)) * 5)); target.rotation = (source.rotation * (1 - (hoverLevel * 0.5))); if (_local3 == hoverLevel){ return; }; if ((((_local3 == 0)) || ((hoverLevel == 0)))){ source.alpha = ((hoverLevel == 0)) ? 1 : 0; target.alpha = ((hoverLevel)!=0) ? 1 : 0; }; var _local4:Number = Math.sqrt(hoverLevel); target.scaleX = (1 + (_local4 * 0.35)); target.scaleY = (1 + (_local4 * 0.35)); } public function mouseOver(_arg1:MouseEvent):void{ hovered = true; } } }//package src.intro
Section 19
//Instructions (src.intro.Instructions) package src.intro { import flash.display.*; import flash.events.*; import flash.text.*; public class Instructions extends MovieClip { public var bodyText1:TextField; public var bodyText2:TextField; public function rollOver(_arg1:MouseEvent):void{ } public function rollOut(_arg1:MouseEvent):void{ } public function click(_arg1:MouseEvent):void{ visible = false; } } }//package src.intro
Section 20
//Intro (src.intro.Intro) package src.intro { import flash.display.*; import src.*; import flash.events.*; import flash.geom.*; import src.util.*; import flash.text.*; import flash.utils.*; import flash.filters.*; public class Intro extends MovieClip { private var lastTime:int; public var backCoin:MovieClip; public var globeAnim:GlobeAnim; public var fireworks0:MovieClip; public var fireworks1:MovieClip; private var gameArea:GameArea; public var selectHighlight:MovieClip; private var locks:Array; private var hoverers:Array; public var logo:MovieClip; public var instructions:Instructions; public var gameStartsInText:TextField; public var textHolder:MovieClip; private var selectedContinents:Array; private var mousePressed:Boolean;// = false private var continents:Array; private var introStartTime:int; public var sun:MovieClip; private var gameScreenBitmap:Bitmap; private var startTime:int; private var mayClickCard:Boolean;// = false private var selectedContinent:int; public var frontCoin:MovieClip; private var unlocked:int;// = 0 public var continentChooser:MovieClip; private var fireworksTime:int; private var globeBitmap:Bitmap; public static var CONTINENT_NAME_MAP:Array = ["continent_europe", "continent_south_america", "continent_australia", "continent_north_america", "continent_africa", "continent_asia"]; private static var DURATION:int = 25000; private static var FIREWORKS_INTERVAL:int = 80; public function Intro(_arg1:GameArea, _arg2:int, _arg3:int){ continents = new Array(); selectedContinents = new Array(); hoverers = new Array(); locks = new Array(); super(); this.gameArea = _arg1; startTime = (lastTime = (fireworksTime = getTimer())); addEventListener(Event.ENTER_FRAME, tickIntro); addEventListener(MouseEvent.MOUSE_DOWN, pressButton); tickIntro(null); introStartTime = getTimer(); useHandCursor = true; buttonMode = true; } public function globeClicked(_arg1:MouseEvent):void{ cardClicked(false); } public function killIntro():void{ removeEventListener(Event.ENTER_FRAME, tickIntro); var _local1:Array = [3, 5, 2, 4, 0, 1]; gameArea.startGame(3, 0); mousePressed = true; } public function tickIntroTimer():void{ var _local1:Number = (getTimer() - introStartTime); var _local2:int = ((DURATION - _local1) / 1000); gameStartsInText.text = TextMappings.get("game_starts_in").split("[0]").join(_local2); if (_local2 == 0){ killIntro(); }; var _local3:Number = ((_local1 / DURATION) * Math.PI); var _local4:Number = (Math.cos(_local3) * Math.sin((Math.PI * 0.7))); var _local5:Number = Math.sin(_local3); var _local6:Number = (Math.cos(_local3) * Math.cos((Math.PI * 0.7))); var _local7:Number = ((_local5 * 1) + 4); } public function tickSelectContinent(_arg1:Event):void{ var _local8:Number; var _local9:Number; var _local10:Number; var _local11:Number; var _local12:Number; var _local13:Number; var _local14:int; var _local15:int; var _local2:int = getTimer(); var _local3:Number = (_local2 - startTime); var _local4:Number = ((1000 - _local3) * 2); if (_local4 < 0){ _local4 = 0; mayClickCard = true; }; var _local5:Number = ((1 - ((_local4 * _local4) / 2000000)) + (_local4 / 3000)); if (_local5 < 0){ _local5 = 0; }; globeAnim.scaleX = (globeAnim.scaleY = _local5); var _local6:Number = (_local2 - lastTime); if (unlocked >= 6){ spawnFireworks(_local2); _local8 = (getTimer() / 1000); _local9 = (getTimer() / 9000); _local10 = (Math.sin(_local8) * Math.sin(_local9)); _local11 = Math.cos(_local8); _local12 = (Math.sin(_local8) * Math.cos(_local9)); _local13 = ((_local11 * 1) + 2); frontCoin.x = (backCoin.x = (globeAnim.x + ((_local10 * 250) / _local13))); frontCoin.y = (backCoin.y = (globeAnim.y + ((_local12 * 250) / _local13))); frontCoin.scaleX = (backCoin.scaleX = (frontCoin.scaleY = (backCoin.scaleY = (1 / _local13)))); frontCoin.visible = !((backCoin.visible = (_local11 > 0))); backCoin.rotation = (frontCoin.rotation = (((-(_local9) * 180) / Math.PI) - 90)); _local14 = ((int((_local8 * 30)) % 16) + 1); backCoin.coinAnim.gotoAndStop(_local14); frontCoin.coinAnim.gotoAndStop(_local14); }; var _local7 = -1; if (!instructions.visible){ _local15 = 0; while (_local15 < unlocked) { if (hoverers[_local15].hovered){ _local7 = _local15; }; _local15++; }; }; if (_local7 == -1){ if (gameArea.gdp.playerType == "money"){ textHolder.selectContinentText.text = TextMappings.get("select_continent"); } else { if (gameArea.gdp.playerType == "money_no_save"){ textHolder.selectContinentText.text = TextMappings.get("select_continent_no_save"); } else { textHolder.selectContinentText.text = TextMappings.get("select_continent_nag"); }; }; } else { textHolder.selectContinentText.text = TextMappings.get(CONTINENT_NAME_MAP[_local7]); }; _local15 = 0; while (_local15 < unlocked) { hoverers[_local15].advanceTime((_local15 == _local7), _local6); _local15++; }; globeAnim.advanceTime(_local7, _local6); lastTime = _local2; tickIntroTimer(); } public function pressButton(_arg1:MouseEvent):void{ removeEventListener(Event.ENTER_FRAME, tickIntro); var _local2:Array = [3, 5, 2, 4, 0, 1]; gameArea.startGame(3, 0); mousePressed = true; } public function spawnFireworks(_arg1:int):void{ var _local2:Number; var _local3:Number; var _local4:Number; var _local5:Number; var _local6:Fireworks; while ((_arg1 - fireworksTime) > FIREWORKS_INTERVAL) { fireworksTime = (fireworksTime + FIREWORKS_INTERVAL); _local2 = ((Math.random() * 2) - 1); _local3 = ((Math.random() * 2) - 1); _local4 = ((Math.random() * 2) - 1); if ((((_local2 * _local2) + (_local3 * _local3)) + (_local4 * _local4)) < 1){ _local5 = Math.sqrt((((_local2 * _local2) + (_local3 * _local3)) + (_local4 * _local4))); _local2 = (_local2 / _local5); _local3 = (_local3 / _local5); _local4 = (_local4 / _local5); _local2 = ((_local2 * 120) + globeAnim.x); _local3 = ((_local3 * 120) + globeAnim.y); _local6 = new Fireworks(_local2, _local3, ((1 / ((_local4 * 0.3) + 1)) * 0.5)); if (_local4 < 0){ fireworks0.addChild(_local6); } else { fireworks1.addChild(_local6); }; }; }; } public function tickIntro(_arg1:Event):void{ var _local6:int; var _local2:int = getTimer(); lastTime = _local2; var _local3:Number = (_local2 - startTime); if (mousePressed){ if (_local3 < 2100){ trace("1"); _local6 = (2100 - _local3); startTime = (startTime - _local6); } else { if (_local3 < 15000){ trace("2"); _local6 = (15000 - _local3); startTime = (startTime - _local6); }; }; mousePressed = false; }; var _local4:Number = (4000 - _local3); if (_local4 < 0){ _local4 = 0; }; var _local5:Number = ((_local3 - 1600) / 500); if (_local5 < 0){ _local5 = 0; }; if (_local5 > 1){ _local5 = 1; }; tickIntroTimer(); if (_local3 > 15000){ useHandCursor = false; buttonMode = false; }; } private function setUnlocked(_arg1:int, _arg2:int):void{ var _local4:String; var _local5:Array; var _local6:Number; var _local7:Number; var _local8:Number; var _local9:ColorMatrixFilter; var _local10:Array; if (_arg1 >= 6){ textHolder.toUnlockText.text = TextMappings.get("all_unlocked"); } else { _local4 = TextMappings.get(CONTINENT_NAME_MAP[_arg1]); if (_arg2 == 1){ textHolder.toUnlockText.text = TextMappings.get("unlock_next_in_singular").split("[0]").join(_local4); } else { textHolder.toUnlockText.text = TextMappings.get("unlock_next_in").split("[0]").join(_arg2).split("[1]").join(_local4); }; }; this.unlocked = _arg1; var _local3:int; while (_local3 < 6) { if (_local3 < _arg1){ selectedContinents[_local3].alpha = 0; selectedContinents[_local3].mouseEnabled = false; continents[_local3].useHandCursor = true; continents[_local3].buttonMode = true; hoverers.push(new Hoverer(this, _local3, continents[_local3], selectedContinents[_local3])); locks[_local3].visible = false; } else { selectedContinents[_local3].visible = false; _local5 = new Array(); _local6 = (0.3 * 0.6); _local7 = (0.59 * 0.6); _local8 = (0.11 * 0.6); _local5 = _local5.concat([_local6, _local7, _local8, 0, 0]); _local5 = _local5.concat([_local6, _local7, _local8, 0, 0]); _local5 = _local5.concat([_local6, _local7, _local8, 0, 0]); _local5 = _local5.concat([0, 0, 0, 1, 0]); _local9 = new ColorMatrixFilter(_local5); _local10 = new Array(); _local10.push(_local9); continents[_local3].filters = _local10; }; _local3++; }; } public function tickOutro(_arg1:Event):void{ var _local9:BitmapData; var _local10:Array; stage.quality = "medium"; var _local2:int = getTimer(); var _local3:Number = (_local2 - lastTime); lastTime = _local2; var _local4:Boolean = globeAnim.advanceTime(selectedContinent, _local3); if (!_local4){ startTime = getTimer(); return; }; if (globeBitmap == null){ _local9 = new BitmapData(250, 250, true, 0); _local9.draw(globeAnim, new Matrix(1, 0, 0, 1, 128, 128)); globeBitmap = new Bitmap(_local9); globeBitmap.smoothing = true; addChild(globeBitmap); addChild(gameScreenBitmap); gameScreenBitmap.alpha = 0; }; var _local5:Number = (_local2 - startTime); var _local6:Number = (_local5 / 500); var _local7:Number = (1 / (1 - (_local6 * 0.32))); if (_local7 < 0){ _local7 = 0; }; globeBitmap.x = (globeAnim.x - (128 * _local7)); globeBitmap.y = (globeAnim.y - (128 * _local7)); globeBitmap.scaleX = (globeBitmap.scaleY = _local7); var _local8:Number = ((_local5 - 1000) / 500); if (_local8 < 0){ _local8 = 0; }; gameScreenBitmap.alpha = (_local8 * _local8); if (_local5 > 1500){ stage.quality = "high"; removeEventListener(Event.ENTER_FRAME, tickOutro); _local10 = [3, 5, 2, 4, 0, 1]; trace(("JAKOB1 - " + selectedContinent)); trace(("JAKOB2 - " + _local10[selectedContinent])); gameArea.startGame(_local10[selectedContinent], selectedContinent); }; } public function cardClicked(_arg1:Boolean):void{ trace("cardClicked"); if (!mayClickCard){ return; }; if (instructions.visible){ return; }; mayClickCard = false; if (_arg1){ gameArea.effectSound.get("card").play(); }; var _local2 = -1; var _local3:int; while (_local3 < unlocked) { if (hoverers[_local3].hovered){ _local2 = _local3; }; _local3++; }; if (_local2 == -1){ _local2 = int((Math.random() * unlocked)); }; this.selectedContinent = _local2; removeEventListener(Event.ENTER_FRAME, tickSelectContinent); startTime = getTimer(); gameArea.musicSound.get("titlemusic").fadeTo(0, 2000); addEventListener(Event.ENTER_FRAME, tickOutro); var _local4:Array = [3, 5, 2, 4, 0, 1]; gameScreenBitmap = new Bitmap(gameArea.getBitmap(_local4[selectedContinent])); continentChooser.visible = false; selectHighlight.visible = false; instructions.visible = false; textHolder.visible = false; logo.visible = false; gameStartsInText.visible = false; frontCoin.visible = (backCoin.visible = false); } } }//package src.intro
Section 21
//ManagedSound (src.sound.ManagedSound) package src.sound { import flash.media.*; public class ManagedSound { public var activeSounds:Array; private var manager:SoundManager; private var ClassReference:Class; public function ManagedSound(_arg1:SoundManager, _arg2:Class){ activeSounds = new Array(); super(); this.manager = _arg1; this.ClassReference = _arg2; } public function stop():void{ var _local1:int; while (_local1 < activeSounds.length) { activeSounds[_local1].stop(); _local1++; }; } public function play(_arg1:Number=1, _arg2:Number=0):ManagedSoundChannel{ var _local3:SoundChannel = new ClassReference().play(0, 0, new SoundTransform(_arg1, _arg2)); return (new ManagedSoundChannel(manager, this, _local3)); } public function loop(_arg1:Number=1, _arg2:Number=0):ManagedSoundChannel{ var _local3:SoundChannel = new ClassReference().play(0, 999999999, new SoundTransform(_arg1, _arg2)); return (new ManagedSoundChannel(manager, this, _local3)); } public function fadeToAndStop(_arg1:Number, _arg2:Number):void{ var _local3:int; while (_local3 < activeSounds.length) { activeSounds[_local3].fadeToAndStop(_arg1, _arg2); _local3++; }; } public function isPlaying():Boolean{ return ((activeSounds.length > 0)); } public function update():void{ var _local1:int; while (_local1 < activeSounds.length) { activeSounds[_local1].update(); _local1++; }; } public function fadeTo(_arg1:Number, _arg2:Number):void{ var _local3:int; while (_local3 < activeSounds.length) { activeSounds[_local3].fadeTo(_arg1, _arg2); _local3++; }; } public function panTo(_arg1:Number, _arg2:Number):void{ var _local3:int; while (_local3 < activeSounds.length) { activeSounds[_local3].panTo(_arg1, _arg2); _local3++; }; } public function setPan(_arg1:Number):void{ var _local2:int; while (_local2 < activeSounds.length) { activeSounds[_local2].setPan(_arg1); _local2++; }; } public function setVolume(_arg1:Number):void{ var _local2:int; while (_local2 < activeSounds.length) { activeSounds[_local2].setVolume(_arg1); _local2++; }; } } }//package src.sound
Section 22
//ManagedSoundChannel (src.sound.ManagedSoundChannel) package src.sound { import flash.events.*; import flash.media.*; import flash.utils.*; public class ManagedSoundChannel { private var fadeStartVolume:Number;// = -1 private var channel:SoundChannel; private var fadeEndVolume:Number;// = -1 private var targetVolume:Number; private var targetPan:Number; private var sound:ManagedSound; private var stopAfterFade:Boolean;// = false private var panEndTime:Number;// = -1 private var fadeEndTime:Number;// = -1 private var manager:SoundManager; private var playing:Boolean;// = true private var panStartTime:Number;// = -1 private var fadeStartTime:Number;// = -1 private var panEndVolume:Number;// = -1 private var panStartVolume:Number;// = -1 public function ManagedSoundChannel(_arg1:SoundManager, _arg2:ManagedSound, _arg3:SoundChannel){ this.manager = _arg1; this.sound = _arg2; this.channel = _arg3; _arg2.activeSounds.push(this); if (_arg3 == null){ soundComplete(null); return; }; _arg3.addEventListener(Event.SOUND_COMPLETE, soundComplete); targetVolume = _arg3.soundTransform.volume; targetPan = _arg3.soundTransform.pan; update(); } public function stop():void{ if (!playing){ return; }; if (channel == null){ return; }; channel.stop(); soundComplete(null); } public function update():void{ var _local1:Number; if (!playing){ return; }; if (fadeStartTime >= 0){ _local1 = ((getTimer() - fadeStartTime) / (fadeEndTime - fadeStartTime)); if (_local1 < 0){ _local1 = 0; }; if (_local1 > 1){ _local1 = 1; }; targetVolume = (fadeStartVolume + ((fadeEndVolume - fadeStartVolume) * _local1)); targetVolume = (targetVolume * targetVolume); if (_local1 == 1){ fadeStartTime = -1; }; if ((((_local1 == 1)) && (stopAfterFade))){ stop(); }; }; if (panStartTime >= 0){ _local1 = ((getTimer() - panStartTime) / (panEndTime - panStartTime)); if (_local1 < 0){ _local1 = 0; }; if (_local1 > 1){ _local1 = 1; }; targetPan = (panStartVolume + ((panEndVolume - panStartVolume) * _local1)); if (_local1 == 1){ panStartTime = -1; }; }; var _local2:Number = (targetVolume * manager.volume); var _local3:Number = targetPan; if (channel == null){ return; }; if (((!((_local2 == channel.soundTransform.volume))) || (!((_local3 == channel.soundTransform.pan))))){ channel.soundTransform = new SoundTransform(_local2, _local3); }; } public function panTo(_arg1:Number, _arg2:Number):void{ if (!playing){ return; }; panStartVolume = targetPan; panEndVolume = _arg1; panStartTime = getTimer(); panEndTime = (getTimer() + _arg2); } public function fadeTo(_arg1:Number, _arg2:Number):void{ if (!playing){ return; }; fadeStartVolume = Math.sqrt(targetVolume); fadeEndVolume = Math.sqrt(_arg1); fadeStartTime = getTimer(); fadeEndTime = (getTimer() + _arg2); stopAfterFade = false; } public function setPan(_arg1:Number):void{ if (!playing){ return; }; if (channel == null){ return; }; channel.soundTransform.pan = _arg1; panStartTime = -1; update(); } public function fadeToAndStop(_arg1:Number, _arg2:Number):void{ if (!playing){ return; }; fadeTo(_arg1, _arg2); stopAfterFade = true; } public function setVolume(_arg1:Number):void{ if (!playing){ return; }; stopAfterFade = false; this.targetVolume = _arg1; fadeStartTime = -1; update(); } public function soundComplete(_arg1:Event):void{ if (!playing){ return; }; sound.activeSounds.splice(sound.activeSounds.indexOf(this), 1); playing = false; } public function isPlaying():Boolean{ return (playing); } } }//package src.sound
Section 23
//SoundManager (src.sound.SoundManager) package src.sound { import flash.utils.*; public class SoundManager { private var fadeStartVolume:Number;// = -1 private var lastTime:Number;// = -1 private var managedSounds:Array; private var fadeEndTime:Number;// = -1 private var fadeStartTime:Number;// = -1 private var fadeEndVolume:Number;// = -1 public var volume:Number;// = 1 private var managedSoundMap:Object; public function SoundManager(){ managedSoundMap = new Object(); managedSounds = new Array(); super(); } public function update():void{ var _local3:Number; var _local1:Number = getTimer(); if (lastTime < 0){ lastTime = _local1; }; if (fadeStartTime >= 0){ _local3 = ((getTimer() - fadeStartTime) / (fadeEndTime - fadeStartTime)); if (_local3 < 0){ _local3 = 0; }; if (_local3 > 1){ _local3 = 1; }; volume = (fadeStartVolume + ((fadeEndVolume - fadeStartVolume) * _local3)); volume = (volume * volume); if (_local3 == 1){ fadeStartTime = -1; }; }; var _local2:int; while (_local2 < managedSounds.length) { managedSounds[_local2].update(); _local2++; }; } public function stopAll():void{ var _local1:int; while (_local1 < managedSounds.length) { managedSounds[_local1].stop(); _local1++; }; } public function get(_arg1:String):ManagedSound{ var _local2:Class; if (managedSoundMap[_arg1] == null){ _local2 = (getDefinitionByName(("sound." + _arg1)) as Class); if (_local2 == null){ throw (new Error(("Failed to find sound " + _arg1))); }; managedSoundMap[_arg1] = new ManagedSound(this, _local2); managedSounds.push(managedSoundMap[_arg1]); }; return (managedSoundMap[_arg1]); } public function fadeTo(_arg1:Number, _arg2:Number):void{ fadeStartVolume = Math.sqrt(volume); fadeEndVolume = Math.sqrt(_arg1); fadeStartTime = getTimer(); fadeEndTime = (getTimer() + _arg2); } public function setVolume(_arg1:Number):void{ this.volume = _arg1; fadeStartTime = -1; } } }//package src.sound
Section 24
//GameDataParser (src.util.GameDataParser) package src.util { import flash.xml.*; public class GameDataParser { public var unlocked:int;// = 1 public var gameType:String; public var cardList:String; public var timeLimit:int;// = 600 public var textMappings:Object; public var relaxMode:Boolean; public var randomSeed:int; public var gameMode:String; public var playerType:String; public var remaining:int;// = 999 public function parse(_arg1:String):void{ var _local2:XMLDocument = new XMLDocument(_arg1); textMappings = new Object(); var _local3:Array = _local2.firstChild.childNodes; randomSeed = parseInt(_local2.firstChild.attributes.randomseed); cardList = new String(_local2.firstChild.attributes.cards); playerType = new String(_local2.firstChild.attributes.playerType); gameMode = new String(_local2.firstChild.attributes.mode); timeLimit = parseInt(_local2.firstChild.attributes.timelimit); relaxMode = (new String(_local2.firstChild.attributes.relaxMode) == "true"); var _local4:int; while (_local4 < _local3.length) { if (_local3[_local4].nodeName == "id"){ }; if (_local3[_local4].nodeName == "unlocked"){ unlocked = parseInt(_local3[_local4].firstChild.nodeValue); }; if (_local3[_local4].nodeName == "remaining"){ remaining = parseInt(_local3[_local4].firstChild.nodeValue); }; if (_local3[_local4].nodeName == "game"){ gameType = new String(_local3[_local4].attributes.type); }; if (_local3[_local4].nodeName == "text"){ if ((((_local3[_local4].firstChild == null)) || ((_local3[_local4].firstChild == undefined)))){ textMappings[_local3[_local4].attributes.id] = (("[xx" + _local3[_local4].attributes.id) + "xx]"); } else { textMappings[_local3[_local4].attributes.id] = new String(_local3[_local4].firstChild.nodeValue); }; TextMappings.set(_local3[_local4].attributes.id, textMappings[_local3[_local4].attributes.id]); }; _local4++; }; } } }//package src.util
Section 25
//TextMappings (src.util.TextMappings) package src.util { public class TextMappings { public static var mappings:Object = new Object(); public static function set(_arg1:String, _arg2:String):void{ mappings[_arg1] = _arg2; } public static function get(_arg1:String):String{ if (mappings[_arg1] == undefined){ return ((("[" + _arg1) + "]")); }; return (mappings[_arg1]); } } }//package src.util
Section 26
//Card (src.Card) package src { import flash.display.*; import flash.events.*; import flash.utils.*; public class Card extends MovieClip { private var ySlideFrom:Number; public var suit:int; private var yDragStart:int; private var yLastClick:int; private var DOUBLE_CLICK_DISTANCE:Number;// = 16 private var hasStageListeners:Boolean;// = false private var revealed:Boolean;// = false private var suitImageMap:Array; public var pile:Pile; private var continent:int; public var pos:int; private var isClickable:Boolean;// = false private var xSlideFrom:Number; public var value:int; private var DOUBLE_CLICK_TIME:int;// = 500 private var m_hasBeenInFoundation:Boolean;// = false private var xLastClick:int; private var xDragStart:int; private var lastClickTime:int;// = -1 public static var lastClickCard:Card = null; public static var maybeDragCard:Card = null; public function Card(_arg1:int, _arg2:int, _arg3:int){ suitImageMap = [0, 1, 3, 2]; super(); this.suit = _arg1; this.value = _arg2; this.continent = _arg3; gotoAndStop((revealed) ? (((suitImageMap[_arg1] * 13) + _arg2) + 1) : (60 + _arg3)); addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); buttonMode = true; doubleClickEnabled = true; setClickable(false); } public function getSuit():int{ return (suit); } public function mouseMove(_arg1:MouseEvent):void{ var _local2:Number; var _local3:Number; if (((((isClickable) && (!((pile == null))))) && ((Card.maybeDragCard == this)))){ _local2 = (mouseX - xDragStart); _local3 = (mouseY - yDragStart); if (((_local2 * _local2) + (_local3 * _local3)) > DOUBLE_CLICK_DISTANCE){ pile.pressCard(this, xDragStart, yDragStart); }; }; } public function setClickable(_arg1:Boolean):void{ this.isClickable = _arg1; useHandCursor = _arg1; } public function mouseUp(_arg1:MouseEvent):void{ Card.maybeDragCard = null; } public function slide(_arg1:KlondikeRules):void{ _arg1.slide(this, xSlideFrom, ySlideFrom, x, y); } public function doubleClick(_arg1:MouseEvent):void{ if (((isClickable) && (!((pile == null))))){ pile.doubleClickCard(this); }; } public function getValue():int{ return (value); } public function hasBeenInFoundation():Boolean{ return (m_hasBeenInFoundation); } public function hide():void{ revealed = false; gotoAndStop((revealed) ? (((suitImageMap[suit] * 13) + value) + 1) : (60 + continent)); } public function reveal():void{ revealed = true; gotoAndStop((revealed) ? (((suitImageMap[suit] * 13) + value) + 1) : (60 + continent)); } public function mouseDown(_arg1:MouseEvent):void{ var _local2:int; var _local3:Number; var _local4:Number; if (!hasStageListeners){ stage.addEventListener(MouseEvent.MOUSE_MOVE, mouseMove); stage.addEventListener(MouseEvent.MOUSE_UP, mouseUp); hasStageListeners = true; }; if (((isClickable) && (!((pile == null))))){ if (pile.name == "h0"){ pile.pressCard(this, xDragStart, yDragStart); return; }; _local2 = (getTimer() - lastClickTime); _local3 = (mouseX - xLastClick); _local4 = (mouseY - yLastClick); if ((((((((_local3 * _local3) + (_local4 * _local4)) <= DOUBLE_CLICK_DISTANCE)) && ((_local2 < DOUBLE_CLICK_TIME)))) && ((Card.lastClickCard == this)))){ doubleClick(_arg1); return; }; Card.lastClickCard = this; xLastClick = mouseX; yLastClick = mouseY; Card.maybeDragCard = this; xDragStart = mouseX; yDragStart = mouseY; lastClickTime = getTimer(); }; } public function prepareSlide():void{ xSlideFrom = x; ySlideFrom = y; } public function isRevealed():Boolean{ return (revealed); } public function setHasBeenInFoundation(_arg1:Boolean):void{ this.m_hasBeenInFoundation = _arg1; } } }//package src
Section 27
//ColumnPile (src.ColumnPile) package src { import flash.display.*; public class ColumnPile extends Pile { private var hiddenCards:int;// = 0 public function ColumnPile(_arg1:MovieClip, _arg2:KlondikeRules, _arg3:String){ super(_arg1, _arg2, _arg3); } public function countHidden():void{ hiddenCards = 0; var _local1:int; while (_local1 < cards.length) { if (!cards[_local1].isRevealed()){ hiddenCards++; }; _local1++; }; } override public function popCard():Card{ var _local1:Card = super.popCard(); var _local2:Card = super.getTopCard(); if (_local2 != null){ _local2.setClickable(true); }; return (_local1); } override public function mayPushCards(_arg1:Array):Boolean{ var _local3:Card; var _local2:Card = _arg1[0]; if (getCardCount() > 0){ _local3 = getTopCard(); if ((_local2.getSuit() & 1) == (_local3.getSuit() & 1)){ return (false); }; if (_local2.getValue() != (_local3.getValue() - 1)){ return (false); }; } else { if (_local2.getValue() != 12){ return (false); }; }; return (true); } override public function doubleClickCard(_arg1:Card):void{ if (_arg1 == getTopCard()){ tryClickToFoundation(_arg1); }; } override public function revealTopCard():void{ super.revealTopCard(); rules.increaseScore(20); getTopCard().setClickable(true); } override public function pushCard(_arg1:Card):void{ var _local2:Card = super.getTopCard(); if (((!((_local2 == null))) && (!(_local2.isRevealed())))){ _local2.setClickable(false); }; super.pushCard(_arg1); _arg1.setClickable(_arg1.isRevealed()); } override public function pressCard(_arg1:Card, _arg2:int, _arg3:int):void{ var _local4:int; if (!_arg1.isRevealed()){ rules.reveal(name); } else { _local4 = (getCardCount() - _arg1.pos); rules.startDragging(this, getTopCards(_local4), _arg2, _arg3); }; } override public function placeCard(_arg1:Card, _arg2:int):void{ countHidden(); _arg1.x = mc.x; if (_arg2 <= hiddenCards){ _arg1.y = (mc.y + (_arg2 * 4)); } else { _arg1.y = ((mc.y + (hiddenCards * 4)) + ((_arg2 - hiddenCards) * 15)); }; } } }//package src
Section 28
//DragLayer (src.DragLayer) package src { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.utils.*; public class DragLayer extends MovieClip { private var ySlideFrom:int; private var xOffs:int; private var xOrg:int; private var dragging:Boolean;// = false private var ySlideTo:int; private var source:Pile; private var gameArea:GameArea; private var cards:Array; private var slideTime:Number; private var xSlideFrom:int; private var yOrg:int; private var oldParent:MovieClip; private var xSlideTo:int; private var rules:KlondikeRules; private var yOffs:int; private var animStartTime:int;// = -1 public static var SLIDE_TIME:Number = 25; public function DragLayer(){ slideTime = SLIDE_TIME; super(); } public function slide(_arg1:Card, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ abort(); this.source = _arg1.pile; this.cards = new Array(); oldParent = MovieClip(_arg1.parent); cards.push(_arg1); _arg1.x = 0; _arg1.y = 0; _arg1.parent.removeChild(_arg1); addChild(_arg1); xOrg = 0; yOrg = 0; x = _arg2; y = _arg3; xSlideTo = _arg4; ySlideTo = _arg5; startAnim(); gameArea.effectSound.get("card").play(1, ((xSlideTo / 730) - 0.5)); } public function release(_arg1:MouseEvent):void{ var _local5:int; var _local6:Card; dragging = false; stopDrag(); stage.removeEventListener(MouseEvent.MOUSE_UP, release); var _local2:int = ((x - xOffs) + (cards[0].width / 2)); var _local3:int = ((y - yOffs) + (cards[0].height / 2)); var _local4:Pile = gameArea.getPileAt(_local2, _local3, cards[0]); if (((!((_local4 == null))) && (_local4.mayPushCards(cards)))){ rules.move(cards.length, source.name, _local4.name); source = _local4; xSlideTo = (cards[0].x + xOffs); ySlideTo = (cards[0].y + yOffs); _local5 = 0; while (_local5 < cards.length) { _local6 = cards[_local5]; _local6.x = -(xOffs); _local6.y = (-(yOffs) + (_local5 * 15)); _local5++; }; if (cards.length > 1){ gameArea.effectSound.get("severalcards").play(1, ((xSlideTo / 730) - 0.5)); } else { gameArea.effectSound.get("card").play(1, ((xSlideTo / 730) - 0.5)); }; } else { xSlideTo = xOrg; ySlideTo = yOrg; }; startAnim(); } public function init(_arg1:GameArea, _arg2:KlondikeRules):void{ this.gameArea = _arg1; this.rules = _arg2; } public function startDragging(_arg1:Pile, _arg2:Array, _arg3:int, _arg4:int):void{ var _local6:Card; abort(); this.source = _arg1; this.cards = _arg2; this.xOffs = _arg3; this.yOffs = _arg4; xOrg = (_arg2[0].x + _arg3); yOrg = (_arg2[0].y + _arg4); var _local5:int; while (_local5 < _arg2.length) { _local6 = _arg2[_local5]; oldParent = MovieClip(_local6.parent); _local6.parent.removeChild(_local6); addChild(_local6); _local6.x = -(_arg3); _local6.y = (-(_arg4) + (_local5 * 15)); _local5++; }; startDrag(true, new Rectangle(0, 0, 730, 450)); stage.addEventListener(MouseEvent.MOUSE_UP, release); dragging = true; } private function stopAnim():void{ animStartTime = -1; removeEventListener(Event.ENTER_FRAME, advanceTime); } private function startAnim():void{ xSlideFrom = x; ySlideFrom = y; animStartTime = getTimer(); addEventListener(Event.ENTER_FRAME, advanceTime); slideTime = SLIDE_TIME; } private function finishAnim():void{ var _local2:Card; stopAnim(); var _local1:int; while (_local1 < cards.length) { _local2 = cards[_local1]; removeChild(_local2); oldParent.addChild(_local2); source.placeCard(_local2, ((source.getCardCount() - cards.length) + _local1)); _local1++; }; } public function advanceTime(_arg1:Event):void{ var _local2:Number = ((getTimer() - animStartTime) / slideTime); x = (xSlideFrom + ((xSlideTo - xSlideFrom) * _local2)); y = (ySlideFrom + ((ySlideTo - ySlideFrom) * _local2)); if (_local2 > 1){ finishAnim(); }; } public function abort():void{ if (dragging){ dragging = false; stopDrag(); stage.removeEventListener(MouseEvent.MOUSE_UP, release); xSlideTo = xOrg; ySlideTo = yOrg; startAnim(); release(null); }; if (animStartTime >= 0){ finishAnim(); }; } } }//package src
Section 29
//Fireworks (src.Fireworks) package src { import flash.display.*; import flash.events.*; import flash.geom.*; import flash.utils.*; public class Fireworks extends MovieClip { public var lifeTime:int;// = 1000 public var startTime:int; public function Fireworks(_arg1:Number, _arg2:Number, _arg3:Number=1){ gotoAndStop(1); addEventListener(Event.ENTER_FRAME, advanceTime); this.x = _arg1; this.y = _arg2; this.scaleX = (this.scaleY = _arg3); startTime = getTimer(); blendMode = "screen"; var _local4:Number = ((Math.random() * Math.PI) * 2); var _local5:Number = ((Math.sin((_local4 + (((0 / 3) * Math.PI) * 2))) * 0.5) + 0.5); var _local6:Number = ((Math.sin((_local4 + (((1 / 3) * Math.PI) * 2))) * 0.5) + 0.5); var _local7:Number = ((Math.sin((_local4 + (((2 / 3) * Math.PI) * 2))) * 0.5) + 0.5); transform.colorTransform = new ColorTransform(_local5, _local6, _local7, 1, 0, 0, 0, 0); } public function advanceTime(_arg1:Event):void{ var _local3:int; var _local2:Number = ((getTimer() - startTime) / lifeTime); if (_local2 >= 1){ parent.removeChild(this); removeEventListener(Event.ENTER_FRAME, advanceTime); } else { _local3 = int(((_local2 * 18) + 1)); gotoAndStop(_local3); }; } } }//package src
Section 30
//FoundationPile (src.FoundationPile) package src { import flash.display.*; public class FoundationPile extends Pile { private var suit:int;// = 0 public function FoundationPile(_arg1:MovieClip, _arg2:KlondikeRules, _arg3:String, _arg4:int){ super(_arg1, _arg2, _arg3); this.suit = _arg4; } override public function pushCards(_arg1:Array):void{ var _local3:int; var _local2:Card = _arg1[0]; if (!_local2.hasBeenInFoundation()){ _local2.setHasBeenInFoundation(true); _local3 = (100 - (_local2.getValue() * 10)); if (_local3 < 10){ _local3 = 10; }; rules.increaseScore(_local3); }; super.pushCards(_arg1); } override public function popCard():Card{ var _local1:Card = super.popCard(); var _local2:Card = getTopCard(); if (_local2 != null){ _local2.setClickable(true); }; return (_local1); } override public function popCards(_arg1:int):Array{ return (super.popCards(_arg1)); } override public function mayPushCards(_arg1:Array):Boolean{ var _local3:Card; if (_arg1.length > 1){ return (false); }; var _local2:Card = _arg1[0]; if (getCardCount() > 0){ _local3 = getTopCard(); if (_local2.getSuit() != _local3.getSuit()){ return (false); }; if (_local2.getValue() != (_local3.getValue() + 1)){ return (false); }; } else { if (_local2.getSuit() != suit){ return (false); }; if (_local2.getValue() != 0){ return (false); }; }; return (true); } override public function pushCard(_arg1:Card):void{ var _local2:Card = getTopCard(); if (_local2 != null){ _local2.setClickable(false); }; _arg1.setClickable(true); super.pushCard(_arg1); } override public function pressCard(_arg1:Card, _arg2:int, _arg3:int):void{ rules.startDragging(this, getTopCards(1), _arg2, _arg3); } } }//package src
Section 31
//GameArea (src.GameArea) package src { import flash.display.*; import flash.events.*; import src.sound.*; import src.intro.*; import src.util.*; import flash.text.*; import flash.utils.*; import flash.system.*; public class GameArea extends MovieClip { private var lastSeconds:int; public var outro:Outro; public var foundations:Array; public var soundButton:SoundButton; public var revealed:MovieClip; public var timeField:TextField; public var background:MovieClip; public var gdp:GameDataParser; private var playing:Boolean;// = false public var introHolder:MovieClip; public var pile0:MovieClip; public var pile1:MovieClip; public var pile3:MovieClip; public var pile4:MovieClip; public var pile5:MovieClip; public var pile6:MovieClip; public var pile2:MovieClip; private var startTime:int;// = -1 public var clickBlocker:MovieClip; public var relaxMode:Boolean;// = false private var hasPreparedOutro:Boolean;// = false public var quitButton:QuitButton; public var intro:Intro; private var winAnimDelay:int;// = 1000 public var dragLayer:DragLayer; private var isFirstLevel:Boolean;// = true public var piles:Array; private var lastTime:int; public var scoreField:TextField; public var world:int; public var timeText:TextField; public var deck:MovieClip; private var remainingSeconds:int; public var musicButton:SoundButton; private var main:Main; private var hasSentQuit:Boolean;// = false private var winAnimStartTime:int;// = -1 private var cardList:String; private var hasPlayedTimeWarning:Boolean;// = false private var hasSentGameEnd:Boolean;// = false public var cardHolder:MovieClip; public var foundation0:MovieClip; public var foundation1:MovieClip; public var scoreText:TextField; public var foundation3:MovieClip; public var mcHolder:MovieClip; private var unlocked:int; public var foundation2:MovieClip; public var musicSound:SoundManager; public var DEBUG_XML:String; private var lastRemainingTime:int;// = 0 private var remaining:int; private var rules:KlondikeRules; public var effectSound:SoundManager; public static var DEBUG_MODE:Boolean = true; public static var timeLimit:int = 600000; public static var WIN_ANIM_DURATION:int = 1000; public function GameArea(_arg1:Main){ DEBUG_XML = <gamedata timelimit="600" cards="5s_2d_5c_6c_2h_1h_4d_6s_13c_10s_7c_9h_12d_4c_3c_13d_3s_6d_10d_4s_8c_6h_8d_8h_1d_7d_11c_3h_2s_10h_3d_7h_1s_8s_1c_7s_4h_12h_11h_13h_5d_2c_10c_11s_13s_11d_9c_9s_12s_12c_5h_9d" playerType="money" mode="full" relaxMode="false"> <text id="time_to_exit">Spelet slutar om: [0]</text> <text id="continent_north_america">Nordamerika</text> <text id="total_score">Totalpo&#x00e4;ng</text> <text id="game_starts_in">Game starts in [0]</text> <text id="score">Score</text> <text id="nag_message">Registrera dig f&#x00f6;r att spela hela spelet!</text> <text id="level_won">You cleared the level</text> <text id="select_continent">V&#x00e4;lj v&#x00e4;rldsdel</text> <text id="out_of_time">Tiden tog slut</text> <text id="game_over">Spelet &#x00e4;r slut</text> <text id="continent_europe">Europa</text> <text id="instructions1">Bygg ner&#x00e5;t med varannan f&#x00e4;rg. Alla kort som &#x00e4;r i r&#x00e4;tt ordning och f&#x00e4;rg kan flyttas tillsammans. Endast kungar kan l&#x00e4;ggas p&#x00e5; tomma ytor.</text> <text id="new_unlocked">Du l&#x00e5;ste upp [0]!</text> <text id="instructions2">Spelets m&#x00e5;l &#x00e4;r att flytta alla kort till svith&#x00f6;garna. B&#x00f6;rja med Ess och g&#x00e5; upp&#x00e5;t i nummerordning. Du kan flytta tillbaka kort som du har lagt i svith&#x00f6;garna, men du f&#x00e5;r d&#x00e5; ett po&#x00e4;ngavdrag.</text> <text id="continent_africa">Afrika</text> <text id="endgame">QUIT</text> <text id="time">Time</text> <text id="finalscore">SLUTPO&#x00c4;NG</text> <text id="continent_australia">Australien</text> <text id="continent_asia">Asien</text> <text id="all_unlocked">V&#x00e4;rlden &#x00e4;r din!</text> <text id="unlock_next_in">L&#x00f6;s [0] uppl&#x00e4;gg f&#x00f6;r att l&#x00e5;sa upp [1]</text> <text id="next_round_in">N&#x00c4;STA OMG&#x00c5;NG OM</text> <text id="timebonus">TIDSBONUS</text> <text id="unlock_next_in_singular">L&#x00f6;s ett uppl&#x00e4;gg f&#x00f6;r att l&#x00e5;sa upp [0]!</text> <text id="continent_south_america">Sydamerika</text> <text id="exit_game_in">GAME ENDS IN</text> <text id="seconds">SECONDS</text> <text id="player_quit">You pressed quit</text> <text id="bonus">Bonus</text> <text id="select_continent_nag">Uppgradera f&#x00f6;r att l&#x00e5;sa upp nya v&#x00e4;rldsdelar!</text> <text id="close_window">St&#x00e4;ng f&#x00f6;nster</text> <text id="totalscore">TOTALPO&#x00c4;NG</text> <unlocked>2</unlocked> <remaining>7</remaining> </gamedata> .toString(); piles = new Array(); foundations = new Array(); musicSound = new SoundManager(); effectSound = new SoundManager(); gdp = new GameDataParser(); remainingSeconds = ((timeLimit + 999) / 1000); super(); this.main = _arg1; background.gotoAndStop(1); piles.push(pile0); piles.push(pile1); piles.push(pile2); piles.push(pile3); piles.push(pile4); piles.push(pile5); piles.push(pile6); foundations.push(foundation0); foundations.push(foundation1); foundations.push(foundation2); foundations.push(foundation3); mcHolder.foundationMc0.gotoAndStop(4); mcHolder.foundationMc1.gotoAndStop(3); mcHolder.foundationMc2.gotoAndStop(2); mcHolder.foundationMc3.gotoAndStop(1); if (DEBUG_MODE){ trace(DEBUG_XML); gdp.parse(DEBUG_XML); }; relaxMode = gdp.relaxMode; timeLimit = (gdp.timeLimit * 1000); unlocked = gdp.unlocked; remaining = gdp.remaining; cardList = gdp.cardList; intro = new Intro(this, unlocked, remaining); introHolder.addChild(intro); clickBlocker.alpha = 0; scoreText.text = TextMappings.get("score"); timeText.text = TextMappings.get("time"); if (relaxMode){ timeText.visible = false; timeField.visible = false; cardList = generateCards(); }; cardList = generateCards(); addEventListener(Event.ENTER_FRAME, advanceTime); outro.visible = false; musicSound.get("titlemusic").play(0.6); soundButton.init(this); musicButton.init(this); quitButton.init(this); } public function restart(){ main.restart(); } private function doWinAnim(_arg1:int):void{ var _local2:Number = (_arg1 / WIN_ANIM_DURATION); cardHolder.y = (mcHolder.y = ((0 + (_local2 * 80)) - ((_local2 * _local2) * 400))); if (_arg1 > (WIN_ANIM_DURATION + winAnimDelay)){ winAnimStartTime = -1; outro.show(); }; } private function updateTimer():int{ var _local3:int; var _local4:int; var _local5:String; if (relaxMode){ return (lastRemainingTime); }; if (rules.autoSolve){ return (lastRemainingTime); }; var _local1:int = timeLimit; if (startTime >= 0){ _local1 = (timeLimit - (getTimer() - startTime)); }; var _local2:Number = (_local1 / 1000); if ((((_local2 < 60)) && ((_local2 > 0)))){ _local3 = (0xFF - int((((-(Math.cos(((_local2 * Math.PI) * 2))) * 128) + 128) * (1 - (_local2 / 60))))); if (_local3 < 0){ _local3 = 0; }; if (_local3 > 0xFF){ _local3 = 0xFF; }; timeField.textColor = (((0xFF0000 | (_local3 << 16)) | (_local3 << 8)) | _local3); } else { timeField.textColor = 0xFFFFFF; }; if (lastSeconds != remainingSeconds){ lastSeconds = remainingSeconds; if (remainingSeconds < 0){ remainingSeconds = 0; }; _local4 = (remainingSeconds / 60); remainingSeconds = (remainingSeconds % 60); _local5 = ""; if (_local4 < 10){ _local5 = (_local5 + "0"); }; _local5 = (_local5 + (_local4 + ":")); if (remainingSeconds < 10){ _local5 = (_local5 + "0"); }; _local5 = (_local5 + remainingSeconds); timeField.text = _local5; }; lastRemainingTime = _local1; return (_local1); } public function clickQuit():void{ if (hasPreparedOutro){ return; }; hasPreparedOutro = true; var _local1:String = TextMappings.get("player_quit"); var _local2:int; var _local3 = ""; prepareOutro(_local1, _local3, _local2, true, false); outro.show(); } public function getBitmap(_arg1:int):BitmapData{ setWorld(_arg1); if (rules == null){ rules = new KlondikeRules(this, cardList, world); dragLayer.init(this, rules); }; updateTimer(); var _local2:BitmapData = new BitmapData(730, 450); intro.visible = false; _local2.draw(this); intro.visible = true; return (_local2); } public function sendQuit():void{ if (!hasSentQuit){ fscommand("gameQuit"); hasSentQuit = true; }; } public function outOfTime():void{ if (hasPreparedOutro){ return; }; hasPreparedOutro = true; var _local1:String = TextMappings.get("out_of_time"); var _local2:int; var _local3 = ""; if (gdp.gameMode != "full"){ _local3 = TextMappings.get("nag_message"); }; prepareOutro(_local1, _local3, _local2, false, false); outro.show(); } private function prepareOutro(_arg1:String, _arg2:String, _arg3:int, _arg4:Boolean, _arg5:Boolean):void{ if (_arg3 == 0){ effectSound.get("badend").play(); } else { effectSound.get("goodend").play(); }; effectSound.get("timewarning").stop(); musicSound.get("gamemusic").stop(); clickBlocker.visible = true; playing = false; var _local6:int = rules.getCalculatedScore(); rules.gameOver(remainingSeconds, _arg4); var _local7:int = rules.getCalculatedScore(); outro.prepare(this, _arg1, _arg2, _arg3, _local6, _local7, _arg5, remaining, (unlocked + 1)); if (!hasSentGameEnd){ fscommand("gameEnd", ("" + rules.getCalculatedScore())); }; } public function setWorld(_arg1:int):void{ this.world = _arg1; background.gotoAndStop((_arg1 + 1)); } public function introOver():void{ clickBlocker.visible = false; startTime = getTimer(); if (isFirstLevel){ isFirstLevel = false; fscommand("gameStart"); musicSound.get("gamemusic").loop(0.5); }; } public function clickRestart():void{ } public function advanceTime(_arg1:Event):void{ musicSound.update(); effectSound.update(); if (winAnimStartTime >= 0){ doWinAnim((getTimer() - winAnimStartTime)); return; }; if (!playing){ return; }; var _local2:int = updateTimer(); remainingSeconds = ((_local2 + 999) / 1000); var _local3:int; if (gdp.gameMode != "full"){ _local3 = ((timeLimit / 1000) - (2 * 60)); }; if ((((remainingSeconds <= ((10 - 1) + _local3))) && (!(hasPlayedTimeWarning)))){ if (!relaxMode){ effectSound.get("timewarning").play(); }; hasPlayedTimeWarning = true; }; if (remainingSeconds < (0 + _local3)){ outOfTime(); }; var _local4:int = getTimer(); while ((_local4 - lastTime) > 100) { lastTime = (lastTime + 100); if (!rules.tick()){ return; }; }; } public function startGame(_arg1:int, _arg2:int):void{ musicSound.stopAll(); setWorld(_arg1); if (intro != null){ introHolder.removeChild(intro); } else { trace("wtf? not null lixom"); }; intro = null; lastTime = getTimer(); effectSound.get("shuffle").play(); playing = true; if (rules == null){ rules = new KlondikeRules(this, cardList, world); dragLayer.init(this, rules); }; trace(("test1 " + _arg2)); trace(("test2 " + rules)); rules.setContinent(_arg2); } public function startAutoSolve():void{ clickBlocker.visible = true; dragLayer.abort(); } public function buttonClicked(_arg1:MovieClip):void{ if (_arg1 == soundButton){ effectSound.fadeTo((soundButton.isOn) ? 1 : 0, 250); }; if (_arg1 == musicButton){ musicSound.fadeTo((musicButton.isOn) ? 1 : 0, 250); }; if (_arg1 == quitButton){ clickQuit(); }; } public function restartLevel(){ musicSound.stopAll(); rules.reset(cardList); } public function win():void{ var _local4:Boolean; var _local5:String; if (relaxMode){ restartLevel(); return; }; if (hasPreparedOutro){ return; }; hasPreparedOutro = true; var _local1:String = TextMappings.get("level_won"); var _local2 = 4; var _local3 = ""; if ((((gdp.playerType == "money")) && (!(relaxMode)))){ remaining--; _local4 = false; if ((((remaining == 0)) && ((unlocked == 5)))){ _local1 = TextMappings.get("all_unlocked"); _local2 = 10; _local4 = true; }; winAnimDelay = 2000; if (unlocked < 6){ _local5 = TextMappings.get(Intro.CONTINENT_NAME_MAP[unlocked]); if (remaining > 1){ _local3 = TextMappings.get("unlock_next_in").split("[0]").join(remaining).split("[1]").join(_local5); } else { if (remaining > 0){ _local3 = TextMappings.get("unlock_next_in_singular").split("[0]").join(_local5); } else { winAnimDelay = 0; _local2 = 6; _local3 = TextMappings.get("new_unlocked").split("[0]").join(_local5); }; }; }; }; winAnimStartTime = getTimer(); prepareOutro(_local1, _local3, _local2, true, _local4); } private function generateCards():String{ var _local6:int; var _local7:int; var _local8:Card; var _local1:Array = new Array(); var _local2:int; while (_local2 < 4) { _local6 = 1; while (_local6 <= 13) { _local1.push(new Card(_local2, _local6, 0)); _local6++; }; _local2++; }; var _local3 = "cdhs"; var _local4 = ""; var _local5:int; while (_local5 < 52) { _local7 = (int((Math.random() * (52 - _local5))) + _local5); _local8 = _local1[_local7]; _local1[_local7] = _local1[_local5]; _local1[_local5] = _local8; if (_local5 > 0){ _local4 = (_local4 + "_"); }; _local4 = (_local4 + (_local1[_local5].value + _local3.charAt(_local1[_local5].suit))); _local5++; }; return (_local4); } public function getPileAt(_arg1:int, _arg2:int, _arg3:Card):Pile{ var _local5:int; var _local4 = 7; if (_arg2 < (pile0.y - 8)){ if ((((_arg1 >= (foundations[0].x - _local4))) && ((_arg1 <= ((foundations[3].x + foundations[3].width) + _local4))))){ return (rules.getFoundation(_arg3.suit)); }; } else { _local5 = 0; while (_local5 < 7) { if ((((_arg1 >= (piles[_local5].x - _local4))) && ((_arg1 <= ((piles[_local5].x + piles[_local5].width) + _local4))))){ return (rules.getPile(("c" + _local5))); }; _local5++; }; }; return (null); } } }//package src
Section 32
//HandSourcePile (src.HandSourcePile) package src { import flash.display.*; public class HandSourcePile extends Pile { public var handTargetPile:HandTargetPile; public function HandSourcePile(_arg1:MovieClip, _arg2:KlondikeRules, _arg3:String){ super(_arg1, _arg2, _arg3); } override public function popCard():Card{ var _local1:Card = super.popCard(); var _local2:Card = getTopCard(); if (_local2 != null){ _local2.setClickable(true); }; updateClickable(); return (_local1); } override public function pileClicked():void{ if (handTargetPile.getCardCount() == 0){ return; }; rules.flip(); } override public function revealTopCard():void{ super.revealTopCard(); handTargetPile.pushCard(popCard()); } public function updateClickable():void{ setClickable((((handTargetPile.getCardCount() > 0)) && ((getCardCount() == 0)))); } override public function pushCard(_arg1:Card):void{ var _local2:Card = getTopCard(); if (_local2 != null){ _local2.setClickable(false); }; _arg1.setClickable(true); _arg1.hide(); super.pushCard(_arg1); updateClickable(); } override public function pressCard(_arg1:Card, _arg2:int, _arg3:int):void{ var _local4:Card = getTopCard(); rules.stopDragging(); _local4.prepareSlide(); rules.reveal(name); _local4.slide(rules); } } }//package src
Section 33
//HandTargetPile (src.HandTargetPile) package src { import flash.display.*; public class HandTargetPile extends Pile { public var handSourcePile:HandSourcePile; public function HandTargetPile(_arg1:MovieClip, _arg2:KlondikeRules, _arg3:String){ super(_arg1, _arg2, _arg3); } override public function popCard():Card{ var _local1:Card = super.popCard(); var _local2:Card = getTopCard(); if (_local2 != null){ _local2.setClickable(true); }; handSourcePile.updateClickable(); return (_local1); } override public function popCards(_arg1:int):Array{ rules.increaseScore(20); return (super.popCards(_arg1)); } override public function doubleClickCard(_arg1:Card):void{ if (_arg1 == getTopCard()){ tryClickToFoundation(_arg1); }; } override public function pushCards(_arg1:Array):void{ } override public function pushCard(_arg1:Card):void{ var _local2:Card = getTopCard(); if (_local2 != null){ _local2.setClickable(false); }; _arg1.setClickable(true); _arg1.reveal(); super.pushCard(_arg1); handSourcePile.updateClickable(); } override public function pressCard(_arg1:Card, _arg2:int, _arg3:int):void{ rules.startDragging(this, getTopCards(1), _arg2, _arg3); } } }//package src
Section 34
//KlondikeRules (src.KlondikeRules) package src { import flash.external.*; public class KlondikeRules { private var piles:Object; private var allCards:Array; private var foundationMap:Array; public var autoSolve:Boolean;// = false private var score:int;// = 0 private var introStep:int;// = 0 private var foundationSuitMap:Array; private var gameArea:GameArea; private var hasClaimedTimeBonus:Boolean;// = false private var handTargetPile:HandTargetPile; private var continent:int; private var handSourcePile:HandSourcePile; public function KlondikeRules(_arg1:GameArea, _arg2:String, _arg3:int){ piles = new Object(); foundationSuitMap = [2, 3, 1, 0]; allCards = new Array(); foundationMap = [3, 2, 0, 1]; super(); this.gameArea = _arg1; this.continent = _arg3; handSourcePile = new HandSourcePile(_arg1.deck, this, "h0"); handTargetPile = new HandTargetPile(_arg1.revealed, this, "h1"); handSourcePile.handTargetPile = handTargetPile; handTargetPile.handSourcePile = handSourcePile; piles["h0"] = handSourcePile; piles["h1"] = handTargetPile; var _local4:int; while (_local4 < 4) { piles[("f" + _local4)] = new FoundationPile(_arg1.foundations[_local4], this, ("f" + _local4), foundationSuitMap[_local4]); _local4++; }; _local4 = 0; while (_local4 < 7) { piles[("c" + _local4)] = new ColumnPile(_arg1.piles[_local4], this, ("c" + _local4)); _local4++; }; reset(_arg2); } public function slide(_arg1:Card, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Number):void{ gameArea.dragLayer.slide(_arg1, _arg2, _arg3, _arg4, _arg5); } public function getCalculatedScore():int{ return (score); } public function countCardsInFoundations():int{ var _local3:Pile; var _local1:int; var _local2:int; while (_local2 < 4) { _local3 = piles[("f" + _local2)]; _local1 = (_local1 + _local3.getCardCount()); _local2++; }; return (_local1); } public function reveal(_arg1:String):void{ var _local2:int = score; var _local3:Pile = piles[_arg1]; _local3.revealTopCard(); playData(("010," + _arg1), (score - _local2)); } public function reset(_arg1:String):void{ var _local6:Card; var _local7:String; var _local8:int; var _local9:String; var _local10:int; var _local11:int; autoSolve = false; while (allCards.length > 0) { _local6 = allCards.pop(); gameArea.cardHolder.removeChild(_local6); }; piles["h0"].reset(); piles["h1"].reset(); var _local2:int; while (_local2 < 4) { piles[("f" + _local2)].reset(); _local2++; }; _local2 = 0; while (_local2 < 7) { piles[("c" + _local2)].reset(); _local2++; }; var _local3:Array = _arg1.split("_"); _local2 = 0; while (_local2 < 52) { _local7 = _local3[_local2]; _local8 = (parseInt(_local7.substring(0, (_local7.length - 1))) - 1); _local9 = _local7.substring((_local7.length - 1)); _local10 = 0; if (_local9 == "c"){ _local10 = 0; }; if (_local9 == "d"){ _local10 = 1; }; if (_local9 == "s"){ _local10 = 2; }; if (_local9 == "h"){ _local10 = 3; }; _local6 = new Card(_local10, _local8, continent); allCards.push(_local6); gameArea.cardHolder.addChild(_local6); handSourcePile.pushCard(_local6); _local2++; }; var _local4:Array = new Array(7); var _local5:int; while (_local5 < 7) { _local4[_local5] = new Array(); _local11 = 0; while (_local11 <= _local5) { _local4[_local5].push(handSourcePile.popCard()); _local11++; }; _local5++; }; _local11 = 6; while (_local11 >= 0) { _local5 = 6; while (_local5 >= 0) { if (_local4[_local5].length == (_local11 + 1)){ handSourcePile.pushCard(_local4[_local5].pop()); }; _local5--; }; _local11--; }; introStep = -6; scoreUpdated(); } public function move(_arg1:int, _arg2:String, _arg3:String):void{ var _local7:Card; var _local4:int = score; var _local5:Pile = piles[_arg2]; var _local6:Pile = piles[_arg3]; if ((((_local5 is FoundationPile)) && (!((_local6 is FoundationPile))))){ increaseScore(-20); }; _local6.pushCards(_local5.popCards(_arg1)); playData(((((("001," + _arg1) + ",") + _local5.name) + ",") + _local6.name), (score - _local4)); if (_arg2.indexOf("c") == 0){ _local7 = _local5.getTopCard(); if (((!((_local7 == null))) && (!(_local7.isRevealed())))){ reveal(_arg2); }; }; } public function stopDragging():void{ gameArea.dragLayer.abort(); } private function playData(_arg1:String, _arg2:Number):void{ ExternalInterface.call("playData", ((_arg1 + "=") + _arg2)); } private function isSolveable():Boolean{ if (getPile("h0").getCardCount() != 0){ return (false); }; if (getPile("h1").getCardCount() > 1){ return (false); }; var _local1:int; while (_local1 < 7) { if (getPile(("c" + _local1)).hasHiddenCard()){ return (false); }; _local1++; }; return (true); } public function tick():Boolean{ var _local1:int; var _local2:int; var _local3:int; var _local4:Pile; var _local5:Card; var _local6:int; if (introStep < 0){ introStep++; } else { if (introStep < ((((((7 + 6) + 5) + 4) + 3) + 2) + 1)){ _local1 = 0; _local2 = 7; _local3 = introStep; while (_local3 >= _local2) { _local3 = (_local3 - _local2); _local1++; _local2--; }; _local4 = Pile(piles[("c" + (_local3 + _local1))]); _local5 = handSourcePile.popCard(); DragLayer.SLIDE_TIME = 60; _local5.prepareSlide(); if (_local3 == 0){ _local5.reveal(); }; _local4.pushCard(_local5); _local5.slide(this); DragLayer.SLIDE_TIME = 25; introStep++; if (introStep == ((((((7 + 6) + 5) + 4) + 3) + 2) + 1)){ gameArea.introOver(); }; } else { if (hasWon()){ gameArea.win(); return (false); }; if (autoSolve){ _local4 = getPile("h1"); if (_local4.getCardCount() > 0){ if (_local4.tryClickToFoundation(_local4.getTopCard())){ return (true); }; }; _local6 = 0; while (_local6 < 7) { _local4 = getPile(("c" + _local6)); if (_local4.getCardCount() > 0){ if (_local4.tryClickToFoundation(_local4.getTopCard())){ return (true); }; }; _local6++; }; } else { if (isSolveable()){ autoSolve = true; gameArea.startAutoSolve(); playData("101", 0); }; }; }; }; return (true); } private function scoreUpdated():void{ gameArea.scoreField.text = ("" + score); } public function hasWon():Boolean{ return ((countCardsInFoundations() == 52)); } public function gameOver(_arg1:int, _arg2:Boolean):void{ var _local4:int; var _local3:int = score; if (_arg2){ _local4 = int(Math.floor(((_arg1 * (countCardsInFoundations() / 52)) * 2))); trace(("timeBonus: " + _local4)); score = (score + _local4); hasClaimedTimeBonus = true; scoreUpdated(); }; playData(((((("111," + _local3) + ",") + _arg1) + ",") + score), (score - _local3)); } public function startDragging(_arg1:Pile, _arg2:Array, _arg3:int, _arg4:int):void{ gameArea.dragLayer.startDragging(_arg1, _arg2, _arg3, _arg4); } public function flip():void{ var _local2:Card; var _local1:int = score; increaseScore(-200); while (handTargetPile.getCardCount() > 0) { _local2 = handTargetPile.popCard(); _local2.hide(); handSourcePile.pushCard(_local2); }; playData("100", (score - _local1)); } public function getPile(_arg1:String):Pile{ return (piles[_arg1]); } public function increaseScore(_arg1:int):void{ score = (score + _arg1); if (score < 0){ score = 0; }; scoreUpdated(); } public function setContinent(_arg1:int):void{ playData(("11," + _arg1), 0); } public function getFoundation(_arg1:int):Pile{ return (getPile(("f" + foundationMap[_arg1]))); } } }//package src
Section 35
//Main (src.Main) package src { import flash.display.*; public class Main extends MovieClip { private var gameArea:GameArea; public function Main(){ start(); } public function restart(){ removeChild(gameArea); start(); } public function start():void{ gameArea = new GameArea(this); addChild(gameArea); } } }//package src
Section 36
//Outro (src.Outro) package src { import flash.display.*; import flash.events.*; import src.intro.*; import flash.text.*; import flash.utils.*; import flash.system.*; import flash.filters.*; public class Outro extends MovieClip { public var globeHolder:MovieClip; public var scoreLabel:TextField; public var scoreField:TextField; public var titleField:TextField; private var fireworks:int;// = 0 public var totalLabel:TextField; private var state:int;// = -1 public var bonusLabel:TextField; public var totalField:TextField; private var gracePeriod:int; public var bonusField:TextField; public var gameArea:GameArea; public var statusField:TextField; public var unlockText:TextField; private var target:int; public var timerField:TextField; private var doCoin:Boolean; public var mcEndSign:MovieClip; public var bg:MovieClip; public var subStatusField:TextField; public var glowAnim:MovieClip; private var startTime:int; public var fireworksHolder:MovieClip; public var light0:MovieClip; public var light1:MovieClip; private var hasPlayedUnlockSound:Boolean;// = false private var skipGlobeAnim:Boolean;// = false private var allowSignUp:Boolean;// = true private var statesTilMusic:int;// = 1 public var bouncingCoin:BouncingCoin; private var fireworksTime:int;// = 0 private var remaining:int;// = 0 public static var FIREWORKS_INTERVAL:int = 80; public static var DISPLAY_TIME:int = 19000; public function prepare(_arg1:GameArea, _arg2:String, _arg3:String, _arg4:int, _arg5:int, _arg6:int, _arg7:Boolean, _arg8:int, _arg9:int):void{ this.gameArea = _arg1; this.fireworks = (_arg4 * 5); this.doCoin = _arg7; statusField.text = _arg2; this.remaining = _arg8; this.target = _arg9; mcEndSign.visible = false; alpha = 0; y = 60; scoreField.text = ("" + _arg5); bonusField.text = ("" + (_arg6 - _arg5)); totalField.text = ("" + _arg6); useHandCursor = true; buttonMode = true; if ((((_arg4 > 0)) && ((_arg8 > 0)))){ statesTilMusic--; }; if ((((_arg8 == 0)) && ((_arg9 < 6)))){ statesTilMusic--; }; if (_arg7){ DISPLAY_TIME = (DISPLAY_TIME + 3000); }; } public function restart(_arg1:Event){ gameArea.musicSound.stopAll(); gameArea.restart(); } public function gotoKing(_arg1:Event){ if (allowSignUp){ trace("signup!"); fscommand("gameSignup", ""); }; } public function clicked(_arg1:MouseEvent):void{ if (getTimer() < gracePeriod){ return; }; if (state == -1){ skipGlobeAnim = true; } else { if (state == 0){ setState(1); } else { if (state == 1){ setState(2); }; }; }; } public function advanceGlobeAnim(_arg1:Event):void{ var _local16:int; var _local17:Number; var _local18:GlowFilter; var _local2:int = (getTimer() - startTime); var _local3:Number = (_local2 / 5000); bg.y = -(y); bg.alpha = 0; var _local4:Number = (((1 - _local3) * 2) - 1); if (_local4 < 0){ _local4 = 0; }; if (_local4 > 1){ _local4 = 1; }; var _local5:Number = (((Math.cos((_local4 * Math.PI)) * _local4) * _local4) * 600); var _local6:Number = (((-(Math.sin((_local4 * Math.PI))) * _local4) * _local4) * 200); var _local7:Number = ((_local3 - 0.9) / 0.1); if (_local7 < 0){ _local7 = 0; }; if (_local7 > 1){ _local7 = 1; }; _local7 = ((_local7 * _local7) * 300); globeHolder.x = (288.6 + _local5); globeHolder.y = (((192.7 + _local6) + 450) + _local7); var _local8:Number = (1 / (((_local4 * _local4) * 1.2) + 1)); var _local9:Array = [0, 0, 0xFF00FF, 0xA27100, 0xFF9900, 4666367, 13434675]; if ((((_local3 >= 0.49)) && (!(hasPlayedUnlockSound)))){ gameArea.effectSound.get("unlockLevel").play(); hasPlayedUnlockSound = true; }; var _local10:Number = (((_local3 - 0.49) / 0.51) * 5); if (_local10 < 0){ _local10 = 0; }; if (_local10 > 1){ _local10 = 1; }; unlockText.textColor = _local9[target]; unlockText.alpha = ((_local10 * _local10) * _local10); unlockText.y = ((295.4 + 450) + _local7); var _local11:Number = (((_local3 - 0.49) / 0.51) * 2); _local11 = Math.sqrt(_local11); _local11 = Math.sqrt(_local11); if (_local11 < 0){ _local11 = 0; }; if (_local11 > 1){ _local11 = 1; }; var _local12:Number = (((_local3 - 0.49) / 0.51) * 1.6); _local12 = Math.sqrt(_local12); if (_local12 < 0){ _local12 = 0; }; if (_local12 > 1){ _local12 = 1; }; globeHolder.light.alpha = (Math.sin((_local11 * Math.PI)) * 0.7); globeHolder.light0.alpha = Math.sin((_local12 * Math.PI)); globeHolder.light1.alpha = Math.sin((_local12 * Math.PI)); var _local13:Number = ((Math.sin((_local12 * Math.PI)) * 0.6) + 0.5); globeHolder.light0.scaleX = (globeHolder.light0.scaleY = _local13); globeHolder.light1.scaleX = (globeHolder.light1.scaleY = _local13); globeHolder.light0.rotation = (getTimer() * 0.13); globeHolder.light1.rotation = (-(getTimer()) * 0.14); if (_local11 > 0){ _local16 = (Math.sin((_local11 * Math.PI)) * 10); _local17 = Math.sin((_local11 * Math.PI)); _local17 = ((((Math.sin((_local11 * Math.PI)) * _local17) * _local17) * 8) + 1); _local18 = new GlowFilter(0xFFFFFF, 1, _local16, _local16, _local17, BitmapFilterQuality.MEDIUM); globeHolder.light.filters = new Array(_local18); }; globeHolder.globe.scaleX = (globeHolder.globe.scaleY = _local8); var _local14:Array = [0, 4, 6, 3, 5, 1, 2]; var _local15:Array = [0, 0, 5, 3, 4, 1, 2]; globeHolder.light.gotoAndStop(_local15[target]); globeHolder.globe.lerp(_local14[target], (1 - _local4)); if ((((_local3 > 1)) || (skipGlobeAnim))){ startTime = getTimer(); removeEventListener(Event.ENTER_FRAME, advanceGlobeAnim); addEventListener(Event.ENTER_FRAME, advanceTime); setState(0); }; } public function show():void{ visible = true; addEventListener(MouseEvent.MOUSE_DOWN, clicked); mcEndSign.mcFiller.addEventListener(MouseEvent.MOUSE_DOWN, tickBox); mcEndSign.mcSignUp.addEventListener(MouseEvent.MOUSE_DOWN, gotoKing); mcEndSign.mcPlayAgain.addEventListener(MouseEvent.MOUSE_DOWN, restart); startTime = getTimer(); advanceTime(null); if (remaining == 0){ addEventListener(Event.ENTER_FRAME, advanceGlobeAnim); setState(-1); } else { addEventListener(Event.ENTER_FRAME, advanceTime); setState(0); }; } private function setState(_arg1:int):void{ trace(("state " + _arg1)); if (this.state == _arg1){ return; }; this.state = _arg1; if ((((_arg1 == 0)) && (doCoin))){ gameArea.musicSound.get("allunlocked").play(); }; if (statesTilMusic-- == 0){ gameArea.musicSound.stopAll(); gameArea.musicSound.get("gameovermusic").play(); }; gracePeriod = (getTimer() + 500); if (_arg1 == 2){ mcEndSign.visible = true; }; var _local2 = (_arg1 == 0); var _local3 = (_arg1 > 0); statusField.visible = _local2; titleField.visible = _local3; scoreLabel.visible = _local3; bonusLabel.visible = _local3; totalLabel.visible = _local3; scoreField.visible = _local3; bonusField.visible = _local3; totalField.visible = _local3; } public function spawnFireworks(_arg1:int):void{ var _local2:Number; var _local3:Number; var _local4:Fireworks; while (((((_arg1 - fireworksTime) > 0)) && ((fireworks > 0)))) { fireworks--; fireworksTime = (fireworksTime + ((Math.random() + 0.5) * FIREWORKS_INTERVAL)); _local2 = ((Math.random() * (515 - 100)) + 50); _local3 = ((Math.random() * (338.1 - 100)) + 50); _local4 = new Fireworks(_local2, _local3, ((Math.random() * 0.5) + 0.75)); fireworksHolder.addChild(_local4); }; } public function tickBox(_arg1:Event){ trace("TICKBOX"); if (allowSignUp){ mcEndSign.mcTick.visible = false; allowSignUp = false; } else { mcEndSign.mcTick.visible = true; allowSignUp = true; }; } public function advanceTime(_arg1:Event):void{ var _local2:int = (getTimer() - startTime); var _local3:Number = ((800 - _local2) / 800); if (_local3 < 0){ _local3 = 0; }; alpha = (1 - (_local3 * _local3)); if (doCoin){ if ((((_local2 > 6000)) && ((state == 0)))){ setState(1); }; } else { if ((((_local2 > 3000)) && ((state == 0)))){ setState(1); }; }; if ((((_local2 > DISPLAY_TIME)) && ((state == 1)))){ setState(2); }; var _local4:int = (DISPLAY_TIME - _local2); var _local5:int = int(((_local4 + 999) / 1000)); if (_local5 < 0){ _local5 = 0; }; } } }//package src
Section 37
//Pile (src.Pile) package src { import flash.display.*; import flash.events.*; public class Pile { public var name:String; public var mc:MovieClip; private var clickable:Boolean;// = false protected var cards:Array; public var rules:KlondikeRules; public function Pile(_arg1:MovieClip, _arg2:KlondikeRules, _arg3:String){ cards = new Array(); super(); this.mc = _arg1; this.rules = _arg2; this.name = _arg3; _arg1.alpha = 0; _arg1.buttonMode = true; _arg1.useHandCursor = false; } public function popCard():Card{ var _local1:Card = cards.pop(); return (_local1); } public function pushCard(_arg1:Card):void{ placeCard(_arg1, cards.length); _arg1.pile = this; _arg1.pos = cards.length; var _local2:MovieClip = MovieClip(_arg1.parent); _local2.removeChild(_arg1); _local2.addChild(_arg1); cards.push(_arg1); } public function reset(){ cards = new Array(); setClickable(false); } public function popCards(_arg1:int):Array{ var _local2:Array = new Array(_arg1); var _local3:int; while (_local3 < _arg1) { _local2[((_arg1 - 1) - _local3)] = popCard(); _local3++; }; return (_local2); } public function getTopCards(_arg1:int):Array{ var _local2:Array = new Array(_arg1); var _local3:int; while (_local3 < _arg1) { _local2[((_arg1 - 1) - _local3)] = cards[((cards.length - _local3) - 1)]; _local3++; }; return (_local2); } public function hasHiddenCard():Boolean{ if (cards.length == 0){ return (false); }; return (!(cards[0].isRevealed())); } public function pileClicked():void{ } public function doMouseDown(_arg1:MouseEvent):void{ pileClicked(); } public function getTopCard():Card{ return (cards[(cards.length - 1)]); } public function setClickable(_arg1:Boolean):void{ if (this.clickable == _arg1){ return; }; this.clickable = _arg1; if (_arg1){ mc.addEventListener(MouseEvent.MOUSE_DOWN, doMouseDown); }; if (!_arg1){ mc.removeEventListener(MouseEvent.MOUSE_DOWN, doMouseDown); }; mc.useHandCursor = _arg1; } public function mayPushCards(_arg1:Array):Boolean{ return (false); } public function doubleClickCard(_arg1:Card):void{ } public function pushCards(_arg1:Array):void{ var _local2:int; while (_local2 < _arg1.length) { pushCard(_arg1[_local2]); _local2++; }; } public function getCardCount():int{ return (cards.length); } public function revealTopCard():void{ var _local1:Card = cards[(cards.length - 1)]; _local1.reveal(); } public function pressCard(_arg1:Card, _arg2:int, _arg3:int):void{ } public function tryClickToFoundation(_arg1:Card):Boolean{ var _local2:Pile = rules.getFoundation(_arg1.suit); if (_local2.mayPushCards(new Array(_arg1))){ rules.stopDragging(); _arg1.prepareSlide(); rules.move(1, name, _local2.name); _arg1.slide(rules); return (true); }; return (false); } public function placeCard(_arg1:Card, _arg2:int):void{ _arg1.x = (mc.x - int(((_arg2 + 7) / 8))); _arg1.y = (mc.y - (int(((_arg2 + 7) / 8)) * 2)); } } }//package src
Section 38
//QuitButton (src.QuitButton) package src { import flash.display.*; import flash.events.*; import src.util.*; import flash.text.*; public class QuitButton extends MovieClip { public var textLabel0:TextField; public var textLabel1:TextField; public var hitBox:MovieClip; public var gameArea:GameArea; public function QuitButton(){ hitBox.alpha = 0; hitBox.addEventListener(MouseEvent.MOUSE_OVER, mouseOver); hitBox.addEventListener(MouseEvent.MOUSE_OUT, mouseOut); hitBox.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); buttonMode = true; doubleClickEnabled = true; gotoAndStop(1); } public function mouseOut(_arg1:MouseEvent):void{ textLabel0.visible = true; textLabel1.visible = false; gotoAndStop(1); } public function mouseDown(_arg1:MouseEvent):void{ gameArea.buttonClicked(this); } public function init(_arg1:GameArea):void{ this.gameArea = _arg1; textLabel0.text = TextMappings.get("endgame"); textLabel1.text = TextMappings.get("endgame"); } public function mouseOver(_arg1:MouseEvent):void{ textLabel0.visible = false; textLabel1.visible = true; gotoAndStop(2); } } }//package src
Section 39
//SoundButton (src.SoundButton) package src { import flash.display.*; import flash.events.*; public class SoundButton extends MovieClip { public var hitBox:MovieClip; public var isOn:Boolean;// = true public var gameArea:GameArea; public function SoundButton(){ hitBox.alpha = 0; hitBox.addEventListener(MouseEvent.MOUSE_OVER, mouseOver); hitBox.addEventListener(MouseEvent.MOUSE_OUT, mouseOut); hitBox.addEventListener(MouseEvent.MOUSE_DOWN, mouseDown); buttonMode = true; doubleClickEnabled = true; gotoAndStop((1 + (isOn) ? 0 : 2)); } public function mouseOver(_arg1:MouseEvent):void{ gotoAndStop((2 + (isOn) ? 0 : 2)); } public function mouseDown(_arg1:MouseEvent):void{ isOn = !(isOn); gotoAndStop((2 + (isOn) ? 0 : 2)); gameArea.buttonClicked(this); } public function init(_arg1:GameArea):void{ this.gameArea = _arg1; } public function mouseOut(_arg1:MouseEvent):void{ gotoAndStop((1 + (isOn) ? 0 : 2)); } } }//package src
Section 40
//button_music (button_music) package { import src.*; public dynamic class button_music extends SoundButton { } }//package
Section 41
//button_sound (button_sound) package { import src.*; public dynamic class button_sound extends SoundButton { } }//package

Library Items

Symbol 1 Sound {sound.unlockLevel}
Symbol 2 Sound {sound.timewarning}
Symbol 3 Sound {sound.shuffle}
Symbol 4 Sound {sound.severalcards}
Symbol 5 Sound {sound.card}
Symbol 6 Sound {sound.gamemusic}
Symbol 7 Sound {sound.titlemusic}
Symbol 8 Sound {sound.gameovermusic}
Symbol 9 Sound {sound.goodend}
Symbol 10 Sound {sound.badend}
Symbol 11 Sound {sound.allunlocked}
Symbol 12 Bitmap {src.globe.Texture}
Symbol 13 GraphicUsed by:14 79 321
Symbol 14 MovieClipUses:13Used by:22
Symbol 15 MovieClipUsed by:22 159
Symbol 16 BitmapUsed by:17
Symbol 17 GraphicUses:16Used by:18
Symbol 18 MovieClipUses:17Used by:22
Symbol 19 BitmapUsed by:20
Symbol 20 GraphicUses:19Used by:21
Symbol 21 MovieClipUses:20Used by:22
Symbol 22 MovieClip {src.intro.GlobeAnim}Uses:14 15 18 21
Symbol 23 BitmapUsed by:24
Symbol 24 GraphicUses:23Used by:59
Symbol 25 BitmapUsed by:26
Symbol 26 GraphicUses:25Used by:59
Symbol 27 BitmapUsed by:28
Symbol 28 GraphicUses:27Used by:59
Symbol 29 BitmapUsed by:30
Symbol 30 GraphicUses:29Used by:59
Symbol 31 BitmapUsed by:32
Symbol 32 GraphicUses:31Used by:59
Symbol 33 BitmapUsed by:34
Symbol 34 GraphicUses:33Used by:59
Symbol 35 BitmapUsed by:36
Symbol 36 GraphicUses:35Used by:59
Symbol 37 BitmapUsed by:38
Symbol 38 GraphicUses:37Used by:59
Symbol 39 BitmapUsed by:40
Symbol 40 GraphicUses:39Used by:59
Symbol 41 BitmapUsed by:42
Symbol 42 GraphicUses:41Used by:59
Symbol 43 BitmapUsed by:44
Symbol 44 GraphicUses:43Used by:59
Symbol 45 BitmapUsed by:46
Symbol 46 GraphicUses:45Used by:59
Symbol 47 BitmapUsed by:48
Symbol 48 GraphicUses:47Used by:59
Symbol 49 BitmapUsed by:50
Symbol 50 GraphicUses:49Used by:59
Symbol 51 BitmapUsed by:52
Symbol 52 GraphicUses:51Used by:59
Symbol 53 BitmapUsed by:54
Symbol 54 GraphicUses:53Used by:59
Symbol 55 BitmapUsed by:56
Symbol 56 GraphicUses:55Used by:59
Symbol 57 BitmapUsed by:58
Symbol 58 GraphicUses:57Used by:59
Symbol 59 MovieClip {src.Fireworks}Uses:24 26 28 30 32 34 36 38 40 42 44 46 48 50 52 54 56 58
Symbol 60 GraphicUsed by:66
Symbol 61 FontUsed by:62 65
Symbol 62 EditableTextUses:61Used by:66
Symbol 63 BitmapUsed by:64
Symbol 64 GraphicUses:63Used by:66
Symbol 65 EditableTextUses:61Used by:66
Symbol 66 MovieClip {src.intro.Instructions}Uses:60 62 64 65
Symbol 67 GraphicUsed by:68
Symbol 68 MovieClipUses:67Used by:73
Symbol 69 GraphicUsed by:70 153
Symbol 70 MovieClipUses:69Used by:73 78 85
Symbol 71 GraphicUsed by:72
Symbol 72 MovieClipUses:71Used by:73
Symbol 73 MovieClip {button_music}Uses:68 70 72Used by:159
Symbol 74 GraphicUsed by:75
Symbol 75 MovieClipUses:74Used by:78
Symbol 76 GraphicUsed by:77
Symbol 77 MovieClipUses:76Used by:78
Symbol 78 MovieClip {button_sound}Uses:75 70 77Used by:159
Symbol 79 MovieClipUses:13Used by:85
Symbol 80 GraphicUsed by:81
Symbol 81 MovieClipUses:80Used by:85
Symbol 82 FontUsed by:83 84 122 123 124 125 134 135 136 137 138 139 140 141 146 147 151 280 281 284 285
Symbol 83 EditableTextUses:82Used by:85
Symbol 84 EditableTextUses:82Used by:85
Symbol 85 MovieClip {src.QuitButton}Uses:79 81 83 84 70Used by:159
Symbol 86 BitmapUsed by:87
Symbol 87 GraphicUses:86Used by:105
Symbol 88 BitmapUsed by:89
Symbol 89 GraphicUses:88Used by:105
Symbol 90 BitmapUsed by:91
Symbol 91 GraphicUses:90Used by:105
Symbol 92 BitmapUsed by:93 130 142 279
Symbol 93 GraphicUses:92Used by:105
Symbol 94 BitmapUsed by:95
Symbol 95 GraphicUses:94Used by:96
Symbol 96 MovieClipUses:95Used by:105 156 157
Symbol 97 BitmapUsed by:98
Symbol 98 GraphicUses:97Used by:105 156 157
Symbol 99 BitmapUsed by:100
Symbol 100 GraphicUses:99Used by:105
Symbol 101 BitmapUsed by:102
Symbol 102 GraphicUses:101Used by:105
Symbol 103 BitmapUsed by:104
Symbol 104 GraphicUses:103Used by:105
Symbol 105 MovieClipUses:87 89 91 93 96 98 100 102 104Used by:159
Symbol 106 GraphicUsed by:107
Symbol 107 MovieClipUses:106Used by:121
Symbol 108 GraphicUsed by:120
Symbol 109 GraphicUsed by:110
Symbol 110 MovieClipUses:109Used by:120
Symbol 111 GraphicUsed by:120
Symbol 112 GraphicUsed by:113
Symbol 113 MovieClipUses:112Used by:120
Symbol 114 GraphicUsed by:120
Symbol 115 GraphicUsed by:116
Symbol 116 MovieClipUses:115Used by:120
Symbol 117 GraphicUsed by:120
Symbol 118 GraphicUsed by:119
Symbol 119 MovieClipUses:118Used by:120
Symbol 120 MovieClipUses:108 110 111 113 114 116 117 119Used by:121
Symbol 121 MovieClipUses:107 120Used by:159
Symbol 122 EditableTextUses:82Used by:159
Symbol 123 EditableTextUses:82Used by:159
Symbol 124 EditableTextUses:82Used by:159
Symbol 125 EditableTextUses:82Used by:159
Symbol 126 GraphicUsed by:127
Symbol 127 MovieClipUses:126Used by:159
Symbol 128 GraphicUsed by:129
Symbol 129 MovieClipUses:128Used by:159
Symbol 130 GraphicUses:92Used by:157
Symbol 131 GraphicUsed by:132
Symbol 132 MovieClipUses:131Used by:156 157
Symbol 133 GraphicUsed by:157
Symbol 134 EditableTextUses:82Used by:157
Symbol 135 EditableTextUses:82Used by:157
Symbol 136 EditableTextUses:82Used by:157
Symbol 137 EditableTextUses:82Used by:157
Symbol 138 EditableTextUses:82Used by:157
Symbol 139 EditableTextUses:82Used by:157
Symbol 140 EditableTextUses:82Used by:157
Symbol 141 EditableTextUses:82Used by:157
Symbol 142 GraphicUses:92Used by:156
Symbol 143 GraphicUsed by:144
Symbol 144 MovieClipUses:143Used by:156
Symbol 145 GraphicUsed by:156
Symbol 146 TextUses:82Used by:156
Symbol 147 TextUses:82Used by:156
Symbol 148 BitmapUsed by:149
Symbol 149 GraphicUses:148Used by:150
Symbol 150 MovieClipUses:149Used by:156
Symbol 151 TextUses:82Used by:152
Symbol 152 MovieClipUses:151Used by:156
Symbol 153 MovieClipUses:69Used by:156
Symbol 154 GraphicUsed by:155
Symbol 155 MovieClipUses:154Used by:156
Symbol 156 MovieClipUses:142 132 98 96 144 145 146 147 150 152 153 155Used by:157
Symbol 157 MovieClip {src.Outro}Uses:130 96 98 132 133 134 135 136 137 138 139 140 141 156Used by:159
Symbol 158 MovieClip {src.DragLayer}Used by:159
Symbol 159 MovieClip {src.GameArea}Uses:105 121 122 123 124 125 85 127 15 129 157 78 73 158
Symbol 160 BitmapUsed by:161
Symbol 161 GraphicUses:160Used by:276
Symbol 162 BitmapUsed by:163
Symbol 163 GraphicUses:162Used by:276
Symbol 164 BitmapUsed by:165
Symbol 165 GraphicUses:164Used by:276
Symbol 166 BitmapUsed by:167
Symbol 167 GraphicUses:166Used by:276
Symbol 168 BitmapUsed by:169
Symbol 169 GraphicUses:168Used by:276
Symbol 170 BitmapUsed by:171
Symbol 171 GraphicUses:170Used by:276
Symbol 172 BitmapUsed by:173
Symbol 173 GraphicUses:172Used by:276
Symbol 174 BitmapUsed by:175
Symbol 175 GraphicUses:174Used by:276
Symbol 176 BitmapUsed by:177
Symbol 177 GraphicUses:176Used by:276
Symbol 178 BitmapUsed by:179
Symbol 179 GraphicUses:178Used by:276
Symbol 180 BitmapUsed by:181
Symbol 181 GraphicUses:180Used by:276
Symbol 182 BitmapUsed by:183
Symbol 183 GraphicUses:182Used by:276
Symbol 184 BitmapUsed by:185
Symbol 185 GraphicUses:184Used by:276
Symbol 186 BitmapUsed by:187
Symbol 187 GraphicUses:186Used by:276
Symbol 188 BitmapUsed by:189
Symbol 189 GraphicUses:188Used by:276
Symbol 190 BitmapUsed by:191
Symbol 191 GraphicUses:190Used by:276
Symbol 192 BitmapUsed by:193
Symbol 193 GraphicUses:192Used by:276
Symbol 194 BitmapUsed by:195
Symbol 195 GraphicUses:194Used by:276
Symbol 196 BitmapUsed by:197
Symbol 197 GraphicUses:196Used by:276
Symbol 198 BitmapUsed by:199
Symbol 199 GraphicUses:198Used by:276
Symbol 200 BitmapUsed by:201
Symbol 201 GraphicUses:200Used by:276
Symbol 202 BitmapUsed by:203
Symbol 203 GraphicUses:202Used by:276
Symbol 204 BitmapUsed by:205
Symbol 205 GraphicUses:204Used by:276
Symbol 206 BitmapUsed by:207
Symbol 207 GraphicUses:206Used by:276
Symbol 208 BitmapUsed by:209
Symbol 209 GraphicUses:208Used by:276
Symbol 210 BitmapUsed by:211
Symbol 211 GraphicUses:210Used by:276
Symbol 212 BitmapUsed by:213
Symbol 213 GraphicUses:212Used by:276
Symbol 214 BitmapUsed by:215
Symbol 215 GraphicUses:214Used by:276
Symbol 216 BitmapUsed by:217
Symbol 217 GraphicUses:216Used by:276
Symbol 218 BitmapUsed by:219
Symbol 219 GraphicUses:218Used by:276
Symbol 220 BitmapUsed by:221
Symbol 221 GraphicUses:220Used by:276
Symbol 222 BitmapUsed by:223
Symbol 223 GraphicUses:222Used by:276
Symbol 224 BitmapUsed by:225
Symbol 225 GraphicUses:224Used by:276
Symbol 226 BitmapUsed by:227
Symbol 227 GraphicUses:226Used by:276
Symbol 228 BitmapUsed by:229
Symbol 229 GraphicUses:228Used by:276
Symbol 230 BitmapUsed by:231
Symbol 231 GraphicUses:230Used by:276
Symbol 232 BitmapUsed by:233
Symbol 233 GraphicUses:232Used by:276
Symbol 234 BitmapUsed by:235
Symbol 235 GraphicUses:234Used by:276
Symbol 236 BitmapUsed by:237
Symbol 237 GraphicUses:236Used by:276
Symbol 238 BitmapUsed by:239
Symbol 239 GraphicUses:238Used by:276
Symbol 240 BitmapUsed by:241
Symbol 241 GraphicUses:240Used by:276
Symbol 242 BitmapUsed by:243
Symbol 243 GraphicUses:242Used by:276
Symbol 244 BitmapUsed by:245
Symbol 245 GraphicUses:244Used by:276
Symbol 246 BitmapUsed by:247
Symbol 247 GraphicUses:246Used by:276
Symbol 248 BitmapUsed by:249
Symbol 249 GraphicUses:248Used by:276
Symbol 250 BitmapUsed by:251
Symbol 251 GraphicUses:250Used by:276
Symbol 252 BitmapUsed by:253
Symbol 253 GraphicUses:252Used by:276
Symbol 254 BitmapUsed by:255
Symbol 255 GraphicUses:254Used by:276
Symbol 256 BitmapUsed by:257
Symbol 257 GraphicUses:256Used by:276
Symbol 258 BitmapUsed by:259
Symbol 259 GraphicUses:258Used by:276
Symbol 260 BitmapUsed by:261
Symbol 261 GraphicUses:260Used by:276
Symbol 262 BitmapUsed by:263
Symbol 263 GraphicUses:262Used by:276
Symbol 264 BitmapUsed by:265
Symbol 265 GraphicUses:264Used by:276
Symbol 266 BitmapUsed by:267
Symbol 267 GraphicUses:266Used by:276
Symbol 268 BitmapUsed by:269
Symbol 269 GraphicUses:268Used by:276
Symbol 270 BitmapUsed by:271
Symbol 271 GraphicUses:270Used by:276
Symbol 272 BitmapUsed by:273
Symbol 273 GraphicUses:272Used by:276
Symbol 274 BitmapUsed by:275
Symbol 275 GraphicUses:274Used by:276
Symbol 276 MovieClip {src.Card}Uses:161 163 165 167 169 171 173 175 177 179 181 183 185 187 189 191 193 195 197 199 201 203 205 207 209 211 213 215 217 219 221 223 225 227 229 231 233 235 237 239 241 243 245 247 249 251 253 255 257 259 261 263 265 267 269 271 273 275
Symbol 277 BitmapUsed by:279
Symbol 278 BitmapUsed by:279
Symbol 279 GraphicUses:277 278 92Used by:286
Symbol 280 TextUses:82Used by:286
Symbol 281 TextUses:82Used by:286
Symbol 282 BitmapUsed by:283
Symbol 283 GraphicUses:282Used by:286
Symbol 284 TextUses:82Used by:286
Symbol 285 EditableTextUses:82Used by:286
Symbol 286 MovieClip {src.intro.Intro}Uses:279 280 281 283 284 285
Symbol 287 BitmapUsed by:288
Symbol 288 GraphicUses:287Used by:319
Symbol 289 BitmapUsed by:290
Symbol 290 GraphicUses:289Used by:319
Symbol 291 BitmapUsed by:292
Symbol 292 GraphicUses:291Used by:319
Symbol 293 BitmapUsed by:294
Symbol 294 GraphicUses:293Used by:319
Symbol 295 BitmapUsed by:296
Symbol 296 GraphicUses:295Used by:319
Symbol 297 BitmapUsed by:298
Symbol 298 GraphicUses:297Used by:319
Symbol 299 BitmapUsed by:300
Symbol 300 GraphicUses:299Used by:319
Symbol 301 BitmapUsed by:302
Symbol 302 GraphicUses:301Used by:319
Symbol 303 BitmapUsed by:304
Symbol 304 GraphicUses:303Used by:319
Symbol 305 BitmapUsed by:306
Symbol 306 GraphicUses:305Used by:319
Symbol 307 BitmapUsed by:308
Symbol 308 GraphicUses:307Used by:319
Symbol 309 BitmapUsed by:310
Symbol 310 GraphicUses:309Used by:319
Symbol 311 BitmapUsed by:312
Symbol 312 GraphicUses:311Used by:319
Symbol 313 BitmapUsed by:314
Symbol 314 GraphicUses:313Used by:319
Symbol 315 BitmapUsed by:316
Symbol 316 GraphicUses:315Used by:319
Symbol 317 BitmapUsed by:318
Symbol 318 GraphicUses:317Used by:319
Symbol 319 MovieClipUses:288 290 292 294 296 298 300 302 304 306 308 310 312 314 316 318Used by:320
Symbol 320 MovieClip {src.intro.BouncingCoin}Uses:319
Symbol 321 MovieClipUses:13Used by:322
Symbol 322 MovieClip {src.intro.Glowers}Uses:321

Instance Names

"glow"Symbol 22 MovieClip {src.intro.GlobeAnim} Frame 1Symbol 14 MovieClip
"globeHolder"Symbol 22 MovieClip {src.intro.GlobeAnim} Frame 1Symbol 15 MovieClip
"cloud0"Symbol 22 MovieClip {src.intro.GlobeAnim} Frame 1Symbol 21 MovieClip
"cloud1"Symbol 22 MovieClip {src.intro.GlobeAnim} Frame 1Symbol 21 MovieClip
"cloud2"Symbol 22 MovieClip {src.intro.GlobeAnim} Frame 1Symbol 21 MovieClip
"bodyText1"Symbol 66 MovieClip {src.intro.Instructions} Frame 1Symbol 62 EditableText
"bodyText2"Symbol 66 MovieClip {src.intro.Instructions} Frame 1Symbol 65 EditableText
"hitBox"Symbol 73 MovieClip {button_music} Frame 1Symbol 70 MovieClip
"hitBox"Symbol 78 MovieClip {button_sound} Frame 1Symbol 70 MovieClip
"textLabel1"Symbol 85 MovieClip {src.QuitButton} Frame 1Symbol 83 EditableText
"textLabel0"Symbol 85 MovieClip {src.QuitButton} Frame 1Symbol 84 EditableText
"hitBox"Symbol 85 MovieClip {src.QuitButton} Frame 1Symbol 70 MovieClip
"clubs"Symbol 120 MovieClip Frame 1Symbol 110 MovieClip
"diamonds"Symbol 120 MovieClip Frame 2Symbol 113 MovieClip
"hearts"Symbol 120 MovieClip Frame 3Symbol 116 MovieClip
"spades"Symbol 120 MovieClip Frame 4Symbol 119 MovieClip
"pileMc3"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"pileMc4"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"pileMc5"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"pileMc6"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"pileMc2"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"pileMc1"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"pileMc0"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"revealedMc"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"deckMc"Symbol 121 MovieClip Frame 1Symbol 107 MovieClip
"foundationMc0"Symbol 121 MovieClip Frame 1Symbol 120 MovieClip
"foundationMc1"Symbol 121 MovieClip Frame 1Symbol 120 MovieClip
"foundationMc2"Symbol 121 MovieClip Frame 1Symbol 120 MovieClip
"foundationMc3"Symbol 121 MovieClip Frame 1Symbol 120 MovieClip
"mcTickBox"Symbol 156 MovieClip Frame 1Symbol 144 MovieClip
"mcSignUp"Symbol 156 MovieClip Frame 1Symbol 150 MovieClip
"mcPlayAgain"Symbol 156 MovieClip Frame 1Symbol 152 MovieClip
"mcFiller"Symbol 156 MovieClip Frame 1Symbol 153 MovieClip
"mcTick"Symbol 156 MovieClip Frame 1Symbol 155 MovieClip
"titleField"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 134 EditableText
"statusField"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 135 EditableText
"scoreLabel"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 136 EditableText
"bonusLabel"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 137 EditableText
"totalLabel"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 138 EditableText
"scoreField"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 139 EditableText
"bonusField"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 140 EditableText
"totalField"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 141 EditableText
"mcEndSign"Symbol 157 MovieClip {src.Outro} Frame 1Symbol 156 MovieClip
"background"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 105 MovieClip
"mcHolder"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 121 MovieClip
"scoreText"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 122 EditableText
"scoreField"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 123 EditableText
"timeText"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 124 EditableText
"timeField"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 125 EditableText
"quitButton"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 85 MovieClip {src.QuitButton}
"deck"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"revealed"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"foundation0"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"foundation1"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"foundation2"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"foundation3"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"pile0"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"pile1"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"pile3"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"pile4"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"pile5"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"pile6"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"pile2"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 127 MovieClip
"cardHolder"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 15 MovieClip
"clickBlocker"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 129 MovieClip
"introHolder"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 15 MovieClip
"outro"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 157 MovieClip {src.Outro}
"musicButton"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 78 MovieClip {button_sound}
"soundButton"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 73 MovieClip {button_music}
"dragLayer"Symbol 159 MovieClip {src.GameArea} Frame 1Symbol 158 MovieClip {src.DragLayer}
"gameStartsInText"Symbol 286 MovieClip {src.intro.Intro} Frame 1Symbol 285 EditableText
"coinAnim"Symbol 320 MovieClip {src.intro.BouncingCoin} Frame 1Symbol 319 MovieClip
"glow5"Symbol 322 MovieClip {src.intro.Glowers} Frame 1Symbol 321 MovieClip
"glow3"Symbol 322 MovieClip {src.intro.Glowers} Frame 1Symbol 321 MovieClip
"glow0"Symbol 322 MovieClip {src.intro.Glowers} Frame 1Symbol 321 MovieClip
"glow1"Symbol 322 MovieClip {src.intro.Glowers} Frame 1Symbol 321 MovieClip
"glow2"Symbol 322 MovieClip {src.intro.Glowers} Frame 1Symbol 321 MovieClip
"glow4"Symbol 322 MovieClip {src.intro.Glowers} Frame 1Symbol 321 MovieClip

Special Tags

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




http://swfchan.com/50/246742/info.shtml
Created: 22/4 -2022 21:45:48 Last modified: 22/4 -2022 21:45:48 Server time: 23/06 -2024 02:52:03