ࡱ> +zRoot EntryRoot Entryp|YrRASHPL ?@ABCDEFGHIJKLNOPQSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxy|}~Symbol 17Symbol 15 FSymbol 16 Symbol 142Symbol 13 6Symbol 123Symbol 11y?Symbol 10rSymbol 4 hfSymbol 3W3Symbol 2 1_ Symbol 10 Symbol 5#ECPicPage CPicLayer CPicFrame CPicSpriteD ;, highorlong<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Scene 1' oldCopiedComponentPath=''> </component> CPicText  @ Futura Md BT(high  \ @ Futura Md BT(long?2` shadow M28:&28}FQ4Ji 8C48WM 84/[8t!xC4JH8%_? colorO5Z "g@,,Z,,̀fffzJ A/ 2 $wq83X45w<4p%8D8oYN88*="H8>X|4"M%#4ls%_8M28:&28}FQ4Ji 8C48WM 84/[8t!xC4JH42Bse480"#|8fa8=8# *4"M%8_8j>/8Z=?IB4+Ҁр ~H\s4zH GUp*<ObzbzsbzHzH& 3 ? L YXRROOOOOONNNNMNMNWSaYj`t ;t ;t ;t ;t ;C  YXYXx @x @7 ,j m& & j`j`L Y g *t ; u ` Mt ; 4iMNi |    W! i  c c   )%"q:q:))8#ekq:# 8=  ]  # #fbzt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;pMNMNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;)$ MNMNMNMNMNNNNNNONOOORRYXy Ay Ax @x @t ;t ;t ;t ;y A\ p e u uy Ay AMNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;j m# _ v &r&/P`sasa`Y*,'q/ C  e B. ,,Ber&&1},*eCeee*MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;MNMNMNMNt ;t ;t ;t ;?"T gradientsO#@|A   8*E8N8y}C4 8|8EP8v?@? %%@8@ijc8}b8 g4K#8mu8-L}8Z@4@3&?> ring3 eK2A7P 8uiJt8ut8+P8 D88|n4 h148'̀q *q84h4P0>4,N>8L8}838EjL8:_8s`a#N&u9q284u 4)R1E4OE8 8 8L!8~fH8~[87}2$tLF`8XE]8ʚG8*58؍=]8E ~8y|4_24 8n42IcD5 f":~޻4&?)JIӀ |i8t.8g{8j|<8F*Q4V+4 4D 4kG*4E8O8L-sp888${`4r<ln  Ļ|x8D58}83=80J4,4πz.hx mj -58XC8C8!"8g>8L?84ô,4<4]=2h*0tIH48J-$4G$88% xdt8 8v[8ik Y  ^d 4?L.,4I,8:.8 {Mw8@ 8rV8Khu!΀CMF3f}MT8 Of8@f8B8)B8.` 4004в83[ 'uz8Gp8iٟ@8i8:!Wp8G.z8u4-ө348pv{8?Gj8g)B8g֩8Nj8F"{8;v434g8;vix}8c_Fc8yE838c Fc8fF}8w424d8} 3X5[4mLU[8b?8̍8a8f\<[8fP[8S i8C8Ѝ? []sx8Hw8r>8ru8ȓ`w8rH9x8Vs4Ш448ֳʀ #9boQ\0jL I 80d4~l{E8Qsf4v,8AS}v38 LY8IZ3?T2fu ¬k<=$74d'!`<q$0H9Whh KJg h $!4[н]Ԁ < , oPR?#V &N8f41S^N]  +7b45B .j98X q;Z32f Q.^]4'Hr.M53s․nUp98r?Y shineOO "'1, 8CBwuxzhF e  86_ 7 . \BX8@?ft6}@1 8MAu=Z:Mk c8E7g A 8'AC3\>V8ٷ#!8qRyQDF A 87kL H> ;{1F  :[Y8f@q~! jg8 |vA8J"axu> &83 ;  G 8:h,8А'k8*t) 8z.] (x P  P 8/:|Z AZs~e8u)mwn4 8~FC 8 ! :   6 X38))% }: _> !Cjz 8%"n  !  8 vW_8,;g 8r@JO8f/<FH~ \o\GK 8ˎ1V>"e>{ K$y|q18,xQ <l_/ a  18Psip 8.&K  _ y87FA* 8K0 F  O 8/x w1!8CY4  vE) V 8 v//\86q a8Dsout`58O:o C6h8ak8:3.  8|5 8e 8?1w & Ywo  W 8&rR9hX87j  %A<8e]GI 8?W; 8}hP 8=7IG 4x B{ H8H'40  'b p 8A3    f2    ] 8?  %  8u%;?$*`8U<T 8*a"; ,  8``{ Z8.@U;RK8<4H~ u 8*>wWV8g` }_ 87$ lL 89`6 FY 89j ZTEt8okh 84  G 98ؗnRu zp3 8% . K 8U aJ Y!>,@8BCECEgt+??IS] B ` _ ?-  W %] ?   B r X l l q J ?- < ^ooffR,< z     m z  $& % $ # # "   $$BBBc9 9 9 9 ix K 0 & 9 7 G ix ^   9 K& e (' ^ ]W0 e\;hJhJTYEl::' %\QTw\GX2e%*N1T. !  $ . R O $ oX.\G;ta) 07 K& ~Y%cW~ a!>9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 Hn)kq fHn9 9 9 9 QQRR.:uW'NQRg  815n]]{a  }9.:9 9 9 9 ?@ hazeO  >U@  Futura Md BT(launch? Layer 13O  !"#$%&'()*+,-./023456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVXYZ[\]^_`abcdefgijklmnopqstuvwxz{|}~CPicPage CPicLayer CPicFrame~+@v@+@Bw8.~ 8<<|.<42 </component> ?Z Layer 6 fffZrz0400(((`8_(('(`8_'? Layer 4O RR. backwheel<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='catapult' oldCopiedComponentPath='1'> </component> < frontwheel<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='catapult' oldCopiedComponentPath='2'> </component> ?  Layer 23CPicPage CPicLayer CPicFrameI3777$CYf3iU4m܀2 ƀ!~ kM"1'{y'1 ݀ G!h31A33{t-*3u33|@F2+=%ή22u*` ]  |:4|BCC9fw *4|W[243vXYi]eu4WV@(b*P(?MSl ' Cb N-@d-!E# ,YiaCÀ2:Eр/6tπSO{4m?M Layer 1OOCPicPage CPicLayer CPicFramee2s_H/%2V/%>Y2x4tq!4 )hf "(08#؀ 8)0d#J8i{3x /3x@?- Layer 1OOCPicPage CPicLayer CPicFrame333OOOtjJUj)v4]7}ެÀ0)J0+R=C?d|4%A7+,0P?9 Layer 1OOCPicPage CPicLayer CPicFrame0P0`0+?DI Layer 1OO CPicSprite,  fhighorlongslider<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Scene 1' oldCopiedComponentPath=''> </component> ?@. , 8highorlongslider<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Scene 1' oldCopiedComponentPath=''> </component> ?;w ,  3highorlongslider<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Scene 1' oldCopiedComponentPath=''> </component> ?r Layer 23CPicPage CPicLayer CPicFramed0P0? Layer 1OOCPicPage CPicLayer CPicFrame CPicShapes0P0p0 CPicSprite Xhighorlongslider<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Scene 1' oldCopiedComponentPath=''> </component> ?s Layer 1OOCPicPage CPicLayer CPicFrame CPicShapep00P0p CPicSprite highorlongslider<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Scene 1' oldCopiedComponentPath=''> </component> ?y Layer 1OOCPicPage CPicLayer CPicFrameTECCbi(8m4(?I_ Layer 3O ~ <> d<d<b<dd<逼8L8} j?  Layer 23?L?O1 Layer 5O CPicShapeYsz0q,sss*sssNsssAssssss0AsssLdsss900d?& Layer 3Offft|xU>000U?m Layer 23 CPicSprite*^{Afloor<component metaDataFetched='true' schemaUrl='' schemaOperation='' sceneRootLabel='Scene 1' oldCopiedComponentPath='1'> </component> ?Z Layer 1OOCPicText %Ndist @ Futura Md BT(0  \ @ Futura Md BT(distance:  \] @ Futura Md BT(best:  Nbestdist @ Futura Md BT(0?Q#//Catapult by John Bezanis for swfspot.com //This is an array to store the names of all of the objects created (trampolines, fans) var objectArray:Array = new Array(); //Initialize the object count to 0. var objectcount = 0; //This is the distance the projectile has travelled. Initialize it to 0 var distance:Number = 0; //Function to create a new game function newGame() { //remove any objects from a previous game for (var i = 0; i<objectArray.length; i++) { removeMovieClip(objectArray[i].toString()); } //Clear the array of objects objectArray = []; //If the projectile has been shot before, remove it. if (projectile) { removeMovieClip("projectile"); } //Create a catapult createCatapult(); } //Call the function and start a new game newGame(); //Create the catapult and have it move on screen function createCatapult() { //If there is already a catapult on the screen, remove it if (catapult) { removeMovieClip("catapult"); } //Create a new catapult to the left of the screen this.attachMovie("catapult", "catapult", this.getNextHighestDepth(), {_x:-60, _y:250}); //Add the catapult to the list of objects objectArray.push("catapult"); //This onEnterFrame function moves the catapult until it has moved into the correct position catapult.onEnterFrame = function() { //Move the catapult 2 pixels to the right catapult._x += 2; //spin the front wheel catapult.frontwheel._rotation += 5; //spin the back wheel catapult.backwheel._rotation += 5; //If the catapult has reached its destination, start rotating the catapult arm if (catapult._x>130) { //run the load catapult function loadCatapult(); } }; } //This function prepares the catapult for launch, rotating the arm back function loadCatapult() { //remove the previous onEnterFrame that moved the catapult's _x position delete catapult.onEnterFrame; //Create a new onEnterFrame function that rotates the arm catapult.onEnterFrame = function() { //Bring the arm back catapult.arm._rotation -= 2; //If the arm has rotated all of the way back, stop the rotation and display the launch button if (catapult.arm._rotation<=-90) { //Show the launch display displayLaunchButton(); //stop rotating the arm backwards delete catapult.onEnterFrame; } }; } //This function brings up thelaunch display function displayLaunchButton() { //Attach the movieclip for the launch button this.attachMovie("launchbutton", "launchbutton", this.getNextHighestDepth(), {_x:80, _y:240}); //When the launch button is pressed, start bringing the arm forward launchbutton.onPress = function() { //swing the arm forward releaseCatapult(); }; } //Function to swing the arm forward function releaseCatapult() { //reset the distance to 0 distance = 0; //Remove the previous onenterframe if there was one delete catapult.onEnterFrame; //Create a new onenterframe to start swinging the arm forward catapult.onEnterFrame = function() { //Rotate the arm 15 degrees forward catapult.arm._rotation += 15; //If the arm is completely vertical, launch the projectile if (catapult.arm._rotation>=0) { //Stop rotating the arm delete catapult.onEnterFrame; //Shoot the rock fireProjectile(); } }; } //Function to launch the projectile function fireProjectile() { //Create a new projectile at the tip of the catapult arm this.attachMovie("projectile", "projectile", this.getNextHighestDepth(), {_x:catapult._x, _y:catapult._y}); //This is the starting x speed of the projectile. Its speed is determined by the y position of the white slider projectile.dx = launchbutton.highorlong.highorlongslider._y/5; //This is the starting y speed of the projectile. Its speed is determined by the y position of the white slider projectile.dy = 20-launchbutton.highorlong.highorlongslider._y/5; //Remove the launch button launchbutton.removeMovieClip(); //This onEnterFrame runs on the main level and moves the projectile, as well as the objects onEnterFrame = function () { //Update the distance the projectile has moved distance += projectile.dx; //Update the display showing the new distance, rounded down dist = Math.floor(distance); //If the current distance launched is greater than the high score, update it if (dist>bestdist) { bestdist = dist; } //Rotate the rock 2 degrees projectile._rotation += 2; //Move the projectile to the right projectile._x += projectile.dx; //Simulate gravity. Increase the downward speed projectile.dy -= .2; //Move the _Y position according to the dy force projectile._y -= projectile.dy; //If the rock is past the halfway point of the stage, move it back and adjust the objects on the screen if (projectile._x>=Stage.width/2) { //Shift all of the objects according to how far past the centerpoint the projectile travelled shiftObjects(Stage.width/2-projectile._x); //Move the _x position to the center of the screen projectile._x = Stage.width/2; } //If the projectile hits the ground, move it to the ground and set it to bounce back up if (projectile._y>Stage.height-20) { //move the y position to the ground projectile._y = (Stage.height-20); //slow down the y speed and reverse it, so it will bounce back up projectile.dy *= -.7; //slow down the x speed projectile.dx *= .7; } //Create a random number between 0 and 99 switch (Math.floor(Math.random()*100)) { //if the random number is 0, create a trampoline case 0 : //a loop to track how many trampolines are currently on the stage trampcount = 0; for (var i = 0; i<objectArray.length; i++) { //if the current object in the list is a trampoline, increment the trampoline count if (objectArray[i].indexOf("trampoline") != -1) { trampcount++; } } //create a trampoline if there are less than 3 if (trampcount<3) { addObject("trampoline"); } break; //if the random number is 1, create a fan case 1 : //a loop to track how many fans are currently on the stage fancount = 0; for (var i = 0; i<objectArray.length; i++) { //if the current object in the list is a fan, increment the fan count if (objectArray[i].indexOf("fan") != -1) { fancount++; } } //create a fan if there are less than 3 if (fancount<3) { addObject("fan"); } break; } //Loop through the object array, moving each object and removing objects that have passed the screen for (var i = 0; i<objectArray.length; i++) { //If the current object has passed the screen, remove it if (eval(objectArray[i].toString())._x+eval(objectArray[i].toString())._width<0) { //physically remove the object removeMovieClip(objectArray[i].toString()); //remove the object from the list of objects objectArray.splice(i, 1); } else if (objectArray[i].indexOf("trampoline") != -1) { //if the object is a trampoline and hits it, increase the y velocity if (projectile.hitTest(eval(objectArray[i].toString()))) { projectile.dy = Math.abs(projectile.dy*1.1); } } else if (objectArray[i].indexOf("fan") != -1) { //if the object is a fan and hits it, increase the x velocity if (projectile.hitTest(eval(objectArray[i].toString()))) { projectile.dx *= 1.1; } } } //If the projectile moves less than one tenth of a pixel on the x and y axis, the player has lost if (Math.abs(projectile.dy)<.1 && projectile.dx<.1) { //stop the on enter frame and display the lose game screen delete onEnterFrame; loseGame(); } }; } //Adds objects to the screen function addObject(inputObject) { //Add the new object to the current list of objects objectArray.push((inputObject)+(++objectcount)); //Attach the object specified by inputobject this.attachMovie(inputObject, (inputObject)+objectcount, this.getNextHighestDepth(), {_x:Stage.width+15, _y:Stage.height}); //Move the new object to the top of the stage projectile.swapDepths(this.getNextHighestDepth()); } //Move the x position of the objects in the objectArray function shiftObjects(shiftdistance) { //Move each object in the array for (var i = 0; i<objectArray.length; i++) { eval(objectArray[i])._x += shiftdistance; } //Move the floor according to the projectile's speed. Loop it if it passes the center point floor._x = (floor._x+shiftdistance)%(floor._width/2); } //The player has lost the game function loseGame() { //Show the lost game screen this.attachMovie("losescreen", "losescreen", this.getNextHighestDepth(), {_x:Stage.width/2, _y:Stage.height/2}); //Update the score text to the current score losescreen.score.text = Math.floor(distance); //When the replay button has been pressed, start a new game losescreen.replay.onPress = function() { newGame(); //remove the lose screen removeMovieClip(losescreen); }; }  Layer 3O? CDocumentPagePage 1Scene 1TG fG Symbol 18 replaybutton`GSymbol 1'`G Symbol 17 losescreen`G losescreenSymbol 1fG Symbol 15 trampoline*+^G trampolineSymbol 1ܝfG Symbol 16fan_Gfantrampoline copyfG Symbol 14Tween 2YGYG Symbol 13Tween 1 YGYG Symbol 12highorlongslider YGhighorlongsliderSymbol 1fG Symbol 11 highorlong YG highorlongSymbol 1fG Symbol 10 projectile JWG projectileSymbol 1ޝfGSymbol 4 catapultarm=TG catapultarmSymbol 1 <mobileSettings> <contentType id="standalonePlayer" name="Standalone Player"/> <testDevices/> </mobileSettings>