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

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

darkcomplex.swf

This is the info page for
Flash #8727

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


Text
Welcome, HeRo!

what is your name?

what are your words of wisdom?

ActionScript [AS1/AS2]

Frame 1
function startNewGame() { _global.startMode = "newgame"; gotoAndPlay ("titleFadeOut"); } function loadGame() { _global.startMode = "loadgame"; gotoAndPlay ("titleFadeOut2"); } function hasSavedGame() { if (user.data.currentRoomNumber == undefined) { return(false); } if (user.data.currentRoomNumber == -111) { return(false); } return(true); } _global.cookieName = "userdataDarkComplexG"; _global.HallOfFameName = "DarkComplex2005"; _global.user = SharedObject.getLocal(_global.cookieName); var flagButtonPressed = false; if (_root.hasSavedGame() == false) { _root.iBegin._visible = true; _root.iContinue._visible = false; _root.iStartOver._visible = false; } else { _root.iBegin._visible = false; _root.iContinue._visible = true; _root.iStartOver._visible = true; }
Frame 21
stop();
Frame 45
gotoAndPlay (77);
Frame 75
gotoAndPlay (181);
Frame 83
function startGame() { gotoAndPlay ("fadeOut"); }
Frame 112
stop();
Frame 181
function SoundObj() { this.count = 0; this.addSound = addSound; this.playSound = playSound; this.stopSound = stopSound; } function addSound(name, sound_id, repeatFlag) { _root.empty.duplicateMovieClip(name, this.count + 1000); obj = _root[name]; trace("Adding sound obj" + obj); obj.sound = new Sound(obj); obj.sound.attachSound(sound_id); obj.sound.setVolume(0); obj.sound.repeatFlag = repeatFlag; obj.sound.onSoundComplete = function () { if (this.repeatFlag == true) { this.start(); } }; this.count = this.count + 1; } function playSound(soundName, soundVolume, howFarIn, repeatFlag) { soundVolume = soundVolume * VOL_GLOBAL_ADJUST; if (!howFarIn) { howFarIn = 0; } if (!repeatFlag) { repeatFlag = false; } if (soundVolume > -1) { _root[soundName].sound.setVolume(soundVolume); } _root[soundName].sound.repeatFlag = repeatFlag; _root[soundName].sound.start(howFarIn); } function stopSound(soundName, method) { if (method == "IMMEDIATE") { _root[soundName].sound.stop(); return(undefined); } if (method == "NOREPEAT") { _root[soundName].sound.repeatFlag = false; return(undefined); } } _root.attachMovie("empty", "empty", 999); var XSound = new SoundObj(); XSound.addSound("sndAirlock", "AirlockShort1.wav"); XSound.addSound("sndAmbience", "ambience1.wav"); XSound.addSound("sndChime1", "chime1.wav"); XSound.addSound("sndChime2", "chime2.wav"); XSound.addSound("sndChime3", "chime3.wav"); XSound.addSound("sndChime4", "chime4.wav"); XSound.addSound("sndChime5", "chime5.wav"); XSound.addSound("sndChime6", "chime6.wav"); XSound.addSound("sndDoor", "door1.wav"); XSound.addSound("sndSourceOn", "sourceOn.wav"); XSound.addSound("sndSourceOff", "sourceOff.wav"); XSound.addSound("sndStab1", "eerieStab1.wav"); XSound.addSound("sndStab2", "eerieStab2.wav"); XSound.addSound("sndStab3", "eerieStab3.wav"); XSound.addSound("sndStab4", "eerieStab4.wav"); XSound.addSound("sndStab5", "eerieStab5.wav"); XSound.addSound("sndStab7", "eerieStab7.wav"); XSound.addSound("sndStab8", "eerieStab8.wav"); XSound.addSound("sndStab9", "eerieStab9.wav"); XSound.addSound("sndOrbits", "orbits.wav"); XSound.addSound("sndPuzzleAmbience", "puzzleAmbience.wav"); XSound.addSound("sndPuzzleOpen", "puzzleOpen2.wav"); XSound.addSound("sndPuzzleSolved", "puzzleSolved.wav"); XSound.addSound("sndRotor", "rotor.wav"); XSound.addSound("sndRotorClunk", "rotorClunk.wav"); VOL_GLOBAL_ADJUST = 1.3; VOL_AMBIENCE = 3.5; VOL_ORBITS = 20; VOL_PUZZLEOPEN = 80; VOL_PUZZLEAMBIENCE = 25; VOL_PUZZLESOLVED = 85; VOL_STABS = 80; VOL_CHIMES = 20; VOL_DOOR = 20; VOL_AIRLOCK = 37; VOL_ROTOR = 50; VOL_ROTORCLUNK = 15; VOL_SOURCEON = 7; VOL_SOURCEOFF = 7; _root.iIntermediary2._visible = false; _root.iIntermediary._visible = false; function handleTriangleButtonPress(aBtn) { aRoom = rooms[currentRoomNumber]; if (aRoom.solved == false) { if (gameMode == "NORMAL") { setupPuzzle(aRoom.puzzleName); _root.i3dStage.obj7.mc.texture.iButton.gotoAndPlay("frisbeePress"); startMode_LAUNCH_PUZZLE(false); } if (gameMode == "PLAY_PUZZLE") { _root.i3dStage.obj7.mc.texture.iButton.gotoAndPlay("frisbeePress"); startMode_CLOSE_PUZZLE(); } } if (aRoom.solved == true) { if (gameMode == "NORMAL") { _root.i3dStage.obj7.mc.texture.iButton.gotoAndPlay("moirePress"); setupPuzzle("PuzzleHINT"); startMode_LAUNCH_PUZZLE(true); } if (gameMode == "PLAY_PUZZLE") { _root.i3dStage.obj7.mc.texture.iButton.gotoAndPlay("moirePress"); startMode_CLOSE_PUZZLE(); } } } function handleDoorButtonPress(aBtn) { if (gameMode == "NORMAL") { startMode_TURN_TO_DOOR(aBtn); } if ((gameMode == "FADE_IN") && (gameModeCurrentStep > 10)) { startMode_TURN_TO_DOOR(aBtn); } } function handleZDoorButtonPress(aBtn) { if (gameMode == "PLAY_PUZZLE") { startMode_TURN_TO_DOOR(aBtn); } } function handleSourcePress(aBtn) { aRoom = rooms[currentRoomNumber]; saveGame(); aSource = sources[aBtn.sourceNumber]; if (aSource.active == true) { _root.XSound.playSound("sndSourceOff", VOL_SOURCEOFF, 0, false); aSource.active = false; aBtn.gotoAndPlay("doFadeOut"); resolvePaths(aSource.destinationPath, "NONE"); } else { _root.XSound.playSound("sndSourceOn", VOL_SOURCEON, 0, false); aSource.active = true; aBtn.gotoAndPlay("doFadeIn"); resolvePaths(aSource.destinationPath, aSource.sourceColor); } invokeSwitchFadeOutAnims(aBtn); } function handleSwitchPress(aBtn) { if (flagSwitchTurning == true) { return(undefined); } if ((currentRoomNumber == 26) && (gameMode == "PLAY_PUZZLE")) { return(undefined); } aRoom = rooms[currentRoomNumber]; if ((currentRoomNumber != 26) && (aRoom.solved == false)) { return(undefined); } saveGame(); aSwitch = pathSwitches[aBtn.pathSwitchNumber]; trace((("Pressed Switch # " + aBtn.pathSwitchNumber) + " : ") + aSwitch); aWall = aBtn._parent; cf = aWall.iSwitchPack.iSwitchRing._currentframe; if ((cf != 37) && (cf != 81)) { return(undefined); } flagSwitchTurning = true; var _local2 = 1; while (_local2 <= 108) { if (paths[_local2].pathSwitchNumber == aBtn.pathSwitchNumber) { resolvePaths(paths[_local2].destinationPaths[1], "NONE"); resolvePaths(paths[_local2].destinationPaths[2], "NONE"); break; } _local2++; } _root.XSound.playSound("sndRotor", VOL_ROTOR, 0, false); trace("Currently " + aSwitch.currentDirection); if (aSwitch.currentDirection == 1) { aSwitch.currentDirection = 2; aBtn.gotoAndPlay("turnOn"); } else { aSwitch.currentDirection = 1; aBtn.gotoAndPlay("turnOff"); } invokeSwitchFadeOutAnims(aBtn); if (aSwitch.currentDirection == 1) { aWall.iSwitchPack.iSwitchRing.gotoAndPlay("doTurnRight"); } else { aWall.iSwitchPack.iSwitchRing.gotoAndPlay("doTurnLeft"); } _local2 = 1; while (_local2 <= 108) { if (paths[_local2].pathSwitchNumber == aBtn.pathSwitchNumber) { resolvePaths(paths[_local2].destinationPaths[aSwitch.currentDirection], paths[_local2].currentColor); } _local2++; } } function invokeSwitchFadeOutAnims(aBtn) { var _local7 = _root.currentRoom.x; var _local6 = _root.currentRoom.y; var _local5 = _root.currentRoom.z; aRoomNumber = ((_local7 - 1) + ((_local6 - 1) * 3)) + ((_local5 - 1) * 9); aRoom = _root.rooms[aRoomNumber]; trace((("CURRENT ROOM # " + aRoomNumber) + " : ") + aRoom); var _local2 = 1; while (_local2 <= 6) { trace(rooms[aRoomNumber].walls[_local2]); tmpWall = aRoom.walls[_local2]; trace(tmpWall.textureName); if (tmpWall.textureName.indexOf("Switch") > -1) { var _local3 = _root.i3dStage["obj" + tmpWall.wallNumber]; trace((((("FOUND WALL: " + tmpWall.wallNumber) + " : ") + _local2) + " : ") + _local3); aPack = _local3.mc.texture.iSwitchPack; if (aBtn.pathSwitchNumber == tmpWall.pathSwitchNumber) { aPack.iSwitchSymbol3.gotoAndPlay("doFadeOut"); aPack.iSwitchSymbol4.gotoAndPlay("doFadeOut"); aPack.iSwitchLights1.gotoAndPlay("doFadeOut"); aPack.iSwitchLights2.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iSwitchRingPath1.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iSwitchRingPath2.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath1a.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath1b.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath2a.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath2b.gotoAndPlay("doFadeOut"); } tmpPath = _root.paths[tmpWall.pathNumber1]; if (tmpPath.currentColor == "NONE") { aPack.iSwitchSymbol1.gotoAndPlay("doFadeOut"); aPack.iSwitchSymbol4.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iSwitchRingPath1.gotoAndPlay("doFadeOut"); if (_root.pathSwitches[tmpPath.pathSwitchNumber].currentDirection == 1) { aPack.iSwitchLights1.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath1a.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath2b.gotoAndPlay("doFadeOut"); } else { aPack.iSwitchLights2.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath1b.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath2a.gotoAndPlay("doFadeOut"); } } tmpPath = _root.paths[tmpWall.pathNumber2]; if (tmpPath.currentColor == "NONE") { aPack.iSwitchSymbol2.gotoAndPlay("doFadeOut"); aPack.iSwitchSymbol3.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iSwitchRingPath2.gotoAndPlay("doFadeOut"); if (_root.pathSwitches[tmpPath.pathSwitchNumber].currentDirection == 1) { aPack.iSwitchLights2.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath1b.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath2a.gotoAndPlay("doFadeOut"); } else { aPack.iSwitchLights1.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath1a.gotoAndPlay("doFadeOut"); aPack.iSwitchRing.iSwitchRing.iPath2b.gotoAndPlay("doFadeOut"); } } } if (tmpWall.textureName.indexOf("Source") > -1) { var _local3 = _root.i3dStage["obj" + tmpWall.wallNumber]; trace((((("FOUND WALL: " + tmpWall.wallNumber) + " : ") + _local2) + " : ") + _local3); aPack = _local3.mc.texture.iSourcePack; tmpPath = _root.paths[tmpWall.pathNumber1]; if (tmpPath.currentColor == "NONE") { aPack.iLoop1.gotoAndPlay("doFadeOut"); } tmpPath = _root.paths[tmpWall.pathNumber2]; if (tmpPath.currentColor == "NONE") { aPack.iLoop2.gotoAndPlay("doFadeOut"); } } _local2++; } } function handleSwitchRingTurnFinish(aObj) { flagSwitchTurning = false; _root.XSound.stopSound("sndRotor", "IMMEDIATE"); var _local5 = _root.currentRoom.x; var _local4 = _root.currentRoom.y; var _local3 = _root.currentRoom.z; aRoomNumber = ((_local5 - 1) + ((_local4 - 1) * 3)) + ((_local3 - 1) * 9); aRoom = _root.rooms[aRoomNumber]; trace((("############### " + aRoomNumber) + " : ") + aRoom); var _local2 = 1; while (_local2 <= 6) { tmpWall = aRoom.walls[_local2]; if (tmpWall.textureName.indexOf("Switch") > -1) { trace("?!!" + tmpWall); _root.setupWallSwitches(tmpWall, "doFadeIn"); } if (tmpWall.textureName.indexOf("Source") > -1) { trace(("?!!" + tmpWall) + "<<<"); _root.setupWallSource(tmpWall, "doFadeIn"); } _local2++; } } function handleSpyholePress(aObj) { startMode_ZOOM_TO_SPYHOLE(aObj); } function handleSpyholeMaskPress(aObj) { startMode_CLOSE_SPYHOLE(aObj); } function handlePuzzleSolved() { aNumber = getRoomNumber(currentRoom); rooms[aNumber].solved = true; trace((("ROOM SOLVED: " + aNumber) + " / ") + rooms[aNumber]); _root.i3dStage.obj7.mc.texture.iButton.gotoAndPlay("moireFadeIn"); _root.XSound.playSound("sndPuzzleSolved", VOL_PUZZLESOLVED, 0, false); i = 1; while (i <= 6) { clip = _root.i3dStage["obj" + i]; texture = clip.mc.texture; if (texture.iLock) { trace("UNLOCK " + texture.iLock.unlocked); if (texture.iLock._currentframe == 1) { texture.iLock.unlocked = true; texture.iLock.gotoAndPlay("doOpen"); } } if (texture.iOrbitPack1) { texture.iOrbitPack1._visible = true; } i++; } _root.i3dStage.obj7.mc.texture.iButton1.gotoAndPlay("stayOn"); saveGame(); startMode_CLOSE_PUZZLE(); } function handleSprite_stopMoving(aObj) { if (rooms[currentRoomNumber].solved == true) { return(undefined); } switch (rooms[currentRoomNumber].puzzleName) { case "PuzzleA" : puzzleA_sprite_stopMoving(aObj); break; case "PuzzleB" : puzzleB_sprite_stopMoving(aObj); break; case "PuzzleC" : puzzleC_sprite_stopMoving(aObj); break; case "PuzzleS" : puzzleS_sprite_stopMoving(aObj); break; case "PuzzleT" : puzzleT_sprite_stopMoving(aObj); break; case "PuzzleU" : puzzleU_sprite_stopMoving(aObj); break; case "PuzzleV" : puzzleV_sprite_stopMoving(aObj); break; } } function handleSprite_onRollOver(aObj) { if (rooms[currentRoomNumber].solved == true) { return(undefined); } switch (rooms[currentRoomNumber].puzzleName) { case "PuzzleD" : puzzleD_sprite_onRollOver(aObj); break; default : } } function handleSprite_onRollOut(aObj) { if (rooms[currentRoomNumber].solved == true) { return(undefined); } switch (rooms[currentRoomNumber].puzzleName) { case "PuzzleD" : puzzleD_sprite_onRollOut(aObj); break; default : } } function handleSprite_onPress(aObj) { if (rooms[currentRoomNumber].solved == true) { return(undefined); } a = randomRange(1, 6); if (a == lastA) { a++; if (a > 6) { a = 1; } } lastA = a; snd = "sndChime" + a; b = randomRange(1, 15); _root.XSound.playSound(snd, VOL_CHIMES - b, 0, false); switch (rooms[currentRoomNumber].puzzleName) { case "PuzzleA" : puzzleA_sprite_onPress(aObj); break; case "PuzzleB" : puzzleB_sprite_onPress(aObj); break; case "PuzzleC" : puzzleC_sprite_onPress(aObj); break; case "PuzzleD" : puzzleD_sprite_onPress(aObj); break; case "PuzzleE" : puzzleE_sprite_onPress(aObj); break; case "PuzzleF" : puzzleF_sprite_onPress(aObj); break; case "PuzzleG" : puzzleG_sprite_onPress(aObj); break; case "PuzzleH" : puzzleH_sprite_onPress(aObj); break; case "PuzzleI" : puzzleI_sprite_onPress(aObj); break; case "PuzzleJ" : puzzleJ_sprite_onPress(aObj); break; case "PuzzleK" : puzzleK_sprite_onPress(aObj); break; case "PuzzleL" : puzzleL_sprite_onPress(aObj); break; case "PuzzleM" : puzzleM_sprite_onPress(aObj); break; case "PuzzleN" : puzzleN_sprite_onPress(aObj); break; case "PuzzleO" : puzzleO_sprite_onPress(aObj); break; case "PuzzleP" : puzzleP_sprite_onPress(aObj); break; case "PuzzleQ" : puzzleQ_sprite_onPress(aObj); break; case "PuzzleR" : puzzleR_sprite_onPress(aObj); break; case "PuzzleS" : puzzleS_sprite_onPress(aObj); break; case "PuzzleT" : puzzleT_sprite_onPress(aObj); break; case "PuzzleU" : puzzleU_sprite_onPress(aObj); break; case "PuzzleV" : puzzleV_sprite_onPress(aObj); break; case "PuzzleW" : puzzleW_sprite_onPress(aObj); break; case "PuzzleX" : puzzleX_sprite_onPress(aObj); break; case "PuzzleY" : puzzleY_sprite_onPress(aObj); break; case "PuzzleZ" : puzzleZ_sprite_onPress(aObj); break; } } var flagSwitchTurning = false; lastA = 0; function doMovement() { if (gameMode == "ZOOM_TO_OBJECT") { return(undefined); } cx = 63; cy = 23; dx = _root._xmouse - _root.x0; if (dx > 0) { dx = dx - cx; if (dx < 0) { dx = 0; } else { lastX = 1; } } else { lastX = -1; dx = dx + cx; if (dx > 0) { dx = 0; } else { lastX = -1; } } dx = dx * Math.abs(dx); if (dx != 0) { turnX = dx / 2220; } else { turnX = turnX * 0.8; } if (_root.mouseOutside == "yes") { turnX = turnX * 0.8; } if (turnX > 5.5) { turnX = 5.5; } if (turnX < -5.5) { turnX = -5.5; } heading = heading - turnX; dy = _root._ymouse - _root.y0; if (dy > 0) { dy = dy - cy; if (dy < 0) { dy = 0; } else { lastY = 1; } } else { dy = dy + cy; if (dy > 0) { dy = 0; } else { lastY = -1; } } dy = dy * Math.abs(dy); turnY = dy / 2220; if (dy != 0) { turnY = dy / 2220; } else { turnY = turnY * 0.8; } if (_root.mouseOutside == "yes") { turnY = turnY * 0.8; } if (turnY > 4.5) { turnY = 4.5; } if (turnY < -4.5) { turnY = -4.5; } maxPitch = 66; if (pitch > maxPitch) { pitch = pitch - 1; if (pitch < maxPitch) { pitch = maxPitch; } } else if (pitch < (-maxPitch)) { pitch = pitch + 1; if (pitch > (-maxPitch)) { pitch = -maxPitch; } } else { pitch = pitch - turnY; if (pitch > maxPitch) { pitch = maxPitch; } else if (pitch < (-maxPitch)) { pitch = -maxPitch; } } if (Math.abs(dx) < 1) { bankTarget = 0; bankSpeed = Math.abs(bank) / 26; if (bankSpeed < 0.2) { bankSpeed = 0.2; } } else { bankTarget = (turnX * -5) * ((maxPitch - Math.abs(pitch)) / maxPitch); bankSpeed = Math.abs(turnX / 4); if (bankSpeed < 0.2) { bankSpeed = 0.2; } } if (bank < bankTarget) { bank = bank + bankSpeed; if (bank > bankTarget) { bank = bankTarget; } } else if (bank > bankTarget) { bank = bank - bankSpeed; if (bank < bankTarget) { bank = bankTarget; } } if (dx == 0) { } if (dy == 0) { } i = 0; while (i < tmpArray.length) { _root.pointArray[i].x = (_root.tmpArray[i].x - centreX) * scaleX; _root.pointArray[i].y = (_root.tmpArray[i].y - centreY) * scaleY; _root.pointArray[i].z = (_root.tmpArray[i].z - centreZ) * scaleZ; i++; } _root.groupRotateY(_root.pointArray, heading); _root.groupRotateX(_root.pointArray, pitch); _root.groupRotateZ(_root.pointArray, bank); } var bufferX = 300; var bufferY = 10; var turnX = 0; var turnY = 0; var lastX = 1; var lastY = 1; var dx = 0; var dy = 0; var driftSpeed = 0; var mouseOutside = "no"; _root.mouseOutside = "no"; function render3d() { clipGroup = roomArray; var _local5 = 0; while (_local5 < clipGroup.length) { k = clipGroup[_local5]; var _local2 = _root.clipArray[k]; var _local3 = _local2.reg; var _local4 = getCenterZ(_local2); if (_local2.mc.texture.shadow) { _local2.mc.texture.shadow._alpha = 160 - (_local4 / 1.5); _local2.mc.texture.shadow._visible = true; } if (k <= 7) { if (_local4 >= 0) { _local2._visible = true; skewClip(_local2, 100, 100, _local3.pt0, _local3.pH, _local3.pW); } else { _local2._visible = false; } } else if (_local4 >= 0) { _local2._visible = true; tmp0 = scalePoint(_local3.pt0, screenScale.currentValue); tmpH = scalePoint(_local3.pH, screenScale.currentValue); tmpW = scalePoint(_local3.pW, screenScale.currentValue); skewClip(_local2, 100, 100, tmp0, tmpH, tmpW); } else { _local2._visible = false; } _local5++; } } function skewClip(obj, mcW, mcH, pt0, ptH, ptW) { obj._visible = true; obj._x = pt0.x; obj._y = pt0.y; var _local8 = Math.atan2(ptW.y - pt0.y, ptW.x - pt0.x); var _local4 = Math.atan2(ptH.y - pt0.y, ptH.x - pt0.x); var _local3 = (_local4 - _local8) / 2; var _local5 = 1 / (Math.SQRT2 * Math.cos(_local3)); obj._rotation = 57.2957795130823 * (_local4 - _local3); obj.mc._rotation = -45; obj._yscale = 100 * Math.tan(_local3); obj.mc._xscale = distance(ptW, pt0) / _local5; obj.mc._yscale = distance(ptH, pt0) / _local5; } function getOpposite(aNumber) { var _local1 = [0, 3, 4, 1, 2, 6, 5]; return(_local1[aNumber]); } function unSkew(aObj) { } function render2d() { render2d_Position(); render2d_Scale(); render2d_Alpha(); render2d_Brightness(); } function render2d_Position() { _root.i3dStage._x = _root.x0 - (render2dOffsetX.currentValue * (render2dScaleX.currentValue / 100)); _root.i3dStage._y = _root.y0 - (render2dOffsetY.currentValue * (render2dScaleY.currentValue / 100)); return(undefined); } function render2d_Scale() { _root.i3dStage._xscale = render2dScaleX.currentValue; _root.i3dStage._yscale = render2dScaleY.currentValue; } function render2d_Alpha() { _root.i3dStage._alpha = render2dAlpha.currentValue; } function render2d_Brightness() { aBrightnessPercent = render2dBrightness.currentValue / 100; aRa = render2dTintRed.currentValue * aBrightnessPercent; aGa = render2dTintGreen.currentValue * aBrightnessPercent; aBa = render2dTintBlue.currentValue * aBrightnessPercent; var _local1 = {ra:aRa, ga:aGa, ba:aBa}; render2dBrightness.targetColor.setTransform(_local1); } function renderObjectAlpha(aObject, aAlpha) { aObject._alpha = aAlpha; if (aAlpha > 0) { aObject._visible = true; } else { aObject._visible = false; } } function renderDecalTint() { if (decalTintRed.active == false) { return(undefined); } aRa = decalTintRed.currentValue; aGa = decalTintGreen.currentValue; aBa = decalTintBlue.currentValue; var _local2 = {ra:aRa, ga:aGa, ba:aBa}; var _local1 = 0; while (_local1 < decalTintRed.targetObject.length) { decalTintRed.targetObject[_local1].setTransform(_local2); _local1++; } } function initDecalTintTarget() { decalTintRed.targetObject = new Array(); var _local2 = 0; while (_local2 < roomArray.length) { k = clipGroup[_local2]; var _local3 = _root.clipArray[k]; _root.registerDecalTintTarget(_local3.mc.texture.iBackground); _local2++; } } function registerDecalTintTarget(aObj) { var _local1 = new Color(aObj); decalTintRed.targetObject[decalTintRed.targetObject.length] = _local1; } function setTint(aObj, aColorName) { if (aColorName == "NONE") { aObj._visible = false; } else { aObj._visible = true; } var _local3 = new Color(aObj); aRa = 0; aGa = 0; aBa = 0; switch (aColorName) { case "RED" : aRa = 100; break; case "GREEN" : aGa = 100; break; case "BLUE" : aBa = 100; break; case "CYAN" : aGa = 100; aBa = 100; break; case "YELLOW" : aGa = 100; aRa = 100; break; case "MAGENTA" : aRa = 100; aBa = 100; break; default : aRa = 100; aGa = 100; aBa = 100; } var _local2 = {ra:aRa, ga:aGa, ba:aBa}; _local3.setTransform(_local2); } function getBlend(aColorName1, aColorName2) { var _local1 = "NONE"; switch (aColorName1) { case "NONE" : default : switch (aColorName2) { case "NONE" : default : _local1 = "NONE"; break; case "RED" : _local1 = "RED"; break; case "GREEN" : _local1 = "GREEN"; break; case "BLUE" : _local1 = "BLUE"; } break; case "RED" : switch (aColorName2) { case "NONE" : default : case "RED" : _local1 = "RED"; break; case "GREEN" : _local1 = "YELLOW"; break; case "BLUE" : _local1 = "MAGENTA"; } break; case "GREEN" : switch (aColorName2) { case "RED" : default : _local1 = "YELLOW"; break; case "NONE" : case "GREEN" : _local1 = "GREEN"; break; case "BLUE" : _local1 = "CYAN"; } break; case "BLUE" : switch (aColorName2) { case "RED" : default : _local1 = "MAGENTA"; break; case "GREEN" : _local1 = "CYAN"; break; case "NONE" : case "BLUE" : _local1 = "BLUE"; } } return(_local1); } function setTintRGB(aObj, aRed, aGreen, aBlue) { tmpColor = new Color(aObj); var _local1 = {ra:aRed, ga:aGreen, ba:aBlue}; tmpColor.setTransform(_local1); } function setTintCoords(aObj, aCoords, ultraFlag) { if (!ultraFlag) { ultraFlag = 1; } var _local1 = new Array(); _local1[1] = 0; _local1[2] = 80; _local1[3] = 100; aTotal = ((aCoords.x * aCoords.x) + (aCoords.y * aCoords.y)) + (aCoords.z * aCoords.z); if (aTotal == 3) { _local1[1] = 5; } else if (aTotal < 4) { _local1[1] = 0; } else if (aTotal < 13) { _local1[2] = 100; } else { _local1[1] = 0; _local1[2] = 5; _local1[3] = 150; } aRed = _local1[aCoords.x] * ultraFlag; aGreen = _local1[aCoords.y] * ultraFlag; aBlue = _local1[aCoords.z] * ultraFlag; setTintRGB(aObj, aRed, aGreen, aBlue); tmpObj = {red:aRed, green:aGreen, blue:aBlue}; return(tmpObj); } function get2dOffsetX(aObj) { var _local2 = aObj.getBounds(_root); var _local3 = ((_local2.xMax + _local2.xMin) / 2) - _root.x0; return(_local3); } function get2dOffsetY(aObj) { var _local2 = aObj.getBounds(_root); var _local3 = ((_local2.yMax + _local2.yMin) / 2) - _root.y0; return(_local3); } function distance(pt1, pt2) { var _local1 = pt2.y - pt1.y; var _local2 = pt2.x - pt1.x; var _local3 = Math.sqrt((_local1 * _local1) + (_local2 * _local2)); return(_local3); } function shiftPoint(point) { var _local1 = new Object(); _local1.x = point.x + x0; _local1.y = point.y + y0; return(_local1); } function getCenterZ(clip) { var _local1 = (clip.reg.pH.z + clip.reg.pW.z) / 2; return(_local1); } function scalePoints(aDelta) { i = 0; while (i < pointArray.length) { _root.pointArray[i].x = (_root.pointArray[i].x - centreX) * aDelta; _root.pointArray[i].y = (_root.pointArray[i].y - centreY) * aDelta; _root.pointArray[i].z = (_root.pointArray[i].z - centreZ) * aDelta; i++; } } function scalePoint(aPoint, aFraction) { aX = aPoint.x * aFraction; aY = aPoint.y * aFraction; aZ = aPoint.z * aFraction; var _local3 = {x:aX, y:aY, z:aZ}; return(_local3); } function getAngleFromPoint(aX, aY) { if (aX == 0) { if (aY <= 0) { aDegrees = 0; } else { aDegrees = 180; } return(aDegrees); } if (aY == 0) { if (aX <= 0) { aDegrees = 270; } else { aDegrees = 90; } return(aDegrees); } aDegrees = Math.atan(Math.abs(aY) / Math.abs(aX)); aDegrees = aDegrees / 0.017; if ((aX > 0) && (aY < 0)) { aDegrees = 90 - aDegrees; } if ((aX < 0) && (aY < 0)) { aDegrees = 270 + aDegrees; } if ((aX > 0) && (aY > 0)) { aDegrees = 90 + aDegrees; } if ((aX < 0) && (aY > 0)) { aDegrees = 270 + aDegrees; } return(aDegrees); } function OLDrotateZ(x1, y1, center, dAngle) { var _local1 = y1 - center.y; var _local2 = x1 - center.x; var _local7 = Math.atan2(_local1, _local2); var _local4 = Math.sqrt((_local1 * _local1) + (_local2 * _local2)); var _local5 = _local7 + (dAngle * (Math.PI/180)); var _local9 = (_local4 * Math.cos(_local5)) + center.x; var _local8 = (_local4 * Math.sin(_local5)) + center.y; var _local6 = {x:_local9, y:_local8}; return(_local6); } function rotateZ(x1, y1, center, dAngle) { var _local10 = y1 - center.y; var _local11 = x1 - center.x; var _local7 = Math.atan2(y1, x1); var _local4 = Math.sqrt((y1 * y1) + (x1 * x1)); var _local5 = _local7 + (dAngle * (Math.PI/180)); var _local9 = (_local4 * Math.cos(_local5)) + center.x; var _local8 = (_local4 * Math.sin(_local5)) + center.y; var _local6 = {x:_local9, y:_local8}; return(_local6); } function groupRotateZ(srcPointArray, dAngle) { k = 1; while (k < srcPointArray.length) { var _local3 = rotateZ(srcPointArray[k].x, srcPointArray[k].y, _root.center, dAngle); srcPointArray[k].x = _local3.x; srcPointArray[k].y = _local3.y; k++; } } function groupRotateY(srcPointArray, dAngle) { k = 0; while (k < srcPointArray.length) { var _local3 = rotateZ(srcPointArray[k].z, srcPointArray[k].x, _root.center, dAngle); srcPointArray[k].z = _local3.x; srcPointArray[k].x = _local3.y; k++; } } function groupRotateX(srcPointArray, dAngle) { k = 0; while (k < srcPointArray.length) { var _local3 = rotateZ(srcPointArray[k].z, srcPointArray[k].y, _root.center, dAngle); srcPointArray[k].z = _local3.x; srcPointArray[k].y = _local3.y; k++; } } function randomRange(min, max) { var _local1 = Math.floor(Math.random() * ((max - min) + 1)) + min; return(_local1); } Math.rgbToHex = function (r, g, b) { return(((r << 16) | (g << 8)) | b); }; Math.hex2rgb = function (hex) { var _local1 = hex >> 16; var _local2 = hex - (_local1 << 16); var _local3 = _local2 >> 8; var _local4 = _local2 - (_local3 << 8); return({r:_local1, g:_local3, b:_local4}); }; center = {x:0, y:0, z:0}; function initialiseObjects(roomNumber) { return(undefined); } function setRoomArray(aList) { tmpList = aList.join("|"); tmpList = tmpList + "|"; var _local2 = 1; while (_local2 < (numPolygons + 1)) { if (tmpList.indexOf(_local2 + "|") == -1) { _root.i3dStage["obj" + _local2]._visible = false; } _local2++; } roomArray = aList; } function renderAll() { doModeUpdate(); throbCounter++; if (throbCounter == 30) { decalAlpha.startLoop(40, 100, 30); } if (throbCounter == 60) { decalAlpha.startLoop(100, 40, 30); throbCounter = 0; } decalAlpha.update(); var _local2 = 0; while (_local2 <= 7) { var _local3 = _root.clipArray[_local2]; _local3.mc.texture.iDecal._alpha = decalAlpha.currentValue; _local2++; } if (gameModeSteps > 0) { gameModeCurrentStep++; if (gameModeCurrentStep > gameModeSteps) { gameModeSteps = -1; doModeEnd(); } } } function doModeUpdate() { switch (gameMode) { case "STARTUP" : renderMode_NORMAL(); gameMode = "STARTUP_POST_RENDER"; break; case "STARTUP_POST_RENDER" : _root.i3dStage._visible = true; _root.XSound.playSound("sndAmbience", VOL_AMBIENCE, 0, true); startMode_FADE_IN(); break; case "NORMAL" : renderMode_NORMAL(); break; case "ZOOM_TO_SPYHOLE" : renderMode_ZOOM_TO_SPYHOLE(); break; case "ZOOM_FROM_SPYHOLE" : renderMode_ZOOM_FROM_SPYHOLE(); break; case "SPYHOLE" : renderMode_SPYHOLE(); break; case "CLOSE_SPYHOLE" : renderMode_CLOSE_SPYHOLE(); break; case "TURN_TO_DOOR" : renderMode_TURN_TO_DOOR(); break; case "ZOOM_TO_OBJECT" : renderMode_ZOOM_TO_OBJECT(); break; case "FADE_IN" : renderMode_FADE_IN(); break; case "LAUNCH_PUZZLE" : renderMode_LAUNCH_PUZZLE(); break; case "PLAY_PUZZLE" : renderMode_PLAY_PUZZLE(); break; case "CLOSE_PUZZLE" : renderMode_CLOSE_PUZZLE(); break; } } function doModeEnd() { switch (gameMode) { case "STARTUP" : endMode_NORMAL(); gameMode = "STARTUP_POST_RENDER"; break; case "STARTUP_POST_RENDER" : _root.i3dStage._visible = true; endMode_FADE_IN(); break; case "NORMAL" : endMode_NORMAL(); break; case "ZOOM_TO_SPYHOLE" : endMode_ZOOM_TO_SPYHOLE(); break; case "ZOOM_FROM_SPYHOLE" : endMode_ZOOM_FROM_SPYHOLE(); break; case "SPYHOLE" : endMode_SPYHOLE(); break; case "CLOSE_SPYHOLE" : endMode_CLOSE_SPYHOLE(); break; case "TURN_TO_DOOR" : endMode_TURN_TO_DOOR(); break; case "ZOOM_TO_OBJECT" : endMode_ZOOM_TO_OBJECT(); break; case "FADE_IN" : endMode_FADE_IN(); break; case "LAUNCH_PUZZLE" : endMode_LAUNCH_PUZZLE(); break; case "PLAY_PUZZLE" : endMode_PLAY_PUZZLE(); break; case "CLOSE_PUZZLE" : endMode_CLOSE_PUZZLE(); break; } } function startMode_FADE_IN() { trace((((("ALAH3 " + _root.currentRoom.x) + " ") + _root.currentRoom.y) + " ") + _root.currentRoom.z); setupRoom(_root.currentRoom); gameModeSteps = 38; gameModeCurrentStep = 1; render2dScaleX.startLoop(40, 100, gameModeSteps); render2dScaleY.startLoop(40, 100, gameModeSteps); render2dBrightness.startLoop(1, 100, gameModeSteps); render2dOffsetX.startLoop(0, 0, gameModeSteps); render2dOffsetY.startLoop(0, 0, gameModeSteps); _root.iIntermediary2.iDoor.gotoAndStop(51); _root.iIntermediary2._visible = true; gameMode = "FADE_IN"; } function endMode_FADE_IN() { saveGame(); startMode_NORMAL(); } function renderMode_FADE_IN() { intermediaryScale.update(); _root.iIntermediary2._xscale = _root.intermediaryScale.currentValue; _root.iIntermediary2._yscale = _root.intermediaryScale.currentValue; _root.iIntermediary._visible = false; render2dScaleX.update(); render2dScaleY.update(); render2dBrightness.update(); render2dOffestX.update(); render2dOffestY.update(); if (gameModeCurrentStep == 1) { _root.iIntermediary2.iDoor.gotoAndStop(1); } if (gameModeCurrentStep == 2) { _root.iIntermediary2.iDoor.gotoAndPlay(10); } if (gameModeCurrentStep > 15) { _root.doMovement(); } render3d(); render2d(); } function startMode_NORMAL() { gameModeSteps = -1; render2dOffsetX.currentValue = 0; render2dOffsetY.currentValue = 0; render2dScaleX.currentValue = 100; render2dScaleY.currentValue = 100; render2dAlpha.currentValue = 100; _root.iIntermediary2._visible = false; render2d(); gameMode = "NORMAL"; } function endMode_NORMAL() { } function renderMode_NORMAL() { stabCounter++; if (stabCounter > 340) { stabCounter = 0; a = randomRange(1, 9); if (a == lastStab) { a = a + 1; if (a > 9) { a = 1; } } lastStab = a; snd = "sndStab" + a; _root.XSound.playSound(snd, VOL_STABS, 0, false); } _root.doMovement(); decalTintRed.update(); decalTintGreen.update(); decalTintBlue.update(); render3d(); renderDecalTint(); } function startMode_ZOOM_TO_SPYHOLE(aObj) { gameModeSteps = 20; gameModeCurrentStep = 1; render2dOffsetX.startLoop(0, get2dOffsetX(aObj), gameModeSteps); render2dOffsetY.startLoop(0, get2dOffsetY(aObj), gameModeSteps); render2dScaleX.startLoop(100, 160, gameModeSteps); render2dScaleY.startLoop(100, 160, gameModeSteps); render2dBrightness.startLoop(100, 20, gameModeSteps - 5); render2dScaleX.targetObject = aObj; gameMode = "ZOOM_TO_SPYHOLE"; } function endMode_ZOOM_TO_SPYHOLE() { startMode_SPYHOLE(render2dScaleX.targetObject); } function renderMode_ZOOM_TO_SPYHOLE() { render3d(); render2dScaleX.update(); render2dScaleY.update(); render2dBrightness.update(); render2dOffsetX.update(); render2dOffsetY.update(); render2d(); } function startMode_ZOOM_FROM_SPYHOLE(aObj) { _root.XSound.stopSound("sndOrbits", "IMMEDIATE"); _root.XSound.playSound("sndOrbits", VOL_ORBITS * 0.75, 16.5, false); _root.XSound.playSound("sndAmbience", VOL_AMBIENCE, -8, true); setupRoom(_root.currentRoom); gameModeSteps = 20; gameModeCurrentStep = 1; render2dScaleX.startLoop(160, 100, gameModeSteps); render2dScaleY.startLoop(160, 100, gameModeSteps); render2dBrightness.startLoop(0, 100, gameModeSteps - 5); var _local2 = 1; while (_local2 <= 6) { allPlanets[_local2].targetObject._visible = false; _local2++; } _root.i3dStage.iSun._visible = false; _root.i3dStage.iSpyholeMask._visible = false; render2d(); gameMode = "ZOOM_FROM_SPYHOLE"; } function endMode_ZOOM_FROM_SPYHOLE() { startMode_NORMAL(render2dScaleX.targetObject); } function renderMode_ZOOM_FROM_SPYHOLE() { render3d(); render2dScaleX.update(); render2dScaleY.update(); render2dBrightness.update(); render2d(); } function startMode_SPYHOLE(aObj) { gameModeSteps = -1; gameModeCurrentStep = 1; _root.XSound.stopSound("sndAmbience", "IMMEDIATE"); _root.XSound.playSound("sndAmbience", VOL_AMBIENCE / 2, 26.464, false); _root.XSound.playSound("sndOrbits", VOL_ORBITS, 0, true); aSteps = 40; render2dScaleX.startLoop(60, 75, aSteps); render2dScaleY.startLoop(60, 75, aSteps); render2dBrightness.startLoop(0, 80, aSteps); render2dOffsetX.currentValue = 0; render2dOffsetY.currentValue = 0; var _local6 = aObj.wallNumber; setupRoom({x:2, y:2, z:2}); _root.targetObject = _root.i3dStage["obj" + _local6]; var _local4 = 0; var _local5 = ["NULL", "GREEN", "RED", "YELLOW", "BLUE", "CYAN", "MAGENTA"]; var _local2 = 1; while (_local2 <= 6) { aPlanet = allPlanets[_local2]; aPlanet.targetObject._visible = true; aPlanet.targetObject.iPlanetCentre._visible = false; aPlanet.targetObject.iPlanetCentre.iPlanetAtmosphere.gotoAndPlay(randomRange(10, 180)); var _local3 = projectors[_local2].doUpdate(); aRoom = rooms[projectors[_local2].roomNumber]; if ((aRoom.solved == true) && (_local3 == _local5[_local2])) { aPlanet.targetObject.iPlanetCentre._visible = true; _local4++; } _local2++; } _root.i3dStage.iSun._visible = true; _root.i3dStage.iSun.iSunCentre._alpha = 100 - (_local4 * 15); if (_local4 == 6) { _root.i3dStage.iSun.iSunCentre._alpha = 0; } _root.i3dStage.iSpyholeMask._visible = true; _root.i3dStage.iSpyholeMask._xscale = 180; _root.i3dStage.iSpyholeMask._yscale = 180; render2d(); gameMode = "SPYHOLE"; } function endMode_SPYHOLE() { } function renderMode_SPYHOLE() { i = 0; while (i < tmpArray.length) { _root.pointArray[i].x = (_root.tmpArray[i].x - centreX) * scaleX; _root.pointArray[i].y = (_root.tmpArray[i].y - centreY) * scaleY; _root.pointArray[i].z = (_root.tmpArray[i].z - centreZ) * scaleZ; i++; } offsetX = -_root.get2dOffsetX(_root.targetObject); offsetY = -_root.get2dOffsetY(_root.targetObject); var _local4; var _local3 = false; trace((("OX OY " + offsetX) + " ") + offsetY); var _local2 = 200; if ((offsetX > 1) || (offsetX < -1)) { heading = heading + (offsetX / _local2); } else { _local4 = true; } if ((offsetY > 1) || (offsetY < -1)) { pitch = pitch + (offsetY / _local2); } else { _local3 = true; } _root.groupRotateY(_root.pointArray, heading); _root.groupRotateX(_root.pointArray, pitch); _root.groupRotateZ(_root.pointArray, bank); var i = 1; while (i <= 6) { allPlanets[i].updatePosition(); i++; } render2dScaleX.update(); render2dScaleY.update(); render2dBrightness.update(); render3d(); render2d(); } function startMode_CLOSE_SPYHOLE(aObj) { gameModeSteps = 25; gameModeCurrentStep = 1; render2dScaleX.startLoop(render2dScaleX.currentValue, 40, gameModeSteps); render2dScaleY.startLoop(render2dScaleY.currentValue, 40, gameModeSteps); render2dBrightness.startLoop(render2dBrightness.currentValue, 0, gameModeSteps); render2d(); gameMode = "CLOSE_SPYHOLE"; } function endMode_CLOSE_SPYHOLE() { startMode_ZOOM_FROM_SPYHOLE(); } function renderMode_CLOSE_SPYHOLE() { var _local1 = 1; while (_local1 <= 6) { allPlanets[_local1].updatePosition(); _local1++; } render2dScaleX.update(); render2dScaleY.update(); render2dBrightness.update(); render3d(); render2d(); } function startMode_LAUNCH_PUZZLE(flagHintMode) { gameModeSteps = 30; gameModeCurrentStep = 1; _root.XSound.playSound("sndPuzzleOpen", VOL_PUZZLEOPEN, 0, false); _root.XSound.stopSound("sndAmbience", "IMMEDIATE"); _root.XSound.playSound("sndAmbience", VOL_AMBIENCE / 2, 25, false); _root.XSound.playSound("sndPuzzleAmbience", VOL_PUZZLEAMBIENCE, 0, true); setRoomArray([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]); screenScale.startLoop(0, 0.75, gameModeSteps); gameMode = "LAUNCH_PUZZLE"; _root.flagHintMode = flagHintMode; _root.i3dStage.obj7.mc.texture.iPuzzlePulse.gotoAndPlay("turnOn"); } function endMode_LAUNCH_PUZZLE() { startMode_PLAY_PUZZLE(); } function renderMode_LAUNCH_PUZZLE() { _root.doMovement(); screenScale.update(); render3d(); if (gameModeCurrentStep == 1) { if (_root.flagHintMode == false) { var _local2 = 7; while (_local2 <= 13) { var _local3 = _root.i3dStage["obj" + _local2]; clip2 = _root.i3dStage["obj" + (_local2 - 7)]; clip2.mc.texture.iPuzzleHolderBackground._visible = true; clip2.mc.texture.iPuzzleHolderBackground.setMask(_local3.mc.texture.iScreen); _local2++; } } else { var _local2 = 7; while (_local2 <= 13) { var _local3 = _root.i3dStage["obj" + _local2]; clip2 = _root.i3dStage["obj" + (_local2 - 7)]; clip2.mc.texture.iPuzzleHolderBackground._visible = false; clip2.mc.texture.iPuzzleHolderBackground.setMask(_local3.mc.texture.iScreen); _local2++; } } } } function startMode_PLAY_PUZZLE() { gameModeSteps = -1; gameModeCurrentStep = 1; gameMode = "PLAY_PUZZLE"; puzzleAlpha.startLoop(0, 210, 10); } function endMode_PLAY_PUZZLE() { startMode_CLOSE_PUZZLE(); } function renderMode_PLAY_PUZZLE() { _root.doMovement(); puzzleAlpha.update(); if (puzzleAlpha.active == true) { var _local2 = 1; while (_local2 <= 6) { var _local3 = _root.i3dStage["obj" + (_local2 + 7)]; renderObjectAlpha(_local3.mc.texture.iPuzzleHolder, puzzleAlpha.currentValue); _local3 = _root.i3dStage["obj" + _local2]; renderObjectAlpha(_local3.mc.texture.iPuzzleHolderBackground.iDummy, puzzleAlpha.currentValue); _local2++; } } render3d(); sprites.renderAll(); } function startMode_CLOSE_PUZZLE() { gameModeSteps = 20; gameModeCurrentStep = 1; gameMode = "CLOSE_PUZZLE"; _root.XSound.playSound("sndPuzzleOpen", VOL_PUZZLEOPEN, 3.2, false); _root.XSound.stopSound("sndPuzzleAmbience", "IMMEDIATE"); _root.XSound.playSound("sndAmbience", VOL_AMBIENCE, -2, true); puzzleAlpha.startLoop(60, 0, 5); screenScale.startLoop(0.75, 0.001, gameModeSteps); _root.i3dStage.obj7.mc.texture.iPuzzlePulse.gotoAndPlay("turnOff"); } function endMode_CLOSE_PUZZLE() { setRoomArray([1, 2, 3, 4, 5, 6, 7]); startMode_NORMAL(); var _local2 = 1; while (_local2 <= 6) { var _local3 = _root.i3dStage["obj" + _local2]; _local3.mc.texture.iPuzzleHolderBackground._visible = false; _local3.mc.texture.iPuzzleHolderBackground.setMask(null); _local2++; } } function renderMode_CLOSE_PUZZLE() { _root.doMovement(); puzzleAlpha.update(); if (puzzleAlpha.active == true) { var _local2 = 1; while (_local2 <= 6) { var _local3 = _root.i3dStage["obj" + (_local2 + 7)]; renderObjectAlpha(_local3.mc.texture.iPuzzleHolder, puzzleAlpha.currentValue); _local3 = _root.i3dStage["obj" + _local2]; renderObjectAlpha(_local3.mc.texture.iPuzzleHolderBackground.iDummy, puzzleAlpha.currentValue); _local2++; } } screenScale.update(); render3d(); } function startMode_TURN_TO_DOOR(aObj) { gameModeSteps = 20; gameModeCurrentStep = 1; render2dScaleX.startLoop(render2dScaleX.currentValue, 85, gameModeSteps); render2dScaleY.startLoop(render2dScaleY.currentValue, 85, gameModeSteps); _root.targetObject = aObj; var _local2 = getCoordsFromDirection(_root.currentRoom, aObj.wallNumber); setTintCoords(_root.iIntermediary.iDoor, _local2); setTintCoords(_root.iIntermediary2.iDoor, _local2); _root.iIntermediary.iDoor.gotoAndStop(1); _root.iIntermediary2.iDoor.gotoAndStop(1); _root.iIntermediary._visible = false; _root.iIntermediary2._visible = false; gameMode = "TURN_TO_DOOR"; } function endMode_TURN_TO_DOOR() { startMode_ZOOM_TO_OBJECT(_root.targetObject); } function renderMode_TURN_TO_DOOR() { i = 0; while (i < tmpArray.length) { _root.pointArray[i].x = (_root.tmpArray[i].x - centreX) * scaleX; _root.pointArray[i].y = (_root.tmpArray[i].y - centreY) * scaleY; _root.pointArray[i].z = (_root.tmpArray[i].z - centreZ) * scaleZ; i++; } if (_root.targetObject._name == "iZDoor") { sprites.renderAll(); } offsetX = -_root.get2dOffsetX(_root.targetObject); offsetY = -_root.get2dOffsetY(_root.targetObject); var _local4; var _local2 = false; trace((("OX OY " + offsetX) + " ") + offsetY); var _local3 = 20; if ((offsetX > 1) || (offsetX < -1)) { heading = heading + (offsetX / _local3); } else { _local4 = true; } if ((offsetY > 1) || (offsetY < -1)) { pitch = pitch + (offsetY / _local3); } else { _local2 = true; } _root.groupRotateY(_root.pointArray, heading); _root.groupRotateX(_root.pointArray, pitch); _root.groupRotateZ(_root.pointArray, bank); if ((_local4 == true) && (_local2 == true)) { if (render2dScaleX.currentValue == render2dScaleX.to) { startMode_ZOOM_TO_OBJECT(_root.targetObject); } } render2dScaleX.update(); render2dScaleY.update(); if (gameModeCurrentStep == (gameModeSteps - 6)) { _root.targetObject.gotoAndPlay("doOpen"); } render3d(); render2d(); } function startMode_ZOOM_TO_OBJECT(aObj) { if (aObj._name == "iZDoor") { gameModeSteps = 65; scaleDest = 1250; _root.iIntermediary._visible = true; render2dBrightness.startLoop(100, 0, gameModeSteps); } else { gameModeSteps = 25; scaleDest = 320; _root.iIntermediary._visible = true; intermediaryScale.startLoop(100, 420, gameModeSteps + 35); } gameModeCurrentStep = 1; render2dOffsetX.startLoop(0, get2dOffsetX(aObj), gameModeSteps); render2dOffsetY.startLoop(0, get2dOffsetY(aObj), gameModeSteps); render2dScaleX.startLoop(render2dScaleX.currentValue, scaleDest, gameModeSteps); render2dScaleY.startLoop(render2dScaleY.currentValue, scaleDest, gameModeSteps); render2dScaleX.targetObject = aObj; _root.iIntermediary2._visible = false; gameMode = "ZOOM_TO_OBJECT"; } function endMode_ZOOM_TO_OBJECT() { trace((((("ALAH1 " + _root.currentRoom.x) + " ") + _root.currentRoom.y) + " ") + _root.currentRoom.z); if (render2dScaleX.targetObject._name != "iZDoor") { aDirection = render2dScaleX.targetObject.wallNumber; var _local2 = getCoordsFromDirection(_root.currentRoom, aDirection); _root.currentRoom.x = _local2.x; _root.currentRoom.y = _local2.y; _root.currentRoom.z = _local2.z; currentRoomNumber = getRoomNumber(_root.currentRoom); trace((((("ALAH2 " + _root.currentRoom.x) + " ") + _root.currentRoom.y) + " ") + _root.currentRoom.z); startMode_FADE_IN(); } else { _root.flagGameOver = true; } } function renderMode_ZOOM_TO_OBJECT() { intermediaryScale.update(); _root.iIntermediary._xscale = _root.intermediaryScale.currentValue; _root.iIntermediary._yscale = _root.intermediaryScale.currentValue; _root.targetObject._parent.shadow._alpha = _root.targetObject._parent.shadow._alpha - 7; render3d(); render2dScaleX.update(); render2dScaleY.update(); render2d_Scale(); render2dOffsetX.update(); render2dOffsetY.update(); render2d_Position(); render2dAlpha.update(); render2d_Alpha(); if (_root.targetObject._name == "iZDoor") { sprites.renderAll(); render2dBrightness.update(); render2d_Brightness(); } } function getCoordsFromDirection(aCoords, aDirection) { var _local1 = {x:0, y:0, z:0}; _local1.x = aCoords.x; _local1.y = aCoords.y; _local1.z = aCoords.z; switch (aDirection) { case 1 : _local1.x = _local1.x - 1; break; case 2 : _local1.z = _local1.z + 1; break; case 3 : _local1.x = _local1.x + 1; break; case 4 : _local1.z = _local1.z - 1; break; case 5 : _local1.y = _local1.y + 1; break; case 6 : _local1.y = _local1.y - 1; break; } return(_local1); } function demon() { this.active = false; this.from = 0; this.to = 0; this.steps = 0; this.currentStep = 0; this.currentValue = 0; this.targetObject = null; this.startLoop = function (from, to, steps, beginAtStep) { this.from = from; this.to = to; this.steps = steps; if (!beginAtStep) { beginAtStep = 0; } this.currentStep = beginAtStep; this.currentValue = from; this.active = true; }; this.update = function () { if (this.active == false) { return(undefined); } if (this.currentStep > this.steps) { this.active = false; return(undefined); } var _local2 = this.currentStep / this.steps; this.currentValue = this.from + ((this.to - this.from) * _local2); this.currentStep++; if (this.currentStep > this.steps) { this.currentValue = this.to; } }; } function getRangedValue(aValue, aMaxLimit) { retValue = aValue - (int(aValue / aMaxLimit) * aMaxLimit); if (retValue < 0) { retValue = retValue + aMaxLimit; } return(retValue); } function render2d_Color() { _root.i3dStage._alpha = render2dAlpha.currentValue; } function planet() { this.ww = null; this.uu = null; this.vv = null; this.uRadius = null; this.vRadius = null; this.speed = null; this.theta = 0; this.colorName = null; this.targetObject = null; this.init = function (aColorName, aSpeed, aW, aU, aV, aURadius, aVRadius, aTheta) { this.ww = _root.pointArray[aW]; this.uu = _root.pointArray[aU]; this.vv = _root.pointArray[aV]; this.uRadius = aURadius; this.vRadius = aVRadius; this.theta = aTheta; this.speed = aSpeed; this.colorName = aColorName; this.active = true; _root.setTint(this.targetObject, this.colorName); this.targetObject._visible = false; }; this.updatePosition = function () { var _local8 = this.ww; var _local4 = this.uu; var _local3 = this.vv; radiusU = this.uRadius; radiusV = this.vRadius; this.theta = this.theta + 0.04; if (this.theta > (Math.PI*2)) { this.theta = this.theta - (Math.PI*2); } var _local7 = ((0 + (Math.cos(this.theta) * (_local4.x * radiusU))) + (Math.sin(this.theta) * (_local3.x * radiusV))) + _root.centreX; var _local6 = ((0 + (Math.cos(this.theta) * (_local4.y * radiusU))) + (Math.sin(this.theta) * (_local3.y * radiusV))) + _root.centreY; var _local5 = ((0 + (Math.cos(this.theta) * (_local4.z * radiusU))) + (Math.sin(this.theta) * (_local3.z * radiusV))) + _root.centreZ; this.targetObject._x = _local7; this.targetObject._y = _local6; this.targetObject.swapDepths(50500 - _local5); aMaxScale = 70; aMinScale = 5; aScale = aMaxScale - (_local5 / 4); if (aScale < aMinScale) { aScale = aMinScale; } this.targetObject._xscale = aScale; this.targetObject._yscale = aScale; }; } var throbCounter = 0; var stabCounter = 0; var lastStab = 1; puzzleAlpha.update(); if (puzzleAlpha.active == true) { var i = 1; while (i <= 6) { var clip = _root.i3dStage["obj" + (i + 7)]; renderObjectAlpha(clip.mc.texture.iPuzzleHolder, puzzleAlpha.currentValue); var clip = _root.i3dStage["obj" + i]; renderObjectAlpha(clip.mc.texture.iPuzzleHolderBackground.iDummy, puzzleAlpha.currentValue); i++; } } var fadeTime = 1000; var defaultHex = 26316; Color.prototype.fadeToHex = function (goalHex, milSecs) { clearInterval(this.v.intrvl); this.v = {}; this.v.milSecs = milSecs; this.v.startTime = getTimer(); this.v.startHex = this.getRGB(); this.v.startRGB = Math.hex2rgb(this.v.startHex); this.v.goalHex = goalHex; var _local2 = Math.hex2rgb(goalHex); this.v.change = {}; this.v.change.r = _local2.r - this.v.startRGB.r; this.v.change.g = _local2.g - this.v.startRGB.g; this.v.change.b = _local2.b - this.v.startRGB.b; this.v.intrvl = setInterval(this, "colorShift", 1); }; Color.prototype.colorShift = function () { var _local2 = (getTimer() - this.v.startTime) / this.v.milSecs; if (_local2 < 1) { var _local4 = this.v.startRGB.r + (_local2 * this.v.change.r); var _local5 = this.v.startRGB.g + (_local2 * this.v.change.g); var _local3 = this.v.startRGB.b + (_local2 * this.v.change.b); this.setRGB(Math.rgbToHex(_local4, _local5, _local3)); } else { this.setRGB(this.v.goalHex); clearInterval(this.v.intrvl); delete this.v; } }; function setupPuzzle(aPuzzleName) { flagSpriteDest_X = -1; flagSpriteDest_Y = -1; flagSpriteDest_Screen = 999; sprites.reset(); switch (aPuzzleName) { case "PuzzleHINT" : setupPuzzle_HINT(); break; case "PuzzleA" : setupPuzzle_A(); break; case "PuzzleB" : setupPuzzle_B(); break; case "PuzzleC" : setupPuzzle_C(); break; case "PuzzleD" : setupPuzzle_D(); break; case "PuzzleE" : setupPuzzle_E(); break; case "PuzzleF" : setupPuzzle_F(); break; case "PuzzleG" : setupPuzzle_G(); break; case "PuzzleH" : setupPuzzle_H(); break; case "PuzzleI" : setupPuzzle_I(); break; case "PuzzleJ" : setupPuzzle_J(); break; case "PuzzleK" : setupPuzzle_K(); break; case "PuzzleL" : setupPuzzle_L(); break; case "PuzzleM" : setupPuzzle_M(); break; case "PuzzleN" : setupPuzzle_N(); break; case "PuzzleO" : setupPuzzle_O(); break; case "PuzzleP" : setupPuzzle_P(); break; case "PuzzleQ" : setupPuzzle_Q(); break; case "PuzzleR" : setupPuzzle_R(); break; case "PuzzleS" : setupPuzzle_S(); break; case "PuzzleT" : setupPuzzle_T(); break; case "PuzzleU" : setupPuzzle_U(); break; case "PuzzleV" : setupPuzzle_V(); break; case "PuzzleW" : setupPuzzle_W(); break; case "PuzzleX" : setupPuzzle_X(); break; case "PuzzleY" : setupPuzzle_Y(); break; case "PuzzleZ" : setupPuzzle_Z(); break; default : setupPuzzle_B(); } } function setupPuzzle_A() { i = 1; sprites.addSprite(new sprite("guffin11", i, "shapeA2", "blixA", 20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin12", i, "shapeAX", "blixA", -20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin13", i, "shapeA1", "blixA", -20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin14", i, "shapeA5", "blixA", 20, 20, 100, {r:0, g:0, b:100})); i = 2; sprites.addSprite(new sprite("guffin21", i, "shapeA2", "blixA", 20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin22", i, "shapeA1", "blixA", 20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin23", i, "shapeA4", "blixA", -20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin24", i, "shapeAX", "blixA", -20, 20, 100, {r:0, g:0, b:100})); i = 3; sprites.addSprite(new sprite("guffin31", i, "shapeA1", "blixA", -20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin32", i, "shapeA4", "blixA", -20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin33", i, "shapeAX", "blixA", 20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin34", i, "shapeA3", "blixA", 20, 20, 100, {r:0, g:0, b:100})); i = 4; sprites.addSprite(new sprite("guffin41", i, "shapeA2", "blixA", 20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin42", i, "shapeA4", "blixA", -20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin43", i, "shapeA3", "blixA", -20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin44", i, "shapeAX", "blixA", 20, 20, 100, {r:0, g:0, b:100})); i = 5; sprites.addSprite(new sprite("guffin51", i, "shapeA5", "blixA", -20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin52", i, "shapeAX", "blixA", -20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin53", i, "shapeA2", "blixA", 20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin54", i, "shapeA1", "blixA", 20, 20, 100, {r:0, g:0, b:100})); i = 6; sprites.addSprite(new sprite("guffin61", i, "shapeA4", "blixA", 20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin72", i, "shapeA3", "blixA", 20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin73", i, "shapeA2", "blixA", -20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin74", i, "shapeAX", "blixA", -20, 20, 100, {r:0, g:0, b:100})); flagQuadCounter = -1; var i = 0; while (i <= sprites.items.length) { flagQuadCounter++; if (flagQuadCounter == 5) { flagQuadCounter = 1; } aSprite = sprites.items[i]; applyState_Inactive(aSprite); applyState_Alpha(aSprite, 5, "IMMEDIATE"); applyState_RGB(aSprite, 0, 0, 100); aSprite.y.rotation.currentValue = randomRange(1, 360); aSprite.rotation.currentValue = i * 30; applyState_Rotation(aSprite, 2); aSprite.baseScaleX = 150; aSprite.baseScaleY = 150; aSprite.flagQuad = (Math.PI/2) * flagQuadCounter; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 2, 0.1, aSprite.flagQuad); i++; } puzzleConfig.currentSprite = [0, 0, 0, 0, 0, 0, 0]; } function puzzleA_sprite_onPress(aObj) { screenNumber = aObj.targetSprite.screenNumber; aSprite = puzzleConfig.currentSprite[screenNumber]; applyState_Inactive(aSprite); applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 2, 0.1, aSprite.flagQuad); applyState_RGB(aSprite, 0, 0, 100); applyState_Rotation(aSprite, 2); applyState_Alpha(aSprite, 5); aSprite = aObj.targetSprite; puzzleConfig.currentSprite[screenNumber] = aSprite; applyState_Active(aSprite, 0); applyState_Alpha(aSprite, 26); applyState_Orbit(aSprite, 0, 0, 0); applyState_RGB(aSprite, 100, 0, 0); applyState_Rotation(aSprite, 6); } function puzzleA_sprite_stopMoving(aObj) { aTest = ((((puzzleConfig.currentSprite[1].shapeId + puzzleConfig.currentSprite[2].shapeId) + puzzleConfig.currentSprite[3].shapeId) + puzzleConfig.currentSprite[4].shapeId) + puzzleConfig.currentSprite[5].shapeId) + puzzleConfig.currentSprite[6].shapeId; trace("test " + aTest); if (aTest == "shapeAXshapeAXshapeAXshapeAXshapeAXshapeAX") { handlePuzzleSolved(); } } function setupPuzzle_B() { i = 1; sprites.addSprite(new sprite("guffin11", i, "shapeB1", "blixA", -20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin12", i, "shapeB2", "blixA", 20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin13", i, "shapeB5", "blixA", -20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin14", i, "shapeB1", "blixA", 20, -20, 100, {r:0, g:0, b:100}, 180)); i = 2; sprites.addSprite(new sprite("guffin21", i, "shapeB3", "blixA", 20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin22", i, "shapeB4", "blixA", 20, -20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin23", i, "shapeB3", "blixA", -20, 20, 100, {r:0, g:0, b:100}, 180)); sprites.addSprite(new sprite("guffin24", i, "shapeB4", "blixA", -20, -20, 100, {r:0, g:0, b:100}, 180)); i = 3; sprites.addSprite(new sprite("guffin31", i, "shapeB6", "blixA", -20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin32", i, "shapeB7", "blixA", 20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin33", i, "shapeB2", "blixA", -20, -20, 100, {r:0, g:0, b:100}, 180)); sprites.addSprite(new sprite("guffin34", i, "shapeB1", "blixA", 20, -20, 100, {r:0, g:0, b:100}, 180)); i = 4; sprites.addSprite(new sprite("guffin41", i, "shapeB4", "blixA", -20, -20, 100, {r:0, g:0, b:100}, 90)); sprites.addSprite(new sprite("guffin42", i, "shapeB8", "blixA", 20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin43", i, "shapeB4", "blixA", -20, 20, 100, {r:0, g:0, b:100}, 180)); sprites.addSprite(new sprite("guffin44", i, "shapeB7", "blixA", 20, -20, 100, {r:0, g:0, b:100}, 180)); i = 5; sprites.addSprite(new sprite("guffin51", i, "shapeB3", "blixA", -20, -20, 100, {r:0, g:0, b:100}, -90)); sprites.addSprite(new sprite("guffin52", i, "shapeB9", "blixA", 20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin53", i, "shapeB1", "blixA", -20, 20, 100, {r:0, g:0, b:100}, 180)); sprites.addSprite(new sprite("guffin54", i, "shapeB6", "blixA", 20, -20, 100, {r:0, g:0, b:100}, -90)); i = 6; sprites.addSprite(new sprite("guffin51", i, "shapeB10", "blixA", -20, 20, 100, {r:0, g:0, b:100})); sprites.addSprite(new sprite("guffin52", i, "shapeB5", "blixA", 20, -20, 100, {r:0, g:0, b:100}, 90)); sprites.addSprite(new sprite("guffin53", i, "shapeB7", "blixA", -20, -20, 100, {r:0, g:0, b:100}, -90)); sprites.addSprite(new sprite("guffin54", i, "shapeB5", "blixA", 20, 20, 100, {r:0, g:0, b:100}, -90)); flagQuadCounter = 0; var i = 0; while (i <= sprites.items.length) { flagQuadCounter++; if (flagQuadCounter == 5) { flagQuadCounter = 1; } aSprite = sprites.items[i]; applyState_Inactive(aSprite); applyState_Alpha(aSprite, 0, "IMMEDIATE"); aSprite.alpha.maxSpeed = 1; aSprite.x.currentValue = 0; aSprite.y.currentValue = 0; applyState_Alpha(aSprite, 20); applyValueState_Sin(aSprite.rotation, aSprite.rotation.currentValue, 0.1, 10, 0); aSprite.baseScaleX = 190; aSprite.baseScaleY = 190; aSprite.rotation.maxSpeed = 10; aSprite.x.changeTo = aSprite.x.changeTo + ((randomRange(0, 2) - 2) * 10); aSprite.y.changeTo = aSprite.y.changeTo + ((randomRange(0, 2) - 2) * 10); aSprite.flagQuad = (Math.PI/2) * flagQuadCounter; applyState_Orbit(aSprite, 0, 0, 32, -0.01, aSprite.flagQuad); i++; } puzzleConfig.currentFrontSprite = [null, null, null, null, null, null, null]; puzzleConfig.currentBackSprite = [null, null, null, null, null, null, null]; } function puzzleB_sprite_onPress(aObj) { screenNumber = aObj.targetSprite.screenNumber; aSprite = puzzleConfig.currentFrontSprite[screenNumber]; applyState_Inactive(aSprite); applyState_Alpha(aSprite, 20); applyState_RGB(aSprite, 100, 100, 100); aSprite.rotation.currentValue = aSprite.rotation.currentValue - 360; applyState_Orbit(aSprite, 0, 0, 32, -0.01, aSprite.flagQuad); aSprite = puzzleConfig.currentBackSprite[screenNumber]; puzzleConfig.currentFrontSprite[screenNumber] = aSprite; applyState_Active(aSprite, -40); applyState_Alpha(aSprite, 30); applyState_Orbit(aSprite, 0, 0, 0); applyState_FlashColor(aSprite, "blue"); aSprite = aObj.targetSprite; puzzleConfig.currentBackSprite[screenNumber] = aSprite; applyState_Active(aSprite, -25); applyState_Alpha(aSprite, 30); applyState_Orbit(aSprite, 0, 0, 0); aSprite.rotation.currentValue = aSprite.rotation.currentValue + 360; applyState_FlashColor(aSprite, "blue"); } function puzzleB_sprite_stopMoving(aObj) { var _local1 = 1; while (_local1 <= 6) { tmpFront = puzzleConfig.currentFrontSprite[_local1]; if (tmpFront == null) { return(undefined); } tmpBack = puzzleConfig.currentBackSprite[_local1]; if (tmpBack == null) { return(undefined); } var _local2 = tmpFront.shapeId + tmpBack.shapeId; correct1 = sprites.items[(_local1 - 1) * 4]; correct2 = sprites.items[((_local1 - 1) * 4) + 1]; if (((tmpFront == correct1) && (tmpBack == correct2)) || ((tmpBack == correct1) && (tmpFront == correct2))) { } else { return(undefined); } _local1++; } handlePuzzleSolved(); } function setupPuzzle_C() { puzzleConfig.offsets = [1, 130, 200, 30, 330, 0]; puzzleConfig.currentRedRotation = 0; puzzleConfig.colors = [{r:0, g:0, b:0}, {r:100, g:0, b:0}, {r:0, g:100, b:0}, {r:0, g:0, b:100}, {r:100, g:100, b:0}, {r:100, g:0, b:100}, {r:0, g:100, b:100}]; var _local4 = 1; while (_local4 <= 5) { var _local1 = 1; while (_local1 <= 5) { spriteName = (("guffin" + _local4) + "screen") + _local1; spriteDepth = 0 + ((_local1 - _local4) * 20); if (spriteDepth < 0) { spriteDepth = 100 + spriteDepth; } if ((_local1 == 5) && (_local4 != 5)) { } else { aSprite = sprites.addSprite(new sprite(spriteName, _local1, "shapeC1", "blixC", 0, 0, spriteDepth, {r:0, g:100, b:0})); aSprite.maxSpeed = 2; aSprite.acceleration = 0.5; aSprite.baseScaleX = 400; aSprite.baseScaleY = 400; aColor = puzzleConfig.colors[_local4]; trace((((aColor.r + " << ") + aColor.g) + " ") + aColor.b); if (_local4 == _local1) { aSprite.guffinKey = _local4; aSprite.alpha.currentValue = 100; } else { aSprite.alpha.currentValue = 20; } if (_local4 == 5) { applyState_RGB(aSprite, 100, 0, 0, "IMMEDIATE"); aOffset = puzzleConfig.offsets[_local1] + puzzleConfig.currentRedRotation; aOffset = getRangedValue(aOffset, 360); applyState_Rotation(aSprite, aOffset, "GRADUAL"); } else { aOffset = (_local4 - 1) * 90; applyState_RGB(aSprite, 0, 100, 0, "IMMEDIATE"); applyState_Rotation(aSprite, aOffset, "GRADUAL"); } } _local1++; } _local4++; } _local4 = 0; while (_local4 <= sprites.items.length) { _local4++; } } function puzzleC_sprite_onPress(aObj) { screenNumber = aObj.targetSprite.screenNumber; aSprite = aObj.targetSprite; if (!aSprite.guffinKey) { return(undefined); } aKey = aSprite.guffinKey; var _local5 = 30; if (aKey == 5) { aOffset = sprites.offsetRotation[screenNumber]; aOffset = aOffset + 180; aStep = 10; aHowMany = int(aOffset / aStep); aRemainder = aOffset - int(aOffset / aStep); if (aRemainder <= (aStep / 2)) { aOffset = aStep * aHowMany; } else { aOffset = (aStep * aHowMany) + aStep; } puzzleConfig.currentRedRotation = aOffset; } else { aDelta = puzzleConfig.offsets[aKey]; aOffset = puzzleConfig.currentRedRotation + aDelta; aOffset = getRangedValue(aOffset, 360); } var _local3 = aOffset; var _local1 = 1; while (_local1 <= 5) { spriteName = (("guffin" + aKey) + "screen") + _local1; tmpSprite = sprites.getSprite(spriteName); if (tmpSprite) { if (aKey == 5) { aDelta = puzzleConfig.offsets[_local1]; aOffset = _local3 + aDelta; } else { aOffset = _local3; } aOffset = getRangedValue(aOffset, 360); applyState_Rotation(tmpSprite, aOffset, "GRADUAL"); } _local1++; } var _local2 = null; aKey = 1; while (aKey <= 4) { _local1 = 1; while (_local1 <= 4) { spriteName = (("guffin" + aKey) + "screen") + _local1; tmpSprite = sprites.getSprite(spriteName); aOffset = tmpSprite.rotation.changeTo; if (_local2 == null) { _local2 = aOffset; } else if (aOffset != _local2) { return(undefined); } _local1++; } aKey++; } handlePuzzleSolved(); } function setupPuzzle_E() { aShapeCounter = 0; aSpeedCounter = 0; puzzleConfig.selectedSprites = [null, null, null, null]; var _local2 = 1; while (_local2 <= 4) { var _local1 = 1; while (_local1 <= 3) { aShapeCounter++; if (aShapeCounter == 5) { aShapeCounter = 1; } aSpeedCounter = aSpeedCounter + 2; if (aSpeedCounter > 9) { aSpeedCounter = 1; } tx = -30 + (_local1 * 10); ty = (-35 + ((_local1 - 1) * 19)) + ((_local2 - 1) * 4); depth = randomRange(0, 5) * 5; aShape = "shapeE" + _local1; aSprite.flagShapeNumber = _local1; aSprite = sprites.addSprite(new sprite((("guffinx" + _local1) + "screen") + _local2, _local2, aShape, "blixA", tx, ty, depth, {r:80, g:80, b:80})); aSprite.baseScaleX = 370; aSprite.baseScaleY = 170; aSprite.flagActive = false; aSpeedX = 0.2 + (aSpeedCounter * 0.1); if (_local2 <= 4) { applyValueState_Transfer(aSprite.x, -77, 77, aSpeedX); } if (_local2 == _local1) { aSprite.flagWrongShadow = true; } else { aSprite.flagWrongShadow = false; } aSprite.originalSpeed = aSpeedX; aSprite.originalY = ty; aSprite.flagSelected = false; _local1++; } _local2++; } _local2 = 0; while (_local2 <= sprites.items.length) { aSprite = sprites.items[_local2]; applyState_Alpha(aSprite, 25, "IMMEDIATE"); _local2++; } } function puzzleE_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if (aSprite.flagSelected == true) { return(undefined); } aSprite.flagSelected = true; aSprite.y.changeMode = "SIN"; aSprite.y.base = 35; aSprite.y.offset = 0.314159265358979 * randomRange(0, 10); aSprite.y.frequency = randomRange(2, 4) / 50; aSprite.y.amplitude = randomRange(1, 4); aSprite.y.maxSpeed = 1.6; applyState_RGB(aSprite, 20, 20, 35); if (puzzleConfig.selectedSprites[0] != null) { tmpSprite = puzzleConfig.selectedSprites[0]; tmpSprite.flagSelected = false; tmpSprite.y.changeMode = "GRADUAL"; tmpSprite.y.changeTo = tmpSprite.originalY; tmpSprite.y.maxSpeed = 1.3; applyState_RGB(tmpSprite, 100, 100, 100); } puzzleConfig.selectedSprites[0] = puzzleConfig.selectedSprites[1]; puzzleConfig.selectedSprites[1] = puzzleConfig.selectedSprites[2]; puzzleConfig.selectedSprites[2] = aSprite; var _local1 = 0; while (_local1 < 3) { tmpSprite = puzzleConfig.selectedSprites[_local1]; if (tmpSprite == null) { return(undefined); } if (tmpSprite.flagWrongShadow == false) { return(undefined); } _local1++; } handlePuzzleSolved(); } function setupPuzzle_F() { aCounter = 0; puzzleConfig.clicks = 0; var _local6 = 1; while (_local6 <= 6) { var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { aCounter++; tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); depth = 20; aShape = "shapeF1"; aSprite = sprites.addSprite(new sprite((((("guffinx" + _local6) + "x") + _local2) + "y") + _local1, _local6, aShape, "blixA", tx, ty, depth, {r:0, g:0, b:100})); aSprite.baseScaleX = 300; aSprite.baseScaleY = 300; applyStateFlipFlop(aSprite, 3); aSprite.flagActive = false; aSprite.rotation.currentValue = aCounter * 90; _local1++; } _local2++; } _local6++; } _local6 = 0; while (_local6 <= sprites.items.length) { aSprite = sprites.items[_local6]; aSprite.x.maxSpeed = 6; aSprite.y.maxSpeed = 6; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); aSprite.flagActive = false; _local6++; } } function puzzleF_sprite_onPress(aObj) { aSprite = aObj.targetSprite; aScreenWidth = 100; aDistance = 50; tmpSprite = aSprite; tmpSprite = aSprite.cloneForTransfer("abstract1"); applyValueState_Transfer(tmpSprite.x, -(aScreenWidth / 2), aScreenWidth / 2, tmpSprite.x.currentValue + aDistance, "GRADUALTRANSFER"); doTransfer(tmpSprite, 1); targetSprite = sprites.getSpriteAtXY(tmpSprite.screenNumber, tmpSprite.x.changeTo, tmpSprite.y.changeTo); tmpSprite = null; applyStateFlipFlop(targetSprite, 2); tmpSprite = aSprite.cloneForTransfer("abstract1"); applyValueState_Transfer(tmpSprite.x, -(aScreenWidth / 2), aScreenWidth / 2, tmpSprite.x.currentValue - aDistance, "GRADUALTRANSFER"); doTransfer(tmpSprite, 2); targetSprite = sprites.getSpriteAtXY(tmpSprite.screenNumber, tmpSprite.x.changeTo, tmpSprite.y.changeTo); tmpSprite = null; applyStateFlipFlop(targetSprite, 2); tmpSprite = aSprite.cloneForTransfer("abstract1"); applyValueState_Transfer(tmpSprite.y, -(aScreenWidth / 2), aScreenWidth / 2, tmpSprite.y.currentValue - aDistance, "GRADUALTRANSFER"); doTransfer(tmpSprite, 3); targetSprite = sprites.getSpriteAtXY(tmpSprite.screenNumber, tmpSprite.x.changeTo, tmpSprite.y.changeTo); tmpSprite = null; applyStateFlipFlop(targetSprite, 2); tmpSprite = aSprite.cloneForTransfer("abstract1"); applyValueState_Transfer(tmpSprite.y, -(aScreenWidth / 2), aScreenWidth / 2, tmpSprite.y.currentValue + aDistance, "GRADUALTRANSFER"); doTransfer(tmpSprite, 4); targetSprite = sprites.getSpriteAtXY(tmpSprite.screenNumber, tmpSprite.x.changeTo, tmpSprite.y.changeTo); tmpSprite = null; applyStateFlipFlop(targetSprite, 2); applyStateFlipFlop(aSprite, 3); flagSolved = true; i = 0; while (i < 24) { aSprite = sprites.items[i]; if (aSprite.currentLevel != 2) { flagSolved = false; } i++; } puzzleConfig.clicks = puzzleConfig.clicks + 1; if (flagSolved == true) { handlePuzzleSolved(); } else if (puzzleConfig.clicks == 10) { _root.i3dStage.obj7.mc.texture.iButton.gotoAndPlay("frisbeePress"); startMode_CLOSE_PUZZLE(); } } function setupPuzzle_I() { aShapeCounter = 0; aSpeedCounter = 0; puzzleConfig.selectedSprites = [null, null, null, null]; var _local3 = [0, 1, 3, 5, 2, 4, 6]; puzzleConfig.reds = [0, 100, 0, 0, 100, 100, 0]; puzzleConfig.blus = [0, 0, 100, 0, 100, 0, 100]; puzzleConfig.grns = [0, 0, 0, 100, 0, 100, 100]; i = 1; while (i <= 6) { var _local2 = _root.i3dStage["obj" + i].mc.texture.iPuzzleHolderBackground; _local2.puzzle.gotoAndStop(_local3[i]); i++; } i = 1; aSprite = sprites.addSprite(new sprite("guffinA1", 1, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); aSprite = sprites.addSprite(new sprite("guffinE1", 3, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); i = 2; aSprite = sprites.addSprite(new sprite("guffinA2", 1, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); aSprite = sprites.addSprite(new sprite("guffinB1", 4, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); i = 3; aSprite = sprites.addSprite(new sprite("guffinB2", 4, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); aSprite = sprites.addSprite(new sprite("guffinC1", 2, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); i = 4; aSprite = sprites.addSprite(new sprite("guffinC2", 2, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); aSprite = sprites.addSprite(new sprite("guffinF1", 6, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); i = 5; aSprite = sprites.addSprite(new sprite("guffinD1", 5, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); aSprite = sprites.addSprite(new sprite("guffinE2", 3, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); i = 6; aSprite = sprites.addSprite(new sprite("guffinD2", 5, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); aSprite = sprites.addSprite(new sprite("guffinF2", 6, "shapeI", "blixI", 0, 0, 85, {r:100, g:70, b:0})); var i = 0; while (i <= sprites.items.length) { aSprite = sprites.items[i]; applyState_Alpha(aSprite, 25, "IMMEDIATE"); aSprite.baseScaleX = 445; aSprite.baseScaleY = 445; if (aSprite.id.indexOf("1") > -1) { aSprite.rotation.changeTo = 45; } else { aSprite.rotation.changeTo = 225; } applyValueState_Bounce(aSprite.scaleY, 95, 100, 0.2); aSprite.rotation.changeMode = "GRADUAL"; aSprite.rotation.maxSpeed = 3; t = int(i / 2) + 1; applyState_RGB(aSprite, puzzleConfig.reds[t], puzzleConfig.blus[t], puzzleConfig.grns[t]); i++; } } function puzzleI_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if (aSprite.rotation.currentValue != aSprite.rotation.changeTo) { return(undefined); } aTarget = aSprite.rotation.currentValue + 45; if (aTarget >= 360) { aTarget = aTarget - 360; aSprite.rotation.currentValue = aSprite.rotation.currentValue - 360; } aSprite.rotation.changeTo = aTarget; aSprite.rotation.changeMode = "GRADUAL"; aSprite.rotation.maxSpeed = 4; applyState_Alpha(aSprite, 120, "IMMEDIATE"); applyState_Alpha(aSprite, 24, "GRADUAL"); rot1 = sprites.items[0].rotation.changeTo; rot2 = sprites.items[1].rotation.changeTo; trace((("ROT ROT " + rot1) + " / ") + rot2); tmp = sprites.items[2]; trace("ROT TOT " + tmp); trace("ROT LOT " + tmp.rotation.changeTo); flag = false; if ((rot1 == 90) && (rot2 == 90)) { flag = true; } if ((rot1 == 270) && (rot2 == 270)) { flag = true; } if (flag == false) { return(undefined); } rot1 = sprites.items[2].rotation.changeTo; rot2 = sprites.items[3].rotation.changeTo; flag = false; if ((rot1 == 0) && (rot2 == 0)) { flag = true; } if ((rot1 == 180) && (rot2 == 180)) { flag = true; } if (flag == false) { return(undefined); } rot1 = sprites.items[4].rotation.changeTo; rot2 = sprites.items[5].rotation.changeTo; flag = false; if ((rot1 == 0) && (rot2 == 0)) { flag = true; } if ((rot1 == 180) && (rot2 == 180)) { flag = true; } if (flag == false) { return(undefined); } rot1 = sprites.items[6].rotation.changeTo; rot2 = sprites.items[7].rotation.changeTo; flag = false; if ((rot1 == 90) && (rot2 == 270)) { flag = true; } if ((rot1 == 270) && (rot2 == 90)) { flag = true; } if (flag == false) { return(undefined); } rot1 = sprites.items[8].rotation.changeTo; rot2 = sprites.items[9].rotation.changeTo; flag = false; if ((rot1 == 90) && (rot2 == 180)) { flag = true; } if ((rot1 == 270) && (rot2 == 0)) { flag = true; } if (flag == false) { return(undefined); } rot1 = sprites.items[10].rotation.changeTo; rot2 = sprites.items[11].rotation.changeTo; flag = false; if ((rot1 == 90) && (rot2 == 0)) { flag = true; } if ((rot1 == 270) && (rot2 == 180)) { flag = true; } if (flag == false) { return(undefined); } handlePuzzleSolved(); } function setupPuzzle_J() { puzzleConfig.currentSprite = null; aShapeArray = [x, 1, 3, 2, 3, 2, 1]; aCounter = 0; var _local1 = 1; while (_local1 <= 6) { aCounter++; tx = 0; ty = 0; aShape = "shapeJ" + aShapeArray[aCounter]; aSprite = sprites.addSprite(new sprite("guffinx" + _local1, _local1, aShape, "blixA", tx, ty, depth, {r:100, g:0, b:0})); aSprite.flagActive = false; if (((_local1 == 1) || (_local1 == 2)) || (_local1 == 3)) { aSprite.flagLevel = 1; } else { aSprite.flagLevel = 2; } aSprite.targetObject.shape.gotoAndStop("stayOff1"); aSprite.targetShadow.gotoAndStop("stayOff1"); _local1++; } _local1 = 0; while (_local1 < sprites.items.length) { aSprite = sprites.items[_local1]; aSprite.x.maxSpeed = 10; aSprite.y.maxSpeed = 10; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); aSprite.baseScaleX = 600; aSprite.baseScaleY = 600; applyState_RGB(aSprite, 660, 0, 0); applyState_Alpha(aSprite, 15, "IMMEDIATE"); _local1++; } } function puzzleJ_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if (aSprite.flagActive == true) { applyState_RGB(aSprite, 20, 80, 20, "IMMEDIATE"); applyState_RGB(aSprite, 660, 0, 0, "GRADUAL"); if (aSprite.flagLevel == 1) { aSprite.flagLevel = 2; aSprite.targetObject.shape.gotoAndPlay("1to2"); aSprite.targetShadow.gotoAndPlay("1to2"); } else { aSprite.flagLevel = 1; aSprite.targetObject.shape.gotoAndPlay("2to1"); aSprite.targetShadow.gotoAndPlay("2to1"); } var _local2 = 0; while (_local2 < sprites.items.length) { var _local1 = sprites.items[_local2]; if (_local1.screenNumber != aSprite.screenNumber) { if (_local1.flagActive == true) { _local1.flagActive = false; _local1.targetObject.shape.gotoAndPlay("doOff" + _local1.flagLevel); _local1.targetShadow.gotoAndPlay("doOff" + _local1.flagLevel); applyState_RGB(_local1, 20, 80, 20, "IMMEDIATE"); applyState_RGB(_local1, 660, 0, 0, "GRADUAL"); applytate_Rotation(_local1, -1, "RELATIVE"); if (((_local2 == 1) || (_local2 == 2)) || (_local2 == 3)) { aSprite.flagLevel = 1; } else { aSprite.flagLevel = 2; } } } _local2++; } return(undefined); } if (puzzleConfig.currentSprite == null) { aSprite.flagActive = true; aSprite.targetObject.shape.gotoAndPlay("doOn" + aSprite.flagLevel); aSprite.targetShadow.gotoAndPlay("doOn" + aSprite.flagLevel); puzzleConfig.currentSprite = aSprite; applyState_RGB(aSprite, 20, 80, 20, "IMMEDIATE"); applyState_RGB(aSprite, 660, 0, 0, "GRADUAL"); return(undefined); } trace((((("XXXX " + (aSprite == puzzleConfig.currentSprite)) + " 111 ") + aSprite.flagLevel) + " 222 ") + puzzleConfig.currentSprite.flagLevel); if ((aSprite.shapeId == puzzleConfig.currentSprite.shapeId) && (aSprite.flagLevel == puzzleConfig.currentSprite.flagLevel)) { aSprite.flagActive = true; aSprite.targetObject.shape.gotoAndPlay("doOn" + aSprite.flagLevel); aSprite.targetShadow.gotoAndPlay("doOn" + aSprite.flagLevel); puzzleConfig.currentSprite = null; } else { puzzleConfig.currentSprite = aSprite; aSprite.flagActive = true; aSprite.targetObject.shape.gotoAndPlay("doOn" + aSprite.flagLevel); aSprite.targetShadow.gotoAndPlay("doOn" + aSprite.flagLevel); var _local2 = 0; while (_local2 < sprites.items.length) { var _local1 = sprites.items[_local2]; if (_local1 != aSprite) { if (_local1.flagActive == true) { _local1.flagActive = false; _local1.targetObject.shape.gotoAndPlay("doOff" + _local1.flagLevel); _local1.targetShadow.gotoAndPlay("doOff" + _local1.flagLevel); applyState_RGB(_local1, 20, 80, 20, "IMMEDIATE"); applyState_RGB(_local1, 600, 0, 0, "GRADUAL"); applytate_Rotation(_local1, -1, "RELATIVE"); } } _local2++; } } applyState_RGB(aSprite, 20, 80, 20, "IMMEDIATE"); applyState_RGB(aSprite, 600, 0, 0, "GRADUAL"); var _local2 = 0; while (_local2 < sprites.items.length) { var _local1 = sprites.items[_local2]; trace((((("TESTING SPRITE " + _local2) + " ") + _local1) + " = ") + _local1.flagActive); if (_local1.flagActive == false) { return(undefined); } _local2++; } handlePuzzleSolved(); } function setupPuzzle_K() { puzzleConfig.currentSprite = null; aShapeArray = [x, 1, 2, 3, 2, 1, 3]; aCounter = 0; var _local1 = 1; while (_local1 <= 6) { aCounter++; tx = 0; ty = 0; aShape = "shapeK" + aShapeArray[aCounter]; aSprite = sprites.addSprite(new sprite("guffinx" + _local1, _local1, aShape, "blixA", tx, ty, depth, {r:0, g:100, b:0})); aSprite.flagActive = false; aSprite.flagMatched = false; aSprite.targetObject.shape.gotoAndStop("stayOff"); aSprite.targetShadow.gotoAndStop("stayOff"); _local1++; } _local1 = 0; while (_local1 < sprites.items.length) { aSprite = sprites.items[_local1]; aSprite.x.maxSpeed = 10; aSprite.y.maxSpeed = 10; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); aSprite.baseScaleX = 400; aSprite.baseScaleY = 400; applyState_RGB(aSprite, 0, 40, 0); applyState_Alpha(aSprite, 60, "IMMEDIATE"); applyState_Rotation(aSprite, -1, "RELATIVE"); aSprite.flagActive = false; _local1++; } } function puzzleK_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if (aSprite.flagActive == true) { var _local2 = 0; while (_local2 < sprites.items.length) { var _local1 = sprites.items[_local2]; if (_local1.flagActive == true) { _local1.flagActive = false; _local1.targetObject.shape.gotoAndPlay("doOff"); _local1.targetShadow.gotoAndPlay("doOff"); applyState_Rotation(_local1, -1, "RELATIVE"); } _local2++; } return(undefined); } if (puzzleConfig.currentSprite == null) { aSprite.flagActive = true; aSprite.targetObject.shape.gotoAndPlay("doOn"); aSprite.targetShadow.gotoAndPlay("doOn"); applyState_Rotation(aSprite, -1, "RELATIVE"); puzzleConfig.currentSprite = aSprite; } else if (aSprite.shapeId == puzzleConfig.currentSprite.shapeId) { aSprite.flagActive = true; aSprite.targetObject.shape.gotoAndPlay("doOn"); aSprite.targetShadow.gotoAndPlay("doOn"); applyState_Rotation(aSprite, 0, "RELATIVE"); applyState_Rotation(puzzleConfig.currentSprite, 0, "RELATIVE"); puzzleConfig.currentSprite = null; } else { puzzleConfig.currentSprite = aSprite; aSprite.flagActive = true; aSprite.targetObject.shape.gotoAndPlay("doOn"); aSprite.targetShadow.gotoAndPlay("doOn"); applyState_Rotation(aSprite, -1, "RELATIVE"); var _local2 = 0; while (_local2 < sprites.items.length) { var _local1 = sprites.items[_local2]; if (_local1 != aSprite) { if (_local1.flagActive == true) { _local1.flagActive = false; _local1.targetObject.shape.gotoAndPlay("doOff"); _local1.targetShadow.gotoAndPlay("doOff"); applyState_Rotation(_local1, -1, "RELATIVE"); } } _local2++; } } aSprite.z.currentValue = 25; aSprite.z.changeTo = 20; aSprite.z.changeMode = "GRADUAL"; applyState_RGB(aSprite, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aSprite, 0, 40, 0, "GRADUAL"); var _local2 = 0; while (_local2 < sprites.items.length) { var _local1 = sprites.items[_local2]; trace((((("TESTING SPRITE " + _local2) + " ") + _local1) + " = ") + _local1.flagActive); if (_local1.flagActive == false) { return(undefined); } _local2++; } handlePuzzleSolved(); } function setupPuzzle_L() { puzzleConfig.aReds = [100, 0, 100]; puzzleConfig.aGreens = [100, 100, 0]; puzzleConfig.aBlues = [0, 100, 100]; puzzleConfig.connections = [2, 3, 4, 5, 5, 1, 6, 7, 7, 8, 7, 9, 1, 10, 10, 11, 15, 12, 13, 14, 1, 5, 1, 8, 4, 14, 1, 3, 0, 0]; puzzleConfig.screenQuadrants = [1, 1, 1, 4, 1, 2, 4, 3, 2, 1, 2, 2, 3, 3, 3, 1, 1, 3, 2, 3, 3, 2, 4, 2, 3, 4, 2, 4, 5, 0]; puzzleConfig.currentSprite1 = null; puzzleConfig.currentSprite2 = null; ax = [0, -20, 20, -20, 20]; ay = [0, -20, -20, 20, 20]; aCounter = -1; aColorCounter = 1; i = 1; while (i <= 4) { var _local5 = _root.i3dStage["obj" + i].mc.texture.iPuzzleHolderBackground.puzzle; _local5.iEye5._visible = false; i++; } var _local5 = _root.i3dStage.obj6.mc.texture.iPuzzleHolderBackground.puzzle; _local5.iEye1._visible = false; _local5.iEye2._visible = false; _local5.iEye3._visible = false; _local5.iEye4._visible = false; _local5.iEye5._visible = false; _local5 = _root.i3dStage.obj5.mc.texture.iPuzzleHolderBackground.puzzle; _local5.iEye1._visible = false; _local5.iEye2._visible = false; _local5.iEye3._visible = false; _local5.iEye4._visible = false; var i = 1; while (i <= (puzzleConfig.connections.length / 2)) { aCounter++; aScreen = puzzleConfig.screenQuadrants[aCounter * 2]; aQuadrant = puzzleConfig.screenQuadrants[(aCounter * 2) + 1]; tx = ax[aQuadrant]; ty = ay[aQuadrant]; depth = 0; aShape = "shapeM1"; aSprite = sprites.addSprite(new sprite("guffinx" + i, aScreen, aShape, "blixA", tx, ty, depth, {r:0, g:50, b:0})); aSprite.baseScaleX = 310; aSprite.baseScaleY = 310; aFrame = randomRange(1, 200); aSprite.targetObject.shape.gotoAndPlay(aFrame); aSprite.targetShadow.gotoAndPlay(aFrame); aSprite.targetObject.shape.gotoAndStop("stayOpen"); aSprite.targetShadow.gotoAndStop("stayOpen"); applyState_Orbit(aSprite, tx, ty, 3, 0.02, (1.0471975511966 * t) * 2); applyValueState_Sin(aSprite.rotation, 0, 0.02, 10, randomRange(1, 100)); aSprite.flagCounter = aCounter; aSprite.scaleX.maxSpeed = 6; aSprite.scaleY.maxSpeed = 6; aSprite.alpha.maxSpeed = 2; aSprite.z.maxSpeed = 6; aColorCounter++; if (aColorCounter > 3) { aColorCounter = 1; } applyState_RGB(aSprite, puzzleConfig.aReds[aColorCounter], puzzleConfig.aGreens[aColorCounter], puzzleConfig.aBlues[aColorCounter]); puzzleL_eyeOn(aSprite); aSprite.scaleX.changeMode = "GRADUAL"; aSprite.scaleY.changeMode = "GRADUAL"; aSprite.z.changeMode = "GRADUAL"; if (aCounter == 0) { puzzleL_eyeOn(aSprite); puzzleConfig.currentSprite1 = aSprite; } else { applyState_Alpha(aSprite, 0, "IMMEDIATE"); puzzleL_eyeOff(aSprite); } if (i == 15) { applyState_RGB(aSprite, 100, 100, 100); aSprite.baseScaleX = 360; aSprite.baseScaleY = 360; } i++; } } function puzzleL_eyeOff(aSprite) { aSprite.scaleX.changeMode = "GRADUAL"; aSprite.scaleY.changeMode = "GRADUAL"; aSprite.z.changeMode = "GRADUAL"; applyState_Alpha(aSprite, 0); aSprite.z.changeTo = 100; aSprite.scaleX.changeTo = 1; aSprite.scaleY.changeTo = 1; } function puzzleL_eyeOn(aSprite) { aSprite.scaleX.changeMode = "GRADUAL"; aSprite.scaleY.changeMode = "GRADUAL"; aSprite.z.changeMode = "GRADUAL"; applyState_Alpha(aSprite, 20); aSprite.z.changeTo = 20; aSprite.scaleX.changeTo = 100; aSprite.scaleY.changeTo = 100; } function puzzleL_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if ((puzzleConfig.currentSprite1 != aSprite) && (puzzleConfig.currentSprite2 != aSprite)) { return(undefined); } if (aSprite.flagCounter == 14) { handlePuzzleSolved(); } if (puzzleConfig.currentSprite1 != null) { puzzleL_eyeOff(puzzleConfig.currentSprite1); } if (puzzleConfig.currentSprite2 != null) { puzzleL_eyeOff(puzzleConfig.currentSprite2); } aFlag = aSprite.flagCounter; var _local2 = puzzleConfig.connections[aFlag * 2]; var _local1 = puzzleConfig.connections[(aFlag * 2) + 1]; tmpSprite1 = sprites.items[_local2 - 1]; tmpSprite2 = sprites.items[_local1 - 1]; puzzleConfig.currentSprite1 = tmpSprite1; puzzleConfig.currentSprite2 = tmpSprite2; puzzleL_eyeOn(tmpSprite1); puzzleL_eyeOn(tmpSprite2); trace(aFlag); trace("YAYAYAYAYAYAYAYAYA"); trace((((_local2 + " / ") + _local1) + " == ") + tmpSprite1); } function setupPuzzle_M() { puzzleConfig.aReds = [50, 0, 0]; puzzleConfig.aGreens = [0, 50, 0]; puzzleConfig.aBlues = [0, 0, 50]; puzzleConfig.connections = [2, 3, 5, 1, 5, 6, 1, 8, 8, 1, 9, 10, 4, 1, 7, 9, 4, 1, 11, 12, 8, 1, 1, 13, 0, 0]; puzzleConfig.screens = [2, 2, 1, 3, 1, 4, 4, 1, 3, 4, 3, 2, 5]; puzzleConfig.currentSprite1 = null; puzzleConfig.currentSprite2 = null; aColorList = [1, 0, 0, 1, 1, 2, 1, 2, 0, 0, 2, 2, 4]; aCounter = -1; aColorCounter = 1; aDepthCounter = 0; var _local6 = _root.i3dStage.obj6.mc.texture.iPuzzleHolderBackground.puzzle.iEye; _local6._visible = false; var _local2 = 1; while (_local2 <= (puzzleConfig.connections.length / 2)) { aCounter++; aScreen = puzzleConfig.screens[aCounter]; tx = 0; ty = 0; depth = 0; aShape = "shapeM1"; aSprite = sprites.addSprite(new sprite("guffinx" + _local2, aScreen, aShape, "blixA", tx, ty, depth, {r:0, g:50, b:0})); aSprite.baseScaleX = 400; aSprite.baseScaleY = 400; applyState_Orbit(aSprite, tx, ty, 3, 0.02, (1.0471975511966 * t) * 2); applyValueState_Sin(aSprite.rotation, 0, 0.02, 10, randomRange(1, 100)); aFrame = randomRange(1, 200); aSprite.targetObject.shape.gotoAndPlay(aFrame); aSprite.targetShadow.gotoAndPlay(aFrame); aSprite.flagCounter = aCounter; aSprite.scaleX.maxSpeed = 6; aSprite.scaleY.maxSpeed = 6; aSprite.alpha.maxSpeed = 2; aSprite.z.maxSpeed = 6; aColorCounter = aColorList[aCounter]; applyState_RGB(aSprite, puzzleConfig.aReds[aColorCounter], puzzleConfig.aGreens[aColorCounter], puzzleConfig.aBlues[aColorCounter]); puzzleM_eyeOn(aSprite); aSprite.flagDepth = 0 + (aColorCounter * 20); aSprite.scaleX.changeMode = "GRADUAL"; aSprite.scaleY.changeMode = "GRADUAL"; aSprite.z.changeMode = "GRADUAL"; if (aCounter == 0) { puzzleM_eyeOn(aSprite); puzzleConfig.currentSprite1 = aSprite; } else { applyState_Alpha(aSprite, 0, "IMMEDIATE"); puzzleM_eyeOff(aSprite); } if (_local2 == 13) { applyState_RGB(aSprite, 100, 100, 100); aSprite.baseScaleX = 350; aSprite.baseScaleY = 350; aSprite.flagDepth = 90; } _local2++; } } function puzzleM_eyeOff(aSprite) { aSprite.scaleX.changeMode = "GRADUAL"; aSprite.scaleY.changeMode = "GRADUAL"; aSprite.z.changeMode = "GRADUAL"; applyState_Alpha(aSprite, 0); aSprite.z.changeTo = 100; aSprite.scaleX.changeTo = 1; aSprite.scaleY.changeTo = 1; } function puzzleM_eyeOn(aSprite) { aSprite.scaleX.changeMode = "GRADUAL"; aSprite.scaleY.changeMode = "GRADUAL"; aSprite.z.changeMode = "GRADUAL"; applyState_Alpha(aSprite, 20); aSprite.z.changeTo = aSprite.flagDepth; aSprite.scaleX.changeTo = 100; aSprite.scaleY.changeTo = 100; } function puzzleM_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if ((puzzleConfig.currentSprite1 != aSprite) && (puzzleConfig.currentSprite2 != aSprite)) { return(undefined); } if (aSprite.flagCounter == 12) { handlePuzzleSolved(); } if (puzzleConfig.currentSprite1 != null) { puzzleL_eyeOff(puzzleConfig.currentSprite1); } if (puzzleConfig.currentSprite2 != null) { puzzleL_eyeOff(puzzleConfig.currentSprite2); } aFlag = aSprite.flagCounter; var _local2 = puzzleConfig.connections[aFlag * 2]; var _local1 = puzzleConfig.connections[(aFlag * 2) + 1]; tmpSprite1 = sprites.items[_local2 - 1]; tmpSprite2 = sprites.items[_local1 - 1]; puzzleConfig.currentSprite1 = tmpSprite1; puzzleConfig.currentSprite2 = tmpSprite2; puzzleL_eyeOn(tmpSprite1); puzzleL_eyeOn(tmpSprite2); trace(aFlag); trace("YAYAYAYAYAYAYAYAYA"); trace((((_local2 + " / ") + _local1) + " == ") + tmpSprite1); } function setupPuzzle_S() { aCounter = -1; aShapeArray = [1, 3, 2, 4, 5, 6, 1, 4, 3, 2, 5, 6, 1, 5, 4, 3, 2, 6, 1, 2, 3, 4, 5]; var _local6 = 1; while (_local6 <= 6) { var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { if (((_local1 == 0) && (_local2 == 0)) && (_local6 == 1)) { } else { aCounter++; tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); depth = 60; aShapeName = "shapeS" + aShapeArray[aCounter]; aSprite = sprites.addSprite(new sprite((((("guffinx" + _local6) + "x") + _local2) + "y") + _local1, _local6, aShapeName, "blixA", tx, ty, depth, {r:20, g:110, b:0})); aSprite.baseScaleX = 190; aSprite.baseScaleY = 190; aSprite.flagActive = false; } _local1++; } _local2++; } _local6++; } _local6 = 0; while (_local6 <= sprites.items.length) { aSprite = sprites.items[_local6]; aSprite.x.maxSpeed = 6; aSprite.y.maxSpeed = 6; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); applyState_Alpha(aSprite, 30); aSprite.flagActive = false; _local6++; } } function puzzleS_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if (aSprite.getMoving() == true) { return(undefined); } moveSpriteToFreeSpace(aSprite, 100, 50); applyState_RGB(aSprite, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aSprite, 20, 110, 0, "GRADUAL"); } function puzzleS_sprite_stopMoving(aObj) { aFlagSolved = true; var _local3 = 1; while (_local3 <= 6) { tmpSprite = sprites.getSpriteAtXY(_local3, -25, -25); if (tmpSprite == null) { tmpSprite = sprites.getSpriteAtXY(_local3, 25, -25); } var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); aSprite = sprites.getSpriteAtXY(_local3, tx, ty); trace((("COMPARING " + tmpSprite.shapeId) + " to ") + aSprite.shapeId); if (aSprite != null) { if (aSprite.shapeId != tmpSprite.shapeId) { aFlagSolved = false; break; } } _local1++; } _local2++; } _local3++; } if (aFlagSolved == true) { handlePuzzleSolved(); } } function setupPuzzle_N() { puzzleConfig.aReds = [100, 0, 0]; puzzleConfig.aGreens = [0, 100, 0]; puzzleConfig.aBlues = [0, 0, 100]; puzzleConfig.screenColorRanges = []; puzzleConfig.screenColorRanges[1] = [0, 1, 2]; puzzleConfig.screenColorRanges[2] = [0, 1, 2]; puzzleConfig.screenColorRanges[3] = [0, 1, 2]; puzzleConfig.screenColorRanges[4] = [0, 1, 2]; puzzleConfig.screenColorRanges[5] = [0, 1, 2]; puzzleConfig.screenColorRanges[6] = [0, 1, 2]; ax = [x, 0, -20, 20]; ay = [y, -15, 20, 20]; aCounter = 0; var _local2 = 1; while (_local2 <= 6) { var _local1 = 1; while (_local1 <= 3) { aCounter++; tx = ax[_local1]; ty = ay[_local1]; depth = 10 + (_local1 * 15); aShape = "shapeN" + _local1; aSprite = sprites.addSprite(new sprite((("guffinx" + _local2) + "t") + _local1, _local2, aShape, "blixA", tx, ty, depth, {r:0, g:50, b:0})); aSprite.baseScaleX = 130; aSprite.baseScaleY = 130; aSprite.flagMoving = true; aSprite.flagNumber = aCounter; aNum = randomRange(1, 10) / 15; aNum2 = randomRange(1, 10) / 15; applyValueState_Bounce(aSprite.x, -40, 40, aNum); applyValueState_Bounce(aSprite.y, -40, 40, aNum2); aRot = randomRange(0, 360); aSprite.rotation.currentValue = aRot; aRot = 2; applyState_Rotation(aSprite, aRot, "RELATIVE"); aColorRange = puzzleConfig.screenColorRanges[aSprite.screenNumber]; aSprite.flagColor = randomRange(0, 1); aIndex = aColorRange[aSprite.flagColor]; applyState_RGB(aSprite, puzzleConfig.aReds[aIndex], puzzleConfig.aGreens[aIndex], puzzleConfig.aBlues[aIndex]); _local1++; } _local2++; } _local2 = 0; while (_local2 <= sprites.items.length) { aSprite = sprites.items[_local2]; applyState_Alpha(aSprite, 20); _local2++; } } function puzzleN_sprite_onPress(aObj) { aSprite = aObj.targetSprite; aColorRange = puzzleConfig.screenColorRanges[aSprite.screenNumber]; aSprite.flagColor = aSprite.flagColor + 1; if (aSprite.flagColor == aColorRange.length) { aSprite.flagColor = 0; } aIndex = aColorRange[aSprite.flagColor]; applyState_RGB(aSprite, puzzleConfig.aReds[aIndex], puzzleConfig.aGreens[aIndex], puzzleConfig.aBlues[aIndex]); var _local2 = 0; while (_local2 < sprites.items.length) { tmpSprite = sprites.items[_local2]; if (tmpSprite.screenNumber == aSprite.screenNumber) { tmpSprite.flagColor = tmpSprite.flagColor + 1; if (tmpSprite.flagColor == aColorRange.length) { tmpSprite.flagColor = 0; } aIndex = aColorRange[tmpSprite.flagColor]; applyState_RGB(tmpSprite, puzzleConfig.aReds[aIndex], puzzleConfig.aGreens[aIndex], puzzleConfig.aBlues[aIndex]); } _local2++; } applyState_Alpha(aSprite, 100, "IMMEDIATE"); applyState_Alpha(aSprite, 20, "GRADUAL"); _local2 = 0; while (_local2 < sprites.items.length) { tmpSprite = sprites.items[_local2]; var _local1 = 0; while (_local1 < sprites.items.length) { tmpSprite2 = sprites.items[_local1]; if (tmpSprite.shapeId == tmpSprite2.shapeId) { if (tmpSprite.flagColor != tmpSprite2.flagColor) { return(undefined); } } _local1++; } _local2++; } tmpSprite1 = sprites.items[0]; tmpSprite2 = sprites.items[1]; tmpSprite3 = sprites.items[2]; if (tmpSprite1.flagColor == tmpSprite2.flagColor) { return(undefined); } if (tmpSprite2.flagColor == tmpSprite3.flagColor) { return(undefined); } if (tmpSprite3.flagColor == tmpSprite1.flagColor) { return(undefined); } handlePuzzleSolved(); } function setupPuzzle_R() { puzzleConfig.aReds = [100, 0, 0, 50, 50, 0]; puzzleConfig.aGreens = [0, 100, 0, 0, 50, 50]; puzzleConfig.aBlues = [0, 0, 100, 50, 0, 50]; puzzleConfig.screenColorRanges = []; puzzleConfig.screenColorRanges[1] = [0, 1, 2]; puzzleConfig.screenColorRanges[2] = [1, 3, 4]; puzzleConfig.screenColorRanges[3] = [1, 3, 5]; puzzleConfig.screenColorRanges[4] = [0, 2, 4]; puzzleConfig.screenColorRanges[5] = [0, 3, 5]; puzzleConfig.screenColorRanges[6] = [2, 4, 5]; ax = [x, 0, -20, 20]; ay = [y, -15, 20, 20]; aCounter = 0; var _local2 = 1; while (_local2 <= 6) { var _local1 = 1; while (_local1 <= 3) { aColorRange = puzzleConfig.screenColorRanges[_local2]; aCounter++; tx = ax[_local1]; ty = ay[_local1]; depth = 20; aShapeNumber = aColorRange[_local1 - 1] + 1; aShape = "shapeN" + aShapeNumber; aSprite = sprites.addSprite(new sprite((("guffinx" + _local2) + "t") + _local1, _local2, aShape, "blixA", tx, ty, depth, {r:100, g:100, b:100})); aSprite.baseScaleX = 125; aSprite.baseScaleY = 125; aSprite.flagMoving = true; aSprite.flagNumber = aCounter; aNum = randomRange(1, 10) / 15; aNum2 = randomRange(1, 10) / 15; aNum3 = randomRange(1, 10) / 5; applyValueState_Bounce(aSprite.x, -40, 40, aNum); applyValueState_Bounce(aSprite.y, -40, 40, aNum2); aRot = randomRange(0, 360); aSprite.rotation.currentValue = aRot; aRot = 2; applyState_Rotation(aSprite, aRot, "RELATIVE"); aSprite.flagColor = randomRange(0, 1); aIndex = aColorRange[aSprite.flagColor]; aSprite.flagActualColor = aIndex; applyState_RGB(aSprite, puzzleConfig.aReds[aIndex], puzzleConfig.aGreens[aIndex], puzzleConfig.aBlues[aIndex]); _local1++; } _local2++; } _local2 = 0; while (_local2 <= sprites.items.length) { aSprite = sprites.items[_local2]; applyState_Alpha(aSprite, 20); _local2++; } } function puzzleR_sprite_onPress(aObj) { aSprite = aObj.targetSprite; aColorRange = puzzleConfig.screenColorRanges[aSprite.screenNumber]; aSprite.flagColor = aSprite.flagColor + 1; if (aSprite.flagColor == aColorRange.length) { aSprite.flagColor = 0; } aIndex = aColorRange[aSprite.flagColor]; aSprite.flagActualColor = aIndex; applyState_RGB(aSprite, puzzleConfig.aReds[aIndex], puzzleConfig.aGreens[aIndex], puzzleConfig.aBlues[aIndex]); var _local2 = 0; while (_local2 < sprites.items.length) { tmpSprite = sprites.items[_local2]; if (tmpSprite.screenNumber == aSprite.screenNumber) { tmpSprite.flagColor = tmpSprite.flagColor + 1; if (tmpSprite.flagColor == aColorRange.length) { tmpSprite.flagColor = 0; } aIndex = aColorRange[tmpSprite.flagColor]; tmpSprite.flagActualColor = aIndex; applyState_RGB(tmpSprite, puzzleConfig.aReds[aIndex], puzzleConfig.aGreens[aIndex], puzzleConfig.aBlues[aIndex]); } _local2++; } applyState_Alpha(aSprite, 100, "IMMEDIATE"); applyState_Alpha(aSprite, 20, "GRADUAL"); _local2 = 0; while (_local2 < sprites.items.length) { tmpSprite = sprites.items[_local2]; var _local1 = 0; while (_local1 < sprites.items.length) { tmpSprite2 = sprites.items[_local1]; trace((("COMPARING " + tmpSprite.shapeId) + " = ") + tmpSprite2.shapeId); if (tmpSprite.shapeId == tmpSprite2.shapeId) { trace((("> COLORS " + tmpSprite.flagActualColor) + " = ") + tmpSprite2.flagActualColor); if (tmpSprite.flagActualColor != tmpSprite2.flagActualColor) { trace("OH NO1"); return(undefined); } } _local1++; } _local2++; } _local2 = 0; while (_local2 <= 5) { aMark = _local2 * 3; tmpSprite1 = sprites.items[aMark + 0]; tmpSprite2 = sprites.items[aMark + 1]; tmpSprite3 = sprites.items[aMark + 2]; trace((((("COMPARING " + tmpSprite1.flagColor) + " = ") + tmpSprite2.flagColor) + " = ") + tmpSprite3.flagColor); if (tmpSprite1.flagActualColor == tmpSprite2.flagActualColor) { trace("OH NO2"); return(undefined); } if (tmpSprite2.flagActualColor == tmpSprite3.flagActualColor) { trace("OH NO3"); return(undefined); } if (tmpSprite3.flagActualColor == tmpSprite1.flagActualColor) { trace("OH NO4"); return(undefined); } _local2++; } handlePuzzleSolved(); } function setupPuzzle_O() { puzzleConfig.aDxs = [x, 2, 0, -2, 0, 2, 0]; puzzleConfig.aDys = [x, 0, -2, 0, 2, 0, -2]; var _local1 = 1; while (_local1 <= 6) { tx = 0; ty = 0; depth = (_local1 * 10) + 10; aShape = "shapeO1"; aSprite = sprites.addSprite(new sprite((((("guffinx" + _local1) + "x") + ax) + "y") + ay, _local1, aShape, "blixA", tx, ty, depth, {r:100, g:100, b:100})); aSprite.baseScaleX = 150; aSprite.baseScaleY = 150; aSprite.flagMoving = true; aSprite.flagNumber = _local1; aNum = randomRange(1, 9) / 7; aNum2 = -(randomRange(1, 9) / 7); puzzleConfig.aDxs[aSprite.flagNumber] = aNum; puzzleConfig.aDys[aSprite.flagNumber] = aNum2; puzzleO_setSpriteMoving(aSprite); applyValueState_Sin(aSprite.z, 40, 0.05, 30, _local1); _local1++; } _local1 = 0; while (_local1 <= sprites.items.length) { aSprite = sprites.items[_local1]; applyState_Alpha(aSprite, 20); _local1++; } } function puzzleO_setSpriteMoving(aSprite) { aDx = puzzleConfig.aDxs[aSprite.flagNumber]; aDy = puzzleConfig.aDys[aSprite.flagNumber]; aRotation = puzzleConfig.aRotations[aSprite.flagNumber]; applyValueState_Transfer(aSprite.x, -60, 60, aDx, "TRANSFER"); applyValueState_Transfer(aSprite.y, -60, 60, aDy, "TRANSFER"); aAngle = getAngleFromPoint(aSprite.x.changeTo, aSprite.y.changeTo); puzzleConfig.aDx[aSprite.flagNumber] = aSprite.x.changeTo; puzzleConfig.aDy[aSprite.flagNumber] = aSprite.y.changTo; applyState_Rotation(aSprite, aAngle, "GRADUAL"); } function puzzleO_sprite_onPress(aObj) { aSprite = aObj.targetSprite; applyState_Alpha(aSprite, 100, "IMMEDIATE"); applyState_Alpha(aSprite, aSprite.alpha.lastValue, "GRADUAL"); if (aSprite.flagMoving == true) { aSprite.flagMoving = false; puzzleConfig.aDxs[aSprite.flagNumber] = aSprite.x.changeTo; puzzleConfig.aDys[aSprite.flagNumber] = aSprite.y.changeTo; applyState_Orbit(aSprite, aSprite.x.currentValue, aSprite.y.currentValue, randomRange(5, 5)); applyState_Rotation(aSprite, randomRange(1, 2), "RELATIVE"); } else { aSprite.flagMoving = true; puzzleO_setSpriteMoving(aSprite); return(undefined); } var _local1 = ["x", "", "", "", "", "", ""]; i = 0; while (i <= 5) { tmpSprite = sprites.items[i]; _local1[tmpSprite.screenNumber] = _local1[tmpSprite.screenNumber] + tmpSprite.shapeId; trace((((("TESTINGG " + i) + " ") + tmpSprite.screenNumber) + " / ") + _local1[tmpSprite.screenNumber]); if (tmpSprite.flagMoving == true) { break; } i++; } if ((((((_local1[1] == "shapeO1") && (_local1[2] == "shapeO1")) && (_local1[3] == "shapeO1")) && (_local1[4] == "shapeO1")) && (_local1[5] == "shapeO1")) && (_local1[6] == "shapeO1")) { handlePuzzleSolved(); } } function setupPuzzle_P() { puzzleConfig.aDxs = []; puzzleConfig.aDys = []; puzzleConfig.aRotations = [x, 90, 0, 270, 180, 90, 0]; ax = [x, 0, -20, 20]; ay = [y, -15, 20, 20]; aCounter = 0; var _local2 = 1; while (_local2 <= 6) { var _local1 = 1; while (_local1 <= 3) { aCounter++; tx = ax[_local1]; ty = ay[_local1]; depth = (aCounter * 5) + 5; aShape = "shapeQ3"; aSprite = sprites.addSprite(new sprite((("guffinx" + _local2) + "t") + _local1, _local2, aShape, "blixA", tx, ty, depth, {r:100, g:100, b:100})); aSprite.baseScaleX = 160; aSprite.baseScaleY = 160; aSprite.flagMoving = true; aSprite.flagNumber = aCounter; aNum = randomRange(2, 9) / 7; aNum2 = -(randomRange(2, 9) / 7); puzzleConfig.aDxs[aSprite.flagNumber] = aNum; puzzleConfig.aDys[aSprite.flagNumber] = aNum2; puzzleP_setSpriteMoving(aSprite); applyValueState_Sin(aSprite.z, 40, 0.05, 30, _local2); _local1++; } _local2++; } _local2 = 0; while (_local2 <= sprites.items.length) { aSprite = sprites.items[_local2]; applyState_Alpha(aSprite, 20); _local2++; } } function puzzleP_setSpriteMoving(aSprite) { flagNumber = aSprite.flagNumber; aDx = puzzleConfig.aDxs[aSprite.flagNumber]; aDy = puzzleConfig.aDys[aSprite.flagNumber]; aRotation = puzzleConfig.aRotations[aSprite.flagNumber]; applyValueState_Transfer(aSprite.x, -60, 60, aDx, "TRANSFER"); applyValueState_Transfer(aSprite.y, -60, 60, aDy, "TRANSFER"); aAngle = getAngleFromPoint(aSprite.x.changeTo, aSprite.y.changeTo); puzzleConfig.aDx[aSprite.flagNumber] = aSprite.x.changeTo; puzzleConfig.aDy[aSprite.flagNumber] = aSprite.y.changTo; applyState_Rotation(aSprite, aAngle, "GRADUAL"); } function puzzleP_sprite_onPress(aObj) { aSprite = aObj.targetSprite; applyState_Alpha(aSprite, 100, "IMMEDIATE"); applyState_Alpha(aSprite, aSprite.alpha.lastValue, "GRADUAL"); if (aSprite.flagMoving == true) { aSprite.flagMoving = false; puzzleConfig.aDxs[aSprite.flagNumber] = aSprite.x.changeTo; puzzleConfig.aDys[aSprite.flagNumber] = aSprite.y.changeTo; applyState_Orbit(aSprite, aSprite.x.currentValue, aSprite.y.currentValue, randomRange(5, 5)); applyState_Rotation(aSprite, randomRange(1, 2), "RELATIVE"); } else { aSprite.flagMoving = true; puzzleO_setSpriteMoving(aSprite); return(undefined); } var _local1 = [x, 0, 0, 0, 0, 0, 0]; var _local2 = false; i = 0; while (i < sprites.items.length) { tmpSprite = sprites.items[i]; _local1[tmpSprite.screenNumber]++; if (tmpSprite.flagMoving == true) { _local2 = true; break; } i++; } if ((((((_local1[1] == 3) && (_local1[2] == 3)) && (_local1[3] == 3)) && (_local1[4] == 3)) && (_local1[5] == 3)) && (_local1[6] == 3)) { if (_local2 == false) { handlePuzzleSolved(); } } } function setupPuzzle_Q() { puzzleConfig.aDxs = []; puzzleConfig.aDys = []; ax = [x, 0, -5, 5]; ay = [y, -5, 5, 5]; aCounter = 0; var _local2 = 1; while (_local2 <= 6) { var _local1 = 1; while (_local1 <= 3) { aCounter++; tx = ax[_local1]; ty = ay[_local1]; depth = (aCounter * 5) + 5; aShape = "shapeQ" + _local1; aSprite = sprites.addSprite(new sprite((("guffinx" + _local2) + "t") + _local1, _local2, aShape, "blixA", tx, ty, depth, {r:100, g:100, b:100})); aSprite.baseScaleX = 140; aSprite.baseScaleY = 140; aSprite.flagMoving = true; aSprite.flagNumber = aCounter; aNum = randomRange(1, 9) / 7; aNum2 = -(randomRange(1, 9) / 7); puzzleConfig.aDxs[aSprite.flagNumber] = aNum; puzzleConfig.aDys[aSprite.flagNumber] = aNum2; puzzleQ_setSpriteMoving(aSprite); _local1++; } _local2++; } _local2 = 0; while (_local2 <= sprites.items.length) { aSprite = sprites.items[_local2]; applyState_Alpha(aSprite, 20); _local2++; } } function puzzleQ_setSpriteMoving(aSprite) { aDx = puzzleConfig.aDxs[aSprite.flagNumber]; aDy = puzzleConfig.aDys[aSprite.flagNumber]; aRotation = puzzleConfig.aRotations[aSprite.flagNumber]; applyValueState_Transfer(aSprite.x, -60, 60, aDx, "TRANSFER"); applyValueState_Transfer(aSprite.y, -60, 60, aDy, "TRANSFER"); aAngle = getAngleFromPoint(aSprite.x.changeTo, aSprite.y.changeTo); puzzleConfig.aDx[aSprite.flagNumber] = aSprite.x.changeTo; puzzleConfig.aDy[aSprite.flagNumber] = aSprite.y.changTo; applyState_Rotation(aSprite, aAngle, "GRADUAL"); } function puzzleQ_sprite_onPress(aObj) { aSprite = aObj.targetSprite; applyState_Alpha(aSprite, 100, "IMMEDIATE"); applyState_Alpha(aSprite, aSprite.alpha.lastValue, "GRADUAL"); if (aSprite.flagMoving == true) { aSprite.flagMoving = false; applyValueState_Sin(aSprite.scaleX, 100, 0.25, 5, 0); applyValueState_Sin(aSprite.scaleY, 100, 0.25, 5, 1.6); puzzleConfig.aDxs[aSprite.flagNumber] = aSprite.x.changeTo; puzzleConfig.aDys[aSprite.flagNumber] = aSprite.y.changeTo; applyState_Orbit(aSprite, aSprite.x.currentValue, aSprite.y.currentValue, randomRange(5, 5)); applyState_Rotation(aSprite, randomRange(1, 2), "RELATIVE"); } else { aSprite.flagMoving = true; puzzleQ_setSpriteMoving(aSprite); return(undefined); } var _local1 = ["x", "", "", "", "", "", ""]; i = 0; while (i < sprites.items.length) { tmpSprite = sprites.items[i]; if (tmpSprite.flagMoving == true) { return(undefined); } _local1[tmpSprite.screenNumber] = _local1[tmpSprite.screenNumber] + tmpSprite.shapeId; i++; } var i = 1; while (i <= 6) { aText = _local1[i]; trace("test 3 2 " + aText); if (((aText.indexOf("shapeQ1") > -1) && (aText.indexOf("shapeQ2") > -1)) && (aText.indexOf("shapeQ3") > -1)) { } else { return(undefined); } i++; } if ((((((_local1[1].length == 21) && (_local1[2].length == 21)) && (_local1[3].length == 21)) && (_local1[4].length == 21)) && (_local1[5].length == 21)) && (_local1[6].length == 21)) { handlePuzzleSolved(); } } function setupPuzzle_T() { aCounter = -1; aRotArray = [90, 180, 90, 270, 270]; var _local1 = 1; while (_local1 <= 5) { aCounter++; tx = 0; ty = 0; aRotation = aRotArray[aCounter]; aSprite = sprites.addSprite(new sprite("guffinx" + _local1, _local1, "shapeT1", "blixA", tx, ty, depth, {r:100, g:100, b:100})); aSprite.rotation.currentValue = aRotArray[aCounter]; _local1++; } _local1 = 0; while (_local1 <= sprites.items.length) { aSprite = sprites.items[_local1]; aSprite.x.maxSpeed = 10; aSprite.y.maxSpeed = 10; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); aSprite.baseScaleX = 600; aSprite.baseScaleY = 600; applyState_RGB(aSprite, 50, 10, 100, "IMMEDIATE"); applyState_Alpha(aSprite, 15, "IMMEDIATE"); applyValueState_Sin(aSprite.z, 10, 0.1, 10, 1.0471975511966 * _local1); aSprite.flagActive = false; _local1++; } } function puzzleT_sprite_onPress(aObj) { aSprite = aObj.targetSprite; moveSpriteToFreeSpace(aSprite, 110, 110); applyState_RGB(aSprite, 0, 0, 100, "IMMEDIATE"); applyState_RGB(aSprite, 50, 10, 100); } function puzzleT_sprite_stopMoving(aObj) { aFlagSolved = true; var _local1 = 1; while (_local1 <= 6) { tmpSprite = sprites.getSpriteAtXY(_local1, 0, 0); trace("LAL" + tmpSprite); if (tmpSprite != null) { aRot = getRangedValue(tmpSprite.rotation.currentValue, 360); tmpSprite.rotation.currentValue = aRot; if (tmpSprite.rotation.currentValue != 0) { aFlagSolved = false; } } _local1++; } if (aFlagSolved == true) { handlePuzzleSolved(); } } function setupPuzzle_U() { aCounter = -1; aRotArray = [0, 180, 270, 90, 0, 180, 270, 90, 90, 270, 180, 180, 90, 270, 270, 180, 90, 270, 0, 180, 270, 90, 0]; var _local6 = 1; while (_local6 <= 6) { var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { if (((_local1 == 0) && (_local2 == 0)) && (_local6 == 1)) { } else { aCounter++; tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); depth = 20; rot = aRotArray[aCounter]; aShapeName = "shapeS" + aShapeArray[aCounter]; aSprite = sprites.addSprite(new sprite((((("guffinx" + _local6) + "x") + _local2) + "y") + _local1, _local6, "shapeU1", "blixA", tx, ty, depth, {r:0, g:0, b:100})); aSprite.baseScaleX = 240; aSprite.baseScaleY = 240; aSprite.flagActive = false; aSprite.rotation.currentValue = aRotArray[aCounter]; } _local1++; } _local2++; } _local6++; } _local6 = 0; while (_local6 <= sprites.items.length) { aSprite = sprites.items[_local6]; aSprite.x.maxSpeed = 6; aSprite.y.maxSpeed = 6; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); applyState_RGB(aSprite, 100, 0, 0); applyState_Alpha(aSprite, 20); aSprite.flagActive = false; _local6++; } } function puzzleU_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if (aSprite.getMoving() == true) { return(undefined); } moveSpriteToFreeSpace(aSprite, 100, 50); aSprite.z.currentValue = 60; aSprite.z.changeTo = 20; aSprite.z.changeMode = "GRADUAL"; applyState_RGB(aSprite, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aSprite, 100, 0, 0, "GRADUAL"); } function puzzleU_sprite_stopMoving(aObj) { aWallSolution = [0, 270, 90, 180]; aFlagSolved = true; var _local3 = 1; while (_local3 <= 6) { aCounter = 0; var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { aRot = aWallSolution[aCounter]; aCounter++; tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); aSprite = sprites.getSpriteAtXY(_local3, tx, ty); if (aSprite != null) { aSprite.rotation.currentValue = getRangedValue(aSprite.rotation.currentValue, 360); if (aSprite.rotation.currentValue != aRot) { aFlagSolved = false; break; } } _local1++; } _local2++; } _local3++; } if (aFlagSolved == true) { handlePuzzleSolved(); } } function setupPuzzle_V() { aCounter = -1; aRotArray = [90, 0, 270, 0, 270, 270, 90, 90, 0, 270, 180, 90, 180, 0, 180, 0, 0, 0, 0, 90, 0, 0, 270]; aShapeArray = [4, 5, 2, 6, 4, 5, 2, 1, 6, 3, 6, 4, 3, 6, 1, 3, 3, 2, 5, 4, 2, 1, 5]; aWallSolution = [0, 270, 90, 180]; var _local6 = 1; while (_local6 <= 6) { var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { if (((_local1 == 0) && (_local2 == 0)) && (_local6 == 1)) { } else { aCounter++; tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); depth = 20; rot = aRotArray[aCounter]; aShapeName = "shapeV" + aShapeArray[aCounter]; aSprite = sprites.addSprite(new sprite((((("guffinx" + _local6) + "x") + _local2) + "y") + _local1, _local6, aShapeName, "blixA", tx, ty, depth, {r:100, g:100, b:100})); aSprite.baseScaleX = 240; aSprite.baseScaleY = 240; aSprite.flagActive = false; aSprite.rotation.currentValue = rot; } _local1++; } _local2++; } _local6++; } _local6 = 0; while (_local6 <= sprites.items.length) { aSprite = sprites.items[_local6]; aSprite.x.maxSpeed = 6; aSprite.y.maxSpeed = 6; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); applyState_RGB(aSprite, 100, 0, 0); applyState_Alpha(aSprite, 20); aSprite.flagActive = false; _local6++; } } function puzzleV_sprite_onPress(aObj) { aSprite = aObj.targetSprite; if (aSprite.getMoving() == true) { return(undefined); } moveSpriteToFreeSpace(aSprite, 100, 50); aSprite.z.currentValue = 25; aSprite.z.changeTo = 20; aSprite.z.changeMode = "GRADUAL"; applyState_RGB(aSprite, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aSprite, 100, 0, 0, "GRADUAL"); } function puzzleV_sprite_stopMoving(aObj) { aFlagSolved = true; aWallSolution = [0, 270, 90, 180]; var _local3 = 1; while (_local3 <= 6) { aCounter = 0; var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { aRot = aWallSolution[aCounter]; aCounter++; tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); aSprite = sprites.getSpriteAtXY(_local3, tx, ty); if (aSprite != null) { aSprite.rotation.currentValue = getRangedValue(aSprite.rotation.currentValue, 360); if (aSprite.rotation.currentValue != aRot) { return(undefined); } } _local1++; } _local2++; } _local3++; } aFlagSolved = true; _local3 = 1; while (_local3 <= 6) { tmpSprite = sprites.getSpriteAtXY(_local3, -25, -25); if (tmpSprite == null) { tmpSprite = sprites.getSpriteAtXY(_local3, 25, -25); } var _local2 = 0; while (_local2 <= 1) { var _local1 = 0; while (_local1 <= 1) { tx = -25 + (50 * _local2); ty = -25 + (50 * _local1); aSprite = sprites.getSpriteAtXY(_local3, tx, ty); trace((("COMPARING " + tmpSprite.shapeId) + " to ") + aSprite.shapeId); if (aSprite != null) { if (aSprite.shapeId != tmpSprite.shapeId) { return(undefined); } } _local1++; } _local2++; } _local3++; } handlePuzzleSolved(); } function setupPuzzle_Z() { var _local4 = [-1, 0, 0, 0, 0, 0, 0]; var _local3 = [-1, 0, 0, 0, 0, 0, 0]; var _local6 = 0; var _local11 = ["NULL", "GREEN", "RED", "YELLOW", "BLUE", "CYAN", "MAGENTA"]; var _local2 = 1; while (_local2 <= 6) { aPlanet = allPlanets[_local2]; var _local5 = projectors[_local2].doUpdate(); aRoom = rooms[projectors[_local2].roomNumber]; if ((aRoom.solved == true) && (_local5 == _local11[_local2])) { _local4[_local2] = "shapeZ3"; _local3[_local2] = "shapeZ4"; _local6++; } else { _local4[_local2] = "shapeZ2"; _local3[_local2] = "shapeZ1"; } _local2++; } var _local12 = [-1, 0, 100, 100, 0, 0, 100]; var _local13 = [-1, 100, 0, 100, 0, 100, 0]; var _local10 = [-1, 0, 0, 0, 100, 100, 100]; var _local15 = [33, 2, 2, -1.2, 0, -1.3, -2]; var _local14 = [33, 0, -2, 0, 1, 0, 0]; _local2 = 1; while (_local2 <= 6) { x = 0; y = 0; depth = randomRange(50, 100); shape = _local4[_local2]; aSprite = sprites.addSprite(new sprite("planet" + _local2, _local2, shape, "blixA", x, y, depth, {r:100, g:100, b:100})); aNum = _local15[_local2] * 2; aNum2 = _local14[_local2] * 2; applyValueState_Transfer(aSprite.x, -60, 60, aNum, "TRANSFER"); applyValueState_Transfer(aSprite.y, -60, 60, aNum2, "TRANSFER"); red = _local12[_local2]; grn = _local13[_local2]; blu = _local10[_local2]; applyState_RGB(aSprite, red, grn, blu); applyState_Alpha(aSprite, 15); aSprite.baseScaleX = 140; aSprite.baseScaleY = 140; _local2++; } _local2 = 1; while (_local2 <= 6) { shape = _local3[_local2]; aSprite = sprites.addSprite(new sprite("sun" + _local2, 1, shape, "blixA", 0, 0, -(_local2 * 2), {r:100, g:100, b:100})); if (shape == "shapeZ4") { aSprite.z.changeTo = 300 - (Math.pow(_local2, 1.7) * 27); aSprite.z.changeMode = "GRADUAL"; alpha = 10 + ((_local2 / 6) * 20); applyState_Alpha(aSprite, alpha); } else { applyState_Alpha(aSprite, 100); } maxRadius = 3; radius = maxRadius - ((_local2 / 6) * maxRadius); applyState_Orbit(aSprite, 0, 0, radius, 0.1, 1.0471975511966 * _local2); applyState_RGB(aSprite, 100, 100, 100); applyValueState_Sin(aSprite.rotation, _local2 * 60, 0.05, 100, _local2 * 0.5); applyValueState_Sin(aSprite.scaleX, 100, 0.08, 14, _local2 * 0.5); applyValueState_Sin(aSprite.scaleY, 100, 0.06, 14, _local2 * 0.5); aSprite.baseScaleX = 220; aSprite.baseScaleY = 220; _local2++; } if (_local6 == 6) { _local2 = 1; while (_local2 <= 6) { aSprite = sprites.getSprite("sun" + _local2); _local2++; } } _local2 = 1; while (_local2 <= 6) { clip = _root.i3dStage["obj" + _local2].mc.texture.iPuzzleHolderBackground.puzzle; clip.iZDoor._visible = false; if ((_local2 == 1) && (_local6 == 6)) { clip.iZDoor._visible = true; } _local2++; } } function puzzleZ_sprite_onPress(aObj) { aSprite = aObj.targetSprite; screenNumber = aSprite.screenNumber; } function setupPuzzle_HINT() { aRoom = rooms[currentRoomNumber]; var _local1 = 1; while (_local1 <= 6) { if ((aRoom.walls[_local1].textureName.indexOf("Door") > -1) || (aRoom.walls[_local1].textureName.indexOf("Spyhole") > -1)) { aCoordsBeyond = getCoordsFromDirection(currentRoom, _local1); aRoomNumberBeyond = getRoomNumber(aCoordsBeyond); aRoomBeyond = rooms[aRoomNumberBeyond]; aSprite1 = sprites.addSprite(new sprite("guffinx1" + _local1, _local1, "shapeHINT1", "blixA", 0, 0, 0, {r:100, g:0, b:0})); aSprite2 = sprites.addSprite(new sprite("guffinx2" + _local1, _local1, "shapeHINT1", "blixA", 0, 0, 0, {r:0, g:100, b:0})); aSprite3 = sprites.addSprite(new sprite("guffinx3" + _local1, _local1, "shapeHINT1", "blixA", 0, 0, 0, {r:0, g:0, b:100})); aSprite1.targetObject.shape.gotoAndStop(aCoordsBeyond.x); aSprite2.targetObject.shape.gotoAndStop(aCoordsBeyond.y); aSprite3.targetObject.shape.gotoAndStop(aCoordsBeyond.z); aSprite1.rotation.currentValue = 0; aSprite2.rotation.currentValue = 120; aSprite3.rotation.currentValue = 240; applyState_Rotation(aSprite1, -2); applyState_Rotation(aSprite2, -2); applyState_Rotation(aSprite3, -2); applyState_Alpha(aSprite1, 30); applyState_Alpha(aSprite2, 30); applyState_Alpha(aSprite3, 30); aSprite1.baseScaleX = 140; aSprite1.baseScaleY = 140; aSprite2.baseScaleX = 140; aSprite2.baseScaleY = 140; aSprite3.baseScaleX = 140; aSprite3.baseScaleY = 140; var _local3 = true; if (currentRoomNumber == 13) { var _local4 = ["NULL", "GREEN", "RED", "YELLOW", "BLUE", "CYAN", "MAGENTA"]; _local1 = 1; while (_local1 <= 6) { aPlanet = allPlanets[_local1]; var _local2 = projectors[_local1].doUpdate(); aRoom = rooms[projectors[_local1].roomNumber]; if ((aRoom.solved == true) && (_local2 == _local4[_local1])) { } else { _local3 = false; } _local1++; } } if ((aRoomBeyond.solved == false) || (_local3 == false)) { aSprite4 = sprites.addSprite(new sprite("guffinx4" + _local1, _local1, "shapeHINTUNSOLVED", "blixA", 0, 0, 40, {r:100, g:0, b:100})); } else { aSprite4 = sprites.addSprite(new sprite("guffinx4" + _local1, _local1, "shapeHINTSOLVED", "blixA", 0, 0, 40, {r:100, g:0, b:100})); } aSprite4.baseScaleX = 140; aSprite4.baseScaleY = 140; setTintCoords(aSprite4.targetObject, aCoordsBeyond); applyState_Rotation(aSprite4, 1); applyState_Alpha(aSprite4, 20); } else { aSprite1 = sprites.addSprite(new sprite("guffinx1" + _local1, _local1, "shapeHINTARROWS", "blixA", 0, 0, 0, {r:100, g:0, b:100})); aSprite1.baseScaleX = 140; aSprite1.baseScaleY = 140; applyState_Alpha(aSprite1, 30); if (((_local1 == 2) || (_local1 == 3)) || (_local1 == 5)) { aSprite1.baseScaleY = -140; } } _local1++; } } function setupPuzzle_W() { var _local4 = [0, 1, 4, 5, 6, 2, 3]; puzzleConfig.reds = [100, 204, 204, 0, 204, 0]; puzzleConfig.grns = [100, 0, 204, 153, 0, 31]; puzzleConfig.blus = [100, 0, 0, 31, 153, 204]; i = 1; while (i <= 6) { var _local3 = _root.i3dStage["obj" + i].mc.texture.iPuzzleHolderBackground; _local3.puzzle.gotoAndStop(_local4[i]); i++; } cz = -35; d1 = 15; d2 = 6; z1 = 90; z2 = 15; grow = 1.22; growz = 1.2; d1 = d1 * grow; d2 = d2 * grow; z1 = z1 * growz; z2 = z2 * growz; i = 1; aSprite = sprites.addSprite(new sprite("guffinS1x1", i, "shapeW1", "blixW2", -d1, d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS1x2", i, "shapeW1", "blixW2", d1, -d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS1x3", i, "shapeW1", "blixW2", -d2, d2, cz - z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS1x4", i, "shapeW1", "blixW2", d2, -d2, cz + z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS1x5", i, "shapeW1", "blixW2", -d1, d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS1x6", i, "shapeW1", "blixW2", d1, d1, cz + z1, {r:50, g:0, b:0})); i = 2; aSprite = sprites.addSprite(new sprite("guffinS2x1", i, "shapeW1", "blixW2", -d1, d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS2x2", i, "shapeW1", "blixW2", -d1, -d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS2x3", i, "shapeW1", "blixW2", -d2, d2, cz + z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS2x4", i, "shapeW1", "blixW2", d2, -d2, cz - z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS2x5", i, "shapeW1", "blixW2", d1, d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS2x6", i, "shapeW1", "blixW2", d1, d1, cz - z1, {r:50, g:0, b:0})); i = 3; aSprite = sprites.addSprite(new sprite("guffinS3x1", i, "shapeW1", "blixW2", d1, d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS3x2", i, "shapeW1", "blixW2", -d1, -d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS3x3", i, "shapeW1", "blixW2", d2, d2, cz + z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS3x4", i, "shapeW1", "blixW2", -d2, -d2, cz - z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS3x5", i, "shapeW1", "blixW2", d1, d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS3x6", i, "shapeW1", "blixW2", -d1, d1, cz - z1, {r:50, g:0, b:0})); i = 4; aSprite = sprites.addSprite(new sprite("guffinS4x1", i, "shapeW1", "blixW2", d1, d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS4x2", i, "shapeW1", "blixW2", d1, -d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS4x3", i, "shapeW1", "blixW2", d2, d2, cz - z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS4x4", i, "shapeW1", "blixW2", -d2, -d2, cz + z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS4x5", i, "shapeW1", "blixW2", -d1, d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS4x6", i, "shapeW1", "blixW2", -d1, d1, cz + z1, {r:50, g:0, b:0})); i = 5; aSprite = sprites.addSprite(new sprite("guffinS5x1", i, "shapeW1", "blixW2", d1, -d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS5x2", i, "shapeW1", "blixW2", -d1, -d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS5x3", i, "shapeW1", "blixW2", d2, -d2, cz + z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS5x4", i, "shapeW1", "blixW2", -d2, d2, cz - z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS5x5", i, "shapeW1", "blixW2", d1, d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS5x6", i, "shapeW1", "blixW2", -d1, d1, cz + z1, {r:50, g:0, b:0})); i = 6; aSprite = sprites.addSprite(new sprite("guffinS6x1", i, "shapeW1", "blixW2", -d1, -d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS6x2", i, "shapeW1", "blixW2", d1, -d1, cz + z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS6x3", i, "shapeW1", "blixW2", -d2, -d2, cz - z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS6x4", i, "shapeW1", "blixW2", d2, d2, cz + z2, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS6x5", i, "shapeW1", "blixW2", -d1, d1, cz - z1, {r:50, g:0, b:0})); aSprite = sprites.addSprite(new sprite("guffinS6x6", i, "shapeW1", "blixW2", d1, d1, cz - z1, {r:50, g:0, b:0})); var _local2 = -1; i = 0; while (i <= sprites.items.length) { aSprite = sprites.items[i]; applyState_Alpha(aSprite, 45, "IMMEDIATE"); _local2 = _local2 + 1; if (_local2 > 4) { _local2 = 0; } _local2 = 5; aRed = puzzleConfig.reds[_local2]; aGrn = puzzleConfig.grns[_local2]; aBlu = puzzleConfig.blus[_local2]; applyState_RGB(aSprite, aRed, aGrn, aBlu); aSprite.baseScaleX = 160; aSprite.baseScaleY = 160; aSprite.flagColor = _local2; i++; } } function puzzleW_sprite_onPress(aObj) { aSprite = aObj.targetSprite; screenNumber = aSprite.screenNumber; colorCounter = aSprite.flagColor; colorCounter++; if (colorCounter > 5) { colorCounter = 0; } aRed = puzzleConfig.reds[colorCounter]; aGrn = puzzleConfig.grns[colorCounter]; aBlu = puzzleConfig.blus[colorCounter]; applyState_RGB(aSprite, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aSprite, aRed, aGrn, aBlu); aSprite.flagColor = colorCounter; aSprite.scaleX.currentValue = 200; aSprite.scaleX.changeTo = 100; aSprite.scaleX.maxSpeed = 10; aSprite.scaleX.changeMode = "GRADUAL"; var _local2 = []; i = 0; while (i <= sprites.items.length) { _local2[i] = sprites.items[i].flagColor; i++; } var i = 1; while (i <= 6) { aName = "guffinS1x" + i; aSprite = sprites.getSprite(aName); var _local1 = 2; while (_local1 <= 6) { aName = (("guffinS" + _local1) + "x") + i; tmpSprite = sprites.getSprite(aName); trace((((i + " does ") + aSprite.flagColor) + " == ") + tmpSprite.flagColor); if (tmpSprite.flagColor != aSprite.flagColor) { return(undefined); } _local1++; } i++; } var _local3 = [false, false, false, false, false, false]; i = 0; while (i <= _local2.length) { _local3[_local2[i]] = true; i++; } i = 0; while (i <= 5) { trace(((_local3[i] + " ") + i) + " is used"); if (_local3[i] == false) { return(undefined); } i++; } handlePuzzleSolved(); } function setupPuzzle_X() { puzzleConfig.currentSprite = []; puzzleConfig.correctSprite = [-1, 2, 3, 1, 5, 4, 6]; puzzleConfig.reds = [0, 100, 0, 0, 100]; puzzleConfig.grns = [0, 0, 100, 0, 50]; puzzleConfig.blus = [0, 0, 0, 100, 0]; puzzleConfig.winningCombination = [2, 1, 3, 4]; puzzleConfig.wallCombinations = []; i = 1; while (i <= 6) { puzzleConfig.wallCombinations[i] = [1, 2, 3, 4]; i++; } var i = 1; while (i <= 6) { var _local1 = 1; while (_local1 <= 4) { aSprite = sprites.addSprite(new sprite((("guffinScreen" + i) + "Quad") + _local1, i, "shapeX1", "blixA", 0, 0, 40, {r:100, g:100, b:100}, 20, 100, 100)); aSprite.flagQuadrant = _local1; aRot = (_local1 - 1) * 90; applyState_Rotation(aSprite, aRot, "IMMEDIATE"); aSprite.baseScaleX = 650; aSprite.baseScaleY = 650; applyState_Alpha(aSprite, 25, "IMMEDIATE"); aCombo = puzzleConfig.wallCombinations[i]; aColor1 = aCombo[aSprite.flagQuadrant - 1]; applyState_RGB(aSprite, puzzleConfig.reds[aColor1], puzzleConfig.grns[aColor1], puzzleConfig.blus[aColor1]); _local1++; } i++; } } function puzzleX_sprite_onPress(aObj) { aSprite = aObj.targetSprite; screenNumber = aSprite.screenNumber; aQuad = aSprite.flagQuadrant; aTargetQuad = aQuad + 1; if (aTargetQuad > 4) { aTargetQuad = 1; } aTargetSprite = sprites.items[((screenNumber - 1) * 4) + (aTargetQuad - 1)]; aCombo = puzzleConfig.wallCombinations[screenNumber]; aColor1 = aCombo[aSprite.flagQuadrant - 1]; aColor2 = aCombo[aTargetQuad - 1]; aCombo[aSprite.flagQuadrant - 1] = aColor2; aCombo[aTargetQuad - 1] = aColor1; applyState_RGB(aSprite, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aTargetSprite, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aSprite, puzzleConfig.reds[aColor2], puzzleConfig.grns[aColor2], puzzleConfig.blus[aColor2]); applyState_RGB(aTargetSprite, puzzleConfig.reds[aColor1], puzzleConfig.grns[aColor1], puzzleConfig.blus[aColor1]); if (puzzleConfig.wallCombinations[1][0] != puzzleConfig.wallCombinations[5][0]) { return(undefined); } if (puzzleConfig.wallCombinations[1][1] != puzzleConfig.wallCombinations[2][3]) { return(undefined); } if (puzzleConfig.wallCombinations[1][2] != puzzleConfig.wallCombinations[6][0]) { return(undefined); } if (puzzleConfig.wallCombinations[1][3] != puzzleConfig.wallCombinations[4][1]) { return(undefined); } if (puzzleConfig.wallCombinations[2][0] != puzzleConfig.wallCombinations[5][3]) { return(undefined); } if (puzzleConfig.wallCombinations[2][1] != puzzleConfig.wallCombinations[3][3]) { return(undefined); } if (puzzleConfig.wallCombinations[2][2] != puzzleConfig.wallCombinations[6][1]) { return(undefined); } if (puzzleConfig.wallCombinations[3][0] != puzzleConfig.wallCombinations[5][2]) { return(undefined); } if (puzzleConfig.wallCombinations[3][1] != puzzleConfig.wallCombinations[4][3]) { return(undefined); } if (puzzleConfig.wallCombinations[3][2] != puzzleConfig.wallCombinations[6][2]) { return(undefined); } if (puzzleConfig.wallCombinations[4][0] != puzzleConfig.wallCombinations[5][1]) { return(undefined); } if (puzzleConfig.wallCombinations[4][2] != puzzleConfig.wallCombinations[6][3]) { return(undefined); } handlePuzzleSolved(); } function setupPuzzle_Y() { puzzleConfig.rotations = [-1, 180, 90, 270, 0, 90, 0]; var _local1 = 1; while (_local1 <= 6) { aSprite1 = sprites.addSprite(new sprite(("guffinScreen" + _local1) + "shape1", _local1, "shapeY1", "blixA", 0, 0, 40, {r:100, g:100, b:100})); aSprite1.baseScaleX = 720; aSprite1.baseScaleY = 720; aSprite2 = sprites.addSprite(new sprite(("guffinScreen" + _local1) + "shape2", _local1, "shapeY2", "blixA", 0, 0, 40, {r:100, g:100, b:100})); aSprite2.baseScaleX = 720; aSprite2.baseScaleY = 720; applyState_Alpha(aSprite1, 20, "IMMEDIATE"); applyState_Alpha(aSprite2, 20, "IMMEDIATE"); aSprite1.rotation.currentValue = puzzleConfig.rotations[_local1]; aSprite2.rotation.currentValue = puzzleConfig.rotations[_local1]; if (((_local1 == 1) || (_local1 == 4)) || (_local1 == 6)) { applyState_RGB(aSprite1, 100, 50, 0); applyState_RGB(aSprite2, 50, 0, 100); aSprite.z.currentValue = 50; } else { applyState_RGB(aSprite2, 100, 50, 0); applyState_RGB(aSprite1, 50, 0, 100); aSprite.z.currentValue = 50; } _local1++; } } function puzzleY_sprite_onPress(aObj) { aSprite = aObj.targetSprite; screenNumber = aSprite.screenNumber; if ((aSprite.rotation.currentValue / 90) != int(aSprite.rotation.currentValue / 90)) { return(undefined); } aSprite1 = sprites.getSprite(("guffinScreen" + screenNumber) + "shape1"); aSprite2 = sprites.getSprite(("guffinScreen" + screenNumber) + "shape2"); applyState_RGB(aSprite1, 100, 100, 100, "IMMEDIATE"); applyState_RGB(aSprite2, 100, 100, 100, "IMMEDIATE"); aRot = puzzleConfig.rotations[screenNumber]; aRot = aRot - 90; if (aRot < 0) { aRot = 270; aSprite1.rotation.currentValue = 360; aSprite2.rotation.currentValue = 360; } puzzleConfig.rotations[screenNumber] = aRot; aSprite1.rotation.changeTo = aRot; aSprite1.rotation.changeMode = "GRADUAL"; aSprite1.rotation.maxSpeed = 9; aSprite2.rotation.changeTo = aRot; aSprite2.rotation.changeMode = "GRADUAL"; aSprite2.rotation.maxSpeed = 9; i = screenNumber; if (((i == 1) || (i == 4)) || (i == 6)) { applyState_RGB(aSprite1, 100, 50, 0); applyState_RGB(aSprite2, 50, 0, 100); } else { applyState_RGB(aSprite2, 100, 50, 0); applyState_RGB(aSprite1, 50, 0, 100); } if (puzzleConfig.rotations[1] != 0) { return(undefined); } if (puzzleConfig.rotations[2] != 180) { return(undefined); } if (puzzleConfig.rotations[3] != 90) { return(undefined); } if (puzzleConfig.rotations[4] != 270) { return(undefined); } if (puzzleConfig.rotations[5] != 0) { return(undefined); } if (puzzleConfig.rotations[6] != 90) { return(undefined); } handlePuzzleSolved(); } function setupPuzzle_G() { var _local3 = [0, 1, 4, 5, 6, 2, 3]; puzzleConfig.reds = [204, 204, 0, 204, 0]; puzzleConfig.grns = [0, 204, 153, 0, 31]; puzzleConfig.blus = [0, 0, 31, 153, 204]; i = 1; while (i <= 6) { var _local2 = _root.i3dStage["obj" + i].mc.texture.iPuzzleHolderBackground; _local2.puzzle.gotoAndStop(_local3[i]); i++; } dx = 17; dy = 17; i = 1; aSprite = sprites.addSprite(new sprite("guffin0", i, "shapeG1", "blixA", -dx, -dy, 35, {r:100, g:100, b:100})); aSprite = sprites.addSprite(new sprite("guffin1", i, "shapeG4", "blixA", dx, -dy, 35, {r:100, g:100, b:100})); i = 2; aSprite = sprites.addSprite(new sprite("guffin2", i, "shapeG1", "blixA", -dx, -dy, 35, {r:100, g:100, b:100})); aSprite = sprites.addSprite(new sprite("guffin3", i, "shapeG1", "blixA", dx, -dy, 35, {r:100, g:100, b:100})); aSprite = sprites.addSprite(new sprite("guffin4", i, "shapeG3", "blixA", -dx, dy, 35, {r:100, g:100, b:100})); aSprite.rotation.currentValue = 270; i = 3; aSprite = sprites.addSprite(new sprite("guffin5", i, "shapeG1", "blixA", -dx, -dy, 35, {r:100, g:100, b:100})); aSprite = sprites.addSprite(new sprite("guffin6", i, "shapeG1", "blixA", dx, -dy, 35, {r:100, g:100, b:100})); aSprite = sprites.addSprite(new sprite("guffin7", i, "shapeG1", "blixA", dx, dy, 35, {r:100, g:100, b:100})); i = 4; aSprite = sprites.addSprite(new sprite("guffin8", i, "shapeG2", "blixA", 0, -dy, 35, {r:100, g:100, b:100})); aSprite.rotation.currentValue = 270; aSprite = sprites.addSprite(new sprite("guffin9", i, "shapeG2", "blixA", 0, dy, 35, {r:100, g:100, b:100})); aSprite.rotation.currentValue = 270; i = 5; aSprite = sprites.addSprite(new sprite("guffin10", i, "shapeG3", "blixA", -dx, -dy, 35, {r:100, g:100, b:100})); aSprite = sprites.addSprite(new sprite("guffin11", i, "shapeG2", "blixA", dx, 0, 35, {r:100, g:100, b:100})); i = 6; aSprite = sprites.addSprite(new sprite("guffin12", i, "shapeG1", "blixA", dx, -dy, 35, {r:100, g:100, b:100})); aSprite = sprites.addSprite(new sprite("guffin13", i, "shapeG5", "blixA", -dx, 0, 35, {r:100, g:100, b:100})); colorCounter = -1; var i = 0; while (i <= sprites.items.length) { aSprite = sprites.items[i]; colorCounter++; if (colorCounter > 4) { colorCounter = 0; } aSprite.flagColor = colorCounter; aSprite.baseScaleX = 450; aSprite.baseScaleY = 450; applyState_Orbit(aSprite, aSprite.x.currentValue, aSprite.y.currentValue, 0.4, 0.07, (Math.PI/2) * i); applyState_Alpha(aSprite, 25); applyState_RGB(aSprite, puzzleConfig.reds[colorCounter], puzzleConfig.grns[colorCounter], puzzleConfig.blus[colorCounter]); aSprite.r.maxSpeed = 22; aSprite.g.maxSpeed = 22; aSprite.b.maxSpeed = 22; i++; } } function puzzleG_sprite_onPress(aObj) { aSprite = aObj.targetSprite; aSprite.flagColor++; if (aSprite.flagColor > 4) { aSprite.flagColor = 0; } aRed = puzzleConfig.reds[aSprite.flagColor]; aGreen = puzzleConfig.grns[aSprite.flagColor]; aBlue = puzzleConfig.blus[aSprite.flagColor]; applyState_RGB(aSprite, aRed, aGreen, aBlue); var _local1 = []; i = 0; while (i <= 13) { _local1[i] = sprites.items[i].flagColor; i++; } if (_local1[1] != _local1[5]) { return(undefined); } if (_local1[5] != _local1[8]) { return(undefined); } if (_local1[8] != _local1[10]) { return(undefined); } if (_local1[0] != _local1[6]) { return(undefined); } if (_local1[6] != _local1[3]) { return(undefined); } if (_local1[7] != _local1[12]) { return(undefined); } if (_local1[12] != _local1[2]) { return(undefined); } if (_local1[11] != _local1[13]) { return(undefined); } if (_local1[13] != _local1[9]) { return(undefined); } var _local2 = [false, false, false, false, false]; i = 0; while (i <= 13) { _local2[_local1[i]] = true; i++; } i = 0; while (i <= 5) { if (_local2[i] == false) { return(undefined); } i++; } handlePuzzleSolved(); } function setupPuzzle_D() { var _local5 = [0, -7, 7, -14, 0, 14]; var _local4 = [-14, 0, 0, 14, 14, 14]; var _local6 = [85, 70, 100, 55, 40, 25]; puzzleConfig.currentSprite = [-1, null, null, null, null, null, null]; puzzleConfig.correctSprite = [-1, 1, 3, 5, 2, 4, 6]; i = 1; while (i <= 6) { ii = 1; while (ii <= 6) { scale = 1.2; x = _local5[ii - 1] * scale; y = _local4[ii - 1] * scale; depth = -10 + (ii * 10); aSprite = sprites.addSprite(new sprite((("guffinS" + i) + "x") + ii, i, "shapeD1", "blixA", x, y, depth, {r:100, g:100, b:100})); aSprite.flagZ = depth; aSprite.flagNumber = ii; aSprite.z.maxSpeed = 7; applyState_Alpha(aSprite, 20); applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 2, 0.1, 1.0471975511966 * ii); aSprite.baseScaleX = 85; aSprite.baseScaleY = 85; if (((ii == 1) || (ii == 3)) || (ii == 5)) { applyState_Rotation(aSprite, 2, "RELATIVE"); } else { applyState_Rotation(aSprite, -2, "RELATIVE"); } if (puzzleConfig.correctSprite[i] == ii) { aSprite.rotation.changeTo = -aSprite.rotation.changeTo; } ii++; } i++; } } function puzzleD_sprite_onPress(aObj) { screenNumber = aObj.targetSprite.screenNumber; aSprite = aObj.targetSprite; aSprite = puzzleConfig.currentSprite[screenNumber]; aSprite.z.changeTo = aSprite.flagZ; applyState_RGB(aSprite, 100, 100, 100); aSprite.rotation.changeTo = aSprite.rotation.changeTo / 2; applyState_Alpha(aSprite, 20, "GRADUAL"); aSprite = aObj.targetSprite; puzzleConfig.currentSprite[screenNumber] = aSprite; applyState_Active(aSprite, -30); applyState_RGB(aSprite, 20, 80, 0); aSprite.rotation.changeTo = aSprite.rotation.changeTo * 2; applyState_Alpha(aSprite, 100, "GRADUAL"); i = 1; while (i <= 6) { tmpSprite = puzzleConfig.currentSprite[i]; if (tmpSprite.flagNumber != puzzleConfig.correctSprite[i]) { return(undefined); } i++; } handlePuzzleSolved(); } function setupPuzzle_H() { puzzleConfig.reds = [-1, 0, 0, 100, 100, 0, 100]; puzzleConfig.grns = [-1, 100, 0, 0, 100, 100, 0]; puzzleConfig.blus = [-1, 100, 100, 0, 0, 0, 100]; aCounter = 0; var _local2 = 1; while (_local2 <= 6) { var _local1 = 1; while (_local1 <= 4) { aCounter++; x = 0; y = 0; depth = 0; if (_local1 == 1) { shape = "shapeH2"; } else { shape = "shapeH1"; } id = (("guffinS" + _local2) + "X") + _local1; trace("HERE " + sprites.items.length); aSprite = sprites.addSprite(new sprite(id, _local2, shape, "blixA", x, y, depth, {r:100, g:100, b:100})); aSprite.flagActive = false; applyState_Alpha(aSprite, 15); aSprite.z.maxSpeed = 12; aSprite.baseScaleX = 20 + (_local1 * 40); aSprite.baseScaleY = 20 + (_local1 * 40); _local1++; } _local2++; } } function puzzleH_sprite_onPress(aObj) { aSprite = aObj.targetSprite; screenNumber = aSprite.screenNumber; if (aSprite.flagActive == true) { return(undefined); } i = 1; while (i <= 4) { id = (("guffinS" + screenNumber) + "X") + i; tmpSprite = sprites.getSprite(id); tmpSprite.flagActive = true; tmpSprite.z.changeTo = 0 + (Math.pow(6 - i, 1.5) * 23); tmpSprite.z.changeMode = "GRADUAL"; red = puzzleConfig.reds[screenNumber]; grn = puzzleConfig.grns[screenNumber]; blu = puzzleConfig.blus[screenNumber]; applyState_RGB(tmpSprite, red, grn, blu); applyValueState_Sin(tmpSprite.rotation, 0, 0.06, (5 - i) * 19); alpha = 7 + ((i / 5) * 20); applyState_Alpha(tmpSprite, alpha); aObj = _root.i3dStage["obj" + screenNumber].mc.texture; clip = aObj.iPuzzleHolderBackground; maxRadius = 3; radius = maxRadius - ((i / 6) * maxRadius); _root.setTintRGB(clip, red, grn, blu, "GRADUAL"); i++; } var i = 0; while (i < sprites.items.length) { tmpSprite = sprites.items[i]; if (tmpSprite.flagActive == false) { return(undefined); } i++; } handlePuzzleSolved(); } function sprite(aId, aScreenNumber, shapeId, blixId, ax, ay, az, aColorObj, aRotation, aScaleX, aScaleY) { if (!aRotation) { aRotation = 0; } if (!aScaleX) { aScaleX = 100; } if (!aScaleY) { aScaleY = 100; } this.id = aId; this.shapeId = shapeId; this.blixId = blixId; this.init = false; this.spriteNumber = 0; this.screenNumber = aScreenNumber; this.visible = true; this.active = true; this.counter1 = 1; this.colorObject = aColorObj; this.r = new spriteDemon(aColorObj.r, "NONE"); this.g = new spriteDemon(aColorObj.g, "NONE"); this.b = new spriteDemon(aColorObj.b, "NONE"); this.x = new spriteDemon(ax, "NONE"); this.x.demonName = "x"; this.y = new spriteDemon(ay, "NONE"); this.y.demonName = "y"; this.z = new spriteDemon(az, "NONE"); this.x.maxSpeed = 2; this.y.maxSpeed = 2; this.alpha = new spriteDemon(60, "NONE"); this.rotation = new spriteDemon(aRotation, "NONE"); this.scaleX = new spriteDemon(100, "NONE"); this.scaleY = new spriteDemon(100, "NONE"); this.baseScaleX = aScaleX; this.baseScaleY = aScaleY; this.init = function () { if (this.initialized == true) { trace((("REMOVING from " + this.targetObject._parent) + " ... ") + this.id); this.targetObject.removeMovieClip(); this.targetShadow.removeMovieClip(); } this.parentObject = _root.i3dStage["obj" + (this.screenNumber + 7)].mc.texture.iPuzzleHolder; this.targetObject = this.parentObject.attachMovie("objSprite", this.id, this.parentObject.getNextHighestDepth()); this.targetObject.targetSprite = this; this.targetObject.attachMovie(this.shapeId, "shape", 1); this.targetObject.attachMovie(this.blixId, "blix", 2); this.targetObject.blix._xscale = this.targetObject.shape._xscale; this.targetObject.blix._yscale = this.targetObject.shape._yscale; this.targetObject.blix.setMask(this.targetObject.shape); shadowParent = _root.i3dStage["obj" + this.screenNumber].mc.texture.iPuzzleHolderBackground.iDummy; this.targetShadow = shadowParent.attachMovie(this.shapeId, this.id, shadowParent.getNextHighestDepth()); this.targetShadow._alpha = this.targetObject / 15; this.targetShadow.targetSprite = this; setTintRGB(this.targetShadow, this.colorObject.r / 20, this.colorObject.g / 20, this.colorObject.b / 20); this.initialized = true; }; this.deactivate = function () { this.active = false; this.targetObject._visible = false; this.targetShadow._visible = false; }; this.activate = function () { this.active = true; }; this.getMoving = function () { if ((this.x.changeMode == "SIN") && (this.y.changeMode == "SIN")) { return(false); } if ((this.x.currentValue == this.x.lastValue) && (this.y.currentValue == this.y.lastValue)) { return(false); } return(true); }; this.cloneForTransfer = function (cloneId) { var _local2 = new sprite(cloneId, -this.screenNumber, "na", "na", this.x.currentValue, this.y.currentValue, this.depth.currentValue, this.colorObject, this.rotation.currentValue, this.scaleX.currentValue, this.scaleY.currentValue); _local2.x.changeMode = this.x.changeMode; _local2.x.minValue = this.x.minValue; _local2.x.maxValue = this.x.maxValue; _local2.x.speed = this.x.speed; _local2.x.changeTo = this.x.changeTo; _local2.y.changeMode = this.y.changeMode; _local2.y.minValue = this.y.minValue; _local2.y.maxValue = this.y.maxValue; _local2.y.speed = this.y.speed; _local2.y.changeTo = this.y.changeTo; return(_local2); }; this.render = function () { if (this.active == false) { return(undefined); } _root.currentSprite = this; this.x.update(); this.y.update(); this.z.update(); if (this.moving == true) { if (this.getMoving() == false) { this.moving = false; handleSprite_stopMoving(this); } } this.r.update(); this.g.update(); this.b.update(); this.alpha.update(); this.rotation.update(this.screenNumber); this.scaleX.update(); this.scaleY.update(); if (sprites.screenVisible[this.screenNumber] == false) { return(undefined); } f = 0.2; this.targetObject._x = this.x.currentValue; this.targetObject._y = this.y.currentValue; this.targetObject._rotation = this.rotation.currentValue; this.targetObject.currentScaleX = (this.scaleX.currentValue / 100) * this.baseScaleX; this.targetObject.currentScaleY = (this.scaleY.currentValue / 100) * this.baseScaleY; this.targetObject._xscale = this.targetObject.currentScaleX; this.targetObject._yscale = this.targetObject.currentScaleY; this.targetObject._visible = this.visible; if (this.counter1 == 1) { this.counter1 = 0.98; } else { this.counter1 = 1; } this.targetObject._alpha = this.alpha.currentValue * this.counter1; setTintRGB(this.targetObject, this.r.currentValue, this.g.currentValue, this.b.currentValue); targetRatio = 0.75; targetScale = 0.75; shadowX = this.targetObject._x * targetRatio; shadowY = this.targetObject._y * targetRatio; this.targetShadow._x = shadowX; this.targetShadow._y = shadowY; this.targetShadow._xscale = this.targetObject.currentScaleX * targetScale; this.targetShadow._yscale = this.targetObject.currentScaleY * targetScale; this.targetShadow._rotation = this.rotation.currentValue; this.targetShadow._alpha = this.alpha.currentValue / 3; this.targetShadow._visible = this.visible; if (this.z.currentValue != 0) { var _local4 = {x:shadowX, y:shadowY}; var _local3 = {x:this.x.currentValue, y:this.y.currentValue}; this.targetShadow._parent.localToGlobal(_local4); this.targetObject._parent.globalToLocal(_local4); offsetX = _local3.x - _local4.x; offsetY = _local3.y - _local4.y; _local3.x = this.x.currentValue - ((offsetX * this.z.currentValue) / 100); _local3.y = this.y.currentValue - ((offsetY * this.z.currentValue) / 100); this.targetObject._x = _local3.x; this.targetObject._y = _local3.y; range = 0.3; this.depthScale = 1 - (range * (this.z.currentValue / 100)); this.targetObject._xscale = this.targetObject.currentScaleX * this.depthScale; this.targetObject._yscale = this.targetObject.currentScaleY * this.depthScale; this.targetShadow._xscale = (this.targetObject.currentScaleX * this.depthScale) * targetScale; this.targetShadow._yscale = (this.targetObject.currentScaleY * this.depthScale) * targetScale; } this.targetObject.swapDepths(((300 - this.z.currentValue) * 100) + this.spriteNumber); }; if (this.screenNumber > 0) { this.init(); } } function doTransfer(aSprite, aDirection) { aSprite.rotation.currentValue = getRangedValue(aSprite.rotation.currentValue, 360); currentScreen = Math.abs(aSprite.screenNumber); dx = aSprite.x.changeTo; dy = aSprite.y.changeTo; if (aSprite.x.changeMode == "GRADUALTRANSFER") { switch (aDirection) { case 1 : dx = dx - (aSprite.x.maxValue * 2); if (dx < aSprite.x.minValue) { return(aSprite); } break; case 2 : dx = dx + (aSprite.x.maxValue * 2); if (dx <= aSprite.x.maxValue) { break; } return(aSprite); } } if (aSprite.y.changeMode == "GRADUALTRANSFER") { switch (aDirection) { case 3 : dy = dy + (aSprite.y.maxValue * 2); if (dy > aSprite.y.maxValue) { return(aSprite); } break; case 4 : dy = dy - (aSprite.y.maxValue * 2); if (dy >= aSprite.y.minValue) { break; } return(aSprite); } } x = aSprite.x.currentValue; y = aSprite.y.currentValue; var _local1; switch (currentScreen) { case 1 : switch (aDirection) { case 1 : _local1 = [2, 0, dx, dy, -x, y]; break; case 2 : _local1 = [4, 0, dx, dy, -x, y]; break; case 3 : _local1 = [5, 180, -dx, -dy, -x, y]; break; case 4 : _local1 = [6, 0, dx, dy, x, -y]; } break; case 2 : switch (aDirection) { case 1 : _local1 = [3, 0, dx, dy, -x, y]; break; case 2 : _local1 = [1, 0, dx, dy, -x, y]; break; case 3 : _local1 = [5, 90, -dy, dx, y, x]; break; case 4 : _local1 = [6, 90, -dy, dx, y, x]; } break; case 3 : switch (aDirection) { case 1 : _local1 = [4, 0, dx, dy, -x, y]; break; case 2 : _local1 = [2, 0, dx, dy, -x, y]; break; case 3 : _local1 = [5, 0, dx, dy, x, -y]; break; case 4 : _local1 = [6, 180, -dx, -dy, -x, y]; } break; case 4 : switch (aDirection) { case 1 : _local1 = [1, 0, dx, dy, -x, y]; break; case 2 : _local1 = [3, 0, dx, dy, -x, y]; break; case 3 : _local1 = [5, -90, dy, -dx, -y, -x]; break; case 4 : _local1 = [6, -90, dy, -dx, -y, -x]; } break; case 5 : switch (aDirection) { case 1 : _local1 = [4, 90, -dy, dx, -y, -x]; break; case 2 : _local1 = [2, -90, dy, -dx, y, x]; break; case 3 : _local1 = [1, 180, -dx, -dy, -x, y]; break; case 4 : _local1 = [3, 0, dx, dy, x, -y]; } break; case 6 : switch (aDirection) { case 1 : _local1 = [2, -90, dy, -dx, y, x]; break; case 2 : _local1 = [4, 90, -dy, dx, -y, -x]; break; case 3 : _local1 = [1, 0, dx, dy, x, -y]; break; case 4 : _local1 = [3, 180, -dx, -dy, -x, y]; } } tmpY = _local1[5]; aSprite.rotation.currentValue = aSprite.rotation.currentValue + _local1[1]; aSprite.rotation.changeTo = aSprite.rotation.changeTo + _local1[1]; tmpDX = _local1[2]; tmpDY = _local1[3]; tmpX = _local1[4]; aSprite.x.changeTo = tmpDX; aSprite.y.changeTo = tmpDY; aSprite.x.currentValue = tmpX; aSprite.y.currentValue = tmpY; if (aSprite.screenNumber > 0) { aSprite.screenNumber = _local1[0]; aSprite.init(); } else { aSprite.screenNumber = -_local1[0]; } } function moveSpriteToFreeSpace(aSprite, aScreenWidth, aDistance, aDirection) { if (!aDirection) { aDirection = 0; } applyValueState_Transfer(aSprite.x, -(aScreenWidth / 2), aScreenWidth / 2, aSprite.x.currentValue, "GRADUALTRANSFER"); applyValueState_Transfer(aSprite.y, -(aScreenWidth / 2), aScreenWidth / 2, aSprite.y.currentValue, "GRADUALTRANSFER"); trace((((("1. DEST DEST " + flagSpriteDest_X) + " - ") + flagSpriteDest_Y) + " - ") + flagSpriteDest_Screen); if ((aDirection == 1) || (aDirection == 0)) { var _local2 = aSprite.cloneForTransfer("abstract1"); applyValueState_Transfer(_local2.x, -(aScreenWidth / 2), aScreenWidth / 2, _local2.x.currentValue + aDistance, "GRADUALTRANSFER"); doTransfer(_local2, 1); targetSprite = sprites.getSpriteAtXY(_local2.screenNumber, _local2.x.changeTo, _local2.y.changeTo); trace((((("TTTT DEST " + _local2.x.changeTo) + " - ") + _local2.y.changeTo) + " - ") + _local2.screenNumber); if (!targetSprite) { if (((flagSpriteDest_X == _local2.x.changeTo) && (flagSpriteDest_Y == _local2.y.changeTo)) && (flagSpriteDest_Screen == _local2.screenNumber)) { return(undefined); } flagSpriteDest_X = _local2.x.changeTo; flagSpriteDest_Y = _local2.y.changeTo; flagSpriteDest_Screen = _local2.screenNumber; applyValueState_Transfer(aSprite.x, -(aScreenWidth / 2), aScreenWidth / 2, aSprite.x.currentValue + aDistance, "GRADUALTRANSFER"); return(undefined); } _local2 = null; } trace((((("2. DEST DEST " + flagSpriteDest_X) + " - ") + flagSpriteDest_Y) + " - ") + flagSpriteDest_Screen); if ((aDirection == 2) || (aDirection == 0)) { var _local2 = aSprite.cloneForTransfer("abstract2"); applyValueState_Transfer(_local2.x, -(aScreenWidth / 2), aScreenWidth / 2, _local2.x.currentValue - aDistance, "GRADUALTRANSFER"); doTransfer(_local2, 2); targetSprite = sprites.getSpriteAtXY(_local2.screenNumber, _local2.x.changeTo, _local2.y.changeTo); trace((((("TTTT DEST " + _local2.x.changeTo) + " - ") + _local2.y.changeTo) + " - ") + _local2.screenNumber); if (!targetSprite) { if (((flagSpriteDest_X == _local2.x.changeTo) && (flagSpriteDest_Y == _local2.y.changeTo)) && (flagSpriteDest_Screen == _local2.screenNumber)) { return(undefined); } flagSpriteDest_X = _local2.x.changeTo; flagSpriteDest_Y = _local2.y.changeTo; flagSpriteDest_Screen = _local2.screenNumber; applyValueState_Transfer(aSprite.x, -(aScreenWidth / 2), aScreenWidth / 2, aSprite.x.currentValue - aDistance, "GRADUALTRANSFER"); return(undefined); } _local2 = null; } if ((aDirection == 3) || (aDirection == 0)) { var _local2 = aSprite.cloneForTransfer("abstract3"); applyValueState_Transfer(_local2.y, -(aScreenWidth / 2), aScreenWidth / 2, _local2.y.currentValue - aDistance, "GRADUALTRANSFER"); doTransfer(_local2, 3); targetSprite = sprites.getSpriteAtXY(_local2.screenNumber, _local2.x.changeTo, _local2.y.changeTo); trace((((("TTTT DEST " + _local2.x.changeTo) + " - ") + _local2.y.changeTo) + " - ") + _local2.screenNumber); if (!targetSprite) { if (((flagSpriteDest_X == _local2.x.changeTo) && (flagSpriteDest_Y == _local2.y.changeTo)) && (flagSpriteDest_Screen == _local2.screenNumber)) { return(undefined); } flagSpriteDest_X = _local2.x.changeTo; flagSpriteDest_Y = _local2.y.changeTo; flagSpriteDest_Screen = _local2.screenNumber; applyValueState_Transfer(aSprite.y, -(aScreenWidth / 2), aScreenWidth / 2, aSprite.y.currentValue - aDistance, "GRADUALTRANSFER"); return(undefined); } _local2 = null; } if ((aDirection == 4) || (aDirection == 0)) { var _local2 = aSprite.cloneForTransfer("abstract4"); applyValueState_Transfer(_local2.y, -(aScreenWidth / 2), aScreenWidth / 2, _local2.y.currentValue + aDistance, "GRADUALTRANSFER"); doTransfer(_local2, 4); targetSprite = sprites.getSpriteAtXY(_local2.screenNumber, _local2.x.changeTo, _local2.y.changeTo); trace((((("TTTT DEST " + _local2.x.changeTo) + " - ") + _local2.y.changeTo) + " - ") + _local2.screenNumber); if (!targetSprite) { if (((flagSpriteDest_X == _local2.x.changeTo) && (flagSpriteDest_Y == _local2.y.changeTo)) && (flagSpriteDest_Screen == _local2.screenNumber)) { return(undefined); } flagSpriteDest_X = _local2.x.changeTo; flagSpriteDest_Y = _local2.y.changeTo; flagSpriteDest_Screen = _local2.screenNumber; applyValueState_Transfer(aSprite.y, -(aScreenWidth / 2), aScreenWidth / 2, aSprite.y.currentValue + aDistance, "GRADUALTRANSFER"); return(undefined); } _local2 = null; } } function spriteCollection() { this.items = new Array(); this.offsetX = [0, 0, 0, 0, 0, 0, 0]; this.offsetY = [0, 0, 0, 0, 0, 0, 0]; this.offsetRotation = [0, 0, 0, 0, 0, 0, 0]; this.screenVisible = [false, false, false, false, false, false, false]; this.reset = function () { trace("RESETTING SPRITES::: "); var _local2 = 0; while (_local2 < this.items.length) { trace((_local2 + ". ABOUT TO REMOVE ") + this.items[_local2].targetObject); removeMovieClip(this.items[_local2].targetObject); removeMovieClip(this.items[_local2].targetShadow); trace("REMOVED " + this.items[_local2].targetObject); this.items[_local2] = null; _local2++; } this.items = null; this.items = []; }; this.addSprite = function (aSprite) { aSprite.spriteNumber = this.items.length; this.items[this.items.length] = aSprite; return(aSprite); }; this.renderAll = function () { var _local3 = 1; while (_local3 <= 6) { clip = _root.i3dStage["obj" + _local3]; if (clip.mc._yscale > 0) { this.offsetRotation[_local3] = (-clip._rotation) + 45; } else { this.offsetRotation[_local3] = ((-clip._rotation) + 45) + 180; } this.screenVisible[_local3] = clip._visible; _local3++; } _local3 = 0; while (_local3 < this.items.length) { aSprite = this.items[_local3]; aSprite.render(); _local3++; } }; this.getSprite = function (aId) { var _local2 = 0; while (_local2 < this.items.length) { if (this.items[_local2].id == aId) { return(this.items[_local2]); } _local2++; } return(null); }; this.getSpriteTarget = function (aId) { var _local2 = 0; while (_local2 < this.items.length) { if (this.items[_local2].id == aId) { return(this.items[_local2].targetObject); } _local2++; } return(null); }; this.getSpriteAtXY = function (aScreenNumber, aX, aY) { var _local2 = 0; while (_local2 < this.items.length) { if ((this.items[_local2].x.changeTo == aX) && ((this.items[_local2].y.changeTo == aY) && (this.items[_local2].screenNumber == Math.abs(aScreenNumber)))) { trace("RETURNING MATCH " + this.items[_local2]); return(this.items[_local2]); } _local2++; } return(null); }; this.getMovingSprite = function () { var _local2 = 0; while (_local2 < this.items.length) { aSprite = this.items[_local2]; if (aSprite.screenNumber > 0) { if (aSprite.getMoving() == true) { return(aSprite); } } _local2++; } return(null); }; } function applyState_RGB(aSprite, aRed, aGreen, aBlue, aChangeMode) { if (!aChangeMode) { aChangeMode = "GRADUAL"; } aSprite.r.changeTo = aRed; aSprite.g.changeTo = aGreen; aSprite.b.changeTo = aBlue; aSprite.r.changeMode = aChangeMode; aSprite.g.changeMode = aChangeMode; aSprite.b.changeMode = aChangeMode; if (aChangeMode == "IMMEDIATE") { aSprite.r.currentValue = aRed; aSprite.g.currentValue = aGreen; aSprite.b.currentValue = aBlue; } } function applyState_Alpha(aSprite, aValue, aChangeMode) { if (!aChangeMode) { aChangeMode = "GRADUAL"; } aSprite.alpha.changeMode = aChangeMode; aSprite.alpha.changeTo = aValue; if (aChangeMode == "IMMEDIATE") { aSprite.alpha.currentValue = aValue; } } function applyState_Scale(aSprite, aX, aY, aChangeMode) { if (!aChangeMode) { aChangeMode = "RELATIVE"; } if (aChangeMode == "IMMEDIATE") { aSprite.rotation.currentValue = aAmount; } aSprite.rotation.changeMode = aChangeMode; aSprite.rotation.changeTo = aAmount; aSprite.rotation.currentValue = getRangedValue(aSprite.rotation.currentValue, 360); } function applyState_Rotation(aSprite, aAmount, aChangeMode) { if (!aChangeMode) { aChangeMode = "RELATIVE"; } if (aChangeMode == "IMMEDIATE") { aSprite.rotation.currentValue = aAmount; } aSprite.rotation.changeMode = aChangeMode; aSprite.rotation.changeTo = aAmount; aSprite.rotation.currentValue = getRangedValue(aSprite.rotation.currentValue, 360); } function applyState_Active(aSprite, aZ) { if (!aZ) { aZ = 0; } aSprite.z.changeTo = aZ; aSprite.z.changeMode = "GRADUAL"; aSprite.x.changeTo = 0; aSprite.y.changeTo = 0; aSprite.scaleX.base = 100; aSprite.scaleX.offset = 60; aSprite.scaleX.frequency = 0.3; aSprite.scaleX.amplitude = 10; } function applyState_FlashColor(aSprite, aMethod) { aSprite.r.changeMode = "SIN"; aSprite.g.changeMode = "SIN"; aSprite.b.changeMode = "SIN"; switch (aMethod) { case "rainbow" : default : aSprite.r.base = 50; aSprite.r.offset = 0; aSprite.r.frequency = 0.1; aSprite.r.amplitude = 40; aSprite.g.base = 50; aSprite.g.offset = 2.0943951023932; aSprite.g.frequency = 0.3; aSprite.g.amplitude = 40; aSprite.b.offset = 2.0943951023932; aSprite.b.base = 50; aSprite.b.frequency = 0.03; aSprite.b.amplitude = 40; break; case "blue" : applyState_RGB(aSprite, 60, 60, 110); aSprite.b.offset = 0; aSprite.b.base = 110; aSprite.b.frequency = 0.6; aSprite.b.amplitude = 50; } } function applyState_Inactive(aSprite) { aSprite.scaleX.changeMode = "NONE"; aSprite.z.changeTo = 100; aSprite.z.changeMode = "GRADUAL"; applyState_Orbit(aSprite, aSprite.x.originalValue, aSprite.y.originalValue, 0); } function applyValueState_Sin(aSpriteDemon, aBase, aFrequency, aAmplitude, aOffset) { if (!aOffset) { aOffset = 0; } aSpriteDemon.base = aBase; aSpriteDemon.offset = aOffset; aSpriteDemon.frequency = aFrequency; aSpriteDemon.amplitude = aAmplitude; aSpriteDemon.changeMode = "SIN"; } function applyValueState_Transfer(aSpriteDemon, aMin, aMax, aChangeTo, aChangeMode) { if (!aChangeMode) { aChangeMode = "TRANSFER"; } aSpriteDemon.minValue = aMin; aSpriteDemon.maxValue = aMax; aSpriteDemon.changeTo = aChangeTo; aSpriteDemon.changeMode = aChangeMode; } function applyValueState_Bounce(aSpriteDemon, aMin, aMax, aChangeTo) { aSpriteDemon.minValue = aMin; aSpriteDemon.maxValue = aMax; aSpriteDemon.changeTo = aChangeTo; aSpriteDemon.changeMode = "BOUNCE"; } function applyState_Bounce(aSprite, x1, y1, x2, y2, z1, z2, speedX, speedY, speedZ) { applyValueState_Bounce(aSprite.x, x1, x2, speedX); applyValueState_Bounce(aSprite.y, y1, y2, speedZ); applyValueState_Bounce(aSprite.z, z1, z2, speedZ); } function applyState_Orbit(aSprite, centreX, centreY, radius, speed, offset) { if (!speed) { speed = 0.08; } if (!offset) { offset = 0; } aSprite.x.changeMode = "SIN"; aSprite.x.base = centreX; aSprite.x.offset = offset; aSprite.x.frequency = speed; aSprite.x.amplitude = radius; aSprite.y.changeMode = "SIN"; aSprite.y.base = centreY; aSprite.y.offset = (Math.PI/2) + offset; aSprite.y.frequency = speed; aSprite.y.amplitude = radius; } function applyStateFlipFlop(aSprite, levels) { if (!aSprite.currentLevel) { aSprite.currentLevel = 0; } aSprite.currentLevel++; if (aSprite.currentLevel > levels) { aSprite.currentLevel = 1; } aSprite.z.changeMode = "GRADUAL"; aSprite.z.changeTo = 100 - ((100 / levels) * aSprite.currentLevel); applyState_RGB(aSprite, 100, 100, 100, "IMMEDIATE"); switch (aSprite.currentLevel) { case 1 : applyState_RGB(aSprite, 100, 100, 100); applyState_Alpha(aSprite, 20); break; case 2 : applyState_RGB(aSprite, 100, 0, 100); applyState_Alpha(aSprite, 25); break; case 3 : applyState_RGB(aSprite, 10, 0, 10); applyState_Alpha(aSprite, 20); } if (aSprite.currentLevel == 2) { aSprite.targetObject.shape.gotoAndPlay("doOn"); aSprite.targetShadow.gotoAndPlay("doOn"); } if (aSprite.currentLevel == 3) { aSprite.targetObject.shape.gotoAndPlay("doOff"); aSprite.targetShadow.gotoAndPlay("doOff"); } if ((aSprite.currentLevel == 1) && (levels == 2)) { aSprite.targetObject.shape.gotoAndPlay("doOff"); aSprite.targetShadow.gotoAndPlay("doOff"); } } var flagSpriteDest_X = -1; var flagSpriteDest_Y = -1; var flagSpriteDest_Screen = -1; var spriteDemon = function (aCurrentValue, aChangeTo, aChangeMode) { if (!aChangeTo) { aChangeTo = 0; } if (!aChangeMode) { aChangeMode = "NONE"; } this.demonName = "unset"; this.currentValue = aCurrentValue; this.lastValue = aCurrentValue; this.originalValue = aCurrentValue; this.maxValue = null; this.minValue = null; this.targetObject = aCurrentValue; this.changeTo = aChangeTo; this.changeMode = aChangeMode; this.maxSpeed = 7; this.currentSpeed = 0; this.acceleration = 1; this.counter = 0; this.base = 100; this.amplitude = 20; this.frequency = 0.1; this.offset = 0; this.update = function (aData1) { this.lastValue = this.currentValue; aStopFlag = false; this.counter++; if (this.changeMode == "NONE") { return(undefined); } var _local3; if (this.changeMode == "RELATIVE") { this.currentValue = this.currentValue + this.changeTo; } if (this.changeMode == "BOUNCE") { this.currentValue = this.currentValue + this.changeTo; if ((this.currentValue > this.maxValue) || (this.currentValue < this.minValue)) { this.changeTo = -this.changeTo; this.currentValue = this.currentValue + (this.changeTo * 2); } } if (this.changeMode == "TRANSFER") { this.currentValue = this.currentValue + this.changeTo; if (this.currentValue > this.maxValue) { this.currentValue = this.maxValue; if (this == _root.currentSprite.x) { doTransfer(_root.currentSprite, 1); } else if (this == _root.currentSprite.y) { doTransfer(_root.currentSprite, 4); } } else if (this.currentValue < this.minValue) { this.currentValue = this.minValue; if (this == _root.currentSprite.x) { doTransfer(_root.currentSprite, 2); } else if (this == _root.currentSprite.y) { doTransfer(_root.currentSprite, 3); } } } if (this.changeMode == "IMMEDIATE") { this.currentValue = this.changeTo; } if (this.changeMode == "SIN") { this.changeTo = this.base + (Math.sin((this.counter * this.frequency) + this.offset) * this.amplitude); } if (this.changeMode == "ABSOLUTE_ROTATION") { aZeroDegrees = sprites.offsetRotation[aData1]; this.changeTo = aZeroDegrees; } if ((((this.changeMode == "ABSOLUTE_ROTATION") || (this.changeMode == "SIN")) || (this.changeMode == "GRADUAL")) || (this.changeMode == "GRADUALTRANSFER")) { if (this.currentValue < this.changeTo) { _local3 = 1; } else if (this.currentValue > this.changeTo) { _local3 = -1; } else { _local3 = 0; return(undefined); } this.currentSpeed = this.maxSpeed * _local3; if (this.currentSpeed > this.maxSpeed) { this.currentSpeed = this.maxSpeed; } if (this.currentSpeed < (-this.maxSpeed)) { this.currentSpeed = -this.maxSpeed; } this.currentValue = this.currentValue + this.currentSpeed; if (_local3 > 0) { if (this.currentValue > this.changeTo) { this.currentValue = this.changeTo; this.lastValue = this.currentValue; aStopFlag = true; } } else if (_local3 < 0) { if (this.currentValue < this.changeTo) { this.currentValue = this.changeTo; this.lastValue = this.currentValue; aStopFlag = true; } } if (this.changeMode == "SIN") { aStopFlag = false; } if (this.changeMode == "GRADUALTRANSFER") { if (this.currentValue > this.maxValue) { this.currentValue = this.maxValue; if (this == _root.currentSprite.x) { doTransfer(_root.currentSprite, 1); } else if (this == _root.currentSprite.y) { doTransfer(_root.currentSprite, 4); } } else if (this.currentValue < this.minValue) { this.currentValue = this.minValue; if (this == _root.currentSprite.x) { doTransfer(_root.currentSprite, 2); } else if (this == _root.currentSprite.y) { doTransfer(_root.currentSprite, 3); } } } } this.targetObject = this.currentValue; if (aStopFlag == true) { if (_root.currentSprite.getMoving() == false) { _root.handleSprite_stopMoving(_root.currentSprite); } this.changeMode = "NONE"; } }; }; var sprites = new spriteCollection(); var currentSprite; function room(aPuzzleName) { this.puzzleName = aPuzzleName; this.solved = false; this.walls = new Array(); } function wall(aNumber, aTextureName, aRotation, aFlip, aData1, aData2, aData3) { this.wallNumber = aNumber; this.textureName = aTextureName; this.rotation = aRotation; this.flip = aFlip; var _local8 = "txWall_SwitchCorner | txWall_SwitchEdge | txWall_Projector"; if (_local8.indexOf(aTextureName) > -1) { this.pathNumber1 = aData1; this.pathNumber2 = aData2; this.pathSwitchNumber = -1; var _local3 = 1; while (_local3 < _root.pathSwitches.length) { if (paths[aData1].pathSwitchNumber == _local3) { this.pathSwitchNumber = _local3; break; } _local3++; } if (aTextureName == "txWall_Projector") { projectors[aData3].pathNumber1 = aData1; projectors[aData3].pathNumber2 = aData2; this.projectorNumber = aData3; } } _local8 = "txWall_DoorCorner | txWall_DoorEdge | txWall_DoorMiddle | txWall_DoorMiddle"; if (_local8.indexOf(aTextureName) > -1) { this.doorNumber = aData1; } _local8 = "txWall_Spyhole | txWall_SpyholeFlip"; if (_local8.indexOf(aTextureName) > -1) { this.projectorNumber = aData1; } _local8 = "txWall_Source"; if (_local8.indexOf(aTextureName) > -1) { this.sourceNumber = aData1; this.pathNumber1 = aData2; this.pathNumber2 = aData3; } _local8 = "txWall_Screen"; if (_local8.indexOf(aWall.textureName) > -1) { this.puzzleName = aData1; } } function door() { this.unlocked = false; } function pathSwitch() { this.currentDirection = 1; } function path(aPathSwitchNumber, aDestinationPath1, aDestinationPath2) { this.currentColor = "NONE"; this.pathSwitchNumber = aPathSwitchNumber; this.destinationPaths = new Array(); this.destinationPaths[1] = aDestinationPath1; this.destinationPaths[2] = aDestinationPath2; } function source(sourceColor, aDestinationPath) { this.sourceColor = sourceColor; this.destinationPath = aDestinationPath; this.active = false; } function projector(aProjectorNumber) { this.projectorNumber = aProjectorNumber; this.pathNumber1; this.pathNumber2; this.roomNumber; this.doUpdate = function () { trace((((((("UPDATE PROJ: " + aColorName1) + " / ") + aColorName2) + " // ") + this.pathNumber1) + " // ") + paths[this.pathNumber1]); var _local3 = paths[this.pathNumber1]; var _local2 = paths[this.pathNumber2]; aColorName1 = _local3.currentColor; aColorName2 = _local2.currentColor; aBlend = getBlend(aColorName1, aColorName2); return(aBlend); }; } function resolvePaths(aStartingPathNumber, aColor) { trace("** Resolve paths starting from #" + aStartingPathNumber); trace("Switch # = " + aPath.pathSwitchNumber); var aPath = paths[aStartingPathNumber]; aPath.currentColor = aColor; while (aPath.pathSwitchNumber > 0) { aPathSwitch = pathSwitches[aPath.pathSwitchNumber]; aDirection = aPathSwitch.currentDirection; aNextPathNumber = aPath.destinationPaths[aDirection]; if (aNextPathNumber == aStartingPathNumber) { trace("Exiting - Start encountered."); return(undefined); } aPath = paths[aNextPathNumber]; if (aPath.currentColor == aColor) { trace("Exiting - Same Color encountered."); return(undefined); } aPath.currentColor = aColor; trace((("-> path #" + aPath.destinationPaths[aDirection]) + " currentColor=") + aPath.currentColor); trace(((("? switch #" + aPath.pathSwitchNumber) + " = ") + aPathSwitch.currentDirection) + " ->"); } aPath.currentColor = aColor; trace("Exiting - no further paths to follow"); } function getRoomNumber(aCoord) { if ((((((aCoord.x < 1) || (aCoord.x > 3)) || (aCoord.y < 1)) || (aCoord.y > 3)) || (aCoord.z < 1)) || (aCoord.z > 3)) { return(-1); } aNumber = ((aCoord.x - 1) + ((aCoord.y - 1) * 3)) + ((aCoord.z - 1) * 9); return(aNumber); } function setupRoom(aCoord) { setRoomArray([1, 2, 3, 4, 5, 6, 7]); x = aCoord.x; y = aCoord.y; z = aCoord.z; aRoomNumber = getRoomNumber(aCoord); trace((((((((("CREATING ROOM NUMBER " + z) + " - ") + aRoomNumber) + " from co-ords ") + x) + " ") + y) + " ") + z); var _local3 = rooms[aRoomNumber]; var _local2 = 1; while (_local2 <= 6) { setupWall(_local3.walls[_local2]); _local2++; } _local2 = 1; while (_local2 <= 6) { screens[_local2].puzzleName = _local3.puzzleName; setupWall(screens[_local2]); _local2++; } _local2 = 1; while (_local2 <= 6) { aTexture = _root.i3dStage["obj" + _local2].mc.texture; if (aTexture.iLock) { var _local5 = getCoordsFromDirection(currentRoom, _local2); var _local4 = getRoomNumber(_local5); if (_local4 == -1) { tmpRoomSolved = false; } else { tmpRoom = rooms[_local4]; tmpRoomSolved = tmpRoom.solved; } if (((flagAllUnlocked == true) || (_local3.solved == true)) || (tmpRoomSolved == true)) { aTexture.iLock.unlocked = true; aTexture.iLock.gotoAndStop("stayOpen"); } else { aTexture.iLock.unlocked = false; aTexture.iLock.gotoAndStop("stayClosed"); } if (currentRoomNumber == 26) { aWall = _local3.walls[_local2]; if (aWall.textureName.indexOf("Switch") > -1) { aTexture.iLock.unlocked = true; aTexture.iLock.gotoAndStop("stayOpen"); } } } _local2++; } initDecalTintTarget(); objDummy = setTintCoords(objDummy, aCoord, 1); decalTintRed.targetTint = objDummy.red; decalTintGreen.targetTint = objDummy.green; decalTintBlue.targetTint = objDummy.blue; decalTintRed.currentValue = 100; decalTintGreen.currentValue = 100; decalTintBlue.currentValue = 100; setupWall(_root.triangle); } function setupWall(aWall) { var _local3 = _root.i3dStage["obj" + aWall.wallNumber]; _local3._visible = false; _local3.swapDepths(_local3.reg.dp); _local3.mc.removeMovieClip("texture"); aTmp = _local3.mc.attachMovie(aWall.textureName, "texture", 1); _local3.mc.texture._rotation = aWall.rotation; _local3.mc.texture._x = 50; _local3.mc.texture._y = 50; setTintCoords(_local3.mc.texture.iDecal, _root.currentRoom, 1); setTintRGB(_local3.mc.texture.iBackground, 50, 50, 60); _local3.mc.texture.iDecal._alpha = 60; var _local4 = "txWall_SwitchCorner | txWall_SwitchEdge | txWall_Projector"; if (_local4.indexOf(aWall.textureName) > -1) { setupWall_Switch(aWall); } _local4 = "txWall_DoorCorner | txWall_DoorEdge | txWall_DoorMiddle"; if (_local4.indexOf(aWall.textureName) > -1) { setupWall_Door(aWall); } _local4 = "txWall_Spyhole | txWall_SpyholeFlip"; if (_local4.indexOf(aWall.textureName) > -1) { setupWall_Spyhole(aWall); } _local4 = "txWall_Source"; if (_local4.indexOf(aWall.textureName) > -1) { trace("SeTup Source " + aWall.textureName); setupWall_Source(aWall, "doFadeIn"); } _local4 = "txWall_Triangle"; if (_local4.indexOf(aWall.textureName) > -1) { setupWall_Triangle(aWall); } _local4 = "txWall_Screen"; if (_local4.indexOf(aWall.textureName) > -1) { setupWall_Screen(aWall); } } function setupWall_Switch(aWall) { var _local3 = _root.i3dStage["obj" + aWall.wallNumber]; _local3.swapDepths(300 + aWall.wallNumber); texture = _local3.mc.texture; pack = _local3.mc.texture.iSwitchPack; aButton = texture.iButton1; aNegRotation = -aWall.rotation; pack._rotation = aNegRotation; texture.iButton1._rotation = aNegRotation; if (((aWall.wallNumber == 2) || (aWall.wallNumber == 3)) || (aWall.wallNumber == 5)) { pack._yscale = -100; aButton._yscale = -aButton._yscale; } aButton.pathSwitchNumber = aWall.pathSwitchNumber; if (pathSwitches[aWall.pathSwitchNumber].currentDirection == 1) { pack.iSwitchRing.gotoAndStop("stayRight"); texture.iButton1.gotoAndStop("stayOff"); } else { pack.iSwitchRing.gotoAndStop("stayLeft"); texture.iButton1.gotoAndStop("stayOn"); } setupWallSwitches(aWall, "stayOn"); setTintCoords(aButton, _root.currentRoom); if (aWall.textureName.indexOf("Projector") > -1) { aProjector = projectors[aWall.projectorNumber]; aBlend = aProjector.doUpdate(); trace("BLEND IS " + aBlend); if (aBlend == "NONE") { setTintRGB(texture.iProjector, 10, 10, 10); texture.iProjector.iOrbitPack1.gotoAndStop("orbitOff"); texture.iProjector.iOrbitPack2.gotoAndStop("orbitOff"); } else { setTint(texture.iProjector, aBlend); texture.iProjector.iOrbitPack1.gotoAndStop("orbit" + aProjector.projectorNumber); texture.iProjector.iOrbitPack2.gotoAndStop("orbit" + aProjector.projectorNumber); } } } function setupWall_Source(aWall) { var _local3 = _root.i3dStage["obj" + aWall.wallNumber]; _local3.swapDepths(300 + aWall.wallNumber); texture = _local3.mc.texture; aNegRotation = -aWall.rotation; texture.iSourcePack._rotation = aNegRotation; aSource = sources[aWall.sourceNumber]; aButton = texture.iSourcePack.iButton; setTint(aButton, aSource.sourceColor); aButton.sourceNumber = aWall.sourceNumber; if (aSource.active == false) { aButton.gotoAndStop("stayOff"); } else { aButton.gotoAndStop("stayOn"); } setupWallSource(aWall, "xxx"); } function setupWallSwitches(aWall, aFadePoint) { var _local2 = _root.i3dStage["obj" + aWall.wallNumber]; _local2.swapDepths(300 + aWall.wallNumber); texture = _local2.mc.texture; pack = _local2.mc.texture.iSwitchPack; aPath = paths[aWall.pathNumber1]; aSwitch = pathSwitches[aPath.pathSwitchNumber]; setTint(pack.iSwitchSymbol1, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iSwitchRingPath1, aPath.currentColor); if (aSwitch.currentDirection == 1) { setTint(pack.iSwitchLights1, aPath.currentColor); setTint(pack.iSwitchSymbol4, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath1a, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath2b, aPath.currentColor); trace(((">>>>" + pack.iSwitchSymbol1._alpha) + " ") + frFadedOut); doSpecialFadeIn(pack.iSwitchSymbol1); doSpecialFadeIn(pack.iSwitchSymbol4); doSpecialFadeIn(pack.iSwitchLights1); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iSwitchRingPath1); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath1a); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath2b); } else { setTint(pack.iSwitchLights2, aPath.currentColor); setTint(pack.iSwitchSymbol3, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath1a, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath2b, aPath.currentColor); doSpecialFadeIn(pack.iSwitchSymbol1); doSpecialFadeIn(pack.iSwitchSymbol4); doSpecialFadeIn(pack.iSwitchLights2); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iSwitchRingPath1); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath1a); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath2b); } aPath = paths[aWall.pathNumber2]; setTint(pack.iSwitchSymbol2, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iSwitchRingPath2, aPath.currentColor); if (aSwitch.currentDirection == 1) { setTint(pack.iSwitchLights2, aPath.currentColor); setTint(pack.iSwitchSymbol3, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath1b, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath2a, aPath.currentColor); doSpecialFadeIn(pack.iSwitchSymbol2); doSpecialFadeIn(pack.iSwitchSymbol3); doSpecialFadeIn(pack.iSwitchLights2); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iSwitchRingPath2); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath2a); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath1b); } else { setTint(pack.iSwitchLights1, aPath.currentColor); setTint(pack.iSwitchSymbol4, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath1b, aPath.currentColor); setTint(pack.iSwitchRing.iSwitchRing.iPath2a, aPath.currentColor); doSpecialFadeIn(pack.iSwitchSymbol2); doSpecialFadeIn(pack.iSwitchSymbol3); doSpecialFadeIn(pack.iSwitchLights1); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iSwitchRingPath2); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath2a); doSpecialFadeIn(pack.iSwitchRing.iSwitchRing.iPath1b); } } function setupWallSource(aWall, aFadePoint) { var _local4 = _root.i3dStage["obj" + aWall.wallNumber]; texture = _local4.mc.texture; pack = _local4.mc.texture.iSourcePack; aPath = paths[aWall.pathNumber1]; trace((((("PATH " + aPath) + "/ ") + aWall.pathNumber1) + " = ") + aPath.currentColor); setTint(pack.iLoop1, aPath.currentColor); aPath = paths[aWall.pathNumber2]; trace(((((("PATH " + aPath) + "/ ") + aWall.pathNumber2) + " = ") + " = ") + aPath.currentColor); setTint(pack.iLoop2, aPath.currentColor); trace("FADE " + aFadePoint); if (aFadePoint == "doFadeOut") { pack.iLoop1.gotoAndPlay(aFadePoint); pack.iLoop2.gotoAndPlay(aFadePoint); } else { if ((pack.iLoop1._currentframe != 1) && (pack.iLoop1._currentframe != 25)) { pack.iLoop1.gotoAndPlay(aFadePoint); } if ((pack.iLoop2._currentframe != 1) && (pack.iLoop2._currentframe != 25)) { pack.iLoop2.gotoAndPlay(aFadePoint); } } } function doSpecialFadeIn(aObj) { trace(aObj._currentframe + " CF"); if ((aObj._currentframe == 25) || (aObj._currentframe == 1)) { aObj.gotoAndStop("stayOn"); } else { aObj.gotoAndPlay("doFadeIn"); } } function setupWall_Door(aWall) { var _local2 = _root.i3dStage["obj" + aWall.wallNumber]; if (aWall.textureName == "txWall_DoorEdge") { _local2.swapDepths(400 + aWall.wallNumber); } else { _local2.swapDepths(450 + aWall.wallNumber); } texture = _local2.mc.texture; if (((currentRoom.x == 1) && (currentRoom.y == 1)) && (currentRoom.z == 1)) { texture.iPortal1._visible = false; } texture.iDoor1.wallNumber = aWall.wallNumber; setTintCoords(texture.iPortal1, _root.currentRoom); setTintCoords(texture.iDoor1, _root.currentRoom); } function setupWall_Spyhole(aWall) { var _local3 = _root.i3dStage["obj" + aWall.wallNumber]; _local3.swapDepths(500 + aWall.wallNumber); texture = _local3.mc.texture; aProjector = projectors[aWall.projectorNumber]; aBlend = aProjector.doUpdate(); trace((("WAll / PROJECTOR = " + aWall.textureName) + " / ") + aWall.projector); trace("BLEND IS " + aBlend); if (aBlend == "NONE") { setTintRGB(texture.iOrbitPack1, 10, 10, 10); texture.iOrbitPack1.gotoAndStop("orbitOff"); } else { setTint(texture.iOrbitPack1, aBlend); texture.iOrbitPack1.gotoAndStop("orbit" + aProjector.projectorNumber); } if (aWall.textureName == "txWall_Spyhole") { texture.iButton.wallNumber = aWall.wallNumber; aRoom = rooms[currentRoomNumber]; if (aRoom.solved == false) { texture.iOrbitPack1._visible = false; } } if (aWall.textureName == "txWall_SpyholeFlip") { aDirection = aWall.wallNumber; var _local4 = getCoordsFromDirection({x:2, y:2, z:2}, aDirection); setTintCoords(texture.iDecal, _local4); aNumber = getRoomNumber(_local4); aRoom = rooms[aNumber]; if (aRoom.solved == false) { texture.iOrbitPack1._visible = false; } } } function setupWall_Triangle(aWall) { var _local2 = _root.i3dStage["obj" + aWall.wallNumber]; _local2.swapDepths(500 + aWall.wallNumber); texture = _local2.mc.texture; setTintCoords(texture.iButton, _root.currentRoom); aRoom = rooms[currentRoomNumber]; if (aRoom.solved == true) { texture.iButton.gotoAndStop(35); } else { texture.iButton.gotoAndStop(16); } } function setupWall_Screen(aWall) { var _local3 = _root.i3dStage["obj" + aWall.wallNumber]; _local3.swapDepths(1500 + aWall.wallNumber); texture = _local3.mc.texture; texture.iPuzzleHolder._x = 0; texture.iPuzzleHolder._y = 0; texture.iPuzzleHolder._alpha = 0; texture.iPuzzleHolder._visible = false; setTintCoords(texture.iScreenOutline, _root.currentRoom); relatedWallNumber = aWall.wallNumber - 7; relatedRotation = walls; _local3 = _root.i3dStage["obj" + relatedWallNumber]; texture.iPuzzleHolderBackground.puzzle.removeMovieClip(); texture = _local3.mc.texture; texture.iPuzzleHolderBackground.attachMovie(aWall.puzzleName + "_Background", "puzzle", 2000); texture.iPuzzleHolderBackground._rotation = -texture._rotation; texture.iPuzzleHolderBackground._x = 0; texture.iPuzzleHolderBackground._y = 0; texture.iPuzzleHolderBackground._visible = false; texture.iPuzzleHolderBackground.attachMovie("objPuzzleHolder2", "iDummy", 3000); texture.iPuzzleHolderBackground.iDummy._visible = false; } var flagAllUnlocked = false; var pathSwitches = new Array(); var sources = new Array(); var paths = new Array(); var projectors = new Array(); var i = 1; while (i <= 6) { projectors[i] = new projector(i); trace((((("NEW PROJECTOR " + i) + " .") + projectors[i].projectorNumber) + " .") + projectors[i].pathNumber2); i++; } projectors[1].targetColor = "RED"; projectors[2].targetColor = "GREEN"; projectors[3].targetColor = "BLUE"; projectors[4].targetColor = "YELLOW"; projectors[5].targetColor = "CYAN"; projectors[6].targetColor = "MAGENTA"; projectors[1].roomNumber = 12; projectors[2].roomNumber = 22; projectors[3].roomNumber = 14; projectors[4].roomNumber = 4; projectors[5].roomNumber = 16; projectors[6].roomNumber = 10; sources[1] = new source("RED", 83); sources[2] = new source("GREEN", 1); sources[3] = new source("BLUE", 61); var i = 1; while (i <= 108) { paths[i] = new path(1, 2, 3); i++; } paths[1] = new path(1, 7, 4); paths[3] = new path(2, 9, 6); paths[5] = new path(3, 11, 56); paths[7] = new path(4, 13, 10); paths[9] = new path(5, 15, 12); paths[11] = new path(6, 17, 62); paths[13] = new path(7, 37, 16); paths[15] = new path(8, 39, 18); paths[17] = new path(9, 41, 68); paths[19] = new path(10, 25, 22); paths[21] = new path(11, 27, 24); paths[23] = new path(12, 29, 2); paths[25] = new path(13, 31, 28); paths[27] = new path(14, 33, 30); paths[29] = new path(15, 35, 8); paths[31] = new path(16, 50, 34); paths[33] = new path(17, 44, 36); paths[35] = new path(18, 38, 14); paths[37] = new path(19, 43, 40); paths[39] = new path(20, 45, 42); paths[41] = new path(21, 47, 67); paths[43] = new path(22, 49, 46); paths[45] = new path(23, 51, 48); paths[47] = new path(24, 53, 69); paths[49] = new path(25, 89, 52); paths[51] = new path(26, 87, 54); paths[53] = new path(27, 85, 71); paths[55] = new path(28, 92, 58); paths[57] = new path(29, 98, 60); paths[59] = new path(30, 104, 74); paths[61] = new path(31, 55, 64); paths[63] = new path(32, 57, 66); paths[65] = new path(33, 59, 80); paths[67] = new path(-1, 61, 70); paths[69] = new path(35, 63, 72); paths[71] = new path(36, 65, 86); paths[73] = new path(37, 103, 76); paths[75] = new path(38, 105, 78); paths[77] = new path(39, 107, 20); paths[79] = new path(40, 73, 82); paths[81] = new path(41, 75, 84); paths[83] = new path(42, 77, 26); paths[85] = new path(43, 79, 88); paths[87] = new path(44, 81, 90); paths[89] = new path(-1, 83, 32); paths[91] = new path(46, 5, 94); paths[93] = new path(47, 3, 96); paths[95] = new path(-1, 1, 23); paths[97] = new path(49, 91, 100); paths[99] = new path(50, 93, 102); paths[101] = new path(51, 95, 21); paths[103] = new path(52, 97, 106); paths[105] = new path(53, 99, 108); paths[107] = new path(54, 101, 19); var i = 1; while (i <= 107) { d1 = paths[i].destinationPaths[1]; d2 = paths[i].destinationPaths[2]; paths[i + 1].destinationPaths[1] = d2; paths[i + 1].destinationPaths[2] = d1; paths[i + 1].pathSwitchNumber = paths[i].pathSwitchNumber; i = i + 2; } var i = 1; while (i <= 54) { pathSwitches[i] = new pathSwitch(); i++; } var triangle = new wall(7, "txWall_Triangle", 0, false); var screens = new Array(); var i = 1; while (i <= 6) { screens[i] = new wall(i + 7, "txWall_Screen", 0, false); trace((("SCREEN " + i) + " = ") + screens[i].wallNumber); setupWall(screens[i]); i++; } var rooms = new Array(); rooms[0] = new room("PuzzleH"); rooms[0].walls[1] = new wall(1, "txWall_SwitchCorner", -90, false, 13, 14); rooms[0].walls[2] = new wall(2, "txWall_DoorCorner", -90, false, 1); rooms[0].walls[3] = new wall(3, "txWall_DoorCorner", 180, false, 1); rooms[0].walls[4] = new wall(4, "txWall_SwitchCorner", 180, false, 35, 36); rooms[0].walls[5] = new wall(5, "txWall_DoorCorner", 90, false, 1); rooms[0].walls[6] = new wall(6, "txWall_SwitchCorner", 0, false, 37, 38); rooms[1] = new room("PuzzleA"); rooms[1].walls[1] = new wall(1, "txWall_DoorCorner", -90, false, 1); rooms[1].walls[2] = new wall(2, "txWall_DoorEdge", 180, false, 1); rooms[1].walls[3] = new wall(3, "txWall_DoorCorner", 180, false, 1); rooms[1].walls[4] = new wall(4, "txWall_SwitchEdge", 180, false, 33, 34); rooms[1].walls[5] = new wall(5, "txWall_DoorEdge", 90, false, 1); rooms[1].walls[6] = new wall(6, "txWall_SwitchEdge", -90, false, 43, 44); rooms[2] = new room("PuzzleO"); rooms[2].walls[1] = new wall(1, "txWall_DoorCorner", -90, false, 1); rooms[2].walls[2] = new wall(2, "txWall_DoorCorner", 180, false, 1); rooms[2].walls[3] = new wall(3, "txWall_Source", 180, false, 1, 89, 90); rooms[2].walls[4] = new wall(4, "txWall_SwitchCorner", -90, false, 31, 32); rooms[2].walls[5] = new wall(5, "txWall_DoorCorner", 180, false, 1); rooms[2].walls[6] = new wall(6, "txWall_SwitchCorner", -90, false, 49, 50); rooms[3] = new room("PuzzleS"); rooms[3].walls[1] = new wall(1, "txWall_SwitchEdge", -90, false, 7, 8); rooms[3].walls[2] = new wall(2, "txWall_DoorEdge", -90, false, 1); rooms[3].walls[3] = new wall(3, "txWall_DoorEdge", 90, false, 1); rooms[3].walls[4] = new wall(4, "txWall_SwitchEdge", 90, false, 29, 30); rooms[3].walls[5] = new wall(5, "txWall_DoorCorner", 90, false, 1); rooms[3].walls[6] = new wall(6, "txWall_DoorCorner", 0, false, 1); rooms[4] = new room("PuzzleI"); rooms[4].walls[1] = new wall(1, "txWall_DoorMiddle", -90, false, 1); rooms[4].walls[2] = new wall(2, "txWall_Spyhole", 0, false, 4); rooms[4].walls[3] = new wall(3, "txWall_DoorMiddle", 90, false, 1); rooms[4].walls[4] = new wall(4, "txWall_Projector", 0, false, 27, 28, 4); rooms[4].walls[5] = new wall(5, "txWall_DoorMiddle", 90, false, 1); rooms[4].walls[6] = new wall(6, "txWall_DoorMiddle", -90, false, 1); rooms[5] = new room("PuzzleU"); rooms[5].walls[1] = new wall(1, "txWall_DoorEdge", -90, false, 1); rooms[5].walls[2] = new wall(2, "txWall_DoorEdge", 90, false, 1); rooms[5].walls[3] = new wall(3, "txWall_SwitchEdge", 90, false, 83, 84); rooms[5].walls[4] = new wall(4, "txWall_SwitchEdge", -90, false, 25, 26); rooms[5].walls[5] = new wall(5, "txWall_DoorCorner", 180, false, 1); rooms[5].walls[6] = new wall(6, "txWall_DoorCorner", -90, false, 1); rooms[6] = new room("PuzzleD"); rooms[6].walls[1] = new wall(1, "txWall_SwitchCorner", 0, false, 1, 2); rooms[6].walls[2] = new wall(2, "txWall_DoorCorner", 0, false, 1); rooms[6].walls[3] = new wall(3, "txWall_DoorCorner", 90, false, 1); rooms[6].walls[4] = new wall(4, "txWall_SwitchCorner", 90, false, 23, 24); rooms[6].walls[5] = new wall(5, "txWall_Source", 90, false, 2, 95, 96); rooms[6].walls[6] = new wall(6, "txWall_DoorCorner", 0, false, 1); rooms[7] = new room("PuzzleW"); rooms[7].walls[1] = new wall(1, "txWall_DoorCorner", 0, false, 1); rooms[7].walls[2] = new wall(2, "txWall_DoorEdge", 0, false, 1); rooms[7].walls[3] = new wall(3, "txWall_DoorCorner", 90, false, 1); rooms[7].walls[4] = new wall(4, "txWall_SwitchEdge", 0, false, 21, 22); rooms[7].walls[5] = new wall(5, "txWall_SwitchEdge", 90, false, 101, 102); rooms[7].walls[6] = new wall(6, "txWall_DoorEdge", -90, false, 1); rooms[8] = new room("PuzzleY"); rooms[8].walls[1] = new wall(1, "txWall_DoorCorner", 0, false, 1); rooms[8].walls[2] = new wall(2, "txWall_DoorCorner", 90, false, 1); rooms[8].walls[3] = new wall(3, "txWall_SwitchCorner", 90, false, 77, 78); rooms[8].walls[4] = new wall(4, "txWall_SwitchCorner", 0, false, 19, 20); rooms[8].walls[5] = new wall(5, "txWall_SwitchCorner", 180, false, 107, 108); rooms[8].walls[6] = new wall(6, "txWall_DoorCorner", -90, false, 1); rooms[9] = new room("PuzzleT"); rooms[9].walls[1] = new wall(1, "txWall_SwitchEdge", 180, false, 15, 16); rooms[9].walls[2] = new wall(2, "txWall_DoorCorner", -90, false, 1); rooms[9].walls[3] = new wall(3, "txWall_DoorEdge", 180, false, 1); rooms[9].walls[4] = new wall(4, "txWall_DoorCorner", 180, false, 1); rooms[9].walls[5] = new wall(5, "txWall_DoorEdge", 0, false, 1); rooms[9].walls[6] = new wall(6, "txWall_SwitchEdge", 0, false, 39, 40); rooms[10] = new room("PuzzleL"); rooms[10].walls[1] = new wall(1, "txWall_DoorMiddle", 180, false, 1); rooms[10].walls[2] = new wall(2, "txWall_DoorMiddle", 180, false, 1); rooms[10].walls[3] = new wall(3, "txWall_DoorMiddle", 180, false, 1); rooms[10].walls[4] = new wall(4, "txWall_DoorMiddle", 180, false, 1); rooms[10].walls[5] = new wall(5, "txWall_Spyhole", 0, false, 6); rooms[10].walls[6] = new wall(6, "txWall_Projector", 0, false, 45, 46, 6); rooms[11] = new room("PuzzleC"); rooms[11].walls[1] = new wall(1, "txWall_DoorEdge", 180, false, 1); rooms[11].walls[2] = new wall(2, "txWall_DoorCorner", 180, false, 1); rooms[11].walls[3] = new wall(3, "txWall_SwitchEdge", 180, false, 87, 88); rooms[11].walls[4] = new wall(4, "txWall_DoorCorner", -90, false, 1); rooms[11].walls[5] = new wall(5, "txWall_DoorEdge", 180, false, 1); rooms[11].walls[6] = new wall(6, "txWall_SwitchEdge", 180, false, 51, 52); rooms[12] = new room("PuzzleK"); rooms[12].walls[1] = new wall(1, "txWall_Projector", 0, false, 9, 10, 1); rooms[12].walls[2] = new wall(2, "txWall_DoorMiddle", -90, false, 1); rooms[12].walls[3] = new wall(3, "txWall_Spyhole", 0, false, 1); rooms[12].walls[4] = new wall(4, "txWall_DoorMiddle", 90, false, 1); rooms[12].walls[5] = new wall(5, "txWall_DoorMiddle", 0, false, 1); rooms[12].walls[6] = new wall(6, "txWall_DoorMiddle", 0, false, 1); rooms[13] = new room("Puzzle?"); rooms[13].walls[1] = new wall(1, "txWall_SpyholeFlip", 0, false, 1); rooms[13].walls[2] = new wall(2, "txWall_SpyholeFlip", 0, false, 2); rooms[13].walls[3] = new wall(3, "txWall_SpyholeFlip", 0, false, 3); rooms[13].walls[4] = new wall(4, "txWall_SpyholeFlip", 0, false, 4); rooms[13].walls[5] = new wall(5, "txWall_SpyholeFlip", 0, false, 5); rooms[13].walls[6] = new wall(6, "txWall_SpyholeFlip", 0, false, 6); rooms[14] = new room("PuzzleP"); rooms[14].walls[1] = new wall(1, "txWall_Spyhole", 0, false, 3); rooms[14].walls[2] = new wall(2, "txWall_DoorMiddle", 90, false, 1); rooms[14].walls[3] = new wall(3, "txWall_Projector", 0, false, 81, 82, 3); rooms[14].walls[4] = new wall(4, "txWall_DoorMiddle", -90, false, 1); rooms[14].walls[5] = new wall(5, "txWall_DoorMiddle", 180, false, 1); rooms[14].walls[6] = new wall(6, "txWall_DoorMiddle", 180, false, 1); rooms[15] = new room("PuzzleV"); rooms[15].walls[1] = new wall(1, "txWall_SwitchEdge", 0, false, 3, 4); rooms[15].walls[2] = new wall(2, "txWall_DoorCorner", 0, false, 1); rooms[15].walls[3] = new wall(3, "txWall_DoorEdge", 0, false, 1); rooms[15].walls[4] = new wall(4, "txWall_DoorCorner", 90, false, 1); rooms[15].walls[5] = new wall(5, "txWall_SwitchEdge", 0, false, 93, 94); rooms[15].walls[6] = new wall(6, "txWall_DoorEdge", 0, false, 1); rooms[16] = new room("PuzzleM"); rooms[16].walls[1] = new wall(1, "txWall_DoorMiddle", 0, false, 1); rooms[16].walls[2] = new wall(2, "txWall_DoorMiddle", 0, false, 1); rooms[16].walls[3] = new wall(3, "txWall_DoorMiddle", 0, false, 1); rooms[16].walls[4] = new wall(4, "txWall_DoorMiddle", 0, false, 1); rooms[16].walls[5] = new wall(5, "txWall_Projector", 0, false, 99, 100, 5); rooms[16].walls[6] = new wall(6, "txWall_Spyhole", 0, false, 5); rooms[17] = new room("PuzzleR"); rooms[17].walls[1] = new wall(1, "txWall_DoorEdge", 0, false, 1); rooms[17].walls[2] = new wall(2, "txWall_DoorCorner", 90, false, 1); rooms[17].walls[3] = new wall(3, "txWall_SwitchEdge", 0, false, 75, 76); rooms[17].walls[4] = new wall(4, "txWall_DoorCorner", 0, false, 1); rooms[17].walls[5] = new wall(5, "txWall_SwitchEdge", 180, false, 105, 106); rooms[17].walls[6] = new wall(6, "txWall_DoorEdge", 180, false, 1); rooms[18] = new room("PuzzleB"); rooms[18].walls[1] = new wall(1, "txWall_SwitchCorner", 180, false, 17, 18); rooms[18].walls[2] = new wall(2, "txWall_Source", -90, false, 3, 67, 68); rooms[18].walls[3] = new wall(3, "txWall_DoorCorner", -90, false, 1); rooms[18].walls[4] = new wall(4, "txWall_DoorCorner", 180, false, 1); rooms[18].walls[5] = new wall(5, "txWall_DoorCorner", 0, false, 1); rooms[18].walls[6] = new wall(6, "txWall_SwitchCorner", 90, false, 41, 42); rooms[19] = new room("PuzzleX"); rooms[19].walls[1] = new wall(1, "txWall_DoorCorner", 180, false, 1); rooms[19].walls[2] = new wall(2, "txWall_SwitchEdge", 180, false, 69, 70); rooms[19].walls[3] = new wall(3, "txWall_DoorCorner", -90, false, 1); rooms[19].walls[4] = new wall(4, "txWall_DoorEdge", 180, false, 1); rooms[19].walls[5] = new wall(5, "txWall_DoorEdge", -90, false, 1); rooms[19].walls[6] = new wall(6, "txWall_SwitchEdge", 90, false, 47, 48); rooms[20] = new room("PuzzleF"); rooms[20].walls[1] = new wall(1, "txWall_DoorCorner", 180, false, 1); rooms[20].walls[2] = new wall(2, "txWall_SwitchCorner", 180, false, 71, 72); rooms[20].walls[3] = new wall(3, "txWall_SwitchCorner", -90, false, 85, 86); rooms[20].walls[4] = new wall(4, "txWall_DoorCorner", -90, false, 1); rooms[20].walls[5] = new wall(5, "txWall_DoorCorner", -90, false, 1); rooms[20].walls[6] = new wall(6, "txWall_SwitchCorner", 180, false, 53, 54); rooms[21] = new room("PuzzleN"); rooms[21].walls[1] = new wall(1, "txWall_SwitchEdge", 90, false, 11, 12); rooms[21].walls[2] = new wall(2, "txWall_SwitchEdge", -90, false, 61, 62); rooms[21].walls[3] = new wall(3, "txWall_DoorEdge", -90, false, 1); rooms[21].walls[4] = new wall(4, "txWall_DoorEdge", 90, false, 1); rooms[21].walls[5] = new wall(5, "txWall_DoorCorner", 0, false, 1); rooms[21].walls[6] = new wall(6, "txWall_DoorCorner", 90, false, 1); rooms[22] = new room("PuzzleE"); rooms[22].walls[1] = new wall(1, "txWall_DoorMiddle", 90, false, 1); rooms[22].walls[2] = new wall(2, "txWall_Projector", 0, false, 63, 64, 2); rooms[22].walls[3] = new wall(3, "txWall_DoorMiddle", -90, false, 1); rooms[22].walls[4] = new wall(4, "txWall_Spyhole", 0, false, 2); rooms[22].walls[5] = new wall(5, "txWall_DoorMiddle", -90, false, 1); rooms[22].walls[6] = new wall(6, "txWall_DoorMiddle", 90, false, 1); rooms[23] = new room("PuzzleG"); rooms[23].walls[1] = new wall(1, "txWall_DoorEdge", 90, false, 1); rooms[23].walls[2] = new wall(2, "txWall_SwitchEdge", 90, false, 65, 66); rooms[23].walls[3] = new wall(3, "txWall_SwitchEdge", -90, false, 79, 80); rooms[23].walls[4] = new wall(4, "txWall_DoorEdge", -90, false, 1); rooms[23].walls[5] = new wall(5, "txWall_DoorCorner", -90, false, 1); rooms[23].walls[6] = new wall(6, "txWall_DoorCorner", 180, false, 1); rooms[24] = new room("PuzzleQ"); rooms[24].walls[1] = new wall(1, "txWall_SwitchCorner", 90, false, 5, 6); rooms[24].walls[2] = new wall(2, "txWall_SwitchCorner", 0, false, 55, 56); rooms[24].walls[3] = new wall(3, "txWall_DoorCorner", 0, false, 1); rooms[24].walls[4] = new wall(4, "txWall_DoorCorner", 90, false, 1); rooms[24].walls[5] = new wall(5, "txWall_SwitchCorner", 0, false, 91, 92); rooms[24].walls[6] = new wall(6, "txWall_DoorCorner", 90, false, 1); rooms[25] = new room("PuzzleJ"); rooms[25].walls[1] = new wall(1, "txWall_DoorCorner", 90, false, 1); rooms[25].walls[2] = new wall(2, "txWall_SwitchEdge", 0, false, 57, 58); rooms[25].walls[3] = new wall(3, "txWall_DoorCorner", 0, false, 1); rooms[25].walls[4] = new wall(4, "txWall_DoorEdge", 0, false, 1); rooms[25].walls[5] = new wall(5, "txWall_SwitchEdge", -90, false, 97, 98); rooms[25].walls[6] = new wall(6, "txWall_DoorEdge", 90, false, 1); rooms[26] = new room("PuzzleZ"); rooms[26].walls[1] = new wall(1, "txWall_DoorCorner", 90, false, 1); rooms[26].walls[2] = new wall(2, "txWall_SwitchCorner", 90, false, 59, 60); rooms[26].walls[3] = new wall(3, "txWall_SwitchCorner", 0, false, 73, 74); rooms[26].walls[4] = new wall(4, "txWall_DoorCorner", 0, false, 1); rooms[26].walls[5] = new wall(5, "txWall_SwitchCorner", -90, false, 103, 104); rooms[26].walls[6] = new wall(6, "txWall_DoorCorner", 180, false, 1); function saveGame() { trace("Saving..."); user.data.heading = heading; user.data.pitch = pitch; user.data.bank = bank; user.data.currentRoom = currentRoom; user.data.currentRoomNumber = currentRoomNumber; var _local2 = []; var _local1 = 0; while (_local1 <= 26) { aRoom = rooms[_local1]; _local2[_local1] = aRoom.solved; _local1++; } user.data.solvedPuzzles = _local2; user.data.pathSwitches = pathSwitches; user.data.sources = sources; trace("====================="); trace(" SAVED "); for (name in user.data) { trace((("." + name) + " = ") + user.data[name]); } _local1 = 0; while (_local1 < 8) { _local1++; } trace("====================="); user.flush(); } function loadGame() { trace("Loading..."); heading = user.data.heading; pitch = user.data.pitch; bank = user.data.bank; currentRoom = user.data.currentRoom; currentRoomNumber = user.data.currentRoomNumber; solvedPuzzles = user.data.solvedPuzzles; var _local1 = 0; while (_local1 <= 26) { aRoom = rooms[_local1]; aRoom.solved = solvedPuzzles[_local1]; _local1++; } pathSwitches = user.data.pathSwitches; sources = user.data.sources; trace("====================="); trace(" LOADED "); for (name in user.data) { trace((("." + name) + " = ") + user.data[name]); } trace("====================="); _local1 = 1; while (_local1 <= 3) { trace("YOY"); aSource = sources[_local1]; if (aSource.active == false) { resolvePaths(aSource.destinationPath, "NONE"); } else { resolvePaths(aSource.destinationPath, aSource.sourceColor); } _local1++; } _local1 = 1; while (_local1 <= 6) { aProjector = projectors[_local1]; aProjector.doUpdate(); trace("UPDATE"); _local1++; } user.flush(); } var heading = 0; var pitch = 0; var bank = 0; var centreX = 0; var centreY = 0; var centreZ = 0; var scaleX = 2; var scaleY = 2; var scaleZ = 2; _root.aTheta = 0; _root.onPress = function () { }; var x0 = 175; var y0 = 125; _root.flagGameOver = false; var currentRoom = 1; var nextRoom = 1; var puzzleConfig = new Object(); var gameMode = "STARTUP"; var gameModeSteps = 40; var gameModeCurrentStep = 1; var roomArray; var t = new Array(); var p = new Array(); var tmpArray = new Array(); var pointArray = new Array(); t[1] = {x:-125, y:-125, z:125}; t[2] = {x:125, y:-125, z:125}; t[3] = {x:-125, y:125, z:125}; t[4] = {x:125, y:125, z:125}; t[5] = {x:-125, y:-125, z:-125}; t[6] = {x:125, y:-125, z:-125}; t[7] = {x:-125, y:125, z:-125}; t[8] = {x:125, y:125, z:-125}; t[9] = {x:129, y:-129, z:-89}; t[10] = {x:89, y:-129, z:-129}; t[11] = {x:149, y:-89, z:-109}; i = 1; while (i <= 11) { p[i] = {x:0, y:0, z:0}; tmpArray[i] = t[i]; pointArray[i] = p[i]; i++; } i = 0; while (i < tmpArray.length) { _root.pointArray[i].x = (_root.tmpArray[i].x - centreX) * scaleX; _root.pointArray[i].y = (_root.tmpArray[i].y - centreY) * scaleY; _root.pointArray[i].z = (_root.tmpArray[i].z - centreZ) * scaleZ; i++; } _root.i3dStage._visible = false; _root.i3dStage._alpha = 0; var numPolygons = 13; _root.clipArray = new Array(); k = 1; while (k < (numPolygons + 1)) { duplicateMovieClip (i3dStage.obj, "obj" + k, 100 + k); var clip = _root.i3dStage["obj" + k]; clipArray[k] = clip; k++; } var allPlanets = new Array(); var i = 1; while (i <= 6) { var tmpObj = _root.i3dStage.attachMovie("aniPlanet", "iPlanet" + i, 50050 + i); allPlanets[i] = new planet(); allPlanets[i].targetObject = tmpObj; tmpObj._visible = false; i++; } _root.i3dStage.attachMovie("aniSun", "iSun", 50501); _root.i3dStage.iSun._visible = false; allPlanets[2].init("RED", 2, 1, 5, 2, 0.4, 0.4, 0.2); allPlanets[1].init("GREEN", 0.1, 2, 1, 6, 0.3, 0.3, 0.4); allPlanets[4].init("BLUE", 0.3, 7, 6, 8, 0.25, 0.45, 1); allPlanets[5].init("CYAN", 0.2, 8, 4, 3, 0.2, 0.2, 0.7); allPlanets[3].init("YELLOW", 0.4, 4, 2, 8, 0.35, 0.15, 1.2); allPlanets[6].init("MAGENTA", 0.6, 6, 1, 5, 0.15, 0.35, 1.6); _root.i3dStage.attachMovie("btnSpyholeMask", "iSpyholeMask", 100000); _root.i3dStage.iSpyholeMask._visible = false; _root.iIntermediary._visible = false; _root.iIntermediary2._visible = false; var targetObject = null; clipArray[1].reg = {pt0:p[1], pW:p[2], pH:p[3]}; clipArray[2].reg = {pt0:p[2], pW:p[6], pH:p[4]}; clipArray[3].reg = {pt0:p[6], pW:p[5], pH:p[8]}; clipArray[4].reg = {pt0:p[5], pW:p[1], pH:p[7]}; clipArray[5].reg = {pt0:p[2], pW:p[1], pH:p[6]}; clipArray[6].reg = {pt0:p[3], pW:p[4], pH:p[7]}; clipArray[7].reg = {pt0:p[9], pW:p[10], pH:p[11], dp:510, tx:"txWallTriangle"}; clipArray[8].reg = {pt0:p[1], pW:p[2], pH:p[3]}; clipArray[9].reg = {pt0:p[2], pW:p[6], pH:p[4]}; clipArray[10].reg = {pt0:p[6], pW:p[5], pH:p[8]}; clipArray[11].reg = {pt0:p[5], pW:p[1], pH:p[7]}; clipArray[12].reg = {pt0:p[2], pW:p[1], pH:p[6]}; clipArray[13].reg = {pt0:p[3], pW:p[4], pH:p[7]}; render2dScaleX = new demon(); render2dScaleY = new demon(); render2dOffsetX = new demon(); render2dOffsetY = new demon(); render2dAlpha = new demon(); render2dBrightness = new demon(); render2dBrightness.targetColor = new Color(_root.i3dStage); render2dTintRed = new demon(); render2dTintGreen = new demon(); render2dTintBlue = new demon(); render2dTintRed.currentValue = 150; render2dTintGreen.currentValue = 150; render2dTintBlue.currentValue = 150; render2dBrightness.currentValue = 100; render2dScaleX.currentValue = 100; render2dScaleY.currentValue = 100; render2dAlpha.currentValue = 100; decalTintRed = new demon(); decalTintGreen = new demon(); decalTintBlue = new demon(); decalTintRed.currentValue = 100; decalTintGreen.currentValue = 100; decalTintBlue.currentValue = 100; decalAlpha = new demon(); decalAlpha.currentValue = 10; intermediaryScale = new demon(); screenScale = new demon(); screenScale.currentValue = 0; puzzleAlpha = new demon(); puzzleAlpha.currentValue = 0; puzzleBackgroundAlpha = new demon(); puzzleBackgroundAlpha.currentValue = 100; setRoomArray([1, 2, 3, 4, 5, 6, 7]); var currentRoom; currentRoom = {x:1, y:1, z:1}; var currentRoomNumber = getRoomNumber(currentRoom); trace("CURR " + currentRoomNumber); var puzzleConfig = {}; if (_global.startMode == "loadgame") { loadGame(); }
Frame 184
_root.renderAll(); if (_root.flagGameOver == false) { gotoAndPlay (183); } else { gotoAndPlay ("EndGame"); }
Frame 195
gotoAndPlay (196);
Frame 231
stop();
Symbol 36 MovieClip Frame 22
gotoAndPlay (1);
Symbol 37 MovieClip Frame 1
stop();
Symbol 37 MovieClip Frame 20
stop();
Symbol 37 MovieClip Frame 40
stop();
Symbol 46 MovieClip Frame 60
gotoAndPlay (1);
Symbol 47 MovieClip Frame 1
this.onPress = function () { _root.handleTriangleButtonPress(); }; stop();
Symbol 47 MovieClip Frame 16
stop();
Symbol 47 MovieClip Frame 35
stop();
Symbol 47 MovieClip Frame 50
gotoAndStop ("moireOn");
Symbol 50 MovieClip [txWall_Triangle] Frame 1
this.registerDecals = function () { _root.registerDecalTintTarget(this.iDecal1); };
Symbol 68 MovieClip Frame 1
stop(); var myColor; this.onPress = function () { _root.handleSourcePress(this); };
Symbol 68 MovieClip Frame 5
_root.handleSwitchRingTurnFinish(this);
Symbol 68 MovieClip Frame 25
stop();
Symbol 68 MovieClip Frame 45
_root.handleSwitchRingTurnFinish(this); stop();
Symbol 72 MovieClip Frame 1
stop();
Symbol 72 MovieClip Frame 25
stop();
Symbol 72 MovieClip Frame 26
stop();
Symbol 72 MovieClip Frame 45
stop();
Symbol 75 MovieClip [txWall_Source] Frame 1
this.registerDecals = function () { _root.registerDecalTintTarget(this.iDecal1); };
Symbol 85 MovieClip Frame 60
gotoAndPlay (1);
Symbol 86 MovieClip Frame 1
this.onPress = function () { _root.handleSwitchPress(this); }; stop();
Symbol 86 MovieClip Frame 25
stop();
Symbol 86 MovieClip Frame 45
stop();
Symbol 92 MovieClip Frame 1
stop();
Symbol 92 MovieClip Frame 25
stop();
Symbol 92 MovieClip Frame 26
stop();
Symbol 92 MovieClip Frame 55
stop();
Symbol 96 MovieClip Frame 1
stop();
Symbol 96 MovieClip Frame 25
stop();
Symbol 96 MovieClip Frame 26
stop();
Symbol 96 MovieClip Frame 45
stop();
Symbol 101 MovieClip Frame 1
stop();
Symbol 101 MovieClip Frame 25
stop();
Symbol 101 MovieClip Frame 26
stop();
Symbol 101 MovieClip Frame 59
stop();
Symbol 105 MovieClip Frame 1
stop();
Symbol 105 MovieClip Frame 25
stop();
Symbol 105 MovieClip Frame 26
stop();
Symbol 105 MovieClip Frame 59
stop();
Symbol 107 MovieClip Frame 1
stop();
Symbol 107 MovieClip Frame 36
_root.handleSwitchRingTurnFinish(this); _root.XSound.playSound("sndRotorClunk", _root.VOL_ROTORCLUNK, 0, false);
Symbol 107 MovieClip Frame 37
stop();
Symbol 107 MovieClip Frame 80
_root.handleSwitchRingTurnFinish(this); _root.XSound.playSound("sndRotorClunk", _root.VOL_ROTORCLUNK, 0, false);
Symbol 107 MovieClip Frame 81
stop();
Symbol 110 MovieClip Frame 1
stop();
Symbol 110 MovieClip Frame 25
stop();
Symbol 110 MovieClip Frame 59
stop();
Symbol 117 MovieClip Frame 1
var unlocked = false; this.onPress = function () { return(false); }; stop();
Symbol 117 MovieClip Frame 53
_root.XSound.stopSound("sndDoor", "IMMEDIATE"); _root.XSound.playSound("sndDoor", 25, 0, false);
Symbol 117 MovieClip Frame 101
stop();
Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1
this.registerDecals = function () { _root.registerDecalTintTarget(this.iDecal1); };
Symbol 126 MovieClip Frame 506
gotoAndPlay (1);
Symbol 127 MovieClip Frame 1
stop();
Symbol 129 MovieClip [txWall_Projector] Frame 1
this.iButton1._visible = false;
Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1
this.registerDecals = function () { _root.registerDecalTintTarget(this.iDecal1); };
Symbol 144 MovieClip [txWall_SpyholeFlip] Frame 1
this.registerDecals = function () { _root.registerDecalTintTarget(this.iDecal1); };
Symbol 148 MovieClip Frame 1
this.onPress = function () { _root.handleSpyholePress(this); };
Symbol 151 MovieClip [txWall_Spyhole] Frame 1
this.registerDecals = function () { _root.registerDecalTintTarget(this.iDecal1); };
Symbol 156 MovieClip Frame 1
stop(); var myWall; var myNextColor; this._parent.iLines._visible = false; if (this._parent._name.indexOf("iIntermediary") == -1) { this.onPress = function () { _root.handleDoorButtonPress(this); }; }
Symbol 156 MovieClip Frame 12
if (this._parent._name.indexOf("iIntermediary") == -1) { _root.XSound.playSound("sndAirlock", _root.VOL_AIRLOCK, 0, false); }
Symbol 156 MovieClip Frame 54
stop();
Symbol 162 MovieClip Frame 1
this.onPress = function () { _root.handlePortalButtonPress(this); };
Symbol 162 MovieClip Frame 140
gotoAndPlay (1);
Symbol 189 MovieClip [txWall_Screen] Frame 1
stop();
Symbol 197 MovieClip Frame 1
this.onPress = function () { _root.handleZDoorButtonPress(this); };
Symbol 230 MovieClip [puzzleI_Background] Frame 1
gotoAndStop (1);
Symbol 238 MovieClip [puzzleG_Background] Frame 1
gotoAndStop (1);
Symbol 261 MovieClip [puzzleB] Frame 1
this.onPress = function () { _root.handlePuzzleSolved(); };
Symbol 262 MovieClip [objSprite] Frame 1
this.onPress = function () { _root.handleSprite_onPress(this); };
Symbol 270 MovieClip [btnSpyholeMask] Frame 1
this.onPress = function () { _root.handleSpyholeMaskPress(this); };
Symbol 276 MovieClip Frame 1
gotoAndPlay(_root.randomRange(2, 240));
Symbol 276 MovieClip Frame 269
gotoAndPlay (1);
Symbol 278 MovieClip [blixW2] Frame 1
gotoAndPlay(_root.randomRange(1, 100));
Symbol 278 MovieClip [blixW2] Frame 297
gotoAndPlay (1);
Symbol 279 MovieClip [blixW] Frame 1
gotoAndPlay(_root.randomRange(1, 100));
Symbol 279 MovieClip [blixW] Frame 297
gotoAndPlay (1);
Symbol 280 MovieClip [blixA] Frame 297
gotoAndPlay (1);
Symbol 326 MovieClip [shapeH2] Frame 1
stop();
Symbol 328 MovieClip [shapeH1] Frame 1
stop();
Symbol 329 MovieClip [shapeG1] Frame 1
stop();
Symbol 331 MovieClip [shapeG5] Frame 1
stop();
Symbol 333 MovieClip [shapeG4] Frame 1
stop();
Symbol 334 MovieClip [shapeG3] Frame 1
stop();
Symbol 335 MovieClip [shapeG2] Frame 1
stop();
Symbol 338 MovieClip [shapeF1] Frame 1
stop();
Symbol 338 MovieClip [shapeF1] Frame 15
stop();
Symbol 338 MovieClip [shapeF1] Frame 30
stop();
Symbol 341 MovieClip [shapeZ2] Frame 1
stop();
Symbol 348 MovieClip [shapeE2] Frame 1
if ((this.targetSprite.flagWrongShadow == true) && (this._name != "shape")) { this.targetSprite.changeMode = "IMMEDIATE"; gotoAndStop (2); } else { stop(); }
Symbol 353 MovieClip [shapeE4] Frame 1
if ((this.targetSprite.flagWrongShadow == true) && (this._name != "shape")) { this.targetSprite.changeMode = "IMMEDIATE"; gotoAndStop (2); } else { stop(); }
Symbol 358 MovieClip [shapeE3] Frame 1
if ((this.targetSprite.flagWrongShadow == true) && (this._name != "shape")) { this.targetSprite.changeMode = "IMMEDIATE"; gotoAndStop (2); } else { stop(); }
Symbol 363 MovieClip [shapeE1] Frame 1
if ((this.targetSprite.flagWrongShadow == true) && (this._name != "shape")) { this.targetSprite.changeMode = "IMMEDIATE"; gotoAndStop (2); } else { stop(); }
Symbol 373 MovieClip [shapeHINT1] Frame 1
stop();
Symbol 373 MovieClip [shapeHINT1] Frame 2
stop();
Symbol 373 MovieClip [shapeHINT1] Frame 3
stop();
Symbol 435 MovieClip Frame 50
gotoAndPlay (1);
Symbol 438 MovieClip [shapeJ3] Frame 20
stop();
Symbol 438 MovieClip [shapeJ3] Frame 40
stop();
Symbol 438 MovieClip [shapeJ3] Frame 65
stop();
Symbol 438 MovieClip [shapeJ3] Frame 85
stop();
Symbol 438 MovieClip [shapeJ3] Frame 110
stop();
Symbol 438 MovieClip [shapeJ3] Frame 130
stop();
Symbol 439 MovieClip [shapeJ2] Frame 20
stop();
Symbol 439 MovieClip [shapeJ2] Frame 40
stop();
Symbol 439 MovieClip [shapeJ2] Frame 65
stop();
Symbol 439 MovieClip [shapeJ2] Frame 85
stop();
Symbol 439 MovieClip [shapeJ2] Frame 110
stop();
Symbol 439 MovieClip [shapeJ2] Frame 130
stop();
Symbol 440 MovieClip [shapeJ1] Frame 20
stop();
Symbol 440 MovieClip [shapeJ1] Frame 40
stop();
Symbol 440 MovieClip [shapeJ1] Frame 65
stop();
Symbol 440 MovieClip [shapeJ1] Frame 85
stop();
Symbol 440 MovieClip [shapeJ1] Frame 110
stop();
Symbol 440 MovieClip [shapeJ1] Frame 130
stop();
Symbol 443 MovieClip [shapeK3] Frame 20
stop();
Symbol 443 MovieClip [shapeK3] Frame 40
stop();
Symbol 444 MovieClip [shapeK2] Frame 20
stop();
Symbol 444 MovieClip [shapeK2] Frame 40
stop();
Symbol 445 MovieClip [shapeK1] Frame 20
stop();
Symbol 445 MovieClip [shapeK1] Frame 40
stop();
Symbol 504 MovieClip [shapeL1] Frame 169
gotoAndPlay (5);
Symbol 516 MovieClip [btnIntermediary] Frame 10
stop();
Symbol 520 MovieClip Frame 1
this.onPress = function () { if (_root.hasSavedGame() == false) { return(undefined); } if (_root.flagButtonPressed == false) { _root.flagButtonPressed = true; gotoAndPlay ("press"); } }; this.onRollOver = function () { if (_root.flagButtonPressed == false) { gotoAndPlay ("hover"); } }; stop();
Symbol 520 MovieClip Frame 14
gotoAndStop ("off");
Symbol 520 MovieClip Frame 26
_root.loadGame();
Symbol 520 MovieClip Frame 28
stop();
Symbol 520 MovieClip Frame 30
stop();
Symbol 522 MovieClip Frame 1
this.onPress = function () { if (_root.flagButtonPressed == false) { _root.flagButtonPressed = true; gotoAndPlay ("press"); } }; this.onRollOver = function () { if (_root.flagButtonPressed == false) { gotoAndPlay ("hover"); } }; stop();
Symbol 522 MovieClip Frame 14
gotoAndStop ("off");
Symbol 522 MovieClip Frame 26
_root.startNewGame();
Symbol 522 MovieClip Frame 27
Symbol 525 MovieClip Frame 1
this.onPress = function () { if (_root.flagButtonPressed == false) { _root.flagButtonPressed = true; gotoAndPlay ("press"); } }; this.onRollOver = function () { if (_root.flagButtonPressed == false) { gotoAndPlay ("hover"); } }; stop();
Symbol 525 MovieClip Frame 14
gotoAndStop ("off");
Symbol 525 MovieClip Frame 26
_root.startNewGame();
Symbol 525 MovieClip Frame 27
Symbol 533 MovieClip Frame 1
this.onPress = function () { gotoAndPlay (5); _root.startGame(); }; stop();
Symbol 535 MovieClip Frame 82
gotoAndPlay (1);
Symbol 538 MovieClip Frame 1
this.onPress = function () { };
Symbol 543 MovieClip Frame 1
function updateStars() { sinCounter = sinCounter + 0.012; var _local2 = 1; while (_local2 <= maxStars) { tmpObj = stars[_local2]; counter[_local2] = counter[_local2] * zoomBy; if (counter[_local2] < 0.1) { tmpObj._rotation = _root.randomRange(0, 360); counter[_local2] = 100; xs[_local2] = 0 + (Math.sin(sinCounter) * 116); ys[_local2] = 0 + (Math.sin(sinCounter) * 116); } if (counter[_local2] > 100) { tmpObj._rotation = _root.randomRange(0, 360); counter[_local2] = 0.1; xs[_local2] = 0 + (Math.sin(sinCounter) * 106); ys[_local2] = 0 + (Math.sin(sinCounter * 0.9) * 70); } aPortion = counter[_local2] / 100; tmpObj._xscale = 2600 * aPortion; tmpObj._yscale = 2600 * aPortion; tmpObj._x = xs[_local2]; tmpObj._y = ys[_local2]; aTurnby = 0 + (Math.sin(sinCounter) * 16); tmpObj._rotation = tmpObj._rotation + (aTurnby * aPortion); _local2++; } } var maxStars = 15; var maxCounter = 100; var stars = []; var counter = []; var xs = []; var ys = []; var zoomBy = 0.97; zoomBy = 1.02; var turnBy = 1; var sinCounter = 0; var i = 1; while (i <= maxStars) { tmpObj = this.attachMovie("grENDGAME_stars", "stars" + i, i); tmpObj._rotation = i * 30; stars[i] = tmpObj; counter[i] = (i * maxCounter) / maxStars; var ii = 1; while (ii <= (i * 1234)) { counter[i] = counter[i] * zoomBy; if (counter[i] < 0.1) { counter[i] = 100; } if (counter[i] > 100) { counter[i] = 0.1; } ii++; } i++; }
Symbol 543 MovieClip Frame 3
updateStars(); gotoAndPlay (2);
Symbol 547 MovieClip Frame 1
this.onPress = function () { if (this._currentframe != 1) { return(undefined); } trace("NAME" + _parent.UserInformation.UserName); aName = _parent.UserInformation.UserName; if (aName.length > 1) { _parent.UserInformation.SaveUserInformation(); _root.currentDegree = -999; gotoAndPlay ("press"); } }; this.onRollOver = function () { }; this.onRollOut = function () { }; stop();
Symbol 547 MovieClip Frame 2
stop();
Symbol 547 MovieClip Frame 23
getURL (("http://www.woolythinking.com/scoresComplex.php?filename=scores/" + _global.HallOfFameName) + ".sco&scoresize=10&action=VIEW&viewtype=HTML", "_parent"); stop();
Symbol 555 MovieClip Frame 1
function SaveUserInformation() { userName = String.toLowerCase(userName); userComment = String.toLowerCase(userComment); sCommand = ((((("http://www.woolythinking.com/scores.php?filename=scores/" + _global.HallOfFameName) + ".sco&scoresize=10&action=RUBYINSERT&winname=") + UserName) + "&winscore=") + UserComment) + "&viewtype=FLASH"; this.loadVariables(sCommand, "POST"); user.data.currentRoomNumber = -111; user.flush(); }

Library Items

Symbol 1 Sound [sourceOn.wav]
Symbol 2 Sound [sourceOff.wav]
Symbol 3 Sound [rotorClunk.wav]
Symbol 4 Sound [rotor.wav]
Symbol 5 Sound [puzzleSolved.wav]
Symbol 6 Sound [puzzleOpen2.wav]
Symbol 7 Sound [puzzleAmbience.wav]
Symbol 8 Sound [orbits.wav]
Symbol 9 Sound [eerieStab9.wav]
Symbol 10 Sound [eerieStab8.wav]
Symbol 11 Sound [eerieStab7.wav]
Symbol 12 Sound [eerieStab5.wav]
Symbol 13 Sound [eerieStab4.wav]
Symbol 14 Sound [eerieStab3.wav]
Symbol 15 Sound [eerieStab2.wav]
Symbol 16 Sound [door1.wav]
Symbol 17 Sound [d7_beep1]
Symbol 18 Sound [chime5.wav]
Symbol 19 Sound [chime4.wav]
Symbol 20 Sound [chime3.wav]
Symbol 21 Sound [ambience1.wav]
Symbol 22 Sound [AirlockShort1.wav]
Symbol 23 Sound [eerieStab1.wav]Used by:Timeline
Symbol 24 Sound [chime2.wav]Used by:522 525
Symbol 25 Sound [chime1.wav]Used by:520 547
Symbol 26 Sound [chime6.wav]Used by:520 522 525
Symbol 27 MovieClip [objPuzzleHolder2]
Symbol 28 GraphicUsed by:29
Symbol 29 MovieClipUses:28Used by:30
Symbol 30 MovieClip [Star]Uses:29
Symbol 31 MovieClip [empty]
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClipUses:32Used by:50
Symbol 34 GraphicUsed by:37
Symbol 35 GraphicUsed by:36
Symbol 36 MovieClipUses:35Used by:37
Symbol 37 MovieClipUses:34 36Used by:50
Symbol 38 GraphicUsed by:39
Symbol 39 MovieClipUses:38Used by:50
Symbol 40 GraphicUsed by:47
Symbol 41 GraphicUsed by:42 128 533 547
Symbol 42 MovieClipUses:41Used by:47
Symbol 43 GraphicUsed by:44 547
Symbol 44 MovieClipUses:43Used by:47 533
Symbol 45 GraphicUsed by:46
Symbol 46 MovieClipUses:45Used by:47
Symbol 47 MovieClipUses:40 42 44 46Used by:50
Symbol 48 GraphicUsed by:49
Symbol 49 MovieClipUses:48Used by:50 129
Symbol 50 MovieClip [txWall_Triangle]Uses:33 37 39 47 49
Symbol 51 GraphicUsed by:75
Symbol 52 GraphicUsed by:53
Symbol 53 MovieClipUses:52Used by:75
Symbol 54 GraphicUsed by:55
Symbol 55 MovieClipUses:54Used by:75
Symbol 56 GraphicUsed by:59
Symbol 57 GraphicUsed by:59
Symbol 58 GraphicUsed by:59
Symbol 59 MovieClipUses:56 57 58Used by:75
Symbol 60 GraphicUsed by:68
Symbol 61 GraphicUsed by:67
Symbol 62 GraphicUsed by:67
Symbol 63 BitmapUsed by:64
Symbol 64 GraphicUses:63Used by:65
Symbol 65 MovieClipUses:64Used by:66 265
Symbol 66 MovieClipUses:65Used by:67 71 91 95 100 104 109
Symbol 67 MovieClipUses:61 62 66Used by:68
Symbol 68 MovieClipUses:60 67Used by:73
Symbol 69 GraphicUsed by:71
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClipUses:69 70 66Used by:72
Symbol 72 MovieClipUses:71Used by:73
Symbol 73 MovieClipUses:68 72Used by:75
Symbol 74 MovieClipUsed by:75 118 129 137 144 151 168 176 184 189
Symbol 75 MovieClip [txWall_Source]Uses:51 53 55 59 73 74
Symbol 76 GraphicUsed by:118
Symbol 77 GraphicUsed by:78
Symbol 78 MovieClipUses:77Used by:118
Symbol 79 GraphicUsed by:80
Symbol 80 MovieClipUses:79Used by:118
Symbol 81 GraphicUsed by:86
Symbol 82 GraphicUsed by:86
Symbol 83 GraphicUsed by:86
Symbol 84 Graphic [grMoire2]Used by:85 466
Symbol 85 MovieClipUses:84Used by:86 535
Symbol 86 MovieClipUses:81 82 83 85Used by:118 129 137
Symbol 87 GraphicUsed by:88
Symbol 88 MovieClipUses:87Used by:118
Symbol 89 GraphicUsed by:91
Symbol 90 GraphicUsed by:91
Symbol 91 MovieClipUses:89 90 66Used by:92
Symbol 92 MovieClipUses:91Used by:111
Symbol 93 GraphicUsed by:95
Symbol 94 GraphicUsed by:95
Symbol 95 MovieClipUses:93 94 66Used by:96
Symbol 96 MovieClipUses:95Used by:111
Symbol 97 GraphicUsed by:106
Symbol 98 GraphicUsed by:100
Symbol 99 GraphicUsed by:100
Symbol 100 MovieClipUses:98 99 66Used by:101
Symbol 101 MovieClipUses:100Used by:106
Symbol 102 GraphicUsed by:104
Symbol 103 GraphicUsed by:104
Symbol 104 MovieClipUses:102 103 66Used by:105
Symbol 105 MovieClipUses:104Used by:106
Symbol 106 MovieClipUses:97 101 105Used by:107
Symbol 107 MovieClipUses:106Used by:111
Symbol 108 GraphicUsed by:109
Symbol 109 MovieClipUses:108 66Used by:110
Symbol 110 MovieClipUses:109Used by:111
Symbol 111 MovieClipUses:92 96 107 110Used by:118 129 137
Symbol 112 GraphicUsed by:117
Symbol 113 GraphicUsed by:117
Symbol 114 GraphicUsed by:115
Symbol 115 MovieClipUses:114Used by:117
Symbol 116 GraphicUsed by:117 167 175 183 282 329 334 335 387 443 444 445
Symbol 117 MovieClipUses:112 113 115 116Used by:118 129 137 168 176 184
Symbol 118 MovieClip [txWall_SwitchCorner]Uses:76 78 80 86 88 111 117 74
Symbol 119 GraphicUsed by:129
Symbol 120 GraphicUsed by:121
Symbol 121 MovieClipUses:120Used by:129
Symbol 122 GraphicUsed by:123
Symbol 123 MovieClipUses:122Used by:129
Symbol 124 GraphicUsed by:125 126
Symbol 125 MovieClipUses:124Used by:126
Symbol 126 MovieClipUses:125 124Used by:127
Symbol 127 MovieClipUses:126Used by:128 144 151
Symbol 128 MovieClipUses:41 127Used by:129
Symbol 129 MovieClip [txWall_Projector]Uses:119 49 121 123 111 86 128 117 74
Symbol 130 GraphicUsed by:137
Symbol 131 GraphicUsed by:132
Symbol 132 MovieClipUses:131Used by:137
Symbol 133 GraphicUsed by:134
Symbol 134 MovieClipUses:133Used by:137
Symbol 135 GraphicUsed by:136
Symbol 136 MovieClipUses:135Used by:137
Symbol 137 MovieClip [txWall_SwitchEdge]Uses:130 132 134 136 86 111 117 74
Symbol 138 GraphicUsed by:139
Symbol 139 MovieClipUses:138Used by:144
Symbol 140 GraphicUsed by:141
Symbol 141 MovieClipUses:140Used by:144 151
Symbol 142 GraphicUsed by:143
Symbol 143 MovieClipUses:142Used by:144
Symbol 144 MovieClip [txWall_SpyholeFlip]Uses:139 141 143 127 74
Symbol 145 GraphicUsed by:146
Symbol 146 MovieClipUses:145Used by:151
Symbol 147 GraphicUsed by:148
Symbol 148 MovieClipUses:147Used by:151
Symbol 149 GraphicUsed by:150
Symbol 150 MovieClipUses:149Used by:151
Symbol 151 MovieClip [txWall_Spyhole]Uses:146 148 141 150 127 74
Symbol 152 GraphicUsed by:157
Symbol 153 GraphicUsed by:156
Symbol 154 GraphicUsed by:156
Symbol 155 GraphicUsed by:156
Symbol 156 MovieClipUses:153 154 155Used by:157 168 176 184 516
Symbol 157 MovieClip [txWall_intermediaryPortal]Uses:152 156
Symbol 158 GraphicUsed by:159
Symbol 159 MovieClipUses:158Used by:168
Symbol 160 GraphicUsed by:162
Symbol 161 GraphicUsed by:162
Symbol 162 MovieClipUses:160 161Used by:168 176 184
Symbol 163 GraphicUsed by:164
Symbol 164 MovieClipUses:163Used by:168
Symbol 165 GraphicUsed by:167
Symbol 166 GraphicUsed by:167
Symbol 167 MovieClipUses:165 166 116Used by:168
Symbol 168 MovieClip [txWall_DoorCorner]Uses:159 162 156 164 167 117 74
Symbol 169 GraphicUsed by:170
Symbol 170 MovieClipUses:169Used by:176
Symbol 171 GraphicUsed by:172
Symbol 172 MovieClipUses:171Used by:176
Symbol 173 GraphicUsed by:175
Symbol 174 GraphicUsed by:175
Symbol 175 MovieClipUses:173 174 116Used by:176
Symbol 176 MovieClip [txWall_DoorMiddle]Uses:170 162 156 172 175 117 74
Symbol 177 GraphicUsed by:178
Symbol 178 MovieClipUses:177Used by:184
Symbol 179 GraphicUsed by:180
Symbol 180 MovieClipUses:179Used by:184
Symbol 181 GraphicUsed by:183
Symbol 182 GraphicUsed by:183
Symbol 183 MovieClipUses:181 182 116Used by:184
Symbol 184 MovieClip [txWall_DoorEdge]Uses:178 162 156 180 183 117 74
Symbol 185 GraphicUsed by:186
Symbol 186 MovieClipUses:185Used by:189
Symbol 187 GraphicUsed by:188
Symbol 188 MovieClipUses:187Used by:189
Symbol 189 MovieClip [txWall_Screen]Uses:186 74 188
Symbol 190 GraphicUsed by:191
Symbol 191 MovieClip [puzzleX_Background]Uses:190
Symbol 192 GraphicUsed by:193 198 520 522 538  Timeline
Symbol 193 MovieClip [puzzleY_Background]Uses:192
Symbol 194 GraphicUsed by:195
Symbol 195 MovieClip [puzzleH_Background]Uses:194
Symbol 196 GraphicUsed by:197
Symbol 197 MovieClipUses:196Used by:198
Symbol 198 MovieClip [puzzleZ_Background]Uses:192 197
Symbol 199 GraphicUsed by:200
Symbol 200 MovieClip [puzzleV_Background]Uses:199
Symbol 201 GraphicUsed by:202
Symbol 202 MovieClip [puzzleU_Background]Uses:201
Symbol 203 GraphicUsed by:204
Symbol 204 MovieClip [puzzleT_Background]Uses:203
Symbol 205 GraphicUsed by:206
Symbol 206 MovieClip [puzzleS_Background]Uses:205
Symbol 207 GraphicUsed by:208
Symbol 208 MovieClip [puzzleE_Background]Uses:207
Symbol 209 GraphicUsed by:210
Symbol 210 MovieClip [puzzleD_Background]Uses:209
Symbol 211 GraphicUsed by:212
Symbol 212 MovieClip [puzzleQ_Background]Uses:211
Symbol 213 GraphicUsed by:214
Symbol 214 MovieClip [puzzleP_Background]Uses:213
Symbol 215 GraphicUsed by:216
Symbol 216 MovieClip [puzzleW_Background]Uses:215
Symbol 217 GraphicUsed by:218
Symbol 218 MovieClip [puzzleR_Background]Uses:217
Symbol 219 GraphicUsed by:220
Symbol 220 MovieClip [puzzleN_Background]Uses:219
Symbol 221 GraphicUsed by:222
Symbol 222 MovieClip [puzzleO_Background]Uses:221
Symbol 223 GraphicUsed by:230
Symbol 224 GraphicUsed by:230
Symbol 225 GraphicUsed by:230
Symbol 226 GraphicUsed by:230
Symbol 227 GraphicUsed by:230
Symbol 228 GraphicUsed by:230
Symbol 229 GraphicUsed by:230
Symbol 230 MovieClip [puzzleI_Background]Uses:223 224 225 226 227 228 229
Symbol 231 GraphicUsed by:238
Symbol 232 GraphicUsed by:238
Symbol 233 GraphicUsed by:238
Symbol 234 GraphicUsed by:238
Symbol 235 GraphicUsed by:238
Symbol 236 GraphicUsed by:238
Symbol 237 GraphicUsed by:238
Symbol 238 MovieClip [puzzleG_Background]Uses:231 232 233 234 235 236 237
Symbol 239 GraphicUsed by:242
Symbol 240 GraphicUsed by:241
Symbol 241 MovieClipUses:240Used by:242
Symbol 242 MovieClip [puzzleM_Background]Uses:239 241
Symbol 243 GraphicUsed by:246
Symbol 244 GraphicUsed by:245
Symbol 245 MovieClip [puzzleLani]Uses:244Used by:246
Symbol 246 MovieClip [puzzleL_Background]Uses:243 245
Symbol 247 GraphicUsed by:248
Symbol 248 MovieClip [puzzleK_Background]Uses:247
Symbol 249 GraphicUsed by:250
Symbol 250 MovieClip [puzzleJ_Background]Uses:249
Symbol 251 GraphicUsed by:252
Symbol 252 MovieClip [puzzleF_Background]Uses:251
Symbol 253 GraphicUsed by:254
Symbol 254 MovieClip [puzzleC_Background]Uses:253
Symbol 255 GraphicUsed by:256
Symbol 256 MovieClip [puzzleB_Background]Uses:255
Symbol 257 GraphicUsed by:258
Symbol 258 MovieClip [puzzleA_Background]Uses:257
Symbol 259 BitmapUsed by:260
Symbol 260 GraphicUses:259Used by:261
Symbol 261 MovieClip [puzzleB]Uses:260
Symbol 262 MovieClip [objSprite]
Symbol 263 GraphicUsed by:268
Symbol 264 GraphicUsed by:267 326 338 339 376 438 439 440
Symbol 265 MovieClipUses:65Used by:267
Symbol 266 GraphicUsed by:267
Symbol 267 MovieClipUses:264 265 266Used by:268
Symbol 268 MovieClip [aniPlanet]Uses:263 267
Symbol 269 GraphicUsed by:270
Symbol 270 MovieClip [btnSpyholeMask]Uses:269
Symbol 271 GraphicUsed by:272 273 280 281
Symbol 272 MovieClip [blixX]Uses:271
Symbol 273 MovieClip [blixI]Uses:271
Symbol 274 GraphicUsed by:278
Symbol 275 GraphicUsed by:276
Symbol 276 MovieClipUses:275Used by:278 279 280
Symbol 277 GraphicUsed by:278 279
Symbol 278 MovieClip [blixW2]Uses:274 276 277
Symbol 279 MovieClip [blixW]Uses:277 276
Symbol 280 MovieClip [blixA]Uses:271 276
Symbol 281 MovieClip [blixC]Uses:271
Symbol 282 MovieClip [blixD]Uses:116
Symbol 283 MovieClipUsed by:284
Symbol 284 MovieClip [blixB]Uses:283
Symbol 285 GraphicUsed by:286
Symbol 286 MovieClip [shapeAX]Uses:285
Symbol 287 GraphicUsed by:288
Symbol 288 MovieClip [shapeA5]Uses:287
Symbol 289 GraphicUsed by:290
Symbol 290 MovieClip [shapeA4]Uses:289
Symbol 291 GraphicUsed by:292
Symbol 292 MovieClip [shapeA3]Uses:291
Symbol 293 GraphicUsed by:294 295 296 297 298 338
Symbol 294 MovieClip [shapeI6]Uses:293
Symbol 295 MovieClip [shapeI5]Uses:293
Symbol 296 MovieClip [shapeI4]Uses:293
Symbol 297 MovieClip [shapeI3]Uses:293
Symbol 298 MovieClip [shapeI2]Uses:293
Symbol 299 GraphicUsed by:300
Symbol 300 MovieClipUses:299Used by:301
Symbol 301 MovieClip [shapeI1]Uses:300
Symbol 302 GraphicUsed by:303
Symbol 303 MovieClip [shapeA2]Uses:302
Symbol 304 GraphicUsed by:305
Symbol 305 MovieClip [shapeB10]Uses:304
Symbol 306 GraphicUsed by:307
Symbol 307 MovieClip [shapeB9]Uses:306
Symbol 308 GraphicUsed by:309
Symbol 309 MovieClip [shapeB8]Uses:308
Symbol 310 GraphicUsed by:311
Symbol 311 MovieClip [shapeB7]Uses:310
Symbol 312 GraphicUsed by:313
Symbol 313 MovieClip [shapeB6]Uses:312
Symbol 314 GraphicUsed by:315
Symbol 315 MovieClip [shapeB5]Uses:314
Symbol 316 GraphicUsed by:317
Symbol 317 MovieClip [shapeB4]Uses:316
Symbol 318 GraphicUsed by:319
Symbol 319 MovieClip [shapeB3]Uses:318
Symbol 320 GraphicUsed by:321
Symbol 321 MovieClip [shapeB2]Uses:320
Symbol 322 GraphicUsed by:323
Symbol 323 MovieClip [shapeC1]Uses:322
Symbol 324 GraphicUsed by:325
Symbol 325 MovieClip [shapeB1]Uses:324
Symbol 326 MovieClip [shapeH2]Uses:264
Symbol 327 GraphicUsed by:328
Symbol 328 MovieClip [shapeH1]Uses:327
Symbol 329 MovieClip [shapeG1]Uses:116
Symbol 330 GraphicUsed by:331
Symbol 331 MovieClip [shapeG5]Uses:330
Symbol 332 GraphicUsed by:333
Symbol 333 MovieClip [shapeG4]Uses:332
Symbol 334 MovieClip [shapeG3]Uses:116
Symbol 335 MovieClip [shapeG2]Uses:116
Symbol 336 ShapeTweeningUsed by:338
Symbol 337 ShapeTweeningUsed by:338
Symbol 338 MovieClip [shapeF1]Uses:293 336 264 337
Symbol 339 MovieClip [shapeZ3]Uses:264
Symbol 340 GraphicUsed by:341
Symbol 341 MovieClip [shapeZ2]Uses:340
Symbol 342 GraphicUsed by:343
Symbol 343 MovieClip [shapeZ4]Uses:342
Symbol 344 GraphicUsed by:345
Symbol 345 MovieClip [shapeZ1]Uses:344
Symbol 346 GraphicUsed by:348
Symbol 347 GraphicUsed by:348
Symbol 348 MovieClip [shapeE2]Uses:346 347
Symbol 349 GraphicUsed by:350
Symbol 350 MovieClip [shapeE14]Uses:349
Symbol 351 GraphicUsed by:353
Symbol 352 GraphicUsed by:353
Symbol 353 MovieClip [shapeE4]Uses:351 352
Symbol 354 GraphicUsed by:355
Symbol 355 MovieClip [shapeE13]Uses:354
Symbol 356 GraphicUsed by:358
Symbol 357 GraphicUsed by:358
Symbol 358 MovieClip [shapeE3]Uses:356 357
Symbol 359 GraphicUsed by:360
Symbol 360 MovieClip [shapeE11]Uses:359
Symbol 361 GraphicUsed by:363
Symbol 362 GraphicUsed by:363
Symbol 363 MovieClip [shapeE1]Uses:361 362
Symbol 364 GraphicUsed by:365
Symbol 365 MovieClip [shapeHINTARROWS]Uses:364
Symbol 366 GraphicUsed by:367
Symbol 367 MovieClip [shapeHINTUNSOLVED]Uses:366
Symbol 368 GraphicUsed by:369
Symbol 369 MovieClip [shapeHINTSOLVED]Uses:368
Symbol 370 GraphicUsed by:373
Symbol 371 GraphicUsed by:373
Symbol 372 GraphicUsed by:373
Symbol 373 MovieClip [shapeHINT1]Uses:370 371 372
Symbol 374 GraphicUsed by:375
Symbol 375 MovieClip [shapeD1]Uses:374
Symbol 376 MovieClip [shapeW1]Uses:264
Symbol 377 GraphicUsed by:378
Symbol 378 MovieClip [shapeV6]Uses:377
Symbol 379 GraphicUsed by:380
Symbol 380 MovieClip [shapeV5]Uses:379
Symbol 381 GraphicUsed by:382
Symbol 382 MovieClip [shapeV4]Uses:381
Symbol 383 GraphicUsed by:384
Symbol 384 MovieClip [shapeV3]Uses:383
Symbol 385 GraphicUsed by:386
Symbol 386 MovieClip [shapeV2]Uses:385
Symbol 387 MovieClip [shapeY2]Uses:116
Symbol 388 GraphicUsed by:389
Symbol 389 MovieClip [shapeY1]Uses:388
Symbol 390 GraphicUsed by:391
Symbol 391 MovieClip [shapeX1]Uses:390
Symbol 392 GraphicUsed by:393
Symbol 393 MovieClip [shapeV1]Uses:392
Symbol 394 GraphicUsed by:395
Symbol 395 MovieClip [shapeU1]Uses:394
Symbol 396 GraphicUsed by:397
Symbol 397 MovieClip [shapeI]Uses:396
Symbol 398 GraphicUsed by:399
Symbol 399 MovieClip [shapeT1]Uses:398
Symbol 400 GraphicUsed by:406
Symbol 401 GraphicUsed by:404
Symbol 402 GraphicUsed by:404
Symbol 403 GraphicUsed by:404
Symbol 404 MovieClipUses:401 402 403Used by:405
Symbol 405 MovieClipUses:404Used by:406
Symbol 406 MovieClip [shapeS6]Uses:400 405
Symbol 407 GraphicUsed by:412
Symbol 408 ShapeTweeningUsed by:411
Symbol 409 ShapeTweeningUsed by:411
Symbol 410 GraphicUsed by:411
Symbol 411 MovieClipUses:408 409 410Used by:412
Symbol 412 MovieClip [shapeS5]Uses:407 411
Symbol 413 GraphicUsed by:421
Symbol 414 GraphicUsed by:419
Symbol 415 GraphicUsed by:419
Symbol 416 GraphicUsed by:419
Symbol 417 GraphicUsed by:419
Symbol 418 GraphicUsed by:419
Symbol 419 MovieClipUses:414 415 416 417 418Used by:420
Symbol 420 MovieClipUses:419Used by:421
Symbol 421 MovieClip [shapeS4]Uses:413 420
Symbol 422 GraphicUsed by:425
Symbol 423 GraphicUsed by:424
Symbol 424 MovieClipUses:423Used by:425
Symbol 425 MovieClip [shapeS3]Uses:422 424
Symbol 426 GraphicUsed by:429
Symbol 427 GraphicUsed by:428
Symbol 428 MovieClipUses:427Used by:429
Symbol 429 MovieClip [shapeQ3]Uses:426 428
Symbol 430 GraphicUsed by:433
Symbol 431 GraphicUsed by:432 435
Symbol 432 MovieClipUses:431Used by:433
Symbol 433 MovieClip [shapeQ2]Uses:430 432
Symbol 434 GraphicUsed by:436
Symbol 435 MovieClipUses:431Used by:436 449
Symbol 436 MovieClip [shapeQ1]Uses:434 435
Symbol 437 GraphicUsed by:438 439 440
Symbol 438 MovieClip [shapeJ3]Uses:264 437
Symbol 439 MovieClip [shapeJ2]Uses:264 437
Symbol 440 MovieClip [shapeJ1]Uses:264 437
Symbol 441 GraphicUsed by:442
Symbol 442 MovieClipUses:441Used by:443 444 445
Symbol 443 MovieClip [shapeK3]Uses:116 442
Symbol 444 MovieClip [shapeK2]Uses:116 442
Symbol 445 MovieClip [shapeK1]Uses:116 442
Symbol 446 GraphicUsed by:447
Symbol 447 MovieClip [shapeP1]Uses:446
Symbol 448 GraphicUsed by:449
Symbol 449 MovieClip [shapeO1]Uses:448 435
Symbol 450 GraphicUsed by:453 456
Symbol 451 GraphicUsed by:452
Symbol 452 MovieClipUses:451Used by:453
Symbol 453 MovieClip [shapeS2]Uses:450 452
Symbol 454 GraphicUsed by:455
Symbol 455 MovieClipUses:454Used by:456
Symbol 456 MovieClip [shapeS1]Uses:450 455
Symbol 457 GraphicUsed by:458
Symbol 458 MovieClip [shapeA1]Uses:457
Symbol 459 GraphicUsed by:460
Symbol 460 MovieClip [shapeA_Outline]Uses:459
Symbol 461 GraphicUsed by:462
Symbol 462 MovieClipUses:461Used by:465
Symbol 463 GraphicUsed by:464
Symbol 464 MovieClipUses:463Used by:465
Symbol 465 MovieClip [aniSun]Uses:462 464
Symbol 466 MovieClip [grMoire2]Uses:84
Symbol 467 ShapeTweeningUsed by:472
Symbol 468 GraphicUsed by:469
Symbol 469 MovieClipUses:468Used by:472
Symbol 470 ShapeTweeningUsed by:472
Symbol 471 GraphicUsed by:472 490
Symbol 472 MovieClip [shapeN6]Uses:467 469 470 471
Symbol 473 ShapeTweeningUsed by:478
Symbol 474 ShapeTweeningUsed by:478
Symbol 475 ShapeTweeningUsed by:478
Symbol 476 ShapeTweeningUsed by:478
Symbol 477 GraphicUsed by:478
Symbol 478 MovieClip [shapeN5]Uses:473 474 475 476 477
Symbol 479 ShapeTweeningUsed by:484
Symbol 480 GraphicUsed by:484
Symbol 481 ShapeTweeningUsed by:484
Symbol 482 ShapeTweeningUsed by:484
Symbol 483 GraphicUsed by:484
Symbol 484 MovieClip [shapeN4]Uses:479 480 481 482 483
Symbol 485 ShapeTweeningUsed by:490
Symbol 486 GraphicUsed by:487
Symbol 487 MovieClipUses:486Used by:490
Symbol 488 ShapeTweeningUsed by:490
Symbol 489 ShapeTweeningUsed by:490
Symbol 490 MovieClip [shapeN3]Uses:485 487 488 489 471
Symbol 491 ShapeTweeningUsed by:498
Symbol 492 ShapeTweeningUsed by:498
Symbol 493 ShapeTweeningUsed by:498
Symbol 494 ShapeTweeningUsed by:498
Symbol 495 ShapeTweeningUsed by:498
Symbol 496 ShapeTweeningUsed by:498
Symbol 497 GraphicUsed by:498
Symbol 498 MovieClip [shapeN2]Uses:491 492 493 494 495 496 497
Symbol 499 MovieClip [shapeL2]
Symbol 500 GraphicUsed by:501
Symbol 501 MovieClip [shapeM1]Uses:500
Symbol 502 GraphicUsed by:504
Symbol 503 GraphicUsed by:504
Symbol 504 MovieClip [shapeL1]Uses:502 503
Symbol 505 ShapeTweeningUsed by:510
Symbol 506 GraphicUsed by:507
Symbol 507 MovieClipUses:506Used by:510
Symbol 508 ShapeTweeningUsed by:510
Symbol 509 GraphicUsed by:510
Symbol 510 MovieClip [shapeN1]Uses:505 507 508 509
Symbol 511 GraphicUsed by:512
Symbol 512 MovieClip [grENDGAME_stars]Uses:511
Symbol 513 GraphicUsed by:516
Symbol 514 GraphicUsed by:515
Symbol 515 MovieClipUses:514Used by:516
Symbol 516 MovieClip [btnIntermediary]Uses:513 156 515Used by:Timeline
Symbol 517 GraphicUsed by:Timeline
Symbol 518 GraphicUsed by:Timeline
Symbol 519 GraphicUsed by:520
Symbol 520 MovieClipUses:192 519 26 25Used by:Timeline
Symbol 521 GraphicUsed by:522
Symbol 522 MovieClipUses:192 521 26 24Used by:Timeline
Symbol 523 GraphicUsed by:525
Symbol 524 GraphicUsed by:525
Symbol 525 MovieClipUses:523 524 26 24Used by:Timeline
Symbol 526 GraphicUsed by:527
Symbol 527 MovieClipUses:526Used by:529
Symbol 528 GraphicUsed by:529
Symbol 529 MovieClipUses:527 528Used by:Timeline
Symbol 530 GraphicUsed by:Timeline
Symbol 531 GraphicUsed by:Timeline
Symbol 532 GraphicUsed by:535
Symbol 533 MovieClipUses:41 44Used by:535
Symbol 534 GraphicUsed by:535
Symbol 535 MovieClipUses:85 532 533 534Used by:Timeline
Symbol 536 GraphicUsed by:537
Symbol 537 MovieClipUses:536Used by:Timeline
Symbol 538 MovieClipUses:192Used by:Timeline
Symbol 539 MovieClipUsed by:540
Symbol 540 MovieClipUses:539Used by:541
Symbol 541 MovieClipUses:540Used by:542
Symbol 542 MovieClipUses:541Used by:Timeline
Symbol 543 MovieClipUsed by:Timeline
Symbol 544 GraphicUsed by:556
Symbol 545 GraphicUsed by:546
Symbol 546 MovieClipUses:545Used by:556
Symbol 547 MovieClipUses:41 43 25Used by:556
Symbol 548 FontUsed by:549 550 551 553 554
Symbol 549 EditableTextUses:548Used by:556
Symbol 550 TextUses:548Used by:556
Symbol 551 TextUses:548Used by:556
Symbol 552 GraphicUsed by:556
Symbol 553 EditableTextUses:548Used by:555
Symbol 554 EditableTextUses:548Used by:555
Symbol 555 MovieClipUses:553 554Used by:556
Symbol 556 MovieClipUses:544 546 547 549 550 551 552 555Used by:Timeline

Instance Names

"iContinue"Frame 1Symbol 520 MovieClip
"iStartOver"Frame 1Symbol 522 MovieClip
"iBegin"Frame 1Symbol 525 MovieClip
"iBlackout"Frame 83Symbol 537 MovieClip
"iIntermediary"Frame 181Symbol 516 MovieClip [btnIntermediary]
"i3dStage"Frame 181Symbol 542 MovieClip
"iIntermediary2"Frame 181Symbol 516 MovieClip [btnIntermediary]
"Dot"Symbol 30 MovieClip [Star] Frame 1Symbol 29 MovieClip
"iGlow"Symbol 47 MovieClip Frame 1Symbol 42 MovieClip
"iFrisbee"Symbol 47 MovieClip Frame 1Symbol 44 MovieClip
"iMoire"Symbol 47 MovieClip Frame 1Symbol 46 MovieClip
"iBackground"Symbol 50 MovieClip [txWall_Triangle] Frame 1Symbol 33 MovieClip
"iPuzzlePulse"Symbol 50 MovieClip [txWall_Triangle] Frame 1Symbol 37 MovieClip
"iDecal"Symbol 50 MovieClip [txWall_Triangle] Frame 1Symbol 39 MovieClip
"iButton"Symbol 50 MovieClip [txWall_Triangle] Frame 1Symbol 47 MovieClip
"iProjectorCover"Symbol 50 MovieClip [txWall_Triangle] Frame 1Symbol 49 MovieClip
"iSwitchSymbol3"Symbol 68 MovieClip Frame 1Symbol 67 MovieClip
"iLoop1"Symbol 72 MovieClip Frame 1Symbol 71 MovieClip
"iButton"Symbol 73 MovieClip Frame 1Symbol 68 MovieClip
"iLoop2"Symbol 73 MovieClip Frame 1Symbol 72 MovieClip
"iLoop1"Symbol 73 MovieClip Frame 1Symbol 72 MovieClip
"iBackground"Symbol 75 MovieClip [txWall_Source] Frame 1Symbol 53 MovieClip
"shadow"Symbol 75 MovieClip [txWall_Source] Frame 1Symbol 55 MovieClip
"iDecal"Symbol 75 MovieClip [txWall_Source] Frame 1Symbol 59 MovieClip
"iSourcePack"Symbol 75 MovieClip [txWall_Source] Frame 1Symbol 73 MovieClip
"iPuzzleHolderBackground"Symbol 75 MovieClip [txWall_Source] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 75 MovieClip [txWall_Source] Frame 1Symbol 74 MovieClip
"iSwitchSymbol3"Symbol 92 MovieClip Frame 1Symbol 91 MovieClip
"iSwitchSymbol3"Symbol 96 MovieClip Frame 1Symbol 95 MovieClip
"iPath1"Symbol 101 MovieClip Frame 1Symbol 100 MovieClip
"iPath1"Symbol 105 MovieClip Frame 1Symbol 104 MovieClip
"iSwitchRingPath2"Symbol 106 MovieClip Frame 1Symbol 101 MovieClip
"iSwitchRingPath1"Symbol 106 MovieClip Frame 1Symbol 101 MovieClip
"iPath1a"Symbol 106 MovieClip Frame 1Symbol 105 MovieClip
"iPath1b"Symbol 106 MovieClip Frame 1Symbol 105 MovieClip
"iPath2a"Symbol 106 MovieClip Frame 1Symbol 105 MovieClip
"iPath2b"Symbol 106 MovieClip Frame 1Symbol 105 MovieClip
"iSwitchRing"Symbol 107 MovieClip Frame 1Symbol 106 MovieClip
"iSwitchLights"Symbol 110 MovieClip Frame 1Symbol 109 MovieClip
"iSwitchSymbol1"Symbol 111 MovieClip Frame 1Symbol 92 MovieClip
"iSwitchSymbol4"Symbol 111 MovieClip Frame 1Symbol 96 MovieClip
"iSwitchSymbol2"Symbol 111 MovieClip Frame 1Symbol 92 MovieClip
"iSwitchSymbol3"Symbol 111 MovieClip Frame 1Symbol 96 MovieClip
"iSwitchRing"Symbol 111 MovieClip Frame 1Symbol 107 MovieClip
"iSwitchLights2"Symbol 111 MovieClip Frame 1Symbol 110 MovieClip
"iSwitchLights1"Symbol 111 MovieClip Frame 1Symbol 110 MovieClip
"iBackground"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 78 MovieClip
"shadow"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 80 MovieClip
"iButton1"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 86 MovieClip
"iDecal"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 88 MovieClip
"iSwitchPack"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 111 MovieClip
"iLock"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 117 MovieClip
"iPuzzleHolderBackground"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 118 MovieClip [txWall_SwitchCorner] Frame 1Symbol 74 MovieClip
"iOrbitPack2"Symbol 128 MovieClip Frame 1Symbol 127 MovieClip
"iOrbitPack1"Symbol 128 MovieClip Frame 1Symbol 127 MovieClip
"iProjectorCover"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 49 MovieClip
"shadow"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 121 MovieClip
"iDecal"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 123 MovieClip
"iSwitchPack"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 111 MovieClip
"iButton1"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 86 MovieClip
"iProjector"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 128 MovieClip
"iLock"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 117 MovieClip
"iPuzzleHolderBackground"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 129 MovieClip [txWall_Projector] Frame 1Symbol 74 MovieClip
"iBackground"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1Symbol 132 MovieClip
"iDecal"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1Symbol 136 MovieClip
"iButton1"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1Symbol 86 MovieClip
"iSwitchPack"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1Symbol 111 MovieClip
"iLock"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1Symbol 117 MovieClip
"iPuzzleHolderBackground"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1Symbol 74 MovieClip
"iBackground"Symbol 144 MovieClip [txWall_SpyholeFlip] Frame 1Symbol 139 MovieClip
"shadow"Symbol 144 MovieClip [txWall_SpyholeFlip] Frame 1Symbol 141 MovieClip
"iDecal"Symbol 144 MovieClip [txWall_SpyholeFlip] Frame 1Symbol 143 MovieClip
"iOrbitPack1"Symbol 144 MovieClip [txWall_SpyholeFlip] Frame 1Symbol 127 MovieClip
"iBackground"Symbol 151 MovieClip [txWall_Spyhole] Frame 1Symbol 146 MovieClip
"iButton"Symbol 151 MovieClip [txWall_Spyhole] Frame 1Symbol 148 MovieClip
"shadow"Symbol 151 MovieClip [txWall_Spyhole] Frame 1Symbol 141 MovieClip
"iDecal"Symbol 151 MovieClip [txWall_Spyhole] Frame 1Symbol 150 MovieClip
"iOrbitPack1"Symbol 151 MovieClip [txWall_Spyhole] Frame 1Symbol 127 MovieClip
"iPuzzleHolderBackground"Symbol 151 MovieClip [txWall_Spyhole] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 151 MovieClip [txWall_Spyhole] Frame 1Symbol 74 MovieClip
"iDoor"Symbol 157 MovieClip [txWall_intermediaryPortal] Frame 1Symbol 156 MovieClip
"iBackground"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1Symbol 159 MovieClip
"iPortal1"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1Symbol 162 MovieClip
"iDoor1"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1Symbol 156 MovieClip
"shadow"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1Symbol 164 MovieClip
"iDecal"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1Symbol 167 MovieClip
"iLock"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1Symbol 117 MovieClip
"iPuzzleHolderBackground"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1Symbol 74 MovieClip
"iBackground"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 170 MovieClip
"iPortal1"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 162 MovieClip
"iDoor1"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 156 MovieClip
"shadow"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 172 MovieClip
"iDecal"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 175 MovieClip
"iLock"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 117 MovieClip
"iPuzzleHolderBackground"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 176 MovieClip [txWall_DoorMiddle] Frame 1Symbol 74 MovieClip
"iBackground"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 178 MovieClip
"iPortal1"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 162 MovieClip
"iDoor1"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 156 MovieClip
"shadow"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 180 MovieClip
"iDecal"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 183 MovieClip
"iLock"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 117 MovieClip
"iPuzzleHolderBackground"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 184 MovieClip [txWall_DoorEdge] Frame 1Symbol 74 MovieClip
"iPuzzleHolder"Symbol 189 MovieClip [txWall_Screen] Frame 1Symbol 74 MovieClip
"iScreen"Symbol 189 MovieClip [txWall_Screen] Frame 1Symbol 186 MovieClip
"iScreenOutline"Symbol 189 MovieClip [txWall_Screen] Frame 1Symbol 188 MovieClip
"iZDoor"Symbol 198 MovieClip [puzzleZ_Background] Frame 1Symbol 197 MovieClip
"iEye"Symbol 242 MovieClip [puzzleM_Background] Frame 1Symbol 241 MovieClip
"iEye1"Symbol 246 MovieClip [puzzleL_Background] Frame 1Symbol 245 MovieClip [puzzleLani]
"iEye4"Symbol 246 MovieClip [puzzleL_Background] Frame 1Symbol 245 MovieClip [puzzleLani]
"iEye2"Symbol 246 MovieClip [puzzleL_Background] Frame 1Symbol 245 MovieClip [puzzleLani]
"iEye3"Symbol 246 MovieClip [puzzleL_Background] Frame 1Symbol 245 MovieClip [puzzleLani]
"iEye5"Symbol 246 MovieClip [puzzleL_Background] Frame 1Symbol 245 MovieClip [puzzleLani]
"iPlanetAtmosphere"Symbol 267 MovieClip Frame 1Symbol 265 MovieClip
"iPlanetCentre"Symbol 268 MovieClip [aniPlanet] Frame 1Symbol 267 MovieClip
"iSunCentre"Symbol 465 MovieClip [aniSun] Frame 1Symbol 464 MovieClip
"iDoor"Symbol 516 MovieClip [btnIntermediary] Frame 10Symbol 156 MovieClip
"iDoorLines"Symbol 516 MovieClip [btnIntermediary] Frame 10Symbol 515 MovieClip
"holder"Symbol 540 MovieClip Frame 1Symbol 539 MovieClip
"mc"Symbol 541 MovieClip Frame 1Symbol 540 MovieClip
"obj"Symbol 542 MovieClip Frame 1Symbol 541 MovieClip
"UserInformation"Symbol 556 MovieClip Frame 1Symbol 555 MovieClip

Special Tags

Protect (24)Timeline Frame 10 bytes ""
ExportAssets (56)Timeline Frame 1Symbol 1 as "sourceOn.wav"
ExportAssets (56)Timeline Frame 1Symbol 2 as "sourceOff.wav"
ExportAssets (56)Timeline Frame 1Symbol 3 as "rotorClunk.wav"
ExportAssets (56)Timeline Frame 1Symbol 4 as "rotor.wav"
ExportAssets (56)Timeline Frame 1Symbol 5 as "puzzleSolved.wav"
ExportAssets (56)Timeline Frame 1Symbol 6 as "puzzleOpen2.wav"
ExportAssets (56)Timeline Frame 1Symbol 7 as "puzzleAmbience.wav"
ExportAssets (56)Timeline Frame 1Symbol 8 as "orbits.wav"
ExportAssets (56)Timeline Frame 1Symbol 9 as "eerieStab9.wav"
ExportAssets (56)Timeline Frame 1Symbol 10 as "eerieStab8.wav"
ExportAssets (56)Timeline Frame 1Symbol 11 as "eerieStab7.wav"
ExportAssets (56)Timeline Frame 1Symbol 12 as "eerieStab5.wav"
ExportAssets (56)Timeline Frame 1Symbol 13 as "eerieStab4.wav"
ExportAssets (56)Timeline Frame 1Symbol 14 as "eerieStab3.wav"
ExportAssets (56)Timeline Frame 1Symbol 15 as "eerieStab2.wav"
ExportAssets (56)Timeline Frame 1Symbol 16 as "door1.wav"
ExportAssets (56)Timeline Frame 1Symbol 17 as "d7_beep1"
ExportAssets (56)Timeline Frame 1Symbol 18 as "chime5.wav"
ExportAssets (56)Timeline Frame 1Symbol 19 as "chime4.wav"
ExportAssets (56)Timeline Frame 1Symbol 20 as "chime3.wav"
ExportAssets (56)Timeline Frame 1Symbol 21 as "ambience1.wav"
ExportAssets (56)Timeline Frame 1Symbol 22 as "AirlockShort1.wav"
ExportAssets (56)Timeline Frame 1Symbol 23 as "eerieStab1.wav"
ExportAssets (56)Timeline Frame 1Symbol 24 as "chime2.wav"
ExportAssets (56)Timeline Frame 1Symbol 25 as "chime1.wav"
ExportAssets (56)Timeline Frame 1Symbol 26 as "chime6.wav"
ExportAssets (56)Timeline Frame 1Symbol 27 as "objPuzzleHolder2"
ExportAssets (56)Timeline Frame 1Symbol 30 as "Star"
ExportAssets (56)Timeline Frame 1Symbol 31 as "empty"
ExportAssets (56)Timeline Frame 1Symbol 50 as "txWall_Triangle"
ExportAssets (56)Timeline Frame 1Symbol 75 as "txWall_Source"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 118 as "txWall_SwitchCorner"
ExportAssets (56)Timeline Frame 1Symbol 129 as "txWall_Projector"
ExportAssets (56)Timeline Frame 1Symbol 137 as "txWall_SwitchEdge"
ExportAssets (56)Timeline Frame 1Symbol 144 as "txWall_SpyholeFlip"
ExportAssets (56)Timeline Frame 1Symbol 151 as "txWall_Spyhole"
ExportAssets (56)Timeline Frame 1Symbol 157 as "txWall_intermediaryPortal"
ExportAssets (56)Timeline Frame 1Symbol 168 as "txWall_DoorCorner"
ExportAssets (56)Timeline Frame 1Symbol 176 as "txWall_DoorMiddle"
ExportAssets (56)Timeline Frame 1Symbol 184 as "txWall_DoorEdge"
ExportAssets (56)Timeline Frame 1Symbol 189 as "txWall_Screen"
ExportAssets (56)Timeline Frame 1Symbol 191 as "puzzleX_Background"
ExportAssets (56)Timeline Frame 1Symbol 193 as "puzzleY_Background"
ExportAssets (56)Timeline Frame 1Symbol 195 as "puzzleH_Background"
ExportAssets (56)Timeline Frame 1Symbol 198 as "puzzleZ_Background"
ExportAssets (56)Timeline Frame 1Symbol 200 as "puzzleV_Background"
ExportAssets (56)Timeline Frame 1Symbol 202 as "puzzleU_Background"
ExportAssets (56)Timeline Frame 1Symbol 204 as "puzzleT_Background"
ExportAssets (56)Timeline Frame 1Symbol 206 as "puzzleS_Background"
ExportAssets (56)Timeline Frame 1Symbol 208 as "puzzleE_Background"
ExportAssets (56)Timeline Frame 1Symbol 210 as "puzzleD_Background"
ExportAssets (56)Timeline Frame 1Symbol 212 as "puzzleQ_Background"
ExportAssets (56)Timeline Frame 1Symbol 214 as "puzzleP_Background"
ExportAssets (56)Timeline Frame 1Symbol 216 as "puzzleW_Background"
ExportAssets (56)Timeline Frame 1Symbol 218 as "puzzleR_Background"
ExportAssets (56)Timeline Frame 1Symbol 220 as "puzzleN_Background"
ExportAssets (56)Timeline Frame 1Symbol 222 as "puzzleO_Background"
ExportAssets (56)Timeline Frame 1Symbol 230 as "puzzleI_Background"
ExportAssets (56)Timeline Frame 1Symbol 238 as "puzzleG_Background"
ExportAssets (56)Timeline Frame 1Symbol 242 as "puzzleM_Background"
ExportAssets (56)Timeline Frame 1Symbol 245 as "puzzleLani"
ExportAssets (56)Timeline Frame 1Symbol 245 as "puzzleLani"
ExportAssets (56)Timeline Frame 1Symbol 245 as "puzzleLani"
ExportAssets (56)Timeline Frame 1Symbol 245 as "puzzleLani"
ExportAssets (56)Timeline Frame 1Symbol 245 as "puzzleLani"
ExportAssets (56)Timeline Frame 1Symbol 246 as "puzzleL_Background"
ExportAssets (56)Timeline Frame 1Symbol 248 as "puzzleK_Background"
ExportAssets (56)Timeline Frame 1Symbol 250 as "puzzleJ_Background"
ExportAssets (56)Timeline Frame 1Symbol 252 as "puzzleF_Background"
ExportAssets (56)Timeline Frame 1Symbol 254 as "puzzleC_Background"
ExportAssets (56)Timeline Frame 1Symbol 256 as "puzzleB_Background"
ExportAssets (56)Timeline Frame 1Symbol 258 as "puzzleA_Background"
ExportAssets (56)Timeline Frame 1Symbol 261 as "puzzleB"
ExportAssets (56)Timeline Frame 1Symbol 262 as "objSprite"
ExportAssets (56)Timeline Frame 1Symbol 268 as "aniPlanet"
ExportAssets (56)Timeline Frame 1Symbol 270 as "btnSpyholeMask"
ExportAssets (56)Timeline Frame 1Symbol 272 as "blixX"
ExportAssets (56)Timeline Frame 1Symbol 273 as "blixI"
ExportAssets (56)Timeline Frame 1Symbol 278 as "blixW2"
ExportAssets (56)Timeline Frame 1Symbol 279 as "blixW"
ExportAssets (56)Timeline Frame 1Symbol 280 as "blixA"
ExportAssets (56)Timeline Frame 1Symbol 281 as "blixC"
ExportAssets (56)Timeline Frame 1Symbol 65533 as "blixD"
ExportAssets (56)Timeline Frame 1Symbol 282 as "blixD"
ExportAssets (56)Timeline Frame 1Symbol 284 as "blixB"
ExportAssets (56)Timeline Frame 1Symbol 286 as "shapeAX"
ExportAssets (56)Timeline Frame 1Symbol 288 as "shapeA5"
ExportAssets (56)Timeline Frame 1Symbol 290 as "shapeA4"
ExportAssets (56)Timeline Frame 1Symbol 292 as "shapeA3"
ExportAssets (56)Timeline Frame 1Symbol 294 as "shapeI6"
ExportAssets (56)Timeline Frame 1Symbol 295 as "shapeI5"
ExportAssets (56)Timeline Frame 1Symbol 296 as "shapeI4"
ExportAssets (56)Timeline Frame 1Symbol 297 as "shapeI3"
ExportAssets (56)Timeline Frame 1Symbol 298 as "shapeI2"
ExportAssets (56)Timeline Frame 1Symbol 301 as "shapeI1"
ExportAssets (56)Timeline Frame 1Symbol 303 as "shapeA2"
ExportAssets (56)Timeline Frame 1Symbol 305 as "shapeB10"
ExportAssets (56)Timeline Frame 1Symbol 307 as "shapeB9"
ExportAssets (56)Timeline Frame 1Symbol 309 as "shapeB8"
ExportAssets (56)Timeline Frame 1Symbol 311 as "shapeB7"
ExportAssets (56)Timeline Frame 1Symbol 313 as "shapeB6"
ExportAssets (56)Timeline Frame 1Symbol 315 as "shapeB5"
ExportAssets (56)Timeline Frame 1Symbol 317 as "shapeB4"
ExportAssets (56)Timeline Frame 1Symbol 319 as "shapeB3"
ExportAssets (56)Timeline Frame 1Symbol 321 as "shapeB2"
ExportAssets (56)Timeline Frame 1Symbol 323 as "shapeC1"
ExportAssets (56)Timeline Frame 1Symbol 325 as "shapeB1"
ExportAssets (56)Timeline Frame 1Symbol 326 as "shapeH2"
ExportAssets (56)Timeline Frame 1Symbol 328 as "shapeH1"
ExportAssets (56)Timeline Frame 1Symbol 329 as "shapeG1"
ExportAssets (56)Timeline Frame 1Symbol 331 as "shapeG5"
ExportAssets (56)Timeline Frame 1Symbol 333 as "shapeG4"
ExportAssets (56)Timeline Frame 1Symbol 334 as "shapeG3"
ExportAssets (56)Timeline Frame 1Symbol 335 as "shapeG2"
ExportAssets (56)Timeline Frame 1Symbol 338 as "shapeF1"
ExportAssets (56)Timeline Frame 1Symbol 339 as "shapeZ3"
ExportAssets (56)Timeline Frame 1Symbol 341 as "shapeZ2"
ExportAssets (56)Timeline Frame 1Symbol 343 as "shapeZ4"
ExportAssets (56)Timeline Frame 1Symbol 345 as "shapeZ1"
ExportAssets (56)Timeline Frame 1Symbol 348 as "shapeE2"
ExportAssets (56)Timeline Frame 1Symbol 350 as "shapeE14"
ExportAssets (56)Timeline Frame 1Symbol 353 as "shapeE4"
ExportAssets (56)Timeline Frame 1Symbol 355 as "shapeE13"
ExportAssets (56)Timeline Frame 1Symbol 358 as "shapeE3"
ExportAssets (56)Timeline Frame 1Symbol 360 as "shapeE11"
ExportAssets (56)Timeline Frame 1Symbol 363 as "shapeE1"
ExportAssets (56)Timeline Frame 1Symbol 365 as "shapeHINTARROWS"
ExportAssets (56)Timeline Frame 1Symbol 367 as "shapeHINTUNSOLVED"
ExportAssets (56)Timeline Frame 1Symbol 369 as "shapeHINTSOLVED"
ExportAssets (56)Timeline Frame 1Symbol 373 as "shapeHINT1"
ExportAssets (56)Timeline Frame 1Symbol 375 as "shapeD1"
ExportAssets (56)Timeline Frame 1Symbol 376 as "shapeW1"
ExportAssets (56)Timeline Frame 1Symbol 378 as "shapeV6"
ExportAssets (56)Timeline Frame 1Symbol 380 as "shapeV5"
ExportAssets (56)Timeline Frame 1Symbol 382 as "shapeV4"
ExportAssets (56)Timeline Frame 1Symbol 384 as "shapeV3"
ExportAssets (56)Timeline Frame 1Symbol 386 as "shapeV2"
ExportAssets (56)Timeline Frame 1Symbol 387 as "shapeY2"
ExportAssets (56)Timeline Frame 1Symbol 389 as "shapeY1"
ExportAssets (56)Timeline Frame 1Symbol 391 as "shapeX1"
ExportAssets (56)Timeline Frame 1Symbol 393 as "shapeV1"
ExportAssets (56)Timeline Frame 1Symbol 395 as "shapeU1"
ExportAssets (56)Timeline Frame 1Symbol 397 as "shapeI"
ExportAssets (56)Timeline Frame 1Symbol 399 as "shapeT1"
ExportAssets (56)Timeline Frame 1Symbol 406 as "shapeS6"
ExportAssets (56)Timeline Frame 1Symbol 412 as "shapeS5"
ExportAssets (56)Timeline Frame 1Symbol 421 as "shapeS4"
ExportAssets (56)Timeline Frame 1Symbol 425 as "shapeS3"
ExportAssets (56)Timeline Frame 1Symbol 429 as "shapeQ3"
ExportAssets (56)Timeline Frame 1Symbol 433 as "shapeQ2"
ExportAssets (56)Timeline Frame 1Symbol 436 as "shapeQ1"
ExportAssets (56)Timeline Frame 1Symbol 438 as "shapeJ3"
ExportAssets (56)Timeline Frame 1Symbol 439 as "shapeJ2"
ExportAssets (56)Timeline Frame 1Symbol 440 as "shapeJ1"
ExportAssets (56)Timeline Frame 1Symbol 443 as "shapeK3"
ExportAssets (56)Timeline Frame 1Symbol 444 as "shapeK2"
ExportAssets (56)Timeline Frame 1Symbol 445 as "shapeK1"
ExportAssets (56)Timeline Frame 1Symbol 447 as "shapeP1"
ExportAssets (56)Timeline Frame 1Symbol 449 as "shapeO1"
ExportAssets (56)Timeline Frame 1Symbol 453 as "shapeS2"
ExportAssets (56)Timeline Frame 1Symbol 456 as "shapeS1"
ExportAssets (56)Timeline Frame 1Symbol 458 as "shapeA1"
ExportAssets (56)Timeline Frame 1Symbol 460 as "shapeA_Outline"
ExportAssets (56)Timeline Frame 1Symbol 465 as "aniSun"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 466 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 472 as "shapeN6"
ExportAssets (56)Timeline Frame 1Symbol 478 as "shapeN5"
ExportAssets (56)Timeline Frame 1Symbol 484 as "shapeN4"
ExportAssets (56)Timeline Frame 1Symbol 490 as "shapeN3"
ExportAssets (56)Timeline Frame 1Symbol 498 as "shapeN2"
ExportAssets (56)Timeline Frame 1Symbol 499 as "shapeL2"
ExportAssets (56)Timeline Frame 1Symbol 501 as "shapeM1"
ExportAssets (56)Timeline Frame 1Symbol 504 as "shapeL1"
ExportAssets (56)Timeline Frame 1Symbol 510 as "shapeN1"
ExportAssets (56)Timeline Frame 1Symbol 245 as "puzzleLani"
ExportAssets (56)Timeline Frame 1Symbol 512 as "grENDGAME_stars"
ExportAssets (56)Timeline Frame 1Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 1Symbol 84 as "grMoire2"
ExportAssets (56)Timeline Frame 1Symbol 26 as "chime6.wav"
ExportAssets (56)Timeline Frame 1Symbol 25 as "chime1.wav"
ExportAssets (56)Timeline Frame 1Symbol 26 as "chime6.wav"
ExportAssets (56)Timeline Frame 1Symbol 24 as "chime2.wav"
ExportAssets (56)Timeline Frame 1Symbol 26 as "chime6.wav"
ExportAssets (56)Timeline Frame 1Symbol 24 as "chime2.wav"
ExportAssets (56)Timeline Frame 127Symbol 23 as "eerieStab1.wav"
ExportAssets (56)Timeline Frame 181Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 181Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 182Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 182Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 183Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 183Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 184Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 184Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 185Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 185Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 186Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 186Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 187Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 187Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 188Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 188Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 189Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 189Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 190Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 190Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 191Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 191Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 192Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 192Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 193Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 193Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 194Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 194Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 195Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 195Symbol 516 as "btnIntermediary"
ExportAssets (56)Timeline Frame 196Symbol 25 as "chime1.wav"

Labels

"titleFadeOut"Frame 25
"titleFadeOut2"Frame 55
"fadeIn"Frame 83
"on"Frame 112
"fadeOut"Frame 127
"turnOn"Symbol 37 MovieClip Frame 6
"stayOn"Symbol 37 MovieClip Frame 20
"turnOff"Symbol 37 MovieClip Frame 25
"stayOff"Symbol 37 MovieClip Frame 40
"frisbeePress"Symbol 47 MovieClip Frame 5
"frisbeeOn"Symbol 47 MovieClip Frame 16
"moireFadeIn"Symbol 47 MovieClip Frame 27
"moireOn"Symbol 47 MovieClip Frame 35
"moirePress"Symbol 47 MovieClip Frame 40
"doFadeIn"Symbol 68 MovieClip Frame 5
"stayOn"Symbol 68 MovieClip Frame 25
"doFadeOut"Symbol 68 MovieClip Frame 30
"stayOff"Symbol 68 MovieClip Frame 45
"doFadeIn"Symbol 72 MovieClip Frame 5
"stayOn"Symbol 72 MovieClip Frame 25
"doFadeOut"Symbol 72 MovieClip Frame 30
"stayOff"Symbol 72 MovieClip Frame 45
"turnOn"Symbol 86 MovieClip Frame 10
"stayOn"Symbol 86 MovieClip Frame 25
"turnOff"Symbol 86 MovieClip Frame 30
"stayOff"Symbol 86 MovieClip Frame 45
"doFadeIn"Symbol 92 MovieClip Frame 5
"stayOn"Symbol 92 MovieClip Frame 25
"doFadeOut"Symbol 92 MovieClip Frame 30
"stayOff"Symbol 92 MovieClip Frame 55
"doFadeIn"Symbol 96 MovieClip Frame 5
"stayOn"Symbol 96 MovieClip Frame 25
"doFadeOut"Symbol 96 MovieClip Frame 30
"stayOff"Symbol 96 MovieClip Frame 45
"doFadeIn"Symbol 101 MovieClip Frame 5
"stayOn"Symbol 101 MovieClip Frame 25
"doFadeOut"Symbol 101 MovieClip Frame 30
"stayOff"Symbol 101 MovieClip Frame 59
"doFadeIn"Symbol 105 MovieClip Frame 5
"stayOn"Symbol 105 MovieClip Frame 25
"doFadeOut"Symbol 105 MovieClip Frame 30
"stayOff"Symbol 105 MovieClip Frame 59
"doTurnLeft"Symbol 107 MovieClip Frame 5
"stayLeft"Symbol 107 MovieClip Frame 37
"doTurnRight"Symbol 107 MovieClip Frame 42
"stayRight"Symbol 107 MovieClip Frame 81
"doFadeIn"Symbol 110 MovieClip Frame 5
"stayOn"Symbol 110 MovieClip Frame 25
"doFadeOut"Symbol 110 MovieClip Frame 30
"stayOff"Symbol 110 MovieClip Frame 59
"stayClosed"Symbol 117 MovieClip Frame 1
"doOpen"Symbol 117 MovieClip Frame 5
"stayOpen"Symbol 117 MovieClip Frame 101
"orbit1"Symbol 127 MovieClip Frame 5
"orbit2"Symbol 127 MovieClip Frame 10
"orbit3"Symbol 127 MovieClip Frame 15
"orbit4"Symbol 127 MovieClip Frame 20
"orbit5"Symbol 127 MovieClip Frame 25
"orbit6"Symbol 127 MovieClip Frame 30
"orbitOff"Symbol 127 MovieClip Frame 35
"iPuzzleHolderBackground"Symbol 137 MovieClip [txWall_SwitchEdge] Frame 1
"doOpen"Symbol 156 MovieClip Frame 6
"iBackground"Symbol 168 MovieClip [txWall_DoorCorner] Frame 1
"doOn"Symbol 338 MovieClip [shapeF1] Frame 5
"doOff"Symbol 338 MovieClip [shapeF1] Frame 20
"doOn1"Symbol 438 MovieClip [shapeJ3] Frame 5
"stayOn1"Symbol 438 MovieClip [shapeJ3] Frame 20
"doOff1"Symbol 438 MovieClip [shapeJ3] Frame 25
"stayOff1"Symbol 438 MovieClip [shapeJ3] Frame 40
"doOn2"Symbol 438 MovieClip [shapeJ3] Frame 50
"stayOn2"Symbol 438 MovieClip [shapeJ3] Frame 65
"doOff2"Symbol 438 MovieClip [shapeJ3] Frame 70
"stayOff2"Symbol 438 MovieClip [shapeJ3] Frame 85
"1to2"Symbol 438 MovieClip [shapeJ3] Frame 95
"2to1"Symbol 438 MovieClip [shapeJ3] Frame 115
"doOn1"Symbol 439 MovieClip [shapeJ2] Frame 5
"stayOn1"Symbol 439 MovieClip [shapeJ2] Frame 20
"doOff1"Symbol 439 MovieClip [shapeJ2] Frame 25
"stayOff1"Symbol 439 MovieClip [shapeJ2] Frame 40
"doOn2"Symbol 439 MovieClip [shapeJ2] Frame 50
"stayOn2"Symbol 439 MovieClip [shapeJ2] Frame 65
"doOff2"Symbol 439 MovieClip [shapeJ2] Frame 70
"stayOff2"Symbol 439 MovieClip [shapeJ2] Frame 85
"1to2"Symbol 439 MovieClip [shapeJ2] Frame 95
"2to1"Symbol 439 MovieClip [shapeJ2] Frame 115
"doOn1"Symbol 440 MovieClip [shapeJ1] Frame 5
"stayOn1"Symbol 440 MovieClip [shapeJ1] Frame 20
"doOff1"Symbol 440 MovieClip [shapeJ1] Frame 25
"stayOff1"Symbol 440 MovieClip [shapeJ1] Frame 40
"doOn2"Symbol 440 MovieClip [shapeJ1] Frame 50
"stayOn2"Symbol 440 MovieClip [shapeJ1] Frame 65
"doOff2"Symbol 440 MovieClip [shapeJ1] Frame 70
"stayOff2"Symbol 440 MovieClip [shapeJ1] Frame 85
"1to2"Symbol 440 MovieClip [shapeJ1] Frame 95
"2to1"Symbol 440 MovieClip [shapeJ1] Frame 115
"doOn"Symbol 443 MovieClip [shapeK3] Frame 5
"stayOn"Symbol 443 MovieClip [shapeK3] Frame 20
"doOff"Symbol 443 MovieClip [shapeK3] Frame 25
"stayOff"Symbol 443 MovieClip [shapeK3] Frame 40
"doOn"Symbol 444 MovieClip [shapeK2] Frame 5
"stayOn"Symbol 444 MovieClip [shapeK2] Frame 20
"doOff"Symbol 444 MovieClip [shapeK2] Frame 25
"stayOff"Symbol 444 MovieClip [shapeK2] Frame 40
"doOn"Symbol 445 MovieClip [shapeK1] Frame 5
"stayOn"Symbol 445 MovieClip [shapeK1] Frame 20
"doOff"Symbol 445 MovieClip [shapeK1] Frame 25
"stayOff"Symbol 445 MovieClip [shapeK1] Frame 40
"off"Symbol 520 MovieClip Frame 1
"hover"Symbol 520 MovieClip Frame 2
"press"Symbol 520 MovieClip Frame 15
"inactive"Symbol 520 MovieClip Frame 30
"off"Symbol 522 MovieClip Frame 1
"hover"Symbol 522 MovieClip Frame 2
"press"Symbol 522 MovieClip Frame 15
"off"Symbol 525 MovieClip Frame 1
"hover"Symbol 525 MovieClip Frame 2
"press"Symbol 525 MovieClip Frame 15
"off"Symbol 547 MovieClip Frame 1
"hover"Symbol 547 MovieClip Frame 2
"press"Symbol 547 MovieClip Frame 3

Dynamic Text Variables

UserNameSymbol 553 EditableText""
UserCommentSymbol 554 EditableText""




http://swfchan.com/2/8727/info.shtml
Created: 10/6 -2019 21:40:26 Last modified: 10/6 -2019 21:40:26 Server time: 28/04 -2024 17:38:39