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

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

StickManSam1.swf

This is the info page for
Flash #12934

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


Text
99

Loading

1

1

%

%

Play

Play

NO MESSAGE

MISSION COMLETE

MISSION COMLETE

YOU ARE DEAD

YOU ARE DEAD

OUT OF TIME

OUT OF TIME

AMMO

0

TARGET

10

Time

:

Controls

Controls

STICKMAN SAM IN A STICKY SITUATION
PART 1: The Beginning

v1.1

created by: Istvan Orosi    08/2005

Music

Music

More games...

Select Mission

OK

Enter Level Code:

Main Menu

Main Menu

Wakey, wakey … Sam!

NEXT

SKIP

3452345

Level Code:

Level no:

3452345

TO BE CONTINUED...
Thanks for playing!

Instructions

The objective of the game is simply to complete each track given number of
times wiithin the allowed time.

Special areas:

Objective:

Accelerator:  your ship will gain speed upon contact

Rotator:  your ship be rotated upon contact

Hints:

Use the track and special areas to your advantage

Controls

Customize Controls by clicking on the current key assignment
and press desired key

x

Move Left
Move Right
Jump

Quality Toggle
Music On/Off

Next Weapon
Prev Weapon

Pause

Music

Game music is from the Newgrounds.com Audio Portal by "Cypher_ "
Copy and paste the link below to visit his music submissions

http://www.newgrounds.com/audio/view.php?id=394395&sub=7188

LEVEL COMPLETED

GAME COMPLETED

GAME OVER

Restart Level

Restart Level

ActionScript [AS1/AS2]

Instance of Symbol 166 MovieClip "mcLoader" in Frame 1
onClipEvent (load) { _root.stop(); } onClipEvent (enterFrame) { i = int((_root.getBytesLoaded() / _root.getBytesTotal()) * 100); txtPercentLoaded = i; trace((((i + " getBytesLoaded:") + _root.getBytesLoaded()) + " getBytesTotal:") + _root.getBytesTotal()); if (i >= 100) { this.gotoAndStop(2); } }
Frame 118
function setDefaultKeys() { keyQualityToggle = 79; keyMusicOnOff = 77; keyPauseGame = 80; trace("setting default keys"); key_pLMoveRight = 68; key_pLMoveLeft = 65; key_pLMoveUp = 87; key_pLNextWeapon = 69; key_pLPrevWeapon = 81; } function displayKeyAssignments() { arrKeyCodeValue = new Array(); arrKeyCodeValue[8] = "Backspace"; arrKeyCodeValue[9] = "Tab"; arrKeyCodeValue[12] = "Clear"; arrKeyCodeValue[13] = "Enter"; arrKeyCodeValue[16] = "Shift"; arrKeyCodeValue[17] = "Control"; arrKeyCodeValue[18] = "Alt"; arrKeyCodeValue[20] = "Caps Lock"; arrKeyCodeValue[27] = "Esc"; arrKeyCodeValue[32] = "Spacebar"; arrKeyCodeValue[33] = "Page Up"; arrKeyCodeValue[34] = "Page Down"; arrKeyCodeValue[35] = "End"; arrKeyCodeValue[36] = "Home"; arrKeyCodeValue[37] = "Left Arrow"; arrKeyCodeValue[38] = "Up Arrow"; arrKeyCodeValue[39] = "Right Arrow"; arrKeyCodeValue[40] = "Down Arrow"; arrKeyCodeValue[45] = "Insert"; arrKeyCodeValue[46] = "Delete"; arrKeyCodeValue[47] = "Help"; arrKeyCodeValue[48] = "0"; arrKeyCodeValue[49] = "1"; arrKeyCodeValue[50] = "2"; arrKeyCodeValue[51] = "3"; arrKeyCodeValue[52] = "4"; arrKeyCodeValue[53] = "5"; arrKeyCodeValue[54] = "6"; arrKeyCodeValue[55] = "7"; arrKeyCodeValue[56] = "8"; arrKeyCodeValue[57] = "9"; arrKeyCodeValue[65] = "A"; arrKeyCodeValue[66] = "B"; arrKeyCodeValue[67] = "C"; arrKeyCodeValue[68] = "D"; arrKeyCodeValue[69] = "E"; arrKeyCodeValue[70] = "F"; arrKeyCodeValue[71] = "G"; arrKeyCodeValue[72] = "H"; arrKeyCodeValue[73] = "I"; arrKeyCodeValue[74] = "J"; arrKeyCodeValue[75] = "K"; arrKeyCodeValue[76] = "L"; arrKeyCodeValue[77] = "M"; arrKeyCodeValue[78] = "N"; arrKeyCodeValue[79] = "O"; arrKeyCodeValue[80] = "P"; arrKeyCodeValue[81] = "Q"; arrKeyCodeValue[82] = "R"; arrKeyCodeValue[83] = "S"; arrKeyCodeValue[84] = "T"; arrKeyCodeValue[85] = "U"; arrKeyCodeValue[86] = "V"; arrKeyCodeValue[87] = "W"; arrKeyCodeValue[88] = "X"; arrKeyCodeValue[89] = "Y"; arrKeyCodeValue[90] = "Z"; arrKeyCodeValue[96] = "Numpad 0"; arrKeyCodeValue[97] = "Numpad 1"; arrKeyCodeValue[98] = "Numpad 2"; arrKeyCodeValue[99] = "Numpad 3"; arrKeyCodeValue[100] = "Numpad 4"; arrKeyCodeValue[101] = "Numpad 5"; arrKeyCodeValue[102] = "Numpad 6"; arrKeyCodeValue[103] = "Numpad 7"; arrKeyCodeValue[104] = "Numpad 8"; arrKeyCodeValue[105] = "Numbpad 9"; arrKeyCodeValue[106] = "Numpad Multiply"; arrKeyCodeValue[107] = "Numpad Add"; arrKeyCodeValue[108] = "Numpad Enter"; arrKeyCodeValue[109] = "Numpad Subtract"; arrKeyCodeValue[110] = "Numpad Decimal"; arrKeyCodeValue[111] = "Numpad Divide"; arrKeyCodeValue[112] = "F1"; arrKeyCodeValue[113] = "F2"; arrKeyCodeValue[114] = "F3"; arrKeyCodeValue[115] = "F4"; arrKeyCodeValue[116] = "F5"; arrKeyCodeValue[117] = "F6"; arrKeyCodeValue[118] = "F7"; arrKeyCodeValue[119] = "F8"; arrKeyCodeValue[120] = "F9"; arrKeyCodeValue[121] = "F10"; arrKeyCodeValue[122] = "F11"; arrKeyCodeValue[123] = "F12"; arrKeyCodeValue[124] = "F13"; arrKeyCodeValue[125] = "F14"; arrKeyCodeValue[126] = "F15"; arrKeyCodeValue[144] = "Num Lock"; arrKeyCodeValue[186] = ";"; arrKeyCodeValue[187] = "="; arrKeyCodeValue[189] = "-"; arrKeyCodeValue[191] = "/"; arrKeyCodeValue[192] = "`"; arrKeyCodeValue[219] = "["; arrKeyCodeValue[220] = "\\"; arrKeyCodeValue[221] = "]"; arrKeyCodeValue[222] = "'"; menuWindowMC.keyRotateLeftMC.txtKey = arrKeyCodeValue[keyRotateLeft]; menuWindowMC.keyRotateRightMC.txtKey = arrKeyCodeValue[keyRotateRight]; menuWindowMC.keyThrustOnMC.txtKey = arrKeyCodeValue[keyThrustOn]; menuWindowMC.keyQualityToggleMC.txtKey = arrKeyCodeValue[keyQualityToggle]; menuWindowMC.keyMusicOnOffMC.txtKey = arrKeyCodeValue[keyMusicOnOff]; trace("displaying key " + arrKeyCodeValue[221]); trace("displaying key " + arrKeyCodeValue[221]); } function displayKeyValue(obj) { obj.status = "none"; obj.txtKey = _root.arrKeyCodeValue[_root[obj._name]]; } function setKeyValue(obj) { if (obj.status == "selected") { obj.status = "none"; _root[obj._name] = Key.getCode(); obj.txtKey = _root.arrKeyCodeValue[_root[obj._name]]; } obj.gotoAndStop(1); } function highlightKey(obj) { if (obj.hitTest(_root._xmouse, _root._ymouse, 1)) { obj.status = "selected"; obj.gotoAndStop(2); } else { obj.status = "none"; obj.gotoAndStop(1); } } function getAngle2toAngle1direction(angle1, angle2) { angleDiff = angle1 - angle2; if ((angle1 * angle2) < 0) { if (angle1 < 0) { angle1 = angle1 + 180; angleDiff = -(angle1 - angle2); } else { angle2 = angle2 + 180; angleDiff = -(angle1 - angle2); } } if (angleDiff > 0) { return(1); } return(-1); } function setCutSceneDialogue() { trace("dialogueArr"); dialogueArr = []; switch (g_levelNo) { case 0 : addNewDialogueLine("Sp", "Wakey, wakey \u2026 Sam!"); addNewDialogueLine("Sam", "Whoa! Where am I?"); addNewDialogueLine("Sp", "You are about to begin your training."); addNewDialogueLine("Sam", "What kind of training?"); addNewDialogueLine("Sp", "You'll see soon. "); addNewDialogueLine("Sp", "All right, you are able to move left, right and jump \n(default: A,D,W). Move the mouse to move the crosshair. "); break; case 1 : addNewDialogueLine("Sam", "I can move myself by pressing keys? Controls page? \nWhat are you talking about?"); addNewDialogueLine("Sp", "Uh, never mind that\u2026 seems like some kind or interference. \nMoving on."); addNewDialogueLine("Sam", "Okay\u2026"); addNewDialogueLine("Sam", "How come I have a gun in my hand? Can I use it?"); addNewDialogueLine("Sp", "Excellent question. That is the next part of your training. \nSimply destroy the objects."); break; case 2 : addNewDialogueLine("Sam", "That was so cool! Can I go back and have more!?"); addNewDialogueLine("Sp", "Of course. However, you need to improve is your aim. \nSo have a go at this\u2026."); break; case 3 : addNewDialogueLine("Sam", "Sweet!"); addNewDialogueLine("Sp", "You seem to like it."); addNewDialogueLine("Sam", "Oh yeah!"); addNewDialogueLine("Sp", "Try this mission."); break; case 4 : addNewDialogueLine("Sam", "I have a question. Can the exploding debris hit me? \nIt felt like it did."); addNewDialogueLine("Sp", "Another great question. The answer is yes"); addNewDialogueLine("Sam", "Hmm. I think you could've mentioned that before\u2026"); addNewDialogueLine("Sp", "You look like a smart one. You would've figured that \nout by yourself"); addNewDialogueLine("Sam", "That's true"); addNewDialogueLine("Sp", "All right then. Perfect practice makes perfect! \nHave a go at this."); addNewDialogueLine("Sp", "Here is a little extra challenge You have less time \nto finish the mission"); break; case 5 : addNewDialogueLine("Sp", "Great job! You're doing great so far"); addNewDialogueLine("Sam", "[smiling]"); addNewDialogueLine("Sp", "One more mission and you're done."); addNewDialogueLine("Sam", "Cool!"); break; case 6 : addNewDialogueLine("Sam", "Wait a minute, I thought you said I'm done."); addNewDialogueLine("Sp", "Sorry, I meant your basic training is done. The real \nchallenge is yet to come"); addNewDialogueLine("Sam", "Oh, boy!"); addNewDialogueLine("Sp", "There's nothing to worry about. Just do what you did before. \nIf you get stuck, practice until you are able to move forward."); addNewDialogueLine("Sam", "Ok. I give my best shot!"); addNewDialogueLine("Sp", "That's the attitude! Have fun with this mission."); break; case 7 : addNewDialogueLine("Sam", "Great! That was easy! Oh, I'm just wondering\u2026 \nCan I have other wapons?"); addNewDialogueLine("Sp", "Sure. Here's a better pistol. You deserve it. \nOh, just one note."); addNewDialogueLine("Sp", "This one has limited ammo. If you run out of ammo, \nuse the basic pistol"); addNewDialogueLine("Sp", "(Default keys for next and previous weapon: E,Q) \nHere's your next mission."); break; case 8 : addNewDialogueLine("Sam", "That pistol was much better. Can I have more ammo?"); addNewDialogueLine("Sp", "Sure, since you asked nicely. Have a go at this mission"); break; case 9 : addNewDialogueLine("Sp", "Since you are doing well, it's time for a new weapon. 'The Uzi'"); addNewDialogueLine("Sam", "Sweet! Um, how do I use it?"); addNewDialogueLine("Sp", "Just try it and see."); break; case 10 : addNewDialogueLine("Sp", "Another mission well executed!"); addNewDialogueLine("Sam", "Thanks!"); addNewDialogueLine("Sam", "Fart (show fart cloud)"); addNewDialogueLine("Sp", "What was that?"); addNewDialogueLine("Sam", "Nothing\u2026"); addNewDialogueLine("Sp", "You farted, didn't you?"); addNewDialogueLine("Sam", "Yeah, sorry .. Hehe"); addNewDialogueLine("Sp", "All right 'Windy Boy', here is your next challenge: \n'Divine Wind' "); addNewDialogueLine("Sam", "What do you mean by that?"); addNewDialogueLine("Sp", "You'll see\u2026 hehehe"); break; case 11 : addNewDialogueLine("Sp", "Good job! Now, same thing with a bit more difficulty. "); break; case 12 : addNewDialogueLine("Sp", "It seems like you were having fun. "); addNewDialogueLine("Sam", "Yeah, right!"); addNewDialogueLine("Sp", "How does a 'Machine gun' sound"); addNewDialogueLine("Sam", "That's more I like it!"); addNewDialogueLine("Sp", "There you go. How about more enemy?"); addNewDialogueLine("Sam", "Bring it on!"); addNewDialogueLine("Sp", "Have fun!"); break; case 13 : addNewDialogueLine("Sp", "You seen to be getting the hang of it. One more \n'Windy' level and we move onto something else. "); addNewDialogueLine("Sp", "Oh, in this mission, your only concern is survival. \nDon't even try to go for not getting hit."); break; case 14 : addNewDialogueLine("Sp", "Nice. How do you like tight-rope jumping?"); addNewDialogueLine("Sam", "What are you thinking\u2026?"); addNewDialogueLine("Sp", "You'll seel"); break; case 15 : addNewDialogueLine("Sp", "Great! You're getting better and better. "); addNewDialogueLine("Sam", "Oh Yeah!"); addNewDialogueLine("Sp", "Now it's time for 'Big Brother' to follow you."); addNewDialogueLine("Sam", "I just love how you put things in perspective"); addNewDialogueLine("Sp", "Thanks,"); break; case 16 : addNewDialogueLine("Sp", "Let's combine a few things now, shall we?"); addNewDialogueLine("Sam", "Why do I have a feeling I can't say 'no' ?"); break; case 17 : addNewDialogueLine("Sp", "With that kind of dance I\u2019m sure you\u2019re really popular \nwith the ladies! HAHAHA!"); addNewDialogueLine("Sam", "I'll get you for that one day!"); addNewDialogueLine("Sp", "Of course, you will, hahaha! Here's your next mission."); break; case 18 : addNewDialogueLine("Sp", "HAHAHA! You were jumping like a drunken zombie!"); addNewDialogueLine("Sam", "Trying to make me angry? It's not working."); addNewDialogueLine("Sp", "Good."); addNewDialogueLine("Sam", "What?"); addNewDialogueLine("Sp", "Learning to keep your cool has been your first lesson."); addNewDialogueLine("Sam", "I see."); addNewDialogueLine("Sp", "Try to keep it cool on this level."); break; case 19 : addNewDialogueLine("Sp", "Excellent! You're ready for some new challenges"); addNewDialogueLine("None", "Grrrr."); addNewDialogueLine("Sam", "What the hell is that !?!"); addNewDialogueLine("None", "."); break; } testArray = dialogueArr; arrNo = testArray.length; while ((arrNo--) > 0) { trace(((((" tempEnemyArr :: " + arrNo) + " :: ") + testArray[arrNo][0]) + " :: ") + testArray[arrNo][1]); } } function addNewDialogueLine(currSpeaker, currText) { trace("addNewDialogueLine"); moveToNextFrame = true; dialogueArr.push([currSpeaker, currText, moveToNextFrame]); } function continueDialogue() { trace(((dialogueArr.length + dialogueArr[0][0]) + " ") + dialogueArr[0][1]); if (dialogueArr.length == 0) { _root.game_start(); } else { menuWindowMC.cutScenesMC.speakerHeadMC.gotoAndStop(dialogueArr[0][0]); menuWindowMC.cutScenesMC.txtDialogue = dialogueArr[0][1]; if (dialogueArr[0][2]) { menuWindowMC.cutScenesMC.nextFrame(); } dialogueArr.splice(0, 1); } } function updateTimer(time) { temp60s = int(time / 60); temp10s = int((time - (temp60s * 60)) / 10); temp1s = int((time - (temp60s * 60)) - (temp10s * 10)); displayDigit(time_60s_MC, temp60s); displayDigit(time_10s_MC, temp10s); displayDigit(time_1s_MC, temp1s); } function displayDigit(numericDigit, value) { if (value == 0) { numericDigit.gotoAndStop(10); } else { numericDigit.gotoAndStop(value); } } Abs = Math.abs; GetTimer = getTimer; function bgndObj(type, distance, doorSide) { this.type = type; this.distance = distance; this.doorSide = doorSide; } function removeAttachedMCs() { removeMovieClip("game_MC.pL_projectileAttachMC"); removeMovieClip("game_MC.enemyAttachMC"); removeMovieClip("game_MC.ricochetAttachMC"); removeMovieClip("game_MC.smokeTrailAttachMC"); removeMovieClip("game_MC.explosionDebryAttachMC"); } function checkLevelCode(levelCode) { levelCodeArrNo = levelCodeArr.length; trace("levelCode: " + levelCode); invalidCode = true; while ((levelCodeArrNo--) >= 0) { if (levelCode == levelCodeArr[levelCodeArrNo]) { menuWindowMC.levelCodeMC.gotoAndStop(levelCodeArrNo + 1); pL_levelCode = levelCode; menuWindowMC.txtLevelCode = ""; noOfUnlockedLevels = levelCodeArrNo; invalidCode = false; } } if (invalidCode) { menuWindowMC.txtLevelCode = "Invalid Code"; } else { noOfButtonRows = 4; noOfButtonCols = 5; buttonNo = 0; buttonWidth = 60; buttonHeight = 40; trace("noOfUnlockedLevels: " + noOfUnlockedLevels); buttonNoRow = 1; while (buttonNoRow <= noOfButtonRows) { buttonY = (buttonHeight * 1.2) * ((buttonNoRow - (noOfButtonRows / 2)) - 1); buttonNoCol = 1; while (buttonNoCol <= noOfButtonCols) { menuWindowMC.pL_missionButtonsMC.attachMovie("missionButton", ("missionButton_" + buttonNo) + "_MC", buttonNo + 2); buttonMC = eval (("menuWindowMC.pL_missionButtonsMC.missionButton_" + buttonNo) + "_MC"); buttonMC.buttonNo = buttonNo; buttonMCtxt = eval (("menuWindowMC.pL_missionButtonsMC.missionButton_" + buttonNo) + "_MC.txtMissionNo"); buttonMC.txtMissionNo.text = buttonNo; textButton.txtMissionNo.text = 12; if (buttonNo <= noOfUnlockedLevels) { buttonMC.gotoAndPlay("unlocked"); } else { buttonMC.gotoAndPlay("locked"); } trace((("buttonX: " + buttonX) + " :: buttonY: ") + buttonY); buttonX = (buttonWidth * 1.2) * ((buttonNoCol - (noOfButtonCols / 2)) - 0.5); buttonMC._x = buttonX; buttonMC._y = buttonY; buttonNo++; buttonNoCol++; } buttonNoRow++; } } trace("pL_levelCode: " + pL_levelCode); } function game_start() { g_stat = "play"; _quality = game_quality; if (playGameMusic) { musicSndNo = 1; musicSnd = new Sound(); musicSnd.attachSound("music" + musicSndNo); musicSnd.start(0, 1000); } menuWindowMC.gotoAndStop("game_start"); onEnterFrame = onEnterFrame_game; onMouseDown = onMouseDown_game; onMouseUp = onMouseUp_game; V_legs_MC.swapDepths(10); V_armR_MC.swapDepths(11); V_armL_MC.swapDepths(12); menuWindowMC.swapDepths(1000); gameCoverMC.swapDepths(1010); Mouse.hide(); statusWindowMC.pL_heathMC.barMC._xscale = (pL_health = 100); pL_status = "walk"; pL_currWeaponNo = 0; pL_projectileArr = []; explosionDebryArr = []; pL_noOfProjCreated = 0; game_MC.createEmptyMovieClip("pL_projectileAttachMC", 100); noOfEnemyCreated = 0; game_MC.createEmptyMovieClip("enemyAttachMC", 10); noOfRicochetCreated = 0; game_MC.createEmptyMovieClip("ricochetAttachMC", 20); noOfSmokeTrailCreated = 0; game_MC.createEmptyMovieClip("smokeTrailAttachMC", 40); noOfExplosionDebryCreated = 0; game_MC.createEmptyMovieClip("explosionDebryAttachMC", 50); switch (g_levelNo) { case 0 : levelAllowedTime = 5; g_missionType = "timeTrial"; pL_setWeaponAmmo([0, 0, 0, 0, 0, 0, 0, 0, 0]); break; case 1 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 0, 0, 0, 0, 0, 0, 0, 0]); break; case 2 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 0, 0, 0, 0, 0, 0, 0, 0]); break; case 3 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 0, 0, 0, 0, 0, 0, 0, 0]); break; case 4 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 0, 0, 0, 0, 0, 0, 0, 0]); break; case 5 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 0, 0, 0, 0, 0, 0, 0, 0]); break; case 6 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 0, 0, 0, 0, 0, 0, 0, 0]); break; case 7 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 10, 0, 0, 0, 0, 0, 0, 0]); break; case 8 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 10, 0, 0, 0, 0, 0, 0, 0]); break; case 9 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 20, 15, 0, 0, 0, 0, 0, 0]); break; case 10 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 20, 15, 0, 0, 0, 0, 0, 0]); break; case 11 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 20, 15, 0, 0, 0, 0, 0, 0]); break; case 12 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 20, 15, 10, 0, 0, 0, 0, 0]); break; case 13 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 40, 30, 20, 0, 0, 0, 0, 0]); break; case 14 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 40, 30, 20, 0, 0, 0, 0, 0]); break; case 15 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 40, 30, 20, 0, 0, 0, 0, 0]); break; case 16 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 50, 40, 30, 0, 0, 0, 0, 0]); break; case 17 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 50, 40, 30, 0, 0, 0, 0, 0]); break; case 18 : levelAllowedTime = 300; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 80, 60, 50, 0, 0, 0, 0, 0]); break; case 19 : levelAllowedTime = 30000; g_missionType = "destroyEnemies"; pL_setWeaponAmmo(["inf", 40, 30, 20, 0, 0, 0, 0, 0]); break; case 20 : break; } enemyArr = []; tempEnemyArr = []; pL_y = 200; pL_x = 50; trace("ADDING ENEMIES " + g_levelNo); switch (g_levelNo) { case 0 : break; case 1 : tempEnemyArr.push(new Enemy(0, "stationary", 1, 180, 150, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 1, 100, 150, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 1, 260, 150, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 1, 320, 150, 4)); break; case 2 : tempEnemyArr.push(new Enemy(0, "stationary", 1, 220, 150, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 140, 80, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 140, 220, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 300, 80, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 300, 220, 4)); break; case 3 : tempEnemyArr.push(new Enemy(0, "stationary", 1, 220, 160, 5)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 140, 120, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 140, 180, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 300, 120, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 300, 180, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 100, 160, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 340, 160, 4)); break; case 4 : tempEnemyArr.push(new Enemy(0, "stationary", 1, 180, 160, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 1, 260, 160, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 220, 140, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 140, 140, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 2, 300, 140, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 3, 100, 120, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 3, 180, 120, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 3, 260, 120, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 3, 320, 120, 4)); break; case 5 : i = 0; while (i <= 5) { tempEnemyArr.push(new Enemy((2 * i) * FPS, "flying", 1, 320, 20, 5, 40 / FPS, "Path1")); i++; } break; case 6 : i = 0; while (i <= 7) { tempEnemyArr.push(new Enemy((2.4 * i) * FPS, "flying", 1, 320, 20, 5, 45 / FPS, "Path2")); i++; } break; case 7 : i = 0; while (i <= 7) { tempEnemyArr.push(new Enemy((2.4 * i) * FPS, "flying", 1, 320, 20, 5, 45 / FPS, "Path3")); i++; } break; case 8 : i = 0; while (i <= 7) { tempEnemyArr.push(new Enemy((2.4 * i) * FPS, "flying", 1, 320, 20, 5, 60 / FPS, "Path5")); i++; } break; case 9 : i = 0; while (i <= 7) { tempEnemyArr.push(new Enemy((2.4 * i) * FPS, "flying", 1, 320, 20, 5, 60 / FPS, "Path4")); i++; } break; case 10 : i = 0; while (i <= 10) { tempEnemyArr.push(new Enemy((2.4 * i) * FPS, "flying", 1, sw / 2, 0, 5, 40 / FPS, "pL_follow")); i++; } break; case 11 : i = 0; while (i <= 10) { tempEnemyArr.push(new Enemy((2 * i) * FPS, "flying", 1, sw / 2, 0, 5, 50 / FPS, "pL_follow")); i++; } break; case 12 : i = 0; while (i <= 6) { startSecond = i * 3; tempEnemyArr.push(new Enemy((2 * startSecond) * FPS, "flying", 1, sw / 2, 0, 5, 40 / FPS, "pL_follow")); tempEnemyArr.push(new Enemy((2 * (startSecond + 1)) * FPS, "flying", 1, sw * 0.75, 0, 5, 40 / FPS, "pL_follow")); tempEnemyArr.push(new Enemy((2 * (startSecond + 2)) * FPS, "flying", 1, sw * 0.25, 0, 5, 40 / FPS, "pL_follow")); i++; } break; case 13 : tempEnemyArr.push(new Enemy(0, "stationary", 1, 180, 150, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 1, 100, 150, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 1, 260, 150, 4)); tempEnemyArr.push(new Enemy(0, "stationary", 1, 320, 150, 4)); i = 0; while (i <= 6) { startSecond = i * 3; tempEnemyArr.push(new Enemy((2 * startSecond) * FPS, "flying", 1, sw / 2, 0, 5, 40 / FPS, "pL_follow")); tempEnemyArr.push(new Enemy((2 * (startSecond + 1)) * FPS, "flying", 1, sw * 0.75, 0, 5, 40 / FPS, "pL_follow")); tempEnemyArr.push(new Enemy((2 * (startSecond + 2)) * FPS, "flying", 1, sw * 0.25, 0, 5, 40 / FPS, "pL_follow")); i++; } break; case 14 : tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferRight, 260, 50, 0, 0, 177, 0, 1.5 * FPS, 3 * FPS, 0, 5)); tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferLeft, 260, 50, 0, 0, 1, 0, 3 * FPS, 3 * FPS, 0, 5)); break; case 15 : tempEnemyArr.push(new Enemy(0, "turret", 1, 220, screenBufferTop, 70, 0, 0, 90, 1, 1 * FPS, 3 * FPS, 1, 5)); break; case 16 : tempEnemyArr.push(new Enemy(0, "turret", 1, 220, screenBufferTop, 70, 0, 0, 90, 1, 1 * FPS, 4 * FPS, 1, 8)); tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferRight, 260, 50, 0, 0, 177, 0, 4 * FPS, 4 * FPS, 0, 8)); tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferLeft, 260, 50, 0, 0, 1, 0, 7 * FPS, 4 * FPS, 0, 8)); break; case 17 : tempEnemyArr.push(new Enemy(0, "turret", 1, 220, screenBufferTop, 70, 0, 0, 90, 1, 1 * FPS, 4 * FPS, 1, 5)); tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferRight, sh / 2, 50, 0, 0, 177, 1, 4 * FPS, 4 * FPS, 0, 5)); tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferLeft, sh / 2, 50, 0, 0, 1, 1, 7 * FPS, 4 * FPS, 0, 5)); break; case 18 : tempEnemyArr.push(new Enemy(0, "turret", 1, 220, screenBufferTop, 70, 0, 0, 90, 1, 1 * FPS, 4 * FPS, 1, 5)); tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferRight, sh / 2, 50, 0, 0, 177, 1, 4 * FPS, 4 * FPS, 0, 5)); tempEnemyArr.push(new Enemy(0, "turret", 1, screenBufferLeft, sh / 2, 50, 0, 0, 1, 1, 7 * FPS, 4 * FPS, 0, 5)); i = 0; while (i <= 6) { startSecond = i * 3; tempEnemyArr.push(new Enemy((2 * startSecond) * FPS, "flying", 1, sw / 2, 0, 5, 40 / FPS, "pL_follow")); tempEnemyArr.push(new Enemy((2 * (startSecond + 2)) * FPS, "flying", 1, sw * 0.25, 0, 5, 40 / FPS, "pL_follow")); i++; } break; case 19 : break; } testArray = tempEnemyArr; arrNo = tempEnemyArr.length; while ((arrNo--) > 0) { trace(((((" tempEnemyArr :: " + arrNo) + " :: ") + testArray[arrNo].showUpFr) + " :: ") + testArray[arrNo].attackDamage); } game_FrNo = 0; startTime = getTimer(); levelCompleteCounter = 0; nextEnemyFrNo = tempEnemyArr[0].showUpFr; moreEnemyToCome = true; statusWindowMC.missionMessageMC._visible = false; statusWindowMC.missionMessageMC.gotoAndStop(1); pL_changeWeapon(1); pL_changeWeapon(-1); trace("============================================================="); trace("levelAllowedTime " + levelAllowedTime); trace("g_missionType " + g_missionType); } function showCutScenes() { menuWindowMC.gotoAndStop("cutscenes"); menuWindowMC.cutScenesMC.gotoAndStop("mission_" + g_levelNo); menuWindowMC.cutScenesMC.txtLevelNo = g_levelNo; menuWindowMC.cutScenesMC.txtLevelCode = pL_levelCode; setCutSceneDialogue(); menuWindowMC.cutScenesMC.speakerHeadMC.gotoAndStop(dialogueArr[0][0]); menuWindowMC.cutScenesMC.txtDialogue = dialogueArr[0][1]; trace((_root.g_levelNo + " :: ") + dialogueArr[0][0]); ["menuWindowMC.pL_missionButtonsMC"].removeMovieClip(); missionButtonsMC = menuWindowMC.pL_missionButtonsMC; missionButtonsMC.removeMovieClip(); dialogueArr.splice(0, 1); } function level_init() { } function pL_setWeaponAmmo(ammoArr) { i = 0; while (i < pL_weaponsArr.length) { if ((ammoArr[i] == "inf") || (ammoArr[i] > 0)) { pL_weaponsArr[i].available = true; pL_weaponsArr[i].ammo = ammoArr[i]; } else { pL_weaponsArr[i].available = false; pL_weaponsArr[i].ammo = 0; } pL_weaponsArr[i].currReloadFr = 0; trace("pL_weaponsArr[i].available: " + pL_weaponsArr[i].available); trace("pL_weaponsArr[i].ammo: " + pL_weaponsArr[i].ammo); i++; } } function game_over(status) { trace("game_over status: " + status); _quality = "HIGH"; musicSnd.stop("music" + musicSndNo); pL_weaponSoundStop(); removeAttachedMCs(); menuWindowMC._visible = true; Mouse.show(); switch (status) { case "missionComplete" : g_levelNo++; showCutScenes(); menuWindowMC.cutScenesMC.txtLevelCode = levelCodeArr[g_levelNo]; tenmpLevelCodeNo = 0; while (tenmpLevelCodeNo < levelCodeArr.length) { if (levelCodeArr[tenmpLevelCodeNo] == pL_levelCode) { if (tenmpLevelCodeNo < g_levelNo) { pL_levelCode = levelCodeArr[g_levelNo]; } } tenmpLevelCodeNo++; } trace("pL_levelCode: " + pL_levelCode); break; case "pL_dead" : menuWindowMC._visible = true; menuWindowMC.gotoAndStop("pL_dies"); break; case "timeIsUp" : menuWindowMC.gotoAndStop("cutscenes"); break; } delete onEnterFrame; delete onMouseDown; delete onMouseUp; pL_weaponSoundStop(); } function Weapon(available, type, ammo, reloadFr, attackDamage) { this.available = available; this.type = type; this.ammo = ammo; this.reloadFr = reloadFr; this.currReloadFr = 0; this.attackDamage = attackDamage; } function ProjectileObj(targetMC, type, ux, uy, attackDamage) { this.targetMC = targetMC; this.type = type; switch (type) { case "rocketLauncher" : velocity = 400 / FPS; break; case "flameThrower" : velocity = 150 / FPS; this.timer = 1 * FPS; break; case "grenade" : velocity = 10 + ((pL_grenadeThrowVelocity * 10) / FPS); this.timer = 2 * FPS; break; } this.vx = velocity * ux; this.vy = velocity * uy; this.attackDamage = attackDamage; } function Enemy(showUpFr, type, typeNo, x, y, health, data1, data2, data3, data4, data5, data6, data7, data8) { trace("ADDING ENEMIES ++ " + g_levelNo); this.showUpFr = showUpFr; this.type = type; this.typeNo = typeNo; this.x = x; this.y = y; this.fullHealth = (this.health = health); switch (type) { case "stationary" : this.shape = "circle"; switch (typeNo) { case 1 : this.rad = 7.5; break; case 2 : this.rad = 5; break; case 3 : this.rad = 3.5; break; } break; case "turret" : this.gunAngle = data3; this.gunRotSpeed = data4; this.nextAttackFr = data5; this.nextAttackIntervalFr = data6; this.attackDurationFr = data7; this.attackDamage = data8; this.shape = "circle"; this.rad = 7.5; break; case "walker" : this.v = data1; this.gunAngle = data3; this.gunRotSpeed = data4; this.nextAttackFr = data5; this.nextAttackIntervalFr = data6; this.attackDurationFr = data7; this.attackDamage = data8; this.shape = "circle"; this.rad = 10; break; case "flying" : this.v = data1; this.gunAngle = data3; this.gunRotSpeed = data4; this.nextAttackFr = data5; this.nextAttackIntervalFr = data6; this.attackDurationFr = data7; this.attackDamage = data8; reachedCheckPointDist = 10; this.checkPointArrNo = 0; if (data2 == "pL_follow") { this.pathName = "pL_follow"; } else { this.pathName = data2; tempPathArr = eval (("checkPoint" + this.pathName) + "_arr"); this.nextCheckPointX = tempPathArr[this.checkPointArrNo][0]; this.nextCheckPointY = tempPathArr[this.checkPointArrNo][1]; } switch (typeNo) { case 1 : this.shape = "circle"; this.rad = 7.5; break; case 2 : this.shape = "circle"; this.rad = 5; break; case 3 : this.shape = "rectangle"; this.registration = "bottomCenter"; this.w = 22; this.h = 15; break; } break; } trace((("typeNo: " + this.typeNo) + " :: this.shape: ") + this.shape); } function nextCP(tempEnemyObj) { tempEnemyObj.checkPointArrNo++; tempPathArr = eval (("checkPoint" + tempEnemyObj.pathName) + "_arr"); if (tempEnemyObj.checkPointArrNo >= tempPathArr.length) { tempEnemyObj.checkPointArrNo = 0; } tempEnemyObj.nextCheckPointX = tempPathArr[tempEnemyObj.checkPointArrNo][0]; tempEnemyObj.nextCheckPointY = tempPathArr[tempEnemyObj.checkPointArrNo][1]; } function ExplosionDebry(targetMC, debryType, vx, vy, rotSpeed, startSize, finishSize, durationFr, smokeTrail) { this.targetMC = targetMC; this.type = "debry"; this.debryType = debryType; this.vx = vx; this.vy = vy; this.rotSpeed = rotSpeed; this.durationFr = durationFr; this.smokeTrail = smokeTrail; } function createRicochet(type, typeNo, x, y, angle) { if ((noOfRicochetCreated++) > 500) { noOfRicochetCreated = 0; } game_MC.ricochetAttachMC.attachMovie(type + typeNo, (((type + typeNo) + "_") + noOfRicochetCreated) + "_MC", noOfRicochetCreated); ricMC = eval ((((("game_MC.ricochetAttachMC." + type) + typeNo) + "_") + noOfRicochetCreated) + "_MC"); ricMC._x = x; ricMC._y = y; ricMC._rotation = angle; ricMC._xscale = int(25 + (75 * Math.random())); ricMC._yscale = int(50 + (50 * Math.random())); if (Math.random() > 0.5) { ricMC._yscale = ricMC._yscale * -1; } } function createExplosionDebry(debryType, x, y, angleDeg, startSize, finishSize, durationFr, smokeTrail) { if ((noOfExplosionDebryCreated++) > 500) { noOfExplosionDebryCreated = 0; } game_MC.explosionDebryAttachMC.attachMovie(debryType, ((debryType + "_") + noOfExplosionDebryCreated) + "_MC", noOfExplosionDebryCreated); targetMC = eval (((("game_MC.explosionDebryAttachMC." + debryType) + "_") + noOfExplosionDebryCreated) + "_MC"); targetMC._x = x; targetMC._y = y; targetMC._xscale = (targetMC._yscale = startSize); targetMC._rotation = angleDeg; vel = 6 + ((4 * Math.random()) * (startSize / 100)); angleDeg = angleDeg + int(30 * (0.5 - Math.random())); vx = vel * Math.cos((angleDeg / 180) * PI); vy = vel * Math.sin((angleDeg / 180) * PI); rotSpeed = vel; explosionDebryArr.push(new ExplosionDebry(targetMC, debryType, vx, vy, rotSpeed, startSize, finishSize, durationFr, smokeTrail)); } function createProjectile(weaponType) { if ((pL_noOfProjCreated++) > 500) { pL_noOfProjCreated = 0; } game_MC.pL_projectileAttachMC.attachMovie(weaponType, ((weaponType + "_") + pL_noOfProjCreated) + "_MC", pL_noOfProjCreated); projMC = eval (((("game_MC.pL_projectileAttachMC." + weaponType) + "_") + pL_noOfProjCreated) + "_MC"); nozzleX = game_MC.pL_MC.pL_weapon_MC.nozzle_MC._x; nozzleY = (game_MC.pL_MC.pL_weapon_MC.nozzle_MC._y * game_MC.pL_MC.pL_weapon_MC._xscale) / 100; nozzleY = (game_MC.pL_MC.pL_weapon_MC.nozzle_MC._y * game_MC.pL_MC.pL_weapon_MC._xscale) / 100; projMC._x = (pL_x + (pL_weapon_ux * nozzleX)) - (pL_weapon_uy * nozzleY); projMC._y = ((pL_y - pL_weaponRotationY) + (pL_weapon_ux * nozzleY)) + (pL_weapon_uy * nozzleX); switch (weaponType) { case "rocketLauncher" : projMC._rotation = angle; break; case "flameThrower" : projMC._rotation = angle; break; case "grenade" : game_MC.pL_MC.pL_weapon_MC.arms_MC.gotoAndPlay("throw"); break; } pL_projectileArr.push(new projectileObj(projMC, weaponType, pL_weapon_ux, pL_weapon_uy, pL_weaponsArr[pL_currWeaponNo].attackDamage)); } function pL_changeWeapon(direction) { trace(" direction : " + direction); trace("pL_weaponsArr[i].available: " + pL_weaponsArr[i].available); trace("pL_weaponsArr[i].ammo: " + pL_weaponsArr[i].ammo); pL_weaponSoundStop(); tempCurrWeaponNo = pL_currWeaponNo; i = 0; while (i < pL_weaponsArr.length) { tempCurrWeaponNo = tempCurrWeaponNo + direction; if (tempCurrWeaponNo < 0) { tempCurrWeaponNo = pL_weaponsArr.length - 1; } else if (tempCurrWeaponNo >= pL_weaponsArr.length) { tempCurrWeaponNo = 0; } if (pL_weaponsArr[tempCurrWeaponNo].available) { if ((pL_weaponsArr[tempCurrWeaponNo].ammo == "inf") || (pL_weaponsArr[tempCurrWeaponNo].ammo > 0)) { pL_oldWeaponNo = pL_currWeaponNo; pL_currWeaponNo = tempCurrWeaponNo; with (game_MC.pL_MC.pL_weapon_MC) { gotoAndStop(pL_weaponsArr[tempCurrWeaponNo].type); flash_MC._x = (lineOfFire_MC._x = nozzle_MC._x); flash_MC._y = (lineOfFire_MC._y = nozzle_MC._y); } statusWindowMC.pL_weaponDisplayMC.gotoAndStop(pL_weaponsArr[tempCurrWeaponNo].type); statusWindowMC.txtAmmo = pL_weaponsArr[tempCurrWeaponNo].ammo; trace((game_FrNo + " pL_oldWeaponNo : ") + pL_weaponsArr[pL_oldWeaponNo].currReloadFr); pL_weaponsArr[pL_oldWeaponNo].currReloadFr = pL_weaponsArr[pL_oldWeaponNo].currReloadFr + game_FrNo; trace((game_FrNo + " pL_oldWeaponNo : ") + pL_weaponsArr[pL_oldWeaponNo].currReloadFr); if (pL_weaponsArr[pL_currWeaponNo].currReloadFr < game_FrNo) { statusWindowMC.txtReloading = (pL_weaponsArr[pL_currWeaponNo].currReloadFr = 0); statusWindowMC.pL_ReloadMC.barMC._xscale = 100; } else { trace((game_FrNo + " pL_currWeaponNo : ") + pL_weaponsArr[pL_currWeaponNo].currReloadFr); statusWindowMC.txtReloading = (pL_weaponsArr[pL_currWeaponNo].currReloadFr = pL_weaponsArr[pL_currWeaponNo].currReloadFr - game_FrNo); statusWindowMC.pL_ReloadMC.barMC._xscale = (100 * (pL_weaponsArr[pL_currWeaponNo].reloadFr - pL_weaponsArr[pL_currWeaponNo].currReloadFr)) / pL_weaponsArr[pL_currWeaponNo].reloadFr; } i = pL_weaponsArr.length; } } i++; } pL_weaponType = pL_weaponsArr[pL_currWeaponNo].type; game_MC.pL_MC.pL_weapon_MC.flash_MC.gotoAndStop(1); game_MC.pL_MC.pL_weapon_MC.lineOfFire_MC.gotoAndStop(1); game_MC.pL_MC.pL_head_MC.flash_MC.gotoAndStop(1); game_MC.pL_MC.pL_Body_MC.flash_MC.gotoAndStop(1); pL_mouseDown = false; } function pL_getsHurt(type, damage, temp_x, temp_y, temp_ux, temp_uy) { if (pL_status != "dies") { pL_health = pL_health - damage; if (pL_health < 0) { pL_health = 0; pL_status = "dies"; game_MC.pL_MC.gotoAndStop("dies"); startLevelCompleteCountdown("pL_dead"); pL_xSpeed = 0; pL_ySpeed = 0; } else { game_MC.pL_MC.gotoAndStop("getsHurt"); pL_status = "getsHurt"; pL_xSpeed = damage * temp_ux; pL_ySpeed = damage * temp_uy; pL_getsHurtCounterFr = FPS / 2; } createRicochet("bloodsplatter", 1, temp_x, temp_y, temp_angle); statusWindowMC.pL_heathMC.barMC._xscale = pL_health; } } function pL_weaponSoundStop() { pL_weaponFireSnd.stop(pL_weaponType + "_fire"); } function lineObjectIntersectionDist(line_x, line_y, line_ux, line_uy, object) { if (object.shape == "rectangle") { if (object.registration == "bottomCenter") { object_xmin = object.x - (object.w / 2); object_xmax = object.x + (object.w / 2); object_ymin = object.y - object.h; object_ymax = object.y; } else if (object.registration == "topLeft") { object_xmin = object.x; object_xmax = object.x + object.w; object_ymin = object.y; object_ymax = object.y + object.h; } else if (object.registration == "center") { object_xmin = object.x - (object.w / 2); object_xmax = object.x + (object.w / 2); object_ymin = object.y - (object.h / 2); object_ymax = object.y + (object.h / 2); } dist = Math.sqrt(((object_xmin - line_x) * (object_xmin - line_x)) + ((object_ymin - line_y) * (object_ymin - line_y))); dist_alongLineToOrigin = (line_uy * (object_ymin - line_y)) + (line_ux * (object_xmin - line_x)); if (dist_alongLineToOrigin > 0) { dist_LT = (line_ux * (object_ymin - line_y)) - (line_uy * (object_xmin - line_x)); dist_RT = (line_ux * (object_ymin - line_y)) - (line_uy * (object_xmax - line_x)); dist_LB = (line_ux * (object_ymax - line_y)) - (line_uy * (object_xmin - line_x)); dist_RB = (line_ux * (object_ymax - line_y)) - (line_uy * (object_xmax - line_x)); dist_min = dist_LT; if (dist_RT < dist_min) { dist_min = dist_RT; } if (dist_LB < dist_min) { dist_min = dist_LB; } if (dist_RB < dist_min) { dist_min = dist_RB; } dist_max = dist_LT; if (dist_RT > dist_max) { dist_max = dist_RT; } if (dist_LB > dist_max) { dist_max = dist_LB; } if (dist_RB > dist_max) { dist_max = dist_RB; } if (dist_min < 0) { if (dist_max > 0) { tempX = line_x + (dist_alongLineToOrigin * line_ux); tempY = line_y + (dist_alongLineToOrigin * line_uy); hitWall_1 = []; hitWall_1.name = ""; hitWall_2 = []; hitWall_2.name = ""; if ((dist_LT * dist_LB) < 0) { hitWall_1.name = "left"; hitWall_1.hitX = object_xmin; hitWall_1.hitY = line_y + (((object_xmin - line_x) * line_uy) / line_ux); } if ((dist_RB * dist_RT) < 0) { if (hitWall_1.name != "") { hitWall_2.name = "rigth"; hitWall_2.hitX = object_xmax; hitWall_2.hitY = line_y + (((object_xmax - line_x) * line_uy) / line_ux); } else { hitWall_1.name = "rigth"; hitWall_1.hitX = object_xmax; hitWall_1.hitY = line_y + (((object_xmax - line_x) * line_uy) / line_ux); } } if ((dist_LB * dist_RB) < 0) { if (hitWall_1.name != "") { hitWall_2.name = "top"; hitWall_2.hitY = object_ymax; hitWall_2.hitX = line_x + (((object_ymax - line_y) * line_ux) / line_uy); } else { hitWall_1.name = "top"; hitWall_1.hitY = object_ymax; hitWall_1.hitX = line_x + (((object_ymax - line_y) * line_ux) / line_uy); } } if ((dist_LT * dist_RT) < 0) { hitWall_2.hitY = object_ymin; hitWall_2.hitX = line_x + (((object_ymin - line_y) * line_ux) / line_uy); hitWall_2.name = "bottom"; } tempX = hitWall_2.hitX; tempY = hitWall_2.hitY; tempdistancesObj = []; dist_1 = Math.sqrt(((hitWall_1.hitX - line_x) * (hitWall_1.hitX - line_x)) + ((hitWall_1.hitY - line_y) * (hitWall_1.hitY - line_y))); dist_2 = Math.sqrt(((hitWall_2.hitX - line_x) * (hitWall_2.hitX - line_x)) + ((hitWall_2.hitY - line_y) * (hitWall_2.hitY - line_y))); if (dist_1 < dist_2) { tempdistancesObj.minDist = dist_1; tempdistancesObj.minX = hitWall_1.hitX; tempdistancesObj.minY = hitWall_1.hitY; tempdistancesObj.maxDist = dist_2; tempdistancesObj.minX = hitWall_2.hitX; tempdistancesObj.minY = hitWall_2.hitY; } else { tempdistancesObj.minDist = dist_2; tempdistancesObj.minX = hitWall_2.hitX; tempdistancesObj.minY = hitWall_2.hitY; tempdistancesObj.maxDist = dist_1; tempdistancesObj.minX = hitWall_1.hitX; tempdistancesObj.minY = hitWall_1.hitY; } dist_alongLineInBox = Math.sqrt(((tempX - line_x) * (tempX - line_x)) + ((tempY - line_y) * (tempY - line_y))); return(tempdistancesObj); } } } } else if (object.shape == "circle") { object_x = object.x; object_y = object.y; dist_perpLineToOrigin = (line_ux * (object_y - line_y)) - (line_uy * (object_x - line_x)); dist_alongLineToOrigin = (line_uy * (object_y - line_y)) + (line_ux * (object_x - line_x)); if (dist_alongLineToOrigin > 0) { if (Abs(dist_perpLineToOrigin) < object.rad) { tempdistancesObj = []; modifierDist = Math.sqrt((object.rad * object.rad) - (dist_perpLineToOrigin * dist_perpLineToOrigin)); tempdistancesObj.minDist = dist_alongLineToOrigin - modifierDist; tempdistancesObj.maxDist = dist_alongLineToOrigin + modifierDist; return(tempdistancesObj); } } } return(0); } function lineOfFireHitsWall(tempLine_x, tempLine_y, tempLine_ux, tempLine_uy) { dist_LT = (tempLine_ux * (screenBufferTop - tempLine_y)) - (tempLine_uy * (screenBufferLeft - tempLine_x)); dist_RT = (tempLine_ux * (screenBufferTop - tempLine_y)) - (tempLine_uy * (screenBufferRight - tempLine_x)); dist_LB = (tempLine_ux * (screenBufferBottom - tempLine_y)) - (tempLine_uy * (screenBufferLeft - tempLine_x)); dist_RB = (tempLine_ux * (screenBufferBottom - tempLine_y)) - (tempLine_uy * (screenBufferRight - tempLine_x)); if ((dist_LT > 0) && (dist_LB < 0)) { temp_dx = screenBufferLeft - tempLine_x; temp_dy = (temp_dx * tempLine_uy) / tempLine_ux; temp_angle = 0; } else if ((dist_RB > 0) && (dist_RT < 0)) { temp_dx = screenBufferRight - tempLine_x; temp_dy = (temp_dx * tempLine_uy) / tempLine_ux; temp_angle = 180; } else if ((dist_LB < 0) && (dist_RB > 0)) { temp_dy = screenBufferTop - tempLine_y; temp_dx = (temp_dy * tempLine_ux) / tempLine_uy; temp_angle = 90; } else if ((dist_LB > 0) && (dist_RB < 0)) { temp_dy = screenBufferBottom - tempLine_y; temp_dx = (temp_dy * tempLine_ux) / tempLine_uy; temp_angle = -90; } temp_x = tempLine_x + temp_dx; temp_y = tempLine_y + temp_dy; createRicochet("ricochet", 2, temp_x, temp_y, temp_angle); shortestLineOfFireDist = 1000; } function enenmyGetsHurt(tempEnemyNo, attackDamage) { tempEnemyObj = enemyArr[tempEnemyNo]; tempEnemyObj.health = tempEnemyObj.health - attackDamage; enemyName = tempEnemyObj.type + tempEnemyObj.typeNo; statusWindowMC.EnemyStatusMC._visible = true; statusWindowMC.EnemyStatusMC.gotoAndStop(enemyName); statusWindowMC.EnemyStatusMC.heathMC.barMC._xscale = (100 * tempEnemyObj.health) / tempEnemyObj.fullHealth; if (tempEnemyObj.health <= 0) { tempEnemyObj.health = 0; statusWindowMC.EnemyStatusMC.heathMC.barMC._xscale = 0; enemyMC = eval (tempEnemyObj.target); sgExplodes(tempEnemyObj); enemyMC.gotoAndPlay("dies"); enemyArr.splice(tempEnemyNo, 1); switch (tempEnemyObj.shape) { case "circle" : enemyArea = (4 * tempEnemyObj.rad) * tempEnemyObj.rad; break; case "rectangle" : enemyArea = tempEnemyObj.w * tempEnemyObj.h; } trace("enemyArea: " + enemyArea); noOfDebry = 2 + (enemyArea / 80); if ((enemyArea / 3) > 100) { debrySize = 100; } else { debrySize = 30 + ((enemyArea * 70) / 300); } startAngle = 360 * Math.random(); i = 1; while (i < noOfDebry) { createExplosionDebry("debry1", enemyMC._x, enemyMC._y, startAngle - ((i * 360) / (enemyArea / 50)), debrySize, 0, 0, false); i++; } startAngle = -180 * Math.random(); noOfDebry = 2 + (enemyArea / 80); i = 1; while (i < (noOfDebry / 100)) { createExplosionDebry("debry1", enemyMC._x, enemyMC._y, startAngle + ((i * 360) / (enemyArea / 100)), debrySize, 25, 1.5 * FPS, true); i++; } } else { noOfEnemyDamageFr = 4; enemyMC = eval (tempEnemyObj.target); enemyMC.gotoAndStop(noOfEnemyDamageFr - int(noOfEnemyDamageFr * (tempEnemyObj.health / tempEnemyObj.fullHealth))); } enemyStatusDisplayFr = 5 * FPS; } function sgExplodes(sgObj) { switch (sgObj.type) { case "debry" : explosionRadius = 50; explosionDamage = 5; break; case "turret" : case "flying" : case "walker" : case "stationary" : explosionRadius = 40; explosionDamage = 10; break; case "rocketLauncher" : explosionRadius = 20; explosionDamage = sgObj.attackDamage; break; case "flameThrower" : break; case "grenade" : explosionRadius = 20; explosionDamage = sgObj.attackDamage; } dx = pL_x - sgObj.x; dy = (pL_y - (pL_height / 2)) - sgObj.y; dist = Math.sqrt((dx * dx) + (dy * dy)); if (dist < explosionRadius) { temp_ux = dx / dist; temp_uy = dy / dist; temp_x = pL_x + (temp_ux * dist); temp_y = (pL_y - (pL_height / 2)) + (temp_uy * dist); pL_getsHurt(type, explosionDamage, temp_x, temp_y, temp_ux, temp_uy); } } trace((("xtype: " + xtype) + " :: xtype: ") + xtype); Array.prototype.sortOn = function (p) { Array.$sortprop = p; var sortfunc = function (a, b) { var p = Array.$sortprop; return(b[p] < a[p]); }; this.sort(sortfunc); delete Array.$sortprop; }; if (firstTimeToLoad == undefined) { firstTimeToLoad = false; setDefaultKeys(); FPS = 24; sw = 440; sh = 320; PI = 3.1415; grav = 24 / FPS; screenBufferLeft = 5; screenBufferRight = sw - 5; screenBufferTop = 40; screenBufferBottom = sh - 40; screenBufferLeftObj = new Object(); screenBufferLeftObj.x = 0; screenBufferLeftObj.y = screenBufferTop - 2; screenBufferLeftObj.w = screenBufferLeft; screenBufferLeftObj.h = (sh - screenBufferBottom) + 4; screenBufferLeftObj.shape = "rectangle"; screenBufferLeftObj.registration = "topLeft"; screenBufferRightObj = new Object(); screenBufferRightObj.x = screenBufferRight; screenBufferRightObj.y = screenBufferTop - 2; screenBufferRightObj.w = sw - screenBufferRight; screenBufferRightObj.h = (sh - screenBufferBottom) + 4; screenBufferRightObj.shape = "rectangle"; screenBufferRightObj.registration = "topLeft"; screenBufferTopObj = new Object(); screenBufferTopObj.x = 0; screenBufferTopObj.y = 0; screenBufferTopObj.w = sw; screenBufferTopObj.h = screenBufferTop; screenBufferTopObj.shape = "rectangle"; screenBufferTopObj.registration = "topLeft"; screenBufferBottomObj = new Object(); screenBufferBottomObj.x = 0; screenBufferBottomObj.y = screenBufferBottom; screenBufferBottomObj.w = sw; screenBufferBottomObj.h = sh - screenBufferBottom; screenBufferBottomObj.shape = "rectangle"; screenBufferBottomObj.registration = "topLeft"; levelCodeArr = []; levelCodeArr.push("0FASDF"); levelCodeArr.push("1JTG4N"); levelCodeArr.push("2FT4MF"); levelCodeArr.push("3DEHBD"); levelCodeArr.push("4JF18S"); levelCodeArr.push("5MV6RG"); levelCodeArr.push("6IH84H"); levelCodeArr.push("7F6JAQ"); levelCodeArr.push("8TH7KJ"); levelCodeArr.push("9FU74V"); levelCodeArr.push("10DFH3"); levelCodeArr.push("11H87G"); levelCodeArr.push("12EVUT"); levelCodeArr.push("13J95G"); levelCodeArr.push("14B8EG"); levelCodeArr.push("15DFHG"); levelCodeArr.push("16J873"); levelCodeArr.push("178JS6"); levelCodeArr.push("188HJE"); levelCodeArr.push("19GHEU"); pL_levelCode = levelCodeArr[0]; pL_height = 30; pL_width = 8; pL_jumpSpeed = 250 / FPS; pL_walkSpeed = 120 / FPS; pL_weaponRotationY = 21; checkPointPath1_arr = []; currCheckPointPath_arr = checkPointPath1_arr; currCheckPointPath_arr.push([320, 110]); currCheckPointPath_arr.push([120, 110]); checkPointPath2_arr = []; currCheckPointPath_arr = checkPointPath2_arr; currCheckPointPath_arr.push([320, 70]); currCheckPointPath_arr.push([120, 70]); currCheckPointPath_arr.push([120, 160]); currCheckPointPath_arr.push([320, 160]); checkPointPath3_arr = []; currCheckPointPath_arr = (checkPointPath3_arr = []); currCheckPointPath_arr.push([220, 50]); currCheckPointPath_arr.push([140, 100]); currCheckPointPath_arr.push([220, 150]); currCheckPointPath_arr.push([300, 100]); checkPointPath4_arr = []; currCheckPointPath_arr = checkPointPath4_arr; currCheckPointPath_arr.push([220, 100]); currCheckPointPath_arr.push([160, 130]); currCheckPointPath_arr.push([160, 190]); currCheckPointPath_arr.push([220, 220]); currCheckPointPath_arr.push([280, 190]); currCheckPointPath_arr.push([280, 130]); checkPointPath5_arr = []; currCheckPointPath_arr = checkPointPath5_arr; currCheckPointPath_arr.push([320, 110]); currCheckPointPath_arr.push([120, 110]); currCheckPointPath_arr.push([320, 160]); currCheckPointPath_arr.push([120, 160]); currCheckPointPath_arr.push([320, 210]); currCheckPointPath_arr.push([120, 210]); testArray = checkPointPath1_arr; arrNo = checkPointPath1_arr.length; while ((arrNo--) > 0) { trace(((((" checkPointPath_1_arr :: " + arrNo) + " :: ") + testArray[arrNo][0]) + " :: ") + testArray[arrNo][1]); } pL_weaponsArr = []; pL_weaponsArr.push(new Weapon(true, "pistol", "inf", FPS / 2, 1)); pL_weaponsArr.push(new Weapon(true, "blasterGun", "inf", FPS * 0.66, 2)); pL_weaponsArr.push(new Weapon(true, "uzi", 40, 4, 2)); pL_weaponsArr.push(new Weapon(true, "machineGun", "inf", 4, 3)); pL_weaponsArr.push(new Weapon(true, "miniGun", 50, 3, 1)); pL_weaponsArr.push(new Weapon(true, "laser", "inf", FPS, 4 / FPS, 1)); pL_weaponsArr.push(new Weapon(true, "rocketLauncher", "inf", 0.3 * FPS, 12)); pL_weaponsArr.push(new Weapon(true, "flameThrower", "inf", 2, 1)); pL_weaponsArr.push(new Weapon(true, "grenade", "inf", FPS, 4)); pL_grenadeThrowVelocity = 0; testArray = pL_weaponsArr; arrNo = testArray.length; while ((arrNo--) > 0) { trace(((((" borderArr :: " + arrNo) + " :: ") + testArray[arrNo].type) + " :: ") + testArray[arrNo].attackDamage); } playGameMusic = true; } function onEnterFrame_game() { game_FrNo++; pL_moveStatus = false; if (pL_status == "walk") { if (Key.isDown(key_pLMoveLeft)) { pL_xSpeed = -pL_walkSpeed; pL_moveStatus = true; game_MC.pL_MC.gotoAndStop("walk"); } else if (Key.isDown(key_pLMoveRight)) { pL_xSpeed = pL_walkSpeed; pL_moveStatus = true; game_MC.pL_MC.gotoAndStop("walk"); } else if (!pL_moveStatus) { pL_xSpeed = 0; game_MC.pL_MC.gotoAndStop("stand"); } if (Key.isDown(key_pLMoveUp) && (!pL_jumping)) { pL_yspeed = pL_yspeed - pL_jumpSpeed; pL_moveStatus = true; pL_jumping = true; } if (pL_jumping) { game_MC.pL_MC.gotoAndStop("jump"); } if (pL_xSpeed > 0) { game_MC.pL_MC.pL_legs_MC._xscale = 100; } else { game_MC.pL_MC.pL_legs_MC._xscale = -100; } } else if (pL_status == "getsHurt") { if ((pL_getsHurtCounterFr--) <= 0) { pL_status = "walk"; } } pL_x = pL_x + pL_xSpeed; pL_ySpeed = pL_ySpeed + grav; pL_y = pL_y + pL_ySpeed; if (pL_y < screenBufferTop) { pL_y = screenBufferTop; } else if (pL_y > screenBufferBottom) { pL_y = screenBufferBottom; pL_yspeed = 0; pL_jumping = false; } if (pL_x < screenBufferLeft) { pL_x = screenBufferLeft; } else if (pL_x > screenBufferRight) { pL_x = screenBufferRight; } dx = _xmouse - pL_x; dy = _ymouse - (pL_y - pL_weaponRotationY); dist = Math.sqrt((dx * dx) + (dy * dy)); dx_adjust = dx / Abs(dx); dy_adjust = dy / Abs(dy); nozzleY = (game_MC.pL_MC.pL_weapon_MC.nozzle_MC._y * dx_adjust) * dy_adjust; angleRad = Math.acos(dx / dist) - Math.asin(nozzleY / dist); angleRad = angleRad * (dy / Abs(dy)); if (dx < 0) { } pL_weaponAngleDeg = (angle = 57.2957795130823 * angleRad); pL_weapon_ux = (ux = Math.cos(angleRad)); pL_weapon_uy = (uy = Math.sin(angleRad)); if (pL_mouseDown) { if (pL_weaponsArr[pL_currWeaponNo].currReloadFr <= 0) { if (pL_weaponType == "grenade") { if ((++pL_grenadeThrowVelocity) >= 15) { pL_grenadeThrowVelocity = 15; } statusWindowMC.txtGrenadeThrow = pL_grenadeThrowVelocity; pL_weaponsArr[pL_currWeaponNo].currReloadFr = 0; } else if ((pL_weaponsArr[pL_currWeaponNo].ammo > 0) || (pL_weaponsArr[pL_currWeaponNo].ammo == "inf")) { if (pL_weaponsArr[pL_currWeaponNo].ammo != "inf") { statusWindowMC.txtAmmo = --pL_weaponsArr[pL_currWeaponNo].ammo; } pL_weaponsArr[pL_currWeaponNo].currReloadFr = pL_weaponsArr[pL_currWeaponNo].reloadFr; switch (pL_weaponType) { case "pistol" : case "blasterGun" : case "laser" : pL_weaponFireSnd.start(0, 1); case "uzi" : case "machineGun" : case "miniGun" : shortestLineOfFireObj = []; shortestLineOfFireObj.minDist = 0; tempLineObj = game_MC.pL_MC.pL_weapon_MC.lineOfFire_MC; nozzleX = game_MC.pL_MC.pL_weapon_MC.nozzle_MC._x; nozzleY = (game_MC.pL_MC.pL_weapon_MC.nozzle_MC._y * game_MC.pL_MC.pL_weapon_MC._xscale) / 100; tempLine_x = (pL_x + (pL_weapon_ux * nozzleX)) - (pL_weapon_uy * nozzleY); tempLine_y = ((pL_y - pL_weaponRotationY) + (pL_weapon_ux * nozzleY)) + (pL_weapon_uy * nozzleX); enemyNo = enemyArr.length; while ((enemyNo--) > 0) { enemyMC = eval (enemyArr[enemyNo].target); currDistObj = lineObjectIntersectionDist(tempLine_x, tempLine_y, pL_weapon_ux, pL_weapon_uy, enemyArr[enemyNo]); currDist = currDistObj.minDist; if (currDistObj.minDist > 0) { if (shortestLineOfFireObj.minDist == 0) { shortestLineOfFireObj = currDistObj; hitEnemyArrayNo = enemyNo; } else if (currDistObj.minDist < shortestLineOfFireObj.minDist) { shortestLineOfFireObj = currDistObj; hitEnemyArrayNo = enemyNo; } } } if (shortestLineOfFireObj.minDist > 0) { enenmyGetsHurt(hitEnemyArrayNo, pL_weaponsArr[pL_currWeaponNo].attackDamage); temp_angle = (180 / Math.PI) * Math.atan(pL_weapon_uy / pL_weapon_ux); temp_x = tempLine_x + (shortestLineOfFireObj.minDist * pL_weapon_ux); temp_y = tempLine_y + (shortestLineOfFireObj.minDist * pL_weapon_uy); createRicochet("ricochet", 1, temp_x, temp_y, pL_weaponAngleDeg + 180); temp_x = tempLine_x + (shortestLineOfFireObj.maxDist * pL_weapon_ux); temp_y = tempLine_y + (shortestLineOfFireObj.maxDist * pL_weapon_uy); createRicochet("ricochet", 1, temp_x, temp_y, pL_weaponAngleDeg); } else { lineOfFireHitsWall(tempLine_x, tempLine_y, pL_weapon_ux, pL_weapon_uy); shortestLineOfFireObj.minDist = 1000; } game_MC.pL_MC.pL_weapon_MC.flash_MC.gotoAndPlay(pL_weaponType); game_MC.pL_MC.pL_weapon_MC.lineOfFire_MC.gotoAndPlay(2); game_MC.pL_MC.pL_weapon_MC.lineOfFire_MC._width = shortestLineOfFireObj.minDist; game_MC.pL_MC.pL_head_MC.flash_MC.gotoAndPlay(2); game_MC.pL_MC.pL_Body_MC.flash_MC.gotoAndPlay(2); break; case "grenade" : break; case "rocketLauncher" : case "flameThrower" : game_MC.pL_MC.pL_weapon_MC.flash_MC.gotoAndPlay(pL_weaponType); game_MC.pL_MC.pL_head_MC.flash_MC.gotoAndPlay(2); game_MC.pL_MC.pL_Body_MC.flash_MC.gotoAndPlay(2); createProjectile(pL_weaponType); break; } } else { pL_weaponSoundStop(); } } } if ((--pL_weaponsArr[pL_currWeaponNo].currReloadFr) < 0) { pL_weaponsArr[pL_currWeaponNo].currReloadFr = 0; } else { statusWindowMC.txtReloading = pL_weaponsArr[pL_currWeaponNo].currReloadFr; statusWindowMC.pL_ReloadMC.barMC._xscale = (100 * (pL_weaponsArr[pL_currWeaponNo].reloadFr - pL_weaponsArr[pL_currWeaponNo].currReloadFr)) / pL_weaponsArr[pL_currWeaponNo].reloadFr; } if (pL_projectileArr.length > 0) { projectileNo = pL_projectileArr.length; while ((projectileNo--) > 0) { projObj = pL_projectileArr[projectileNo]; projectileMC = eval (projObj.targetMC); projExplode = false; switch (projObj.type) { case "rocketLauncher" : break; case "grenade" : projObj.vy = projObj.vy + grav; case "flameThrower" : if ((--projObj.timer) < 0) { projExplode = true; } break; } projObj.x = (projectileMC._x = projectileMC._x + projObj.vx); projObj.y = (projectileMC._y = projectileMC._y + projObj.vy); projCollision = false; enemyNo = enemyArr.length; while ((enemyNo--) > 0) { enemyMC = eval (enemyArr[enemyNo].target); if (projectileMC.hitTest(enemyMC)) { projCollision = true; enenmyGetsHurt(enemyNo, projObj.attackDamage); projExplode = true; trace("enemyArr[enemyNo].health: " + enemyArr[enemyNo].health); } } if (projObj.y < screenBufferTop) { projCollision = true; collisionDirection = "y"; projectileMC._y = screenBufferTop; } else if (projObj.y > screenBufferBottom) { projCollision = true; collisionDirection = "y"; projectileMC._y = screenBufferBottom; } if (projObj.x < screenBufferLeft) { projCollision = true; collisionDirection = "x"; projectileMC._x = screenBufferLeft; } else if (projObj.x > screenBufferRight) { projCollision = true; collisionDirection = "x"; projectileMC._x = screenBufferRight; } if (projCollision) { switch (projObj.type) { case "rocketLauncher" : projExplode = true; break; case "flameThrower" : break; case "grenade" : if (collisionDirection == "x") { projObj.vx = projObj.vx * (-1); } else if (collisionDirection == "y") { projObj.vy = projObj.vy * (-0.7); } break; } } if (projExplode) { sgExplodes(projObj); projectileMC.gotoAndPlay("explode"); pL_projectileArr.splice(projectileNo, 1); } } } with (game_MC) { pL_MC._x = pL_x; pL_MC._y = pL_y; crossHairMC._x = _xmouse; crossHairMC._y = _ymouse; crossHairMC._rotation = pL_weaponAngleDeg; if (dx > 0) { pL_MC.pL_weapon_MC._xscale = 100; pL_MC.pL_weapon_MC._rotation = pL_weaponAngleDeg; pL_MC.pL_head_MC._xscale = 100; pL_MC.pL_head_MC._rotation = pL_weaponAngleDeg; pL_MC.pL_Body_MC._xscale = 100; } else { pL_MC.pL_weapon_MC._xscale = -100; pL_MC.pL_weapon_MC._rotation = pL_weaponAngleDeg + 180; pL_MC.pL_head_MC._xscale = -100; pL_MC.pL_head_MC._rotation = pL_weaponAngleDeg + 180; pL_MC.pL_Body_MC._xscale = -100; } } if (moreEnemyToCome) { while ((game_FrNo > nextEnemyFrNo) && (moreEnemyToCome)) { enemyArr.push(tempEnemyArr[0]); enemyObj = tempEnemyArr[0]; if ((noOfEnemyCreated++) > 200) { noOfEnemyCreated = 0; } game_MC.enemyAttachMC.attachMovie(enemyObj.type + enemyObj.typeNo, (((enemyObj.type + enemyObj.typeNo) + "_") + noOfEnemyCreated) + "_MC", noOfEnemyCreated); enemyMC = eval ((((("game_MC.enemyAttachMC." + enemyObj.type) + enemyObj.typeNo) + "_") + noOfEnemyCreated) + "_MC"); enemyMC._x = enemyObj.x; enemyMC._y = enemyObj.y; switch (enemyObj.type) { case "turret" : case "walker" : enemyMC.weapon_MC._rotation = enemyObj.gunAngle; break; } enemyObj.target = enemyMC; tempEnemyArr.splice(0, 1); nextEnemyFrNo = tempEnemyArr[0].showUpFr; if (tempEnemyArr.length <= 0) { moreEnemyToCome = false; } } } enemyNo = enemyArr.length; while ((enemyNo--) > 0) { enemyObj = enemyArr[enemyNo]; enemyMC = eval (enemyObj.target); enemyPL_dx = pL_x - enemyObj.x; enemyPL_dy = (pL_y - (pL_height / 2)) - enemyObj.y; enemyPL_dist = Math.sqrt((enemyPL_dx * enemyPL_dx) + (enemyPL_dy * enemyPL_dy)); enemyPL_ux = enemyPL_dx / enemyPL_dist; enemyPL_uy = enemyPL_dy / enemyPL_dist; enemyPL_angle = Math.acos(enemyPL_dx / enemyPL_dist) * (enemyPL_dy / Abs(enemyPL_dy)); enemyPL_angleDeg = 57.2957795130823 * enemyPL_angle; switch (enemyObj.type) { case "stationary" : switch (typeNo) { case 1 : this.shape = "circle"; this.rad = 7.5; this.health = 5; break; case 2 : break; } break; case "turret" : trace("====================================================="); if (enemyObj.gunAngle > 180) { enemyObj.gunAngle = enemyObj.gunAngle - 360; } else if (enemyObj.gunAngle < -180) { enemyObj.gunAngle = enemyObj.gunAngle + 360; } enemyObj.gunAngle = enemyObj.gunAngle + (getAngle2toAngle1direction(enemyPL_angleDeg, enemyObj.gunAngle) * enemyObj.gunRotSpeed); if ((--enemyObj.nextAttackFr) <= 0) { enemyObj.nextAttackFr = enemyObj.nextAttackIntervalFr; shortestLineOfFireObj = []; shortestLineOfFireObj.minDist = 0; enemyMC = eval (enemyArr[enemyNo].target); nozzleX = enemyMC.weapon_MC.nozzle_MC._x; nozzleY = (enemyMC.weapon_MC.nozzle_MC._y * enemyMC.weapon_MC._xscale) / 100; gunAngleRad = (enemyObj.gunAngle / 180) * Math.PI; enemyPL_ux = Math.cos(gunAngleRad); enemyPL_uy = Math.sin(gunAngleRad); tempLine_x = (enemyObj.x + (enemyPL_ux * nozzleX)) - (enemyPL_uy * nozzleY); tempLine_y = (enemyObj.y + (enemyPL_ux * nozzleY)) + (enemyPL_uy * nozzleX); pL_BodyObj = new Object(); pL_BodyObj.x = pL_x; pL_BodyObj.y = pL_y; pL_BodyObj.w = pL_width; pL_BodyObj.h = pL_height; pL_BodyObj.shape = "rectangle"; pL_BodyObj.registration = "bottomCenter"; currDistObj = []; currDistObj = lineObjectIntersectionDist(tempLine_x, tempLine_y, enemyPL_ux, enemyPL_uy, pL_BodyObj); currDist = currDistObj.minDist; if (currDistObj.minDist > 0) { temp_x = tempLine_x + (currDistObj.minDist * enemyPL_ux); temp_y = tempLine_y + (currDistObj.minDist * enemyPL_uy); temp_angle = (180 / Math.PI) * Math.atan(enemyPL_uy / enemyPL_ux); pL_getsHurt("bullet", enemyObj.attackDamage, temp_x, temp_y, enemyPL_ux, enemyPL_uy); shortestLineOfFireObj = currDistObj; } else { lineOfFireHitsWall(tempLine_x, tempLine_y, enemyPL_ux, enemyPL_uy); shortestLineOfFireObj.minDist = 1000; } enemyMC.weapon_MC.flash_MC.gotoAndPlay(pL_weaponType); enemyMC.weapon_MC.lineOfFire_MC.gotoAndPlay(2); enemyMC.weapon_MC.lineOfFire_MC._width = shortestLineOfFireObj.minDist - 20; } enemyMC.weapon_MC._rotation = enemyObj.gunAngle; break; case "walker" : if (enemyPL_dx < 0) { enemyObj.gunAngle = enemyObj.gunAngle - enemyObj.gunRotSpeed; } else { enemyObj.gunAngle = enemyObj.gunAngle + enemyObj.gunRotSpeed; } if ((enemyObj.gunAngle < -180) || (enemyObj.gunAngle > 90)) { enemyObj.gunAngle = -180; } else if (enemyObj.gunAngle > 0) { enemyObj.gunAngle = 0; } if (enemyPL_dx < 0) { vx = -enemyObj.v; } else { vx = enemyObj.v; } damage = 1; enemyMC._x = (enemyObj.x = enemyObj.x + vx); enemyMC.wheel_MC._rotation = enemyMC.wheel_MC._rotation + (4 * vx); enemyMC.weapon_MC._rotation = enemyObj.gunAngle; break; case "flying" : if (enemyObj.pathName == "pL_follow") { if (game_MC.pL_MC.hitAreaMC.hitTest(enemyMC)) { enemyMC.gotoAndPlay("dies"); sgExplodes(enemyObj); enemyArr.splice(enemyNo, 1); } enemyCP_dx = pL_x - enemyObj.x; enemyCP_dy = (pL_y - (pL_height / 2)) - enemyObj.y; } else { enemyCP_dx = enemyObj.nextCheckPointX - enemyObj.x; enemyCP_dy = enemyObj.nextCheckPointY - enemyObj.y; if (Abs(enemyCP_dx) < reachedCheckPointDist) { if (Abs(enemyCP_dy) < reachedCheckPointDist) { nextCP(enemyObj); } } } enemyCP_dist = Math.sqrt((enemyCP_dx * enemyCP_dx) + (enemyCP_dy * enemyCP_dy)); enemyCP_ux = enemyCP_dx / enemyCP_dist; enemyCP_uy = enemyCP_dy / enemyCP_dist; thrust_x = enemyCP_ux * enemyObj.v; thrust_y = enemyCP_uy * enemyObj.v; enemyObj.vx = thrust_x; enemyObj.vy = thrust_y; if (enemyObj.gunAngle > 180) { enemyObj.gunAngle = enemyObj.gunAngle - 360; } else if (enemyObj.gunAngle < -180) { enemyObj.gunAngle = enemyObj.gunAngle + 360; } enemyObj.gunAngle = enemyObj.gunAngle + (getAngle2toAngle1direction(enemyPL_angleDeg, enemyObj.gunAngle) * enemyObj.gunRotSpeed); if (enemyObj.nextAttackIntervalFr > 0) { if ((--enemyObj.nextAttackFr) <= 0) { enemyObj.nextAttackFr = enemyObj.nextAttackIntervalFr; shortestLineOfFireObj = []; shortestLineOfFireObj.minDist = 0; enemyMC = eval (enemyArr[enemyNo].target); nozzleX = enemyMC.weapon_MC.nozzle_MC._x; nozzleY = (enemyMC.weapon_MC.nozzle_MC._y * enemyMC.weapon_MC._xscale) / 100; gunAngleRad = (enemyObj.gunAngle / 180) * Math.PI; enemyPL_ux = Math.cos(gunAngleRad); enemyPL_uy = Math.sin(gunAngleRad); tempLine_x = (enemyObj.x + (enemyPL_ux * nozzleX)) - (enemyPL_uy * nozzleY); tempLine_y = (enemyObj.y + (enemyPL_ux * nozzleY)) + (enemyPL_uy * nozzleX); pL_BodyObj = new Object(); pL_BodyObj.x = pL_x; pL_BodyObj.y = pL_y; pL_BodyObj.w = pL_width; pL_BodyObj.h = pL_height; pL_BodyObj.shape = "rectangle"; pL_BodyObj.registration = "bottomCenter"; currDistObj = []; currDistObj = lineObjectIntersectionDist(tempLine_x, tempLine_y, enemyPL_ux, enemyPL_uy, pL_BodyObj); currDist = currDistObj.minDist; if (currDistObj.minDist > 0) { temp_x = tempLine_x + (currDistObj.minDist * enemyPL_ux); temp_y = tempLine_y + (currDistObj.minDist * enemyPL_uy); temp_angle = (180 / Math.PI) * Math.atan(enemyPL_uy / enemyPL_ux); pL_getsHurt("bullet", enemyObj.attackDamage, temp_x, temp_y, enemyPL_ux, enemyPL_uy); shortestLineOfFireObj = currDistObj; } else { lineOfFireHitsWall(tempLine_x, tempLine_y, enemyPL_ux, enemyPL_uy); shortestLineOfFireObj.minDist = 1000; } enemyMC.weapon_MC.flash_MC.gotoAndPlay(pL_weaponType); enemyMC.weapon_MC.lineOfFire_MC.gotoAndPlay(2); enemyMC.weapon_MC.lineOfFire_MC._width = shortestLineOfFireObj.minDist - 20; } } enemyMC._x = (enemyObj.x = enemyObj.x + enemyObj.vx); enemyMC._y = (enemyObj.y = enemyObj.y + enemyObj.vy); enemyMC.weapon_MC._rotation = enemyObj.gunAngle; break; } } if ((enemyStatusDisplayFr--) == 0) { statusWindowMC.EnemyStatusMC.gotoAndStop("none"); statusWindowMC.EnemyStatusMC.heathMC.barMC._xscale = 100; statusWindowMC.EnemyStatusMC._visible = false; } else if (enemyStatusDisplayFr < 0) { enemyStatusDisplayFr = -2; } if (explosionDebryArr.length > 0) { explosionDebryNo = explosionDebryArr.length; while ((explosionDebryNo--) > 0) { explosionDebryObj = explosionDebryArr[explosionDebryNo]; explosionDebryMC = eval (explosionDebryObj.targetMC); if (explosionDebryObj.smokeTrail) { explosionDebryObj.vy = explosionDebryObj.vy + (grav / 20); explosionDebryObj.vx = explosionDebryObj.vx * 0.95; explosionDebryObj.vy = explosionDebryObj.vy * 0.95; } else { explosionDebryObj.vy = explosionDebryObj.vy + (grav / 3); explosionDebryObj.vx = explosionDebryObj.vx * 0.98; explosionDebryObj.vy = explosionDebryObj.vy * 0.98; } explosionDebryObj.x = (explosionDebryMC._x = explosionDebryMC._x + explosionDebryObj.vx); explosionDebryObj.y = (explosionDebryMC._y = explosionDebryMC._y + explosionDebryObj.vy); explosionDebryMC._rotation = explosionDebryMC._rotation + explosionDebryObj.rotSpeed; explosionDebryExplode = false; explosionDebryCollision = false; if (explosionDebryObj.y < screenBufferTop) { explosionDebryCollision = true; collisionDirection = "y"; explosionDebryMC._y = screenBufferTop; } else if (explosionDebryObj.y > screenBufferBottom) { explosionDebryCollision = true; collisionDirection = "y"; explosionDebryMC._y = screenBufferBottom; } if (explosionDebryObj.x < screenBufferLeft) { explosionDebryCollision = true; collisionDirection = "x"; explosionDebryMC._x = screenBufferLeft; } else if (explosionDebryObj.x > screenBufferRight) { explosionDebryCollision = true; collisionDirection = "x"; explosionDebryMC._x = screenBufferRight; } if (explosionDebryCollision) { explosionDebryObj.rotSpeed = explosionDebryObj.rotSpeed * (-0.8 * (0.5 - Math.random())); if (collisionDirection == "x") { explosionDebryObj.vx = explosionDebryObj.vx * -1; } else if (collisionDirection == "y") { explosionDebryObj.vy = explosionDebryObj.vy * -0.7; if ((explosionDebryObj.bounceNo++) > 3) { explosionDebryExplode = true; } } } if (explosionDebryObj.smokeTrail) { smokeColor = "white"; game_MC.smokeTrailAttachMC.attachMovie(smokeColor + "Smoke", (((smokeColor + "Smoke") + "_") + noOfSmokeTrailCreated) + "_MC", noOfSmokeTrailCreated); targetMC = eval ((((("game_MC.smokeTrailAttachMC." + smokeColor) + "Smoke") + "_") + noOfSmokeTrailCreated) + "_MC"); targetMC._x = explosionDebryObj.x; targetMC._y = explosionDebryObj.y; targetMC._rotation = angleDeg; targetMC._xscale = (targetMC._yscale = explosionDebryMC._xscale); if ((explosionDebryObj.durationFr--) <= 0) { explosionDebryExplode = true; } } if (explosionDebryExplode) { explosionDebryMC.gotoAndPlay("explode"); sgExplodes(explosionDebryObj); explosionDebryArr.splice(explosionDebryNo, 1); } if ((noOfSmokeTrailCreated++) > 500) { noOfSmokeTrailCreated = 0; } } } currentTime = int(levelAllowedTime - ((getTimer() - startTime) / 1000)); updateTimer(currentTime); if (levelCompleteCounter > 0) { levelCompleteCounter--; trace("almost level complete " + levelCompleteCounter); if (levelCompleteCounter == 0) { game_over(missionFinishedReason); } } else if (g_missionType == "destroyEnemies") { if (currentTime <= 0) { startLevelCompleteCountdown("timeIsUp"); } if ((enemyArr.length <= 0) && (tempEnemyArr.length <= 0)) { if (explosionDebryArr.length <= 0) { startLevelCompleteCountdown("missionComplete"); } } } else if (g_missionType == "timeTrial") { if (currentTime < 0) { startLevelCompleteCountdown("missionComplete"); } } } function startLevelCompleteCountdown(reason) { statusWindowMC.missionMessageMC._visible = true; statusWindowMC.missionMessageMC.gotoAndStop(reason); missionFinishedReason = reason; trace("missionFinishedReason " + missionFinishedReason); if (!(reason === "missionComplete")) { } levelCompleteCounter = 2 * FPS; missionMessageMC._visible = true; level_finish_time = getTimer(); } _root.createEmptyMovieClip("_keyListener", 1); Key.addListener(_keyListener); _keyListener.onKeyDown = function () { currKey = Key.getCode(); if (currKey == keyQualityToggle) { if (_quality == "HIGH") { _quality = "LOW"; } else if (_quality == "LOW") { _quality = "MEDIUM"; } else if (_quality == "MEDIUM") { _quality = "HIGH"; } mcQualityStatus.gotoAndPlay(2); mcQualityStatus.txtQuality = (game_quality = _quality); } if (g_stat == "play") { if (Key.isDown(key_pLNextWeapon)) { pL_changeWeapon(1); } else if (Key.isDown(key_pLPrevWeapon)) { pL_changeWeapon(-1); } else if (currKey == keyMusicOnOff) { trace("playGameMusic: " + playGameMusic); if (!playGameMusic) { musicSndNo = 1; musicSnd = new Sound(); musicSnd.attachSound("music" + musicSndNo); musicSnd.start(0, 1000); playGameMusic = true; } else { musicSnd.stop("music" + musicSndNo); playGameMusic = false; } } else if (currKey == keyPauseGame) { tempOnEnterFrame = onEnterFrame; tempOnMouseDown = onMouseDown; tempOnMouseUp = onMouseUp; g_stat = "paused"; Mouse.show(); menuWindowMC.gotoAndStop("pause"); pause_start_time = getTimer(); delete onEnterFrame; delete onMouseDown; delete onMouseUp; } } else if (g_stat == "paused") { if (currKey == keyPauseGame) { onEnterFrame = tempOnEnterFrame; onMouseDown = tempOnMouseDown; onMouseUp = tempOnMouseUp; g_stat = "play"; menuWindowMC.gotoAndStop("game_start"); level_start_time = level_start_time + (getTimer() - pause_start_time); Mouse.hide(); } } }; onMouseDown_game = function () { pL_mouseDown = true; pL_weaponFireSnd = new Sound(); if ((pL_weaponsArr[pL_currWeaponNo].ammo > 0) || (pL_weaponsArr[pL_currWeaponNo].ammo == "inf")) { pL_weaponFireSnd.attachSound(pL_weaponType + "_fire"); } switch (pL_weaponType) { case "pistol" : return; case "blasterGun" : return; case "uzi" : case "machineGun" : case "miniGun" : pL_weaponFireSnd.start(0, 1000); return; case "laser" : return; case "rocketLauncher" : return; case "grenade" : case "flameThrower" : return; } }; onMouseUp_game = function () { pL_mouseDown = false; if (pL_weaponType == "grenade") { if (pL_grenadeThrowVelocity > 0) { createProjectile(pL_weaponType); pL_weaponsArr[pL_currWeaponNo].currReloadFr = pL_weaponsArr[pL_currWeaponNo].reloadFr; statusWindowMC.txtAmmo = --pL_weaponsArr[pL_currWeaponNo].ammo; statusWindowMC.txtGrenadeThrow = (pL_grenadeThrowVelocity = 0); } } switch (pL_weaponType) { case "pistol" : return; case "blasterGun" : return; case "uzi" : case "machineGun" : case "miniGun" : pL_weaponSoundStop(); return; } };
Frame 119
stop();
Symbol 20 MovieClip [flameThrower] Frame 23
this.removeMovieClip();
Symbol 24 MovieClip Frame 1
_rotation = (360 * Math.random());
Symbol 24 MovieClip Frame 10
stop();
Symbol 25 MovieClip [rocketLauncher] Frame 1
stop();
Symbol 25 MovieClip [rocketLauncher] Frame 11
this.removeMovieClip();
Symbol 26 MovieClip [grenade] Frame 1
stop();
Symbol 26 MovieClip [grenade] Frame 7
this.removeMovieClip();
Symbol 29 MovieClip [bloodsplatter1] Frame 1
Symbol 29 MovieClip [bloodsplatter1] Frame 6
this.removeMovieCLip();
Symbol 33 MovieClip [ricochet2] Frame 4
this.removeMovieCLip();
Symbol 36 MovieClip Frame 1
noOfRic = 3; ricNo = 2 + int(noOfRic * Math.random()); gotoAndStop(ricNo);
Symbol 37 MovieClip [ricochet1] Frame 4
this.removeMovieCLip();
Symbol 40 MovieClip [explosion1] Frame 5
this.removeMovieCLip();
Symbol 48 MovieClip [debry1] Frame 1
this.gotoAndStop(1 + int(3 * Math.random())); stop();
Symbol 48 MovieClip [debry1] Frame 10
this.removeMovieClip();
Symbol 51 MovieClip [whiteSmoke] Frame 8
this.removeMovieClip();
Symbol 55 Button
on (release) { trace(txtMissionNo.text); trace(buttonMC.txtMissionNo.text); _root.g_levelNo = buttonNo; _root.showCutScenes(); }
Symbol 59 Button [missionButton]
on (release) { _root.levelNo = idNo; _root.g.practiceMode = true; trace((_parent.idNo + " : ") + idNo); _root.levelInit(); _parent.gotoAndStop("game_start"); _parent.removePracticeLevelButtons(); }
Symbol 79 MovieClip Frame 1
stop();
Symbol 81 MovieClip [missionButton] Frame 1
stop();
Symbol 86 MovieClip Frame 1
stop();
Symbol 95 MovieClip Frame 1
stop();
Symbol 95 MovieClip Frame 3
gotoAndStop (1);
Symbol 95 MovieClip Frame 5
gotoAndStop (1);
Symbol 95 MovieClip Frame 7
gotoAndStop (1);
Symbol 95 MovieClip Frame 9
gotoAndStop (1);
Symbol 95 MovieClip Frame 11
gotoAndStop (1);
Symbol 95 MovieClip Frame 13
gotoAndStop (1);
Symbol 95 MovieClip Frame 16
gotoAndStop (1);
Symbol 95 MovieClip Frame 18
gotoAndStop (1);
Symbol 95 MovieClip Frame 20
gotoAndStop (1);
Symbol 97 MovieClip Frame 1
stop();
Symbol 102 MovieClip [walker1] Frame 1
stop();
Symbol 102 MovieClip [walker1] Frame 14
this.removeMovieClip();
Symbol 117 MovieClip Frame 9
stop();
Symbol 118 MovieClip [flying3] Frame 1
trace("ATTACHED FLIER =========="); stop();
Symbol 118 MovieClip [flying3] Frame 15
this.removeMovieClip();
Symbol 121 MovieClip Frame 1
stop();
Symbol 122 MovieClip Frame 1
stop();
Symbol 128 MovieClip [flying2] Frame 1
trace("ATTACHED FLIER =========="); stop();
Symbol 128 MovieClip [flying2] Frame 15
this.removeMovieClip();
Symbol 132 MovieClip [flying1] Frame 1
trace("ATTACHED FLIER =========="); stop();
Symbol 132 MovieClip [flying1] Frame 15
this.removeMovieClip();
Symbol 138 MovieClip [turret1] Frame 1
stop();
Symbol 138 MovieClip [turret1] Frame 13
this.removeMovieClip();
Symbol 144 MovieClip [stationary3] Frame 1
stop();
Symbol 144 MovieClip [stationary3] Frame 11
this.removeMovieClip();
Symbol 150 MovieClip [stationary2] Frame 1
stop();
Symbol 150 MovieClip [stationary2] Frame 15
this.removeMovieClip();
Symbol 153 MovieClip [stationary1] Frame 1
stop();
Symbol 153 MovieClip [stationary1] Frame 15
this.removeMovieClip();
Symbol 165 Button
on (release) { _root.play(); }
Symbol 166 MovieClip Frame 1
stop();
Symbol 166 MovieClip Frame 2
Symbol 180 Button
on (release) { getURL ("http://www.crazymonkeygames.com", "_blank"); }
Symbol 181 Button
on (release) { getURL ("http://www.crazymonkeygames.com", "_blank"); }
Symbol 200 MovieClip Frame 1
stop();
Symbol 204 MovieClip Frame 1
stop();
Symbol 219 MovieClip Frame 1
stop();
Symbol 220 MovieClip Frame 1
stop();
Symbol 241 MovieClip Frame 9
stop();
Symbol 242 MovieClip Frame 1
stop();
Instance of Symbol 195 MovieClip "hitAreaMC" in Symbol 242 MovieClip Frame 1
onClipEvent (load) { this._visible = false; }
Symbol 247 MovieClip Frame 1
Symbol 248 MovieClip Frame 1
stop();
Symbol 257 MovieClip Frame 1
stop();
Symbol 273 MovieClip Frame 1
stop();
Symbol 280 MovieClip Frame 1
stop();
Symbol 283 Button
on (release) { g_levelNo = txt_levelNo; game_over("missionComplete"); }
Symbol 285 Button
on (release) { g_levelNo = (txt_levelNo = 0); }
Symbol 286 Button
on (release) { g_levelNo = txt_levelNo++; }
Symbol 287 Button
on (release) { g_levelNo = txt_levelNo--; }
Symbol 301 MovieClip Frame 1
stop();
Symbol 303 Button
on (release) { gotoAndStop (3); }
Symbol 306 Button
on (release) { gotoAndStop (6); _root.displayKeyAssignments(); }
Symbol 316 Button
on (release) { gotoAndStop (7); }
Symbol 320 Button
on (release) { getURL ("http://www.crazymonkeygames.com", "_blank"); }
Symbol 323 Button
on (release) { trace("player level code: " + _root.pL_levelCode); _root.checkLevelCode(txtLevelCode); }
Symbol 329 MovieClip Frame 1
_x = 0; _y = 0;
Symbol 333 Button
on (release) { gotoAndStop (1); }
Symbol 341 MovieClip Frame 1
Symbol 346 Button
on (release) { _root.continueDialogue(); }
Symbol 351 Button
on (release) { _root.game_start(); }
Symbol 365 MovieClip Frame 22
stop();
Symbol 374 MovieClip Frame 1
stop();
Symbol 390 MovieClip Frame 1
stop();
Symbol 390 MovieClip Frame 2
stop();
Symbol 404 Button
on (release) { _root.game_start(); }
Symbol 405 MovieClip Frame 1
Mouse.show(); _quality = "HIGH"; stop();
Symbol 405 MovieClip Frame 3
_root.checkLevelCode(_root.pL_levelCode);
Instance of Symbol 390 MovieClip "key_pLMoveLeft" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }
Instance of Symbol 390 MovieClip "key_pLMoveRight" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }
Instance of Symbol 390 MovieClip "key_pLMoveUp" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }
Instance of Symbol 390 MovieClip "keyQualityToggle" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }
Instance of Symbol 390 MovieClip "keyMusicOnOff" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }
Instance of Symbol 390 MovieClip "keyPauseGame" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }
Instance of Symbol 390 MovieClip "key_pLNextWeapon" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }
Instance of Symbol 390 MovieClip "key_pLPrevWeapon" in Symbol 405 MovieClip Frame 6
onClipEvent (load) { _root.displayKeyValue(this); } onClipEvent (keyUp) { _root.setKeyValue(this); } onClipEvent (mouseUp) { _root.highlightKey(this); }

Library Items

Symbol 1 Sound [machineGun_fire]
Symbol 2 Sound [uzi_fire]
Symbol 3 Sound [TubeScre-Public_d-172.wav]Used by:192
Symbol 4 Sound [THUMP-splinteh-1275.wav]Used by:192
Symbol 5 Sound [sparkle.wav]Used by:192
Symbol 6 Sound [blasterGun_fire]Used by:86
Symbol 7 Sound [RICOCHET.WAV]Used by:33
Symbol 8 Sound [ric5.wav]Used by:36
Symbol 9 Sound [ric2.wav]Used by:36
Symbol 10 Sound [ric1.wav]Used by:36
Symbol 11 Sound [pistol_fire]
Symbol 12 Sound [music2]
Symbol 13 Sound [music1]
Symbol 14 Sound [Explosion1.wav]Used by:24 48 117
Symbol 15 Sound [miniGun_fire]
Symbol 16 ShapeTweeningUsed by:20
Symbol 17 ShapeTweeningUsed by:20
Symbol 18 ShapeTweeningUsed by:20
Symbol 19 GraphicUsed by:20
Symbol 20 MovieClip [flameThrower]Uses:16 17 18 19
Symbol 21 GraphicUsed by:25 26 241 341 374 405
Symbol 22 ShapeTweeningUsed by:24
Symbol 23 GraphicUsed by:24
Symbol 24 MovieClipUses:22 14 23Used by:25 26 102
Symbol 25 MovieClip [rocketLauncher]Uses:21 24
Symbol 26 MovieClip [grenade]Uses:21 24
Symbol 27 ShapeTweeningUsed by:29
Symbol 28 GraphicUsed by:29
Symbol 29 MovieClip [bloodsplatter1]Uses:27 28
Symbol 30 GraphicUsed by:33
Symbol 31 GraphicUsed by:33
Symbol 32 GraphicUsed by:33
Symbol 33 MovieClip [ricochet2]Uses:30 31 7 32
Symbol 34 ShapeTweeningUsed by:37
Symbol 35 GraphicUsed by:37
Symbol 36 MovieClipUses:10 9 8Used by:37
Symbol 37 MovieClip [ricochet1]Uses:34 35 36
Symbol 38 ShapeTweeningUsed by:40
Symbol 39 GraphicUsed by:40
Symbol 40 MovieClip [explosion1]Uses:38 39
Symbol 41 GraphicUsed by:48
Symbol 42 GraphicUsed by:48
Symbol 43 GraphicUsed by:48
Symbol 44 ShapeTweeningUsed by:48
Symbol 45 GraphicUsed by:48
Symbol 46 ShapeTweeningUsed by:48
Symbol 47 GraphicUsed by:48
Symbol 48 MovieClip [debry1]Uses:41 42 43 44 45 14 46 47
Symbol 49 ShapeTweeningUsed by:51
Symbol 50 GraphicUsed by:51
Symbol 51 MovieClip [whiteSmoke]Uses:49 50
Symbol 52 GraphicUsed by:55 181 283 285 286 287 323
Symbol 53 GraphicUsed by:55 181 283 285 286 287 323
Symbol 54 GraphicUsed by:55 181 283 285 286 287 323
Symbol 55 ButtonUses:52 53 54Used by:59 81
Symbol 56 FontUsed by:57 162 163 250 251 252 253 254 255 256 284 304 305 307 311 312 314 315 318 324 325 327 331 332 352 353 354 355 375 385 395 398 399 401 402 403
Symbol 57 EditableTextUses:56Used by:59 81
Symbol 58 GraphicUsed by:59 81
Symbol 59 Button [missionButton]Uses:55 57 58Used by:80
Symbol 60 GraphicUsed by:79
Symbol 61 GraphicUsed by:79
Symbol 62 GraphicUsed by:79
Symbol 63 GraphicUsed by:79
Symbol 64 GraphicUsed by:79
Symbol 65 GraphicUsed by:79
Symbol 66 GraphicUsed by:79
Symbol 67 GraphicUsed by:79
Symbol 68 GraphicUsed by:79
Symbol 69 GraphicUsed by:79
Symbol 70 GraphicUsed by:79
Symbol 71 GraphicUsed by:79
Symbol 72 GraphicUsed by:79
Symbol 73 GraphicUsed by:79
Symbol 74 GraphicUsed by:79
Symbol 75 GraphicUsed by:79
Symbol 76 GraphicUsed by:79
Symbol 77 GraphicUsed by:79
Symbol 78 GraphicUsed by:79
Symbol 79 MovieClipUses:60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78Used by:80
Symbol 80 MovieClip [practiceLevel_Button]Uses:59 79Used by:405
Symbol 81 MovieClip [missionButton]Uses:55 57 58Used by:Timeline
Symbol 82 GraphicUsed by:83
Symbol 83 MovieClipUses:82Used by:102
Symbol 84 GraphicUsed by:97
Symbol 85 GraphicUsed by:86
Symbol 86 MovieClipUses:85 6Used by:97
Symbol 87 GraphicUsed by:95
Symbol 88 GraphicUsed by:95
Symbol 89 GraphicUsed by:95
Symbol 90 GraphicUsed by:95
Symbol 91 GraphicUsed by:95
Symbol 92 GraphicUsed by:95
Symbol 93 GraphicUsed by:95
Symbol 94 GraphicUsed by:95
Symbol 95 MovieClipUses:87 88 89 90 91 92 93 94Used by:97 122 220
Symbol 96 GraphicUsed by:97
Symbol 97 MovieClipUses:84 86 95 96Used by:102 138
Symbol 98 GraphicUsed by:102
Symbol 99 GraphicUsed by:102
Symbol 100 GraphicUsed by:102
Symbol 101 GraphicUsed by:102 132
Symbol 102 MovieClip [walker1]Uses:83 97 98 99 100 101 24Used by:280
Symbol 103 GraphicUsed by:118
Symbol 104 GraphicUsed by:105
Symbol 105 MovieClipUses:104Used by:118 128 132
Symbol 106 GraphicUsed by:118 153
Symbol 107 GraphicUsed by:118 153
Symbol 108 GraphicUsed by:118
Symbol 109 GraphicUsed by:118
Symbol 110 ShapeTweeningUsed by:117
Symbol 111 GraphicUsed by:117
Symbol 112 ShapeTweeningUsed by:117
Symbol 113 GraphicUsed by:117
Symbol 114 GraphicUsed by:117
Symbol 115 ShapeTweeningUsed by:117
Symbol 116 GraphicUsed by:117
Symbol 117 MovieClipUses:110 111 112 14 113 114 115 116Used by:118 128 132 138 144 150 153
Symbol 118 MovieClip [flying3]Uses:103 105 106 107 108 109 117Used by:280
Symbol 119 GraphicUsed by:122
Symbol 120 GraphicUsed by:121
Symbol 121 MovieClipUses:120Used by:122 220
Symbol 122 MovieClipUses:119 121 95Used by:128
Symbol 123 GraphicUsed by:128
Symbol 124 GraphicUsed by:128
Symbol 125 GraphicUsed by:128
Symbol 126 GraphicUsed by:128
Symbol 127 GraphicUsed by:128 132 153
Symbol 128 MovieClip [flying2]Uses:122 123 105 124 125 126 127 117Used by:280
Symbol 129 GraphicUsed by:132
Symbol 130 GraphicUsed by:132
Symbol 131 GraphicUsed by:132
Symbol 132 MovieClip [flying1]Uses:101 105 129 130 131 127 117Used by:280
Symbol 133 GraphicUsed by:138
Symbol 134 GraphicUsed by:138
Symbol 135 GraphicUsed by:138
Symbol 136 GraphicUsed by:138
Symbol 137 GraphicUsed by:138
Symbol 138 MovieClip [turret1]Uses:97 133 134 135 136 137 117Used by:280
Symbol 139 GraphicUsed by:144
Symbol 140 GraphicUsed by:144
Symbol 141 GraphicUsed by:144
Symbol 142 GraphicUsed by:144
Symbol 143 GraphicUsed by:144
Symbol 144 MovieClip [stationary3]Uses:139 140 141 142 143 117Used by:280
Symbol 145 GraphicUsed by:150
Symbol 146 GraphicUsed by:150
Symbol 147 GraphicUsed by:150
Symbol 148 GraphicUsed by:150
Symbol 149 GraphicUsed by:150
Symbol 150 MovieClip [stationary2]Uses:145 146 147 148 149 117Used by:280
Symbol 151 GraphicUsed by:153
Symbol 152 GraphicUsed by:153
Symbol 153 MovieClip [stationary1]Uses:151 106 107 152 127 117Used by:280
Symbol 154 GraphicUsed by:Timeline
Symbol 155 GraphicUsed by:166
Symbol 156 FontUsed by:157 158 159 160 161
Symbol 157 TextUses:156Used by:166
Symbol 158 EditableTextUses:156Used by:166
Symbol 159 EditableTextUses:156Used by:166
Symbol 160 TextUses:156Used by:166
Symbol 161 TextUses:156Used by:166
Symbol 162 TextUses:56Used by:165 303
Symbol 163 TextUses:56Used by:165 303
Symbol 164 GraphicUsed by:165 303 306 316 333 404
Symbol 165 ButtonUses:162 163 164Used by:166
Symbol 166 MovieClipUses:155 157 158 159 160 161 165Used by:Timeline
Symbol 167 GraphicUsed by:180 192
Symbol 168 GraphicUsed by:180 192
Symbol 169 GraphicUsed by:180 192
Symbol 170 GraphicUsed by:180 192
Symbol 171 GraphicUsed by:180 192
Symbol 172 GraphicUsed by:180 192
Symbol 173 GraphicUsed by:180 192
Symbol 174 GraphicUsed by:180 192
Symbol 175 GraphicUsed by:180 192
Symbol 176 GraphicUsed by:180 192
Symbol 177 GraphicUsed by:180 192
Symbol 178 GraphicUsed by:180 192
Symbol 179 GraphicUsed by:180
Symbol 180 ButtonUses:167 168 169 170 171 172 173 174 175 176 177 178 179Used by:Timeline
Symbol 181 ButtonUses:52 53 54Used by:Timeline
Symbol 182 GraphicUsed by:192
Symbol 183 GraphicUsed by:192
Symbol 184 GraphicUsed by:192
Symbol 185 GraphicUsed by:192
Symbol 186 GraphicUsed by:192
Symbol 187 GraphicUsed by:192
Symbol 188 GraphicUsed by:192
Symbol 189 GraphicUsed by:192
Symbol 190 GraphicUsed by:192
Symbol 191 GraphicUsed by:192
Symbol 192 MovieClipUses:167 168 169 170 171 172 173 174 175 176 177 178 3 4 182 183 184 185 186 187 188 189 5 190 191Used by:Timeline
Symbol 193 GraphicUsed by:248
Symbol 194 GraphicUsed by:195 277 374
Symbol 195 MovieClipUses:194Used by:242
Symbol 196 GraphicUsed by:197
Symbol 197 MovieClipUses:196Used by:242
Symbol 198 GraphicUsed by:201
Symbol 199 GraphicUsed by:200
Symbol 200 MovieClipUses:199Used by:201
Symbol 201 MovieClipUses:198 200Used by:242
Symbol 202 GraphicUsed by:205
Symbol 203 GraphicUsed by:204
Symbol 204 MovieClipUses:203Used by:205
Symbol 205 MovieClipUses:202 204Used by:242
Symbol 206 GraphicUsed by:220
Symbol 207 GraphicUsed by:220
Symbol 208 GraphicUsed by:220
Symbol 209 GraphicUsed by:220
Symbol 210 GraphicUsed by:220
Symbol 211 GraphicUsed by:220
Symbol 212 GraphicUsed by:220
Symbol 213 GraphicUsed by:220
Symbol 214 GraphicUsed by:219
Symbol 215 GraphicUsed by:219
Symbol 216 GraphicUsed by:219
Symbol 217 GraphicUsed by:219
Symbol 218 GraphicUsed by:219
Symbol 219 MovieClipUses:214 215 216 217 218Used by:220
Symbol 220 MovieClipUses:206 121 95 207 208 209 210 211 212 213 219Used by:242
Symbol 221 GraphicUsed by:232
Symbol 222 GraphicUsed by:232
Symbol 223 GraphicUsed by:232
Symbol 224 GraphicUsed by:232
Symbol 225 GraphicUsed by:232
Symbol 226 GraphicUsed by:232
Symbol 227 GraphicUsed by:232
Symbol 228 GraphicUsed by:232
Symbol 229 GraphicUsed by:232
Symbol 230 GraphicUsed by:232
Symbol 231 GraphicUsed by:232
Symbol 232 MovieClipUses:221 222 223 224 225 226 227 228 229 230 231Used by:242
Symbol 233 GraphicUsed by:234
Symbol 234 MovieClipUses:233Used by:242
Symbol 235 GraphicUsed by:241
Symbol 236 GraphicUsed by:241
Symbol 237 GraphicUsed by:241
Symbol 238 GraphicUsed by:241
Symbol 239 GraphicUsed by:241
Symbol 240 GraphicUsed by:241
Symbol 241 MovieClipUses:235 236 237 21 238 239 240Used by:242
Symbol 242 MovieClipUses:195 197 201 205 220 232 234 241Used by:248
Symbol 243 GraphicUsed by:247
Symbol 244 GraphicUsed by:245
Symbol 245 MovieClipUses:244Used by:247
Symbol 246 GraphicUsed by:247
Symbol 247 MovieClipUses:243 245 246Used by:248
Symbol 248 MovieClipUses:193 242 247Used by:Timeline
Symbol 249 GraphicUsed by:282
Symbol 250 EditableTextUses:56Used by:257
Symbol 251 EditableTextUses:56Used by:257
Symbol 252 EditableTextUses:56Used by:257
Symbol 253 EditableTextUses:56Used by:257
Symbol 254 EditableTextUses:56Used by:257
Symbol 255 EditableTextUses:56Used by:257
Symbol 256 EditableTextUses:56Used by:257
Symbol 257 MovieClipUses:250 251 252 253 254 255 256Used by:282
Symbol 258 GraphicUsed by:282
Symbol 259 FontUsed by:260 261 275 344 349
Symbol 260 TextUses:259Used by:282
Symbol 261 EditableTextUses:259Used by:282
Symbol 262 GraphicUsed by:282
Symbol 263 GraphicUsed by:273
Symbol 264 GraphicUsed by:273
Symbol 265 GraphicUsed by:273
Symbol 266 GraphicUsed by:273
Symbol 267 GraphicUsed by:273
Symbol 268 GraphicUsed by:273
Symbol 269 GraphicUsed by:273
Symbol 270 GraphicUsed by:273
Symbol 271 GraphicUsed by:273
Symbol 272 GraphicUsed by:273
Symbol 273 MovieClipUses:263 264 265 266 267 268 269 270 271 272Used by:282
Symbol 274 GraphicUsed by:280
Symbol 275 TextUses:259Used by:280
Symbol 276 GraphicUsed by:278
Symbol 277 MovieClipUses:194Used by:278
Symbol 278 MovieClipUses:276 277Used by:280 282
Symbol 279 GraphicUsed by:280
Symbol 280 MovieClipUses:274 275 278 279 153 150 144 138 132 128 118 102Used by:282
Symbol 281 GraphicUsed by:282
Symbol 282 MovieClipUses:249 257 258 260 261 262 273 280 281 278Used by:Timeline
Symbol 283 ButtonUses:52 53 54Used by:Timeline
Symbol 284 EditableTextUses:56Used by:Timeline
Symbol 285 ButtonUses:52 53 54Used by:Timeline
Symbol 286 ButtonUses:52 53 54Used by:Timeline
Symbol 287 ButtonUses:52 53 54Used by:Timeline
Symbol 288 FontUsed by:289 290 326 336 373 376 377 378 379 380 381 386 388
Symbol 289 TextUses:288Used by:Timeline
Symbol 290 TextUses:288Used by:Timeline
Symbol 291 GraphicUsed by:301
Symbol 292 GraphicUsed by:301
Symbol 293 GraphicUsed by:301
Symbol 294 GraphicUsed by:301
Symbol 295 GraphicUsed by:301
Symbol 296 GraphicUsed by:301
Symbol 297 GraphicUsed by:301
Symbol 298 GraphicUsed by:301
Symbol 299 GraphicUsed by:301
Symbol 300 GraphicUsed by:301
Symbol 301 MovieClipUses:291 292 293 294 295 296 297 298 299 300Used by:Timeline
Symbol 302 GraphicUsed by:405
Symbol 303 ButtonUses:162 163 164Used by:405
Symbol 304 TextUses:56Used by:306
Symbol 305 TextUses:56Used by:306
Symbol 306 ButtonUses:304 305 164Used by:405
Symbol 307 TextUses:56Used by:405
Symbol 308 GraphicUsed by:405
Symbol 309 GraphicUsed by:341 374 405
Symbol 310 GraphicUsed by:341 374 405
Symbol 311 TextUses:56Used by:405
Symbol 312 TextUses:56Used by:405
Symbol 313 GraphicUsed by:405
Symbol 314 TextUses:56Used by:316
Symbol 315 TextUses:56Used by:316
Symbol 316 ButtonUses:314 315 164Used by:405
Symbol 317 GraphicUsed by:320
Symbol 318 TextUses:56Used by:320
Symbol 319 GraphicUsed by:320
Symbol 320 ButtonUses:317 318 319Used by:405
Symbol 321 GraphicUsed by:405
Symbol 322 GraphicUsed by:405
Symbol 323 ButtonUses:52 53 54Used by:405
Symbol 324 TextUses:56Used by:405
Symbol 325 EditableTextUses:56Used by:405
Symbol 326 TextUses:288Used by:405
Symbol 327 TextUses:56Used by:405
Symbol 328 GraphicUsed by:329
Symbol 329 MovieClipUses:328Used by:405
Symbol 330 GraphicUsed by:405
Symbol 331 TextUses:56Used by:333
Symbol 332 TextUses:56Used by:333
Symbol 333 ButtonUses:331 332 164Used by:405
Symbol 334 GraphicUsed by:341 374
Symbol 335 GraphicUsed by:374
Symbol 336 EditableTextUses:288Used by:374
Symbol 337 GraphicUsed by:341
Symbol 338 GraphicUsed by:341 374
Symbol 339 GraphicUsed by:341
Symbol 340 GraphicUsed by:341
Symbol 341 MovieClipUses:337 338 309 310 21 339 334 340Used by:374
Symbol 342 GraphicUsed by:346
Symbol 343 GraphicUsed by:346
Symbol 344 TextUses:259Used by:346
Symbol 345 GraphicUsed by:346
Symbol 346 ButtonUses:342 343 344 345Used by:374
Symbol 347 GraphicUsed by:351
Symbol 348 GraphicUsed by:351
Symbol 349 TextUses:259Used by:351
Symbol 350 GraphicUsed by:351
Symbol 351 ButtonUses:347 348 349 350Used by:374
Symbol 352 EditableTextUses:56Used by:374
Symbol 353 TextUses:56Used by:374
Symbol 354 TextUses:56Used by:374
Symbol 355 EditableTextUses:56Used by:374
Symbol 356 GraphicUsed by:374
Symbol 357 GraphicUsed by:374
Symbol 358 GraphicUsed by:374
Symbol 359 GraphicUsed by:374
Symbol 360 GraphicUsed by:374
Symbol 361 GraphicUsed by:374
Symbol 362 GraphicUsed by:374
Symbol 363 GraphicUsed by:374
Symbol 364 GraphicUsed by:365
Symbol 365 MovieClipUses:364Used by:374
Symbol 366 GraphicUsed by:374
Symbol 367 GraphicUsed by:374
Symbol 368 GraphicUsed by:374
Symbol 369 GraphicUsed by:374
Symbol 370 GraphicUsed by:374
Symbol 371 GraphicUsed by:374
Symbol 372 GraphicUsed by:374
Symbol 373 TextUses:288Used by:374
Symbol 374 MovieClipUses:194 334 335 336 341 346 351 352 353 354 355 356 357 338 309 310 21 358 359 360 361 362 363 365 366 367 368 369 370 371 372 373Used by:405
Symbol 375 TextUses:56Used by:405
Symbol 376 TextUses:288Used by:405
Symbol 377 TextUses:288Used by:405
Symbol 378 TextUses:288Used by:405
Symbol 379 TextUses:288Used by:405
Symbol 380 TextUses:288Used by:405
Symbol 381 TextUses:288Used by:405
Symbol 382 FontUsed by:383 386 391 392 393 394 396 397
Symbol 383 TextUses:382Used by:405
Symbol 384 GraphicUsed by:405
Symbol 385 TextUses:56Used by:405
Symbol 386 TextUses:382 288Used by:405
Symbol 387 GraphicUsed by:390
Symbol 388 EditableTextUses:288Used by:390
Symbol 389 GraphicUsed by:390
Symbol 390 MovieClipUses:387 388 389Used by:405
Symbol 391 TextUses:382Used by:405
Symbol 392 TextUses:382Used by:405
Symbol 393 TextUses:382Used by:405
Symbol 394 TextUses:382Used by:405
Symbol 395 TextUses:56Used by:405
Symbol 396 TextUses:382Used by:405
Symbol 397 EditableTextUses:382Used by:405
Symbol 398 TextUses:56Used by:405
Symbol 399 TextUses:56Used by:405
Symbol 400 GraphicUsed by:405
Symbol 401 TextUses:56Used by:405
Symbol 402 TextUses:56Used by:404
Symbol 403 TextUses:56Used by:404
Symbol 404 ButtonUses:402 403 164Used by:405
Symbol 405 MovieClipUses:302 303 306 307 308 309 310 21 311 312 313 316 320 321 322 323 324 325 326 327 329 330 333 374 80 375 376 377 378 379 380 381 383 384 385 386 390 391 392 393 394 395 396 397 398 399 400 401 404Used by:Timeline
Symbol 406 GraphicUsed by:407
Symbol 407 MovieClipUses:406Used by:Timeline

Instance Names

"mcLoader"Frame 1Symbol 166 MovieClip
"game_MC"Frame 118Symbol 248 MovieClip
"statusWindowMC"Frame 118Symbol 282 MovieClip
"time_1s_MC"Frame 118Symbol 301 MovieClip
"time_10s_MC"Frame 118Symbol 301 MovieClip
"time_60s_MC"Frame 118Symbol 301 MovieClip
"menuWindowMC"Frame 118Symbol 405 MovieClip
"gameCoverMC"Frame 118Symbol 407 MovieClip
"bgndMC"Symbol 80 MovieClip [practiceLevel_Button] Frame 1Symbol 79 MovieClip
"txtMissionNo"Symbol 81 MovieClip [missionButton] Frame 1Symbol 57 EditableText
"lineOfFire_MC"Symbol 97 MovieClip Frame 1Symbol 86 MovieClip
"nozzle_MC"Symbol 97 MovieClip Frame 1Symbol 95 MovieClip
"wheel_MC"Symbol 102 MovieClip [walker1] Frame 1Symbol 83 MovieClip
"weapon_MC"Symbol 102 MovieClip [walker1] Frame 1Symbol 97 MovieClip
"lineOfFire_MC"Symbol 122 MovieClip Frame 1Symbol 121 MovieClip
"nozzle_MC"Symbol 122 MovieClip Frame 1Symbol 95 MovieClip
"weapon_MC"Symbol 128 MovieClip [flying2] Frame 1Symbol 122 MovieClip
"weapon_MC"Symbol 138 MovieClip [turret1] Frame 1Symbol 97 MovieClip
"flash_MC"Symbol 201 MovieClip Frame 1Symbol 200 MovieClip
"flash_MC"Symbol 205 MovieClip Frame 1Symbol 204 MovieClip
"lineOfFire_MC"Symbol 220 MovieClip Frame 1Symbol 121 MovieClip
"flash_MC"Symbol 220 MovieClip Frame 1Symbol 95 MovieClip
"nozzle_MC"Symbol 220 MovieClip Frame 1Symbol 95 MovieClip
"arms_MC"Symbol 220 MovieClip Frame 9Symbol 219 MovieClip
"hitAreaMC"Symbol 242 MovieClip Frame 1Symbol 195 MovieClip
"pL_legs_MC"Symbol 242 MovieClip Frame 1Symbol 197 MovieClip
"pL_head_MC"Symbol 242 MovieClip Frame 1Symbol 201 MovieClip
"pL_Body_MC"Symbol 242 MovieClip Frame 1Symbol 205 MovieClip
"pL_weapon_MC"Symbol 242 MovieClip Frame 1Symbol 220 MovieClip
"pL_legs_MC"Symbol 242 MovieClip Frame 2Symbol 232 MovieClip
"pL_legs_MC"Symbol 242 MovieClip Frame 3Symbol 234 MovieClip
"pL_legs_MC"Symbol 242 MovieClip Frame 4Symbol 197 MovieClip
"pL_MC"Symbol 248 MovieClip Frame 1Symbol 242 MovieClip
"crossHairMC"Symbol 248 MovieClip Frame 1Symbol 247 MovieClip
"barMC"Symbol 278 MovieClip Frame 1Symbol 277 MovieClip
"heathMC"Symbol 280 MovieClip Frame 1Symbol 278 MovieClip
"missionMessageMC"Symbol 282 MovieClip Frame 1Symbol 257 MovieClip
"pL_weaponDisplayMC"Symbol 282 MovieClip Frame 1Symbol 273 MovieClip
"EnemyStatusMC"Symbol 282 MovieClip Frame 1Symbol 280 MovieClip
"pL_heathMC"Symbol 282 MovieClip Frame 1Symbol 278 MovieClip
"pL_ReloadMC"Symbol 282 MovieClip Frame 1Symbol 278 MovieClip
"speakerHeadMC"Symbol 374 MovieClip Frame 1Symbol 341 MovieClip
"pL_missionButtonsMC"Symbol 405 MovieClip Frame 3Symbol 329 MovieClip
"cutScenesMC"Symbol 405 MovieClip Frame 4Symbol 374 MovieClip
"key_pLMoveLeft"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip
"key_pLMoveRight"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip
"key_pLMoveUp"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip
"keyQualityToggle"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip
"keyMusicOnOff"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip
"keyPauseGame"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip
"key_pLNextWeapon"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip
"key_pLPrevWeapon"Symbol 405 MovieClip Frame 6Symbol 390 MovieClip

Special Tags

ExportAssets (56)Timeline Frame 1Symbol 1 as "machineGun_fire"
ExportAssets (56)Timeline Frame 1Symbol 2 as "uzi_fire"
ExportAssets (56)Timeline Frame 1Symbol 3 as "TubeScre-Public_d-172.wav"
ExportAssets (56)Timeline Frame 1Symbol 4 as "THUMP-splinteh-1275.wav"
ExportAssets (56)Timeline Frame 1Symbol 5 as "sparkle.wav"
ExportAssets (56)Timeline Frame 1Symbol 6 as "blasterGun_fire"
ExportAssets (56)Timeline Frame 1Symbol 7 as "RICOCHET.WAV"
ExportAssets (56)Timeline Frame 1Symbol 8 as "ric5.wav"
ExportAssets (56)Timeline Frame 1Symbol 9 as "ric2.wav"
ExportAssets (56)Timeline Frame 1Symbol 10 as "ric1.wav"
ExportAssets (56)Timeline Frame 1Symbol 11 as "pistol_fire"
ExportAssets (56)Timeline Frame 1Symbol 12 as "music2"
ExportAssets (56)Timeline Frame 1Symbol 13 as "music1"
ExportAssets (56)Timeline Frame 1Symbol 14 as "Explosion1.wav"
ExportAssets (56)Timeline Frame 1Symbol 15 as "miniGun_fire"
ExportAssets (56)Timeline Frame 1Symbol 20 as "flameThrower"
ExportAssets (56)Timeline Frame 1Symbol 14 as "Explosion1.wav"
ExportAssets (56)Timeline Frame 1Symbol 25 as "rocketLauncher"
ExportAssets (56)Timeline Frame 1Symbol 26 as "grenade"
ExportAssets (56)Timeline Frame 1Symbol 29 as "bloodsplatter1"
ExportAssets (56)Timeline Frame 1Symbol 7 as "RICOCHET.WAV"
ExportAssets (56)Timeline Frame 1Symbol 33 as "ricochet2"
ExportAssets (56)Timeline Frame 1Symbol 10 as "ric1.wav"
ExportAssets (56)Timeline Frame 1Symbol 9 as "ric2.wav"
ExportAssets (56)Timeline Frame 1Symbol 8 as "ric5.wav"
ExportAssets (56)Timeline Frame 1Symbol 37 as "ricochet1"
ExportAssets (56)Timeline Frame 1Symbol 40 as "explosion1"
ExportAssets (56)Timeline Frame 1Symbol 14 as "Explosion1.wav"
ExportAssets (56)Timeline Frame 1Symbol 48 as "debry1"
ExportAssets (56)Timeline Frame 1Symbol 51 as "whiteSmoke"
ExportAssets (56)Timeline Frame 1Symbol 59 as "missionButton"
ExportAssets (56)Timeline Frame 1Symbol 59 as "missionButton"
ExportAssets (56)Timeline Frame 1Symbol 80 as "practiceLevel_Button"
ExportAssets (56)Timeline Frame 1Symbol 81 as "missionButton"
ExportAssets (56)Timeline Frame 1Symbol 6 as "blasterGun_fire"
ExportAssets (56)Timeline Frame 1Symbol 102 as "walker1"
ExportAssets (56)Timeline Frame 1Symbol 14 as "Explosion1.wav"
ExportAssets (56)Timeline Frame 1Symbol 118 as "flying3"
ExportAssets (56)Timeline Frame 1Symbol 128 as "flying2"
ExportAssets (56)Timeline Frame 1Symbol 132 as "flying1"
ExportAssets (56)Timeline Frame 1Symbol 138 as "turret1"
ExportAssets (56)Timeline Frame 1Symbol 144 as "stationary3"
ExportAssets (56)Timeline Frame 1Symbol 150 as "stationary2"
ExportAssets (56)Timeline Frame 1Symbol 153 as "stationary1"
ExportAssets (56)Timeline Frame 3Symbol 3 as "TubeScre-Public_d-172.wav"
ExportAssets (56)Timeline Frame 3Symbol 4 as "THUMP-splinteh-1275.wav"
ExportAssets (56)Timeline Frame 3Symbol 4 as "THUMP-splinteh-1275.wav"
ExportAssets (56)Timeline Frame 3Symbol 5 as "sparkle.wav"
ExportAssets (56)Timeline Frame 118Symbol 153 as "stationary1"
ExportAssets (56)Timeline Frame 118Symbol 150 as "stationary2"
ExportAssets (56)Timeline Frame 118Symbol 144 as "stationary3"
ExportAssets (56)Timeline Frame 118Symbol 138 as "turret1"
ExportAssets (56)Timeline Frame 118Symbol 132 as "flying1"
ExportAssets (56)Timeline Frame 118Symbol 128 as "flying2"
ExportAssets (56)Timeline Frame 118Symbol 118 as "flying3"
ExportAssets (56)Timeline Frame 118Symbol 102 as "walker1"
ExportAssets (56)Timeline Frame 118Symbol 153 as "stationary1"
ExportAssets (56)Timeline Frame 118Symbol 153 as "stationary1"
ExportAssets (56)Timeline Frame 118Symbol 153 as "stationary1"
ExportAssets (56)Timeline Frame 118Symbol 153 as "stationary1"
ExportAssets (56)Timeline Frame 118Symbol 153 as "stationary1"
ExportAssets (56)Timeline Frame 118Symbol 81 as "missionButton"
ExportAssets (56)Timeline Frame 118Symbol 80 as "practiceLevel_Button"
ExportAssets (56)Timeline Frame 119Symbol 81 as "missionButton"

Labels

"explode"Symbol 20 MovieClip [flameThrower] Frame 14
"explode"Symbol 25 MovieClip [rocketLauncher] Frame 2
"explode"Symbol 26 MovieClip [grenade] Frame 2
"explode"Symbol 48 MovieClip [debry1] Frame 4
"mission_1"Symbol 79 MovieClip Frame 1
"mission_2"Symbol 79 MovieClip Frame 2
"unlocked"Symbol 81 MovieClip [missionButton] Frame 1
"locked"Symbol 81 MovieClip [missionButton] Frame 2
"pistol"Symbol 95 MovieClip Frame 2
"blasterGun"Symbol 95 MovieClip Frame 4
"uzi"Symbol 95 MovieClip Frame 6
"machineGun"Symbol 95 MovieClip Frame 8
"miniGun"Symbol 95 MovieClip Frame 10
"laser"Symbol 95 MovieClip Frame 12
"rocketLauncher"Symbol 95 MovieClip Frame 14
"flameThrower"Symbol 95 MovieClip Frame 17
"grenade"Symbol 95 MovieClip Frame 19
"dies"Symbol 102 MovieClip [walker1] Frame 5
"dies"Symbol 118 MovieClip [flying3] Frame 5
"dies"Symbol 128 MovieClip [flying2] Frame 5
"dies"Symbol 132 MovieClip [flying1] Frame 5
"dies"Symbol 138 MovieClip [turret1] Frame 5
"dies"Symbol 144 MovieClip [stationary3] Frame 5
"dies"Symbol 150 MovieClip [stationary2] Frame 5
"dies"Symbol 153 MovieClip [stationary1] Frame 5
"throw"Symbol 219 MovieClip Frame 2
"pistol"Symbol 220 MovieClip Frame 1
"blasterGun"Symbol 220 MovieClip Frame 2
"uzi"Symbol 220 MovieClip Frame 3
"machineGun"Symbol 220 MovieClip Frame 4
"miniGun"Symbol 220 MovieClip Frame 5
"laser"Symbol 220 MovieClip Frame 6
"rocketLauncher"Symbol 220 MovieClip Frame 7
"flameThrower"Symbol 220 MovieClip Frame 8
"grenade"Symbol 220 MovieClip Frame 9
"stand"Symbol 242 MovieClip Frame 1
"walk"Symbol 242 MovieClip Frame 2
"jump"Symbol 242 MovieClip Frame 3
"getsHurt"Symbol 242 MovieClip Frame 4
"dies"Symbol 242 MovieClip Frame 5
"mission_1"Symbol 248 MovieClip Frame 1
"mission_2"Symbol 248 MovieClip Frame 2
"none"Symbol 257 MovieClip Frame 1
"missionComplete"Symbol 257 MovieClip Frame 2
"pL_dead"Symbol 257 MovieClip Frame 3
"timeIsUp"Symbol 257 MovieClip Frame 4
"pistol"Symbol 273 MovieClip Frame 1
"blasterGun"Symbol 273 MovieClip Frame 2
"uzi"Symbol 273 MovieClip Frame 3
"machineGun"Symbol 273 MovieClip Frame 4
"miniGun"Symbol 273 MovieClip Frame 5
"laser"Symbol 273 MovieClip Frame 6
"rocketLauncher"Symbol 273 MovieClip Frame 7
"flameThrower"Symbol 273 MovieClip Frame 8
"grenade"Symbol 273 MovieClip Frame 9
"none"Symbol 280 MovieClip Frame 1
"stationary1"Symbol 280 MovieClip Frame 2
"stationary2"Symbol 280 MovieClip Frame 3
"stationary3"Symbol 280 MovieClip Frame 4
"turret1"Symbol 280 MovieClip Frame 5
"flying1"Symbol 280 MovieClip Frame 6
"flying2"Symbol 280 MovieClip Frame 7
"flying3"Symbol 280 MovieClip Frame 8
"walker1"Symbol 280 MovieClip Frame 9
"Sam"Symbol 341 MovieClip Frame 1
"Sp"Symbol 341 MovieClip Frame 2
"None"Symbol 341 MovieClip Frame 3
"mission_0"Symbol 374 MovieClip Frame 1
"mission_0_last"Symbol 374 MovieClip Frame 7
"mission_1"Symbol 374 MovieClip Frame 8
"mission_1_last"Symbol 374 MovieClip Frame 13
"mission_2"Symbol 374 MovieClip Frame 14
"mission_2_last"Symbol 374 MovieClip Frame 16
"mission_3"Symbol 374 MovieClip Frame 17
"mission_3_last"Symbol 374 MovieClip Frame 21
"mission_4"Symbol 374 MovieClip Frame 22
"mission_4_last"Symbol 374 MovieClip Frame 29
"mission_5"Symbol 374 MovieClip Frame 30
"mission_5_last"Symbol 374 MovieClip Frame 34
"mission_6"Symbol 374 MovieClip Frame 35
"mission_6_last"Symbol 374 MovieClip Frame 41
"mission_7"Symbol 374 MovieClip Frame 42
"mission_7_last"Symbol 374 MovieClip Frame 46
"mission_8"Symbol 374 MovieClip Frame 47
"mission_8_last"Symbol 374 MovieClip Frame 49
"mission_9"Symbol 374 MovieClip Frame 50
"mission_9_last"Symbol 374 MovieClip Frame 53
"mission_10"Symbol 374 MovieClip Frame 54
"mission_10_last"Symbol 374 MovieClip Frame 64
"mission_11"Symbol 374 MovieClip Frame 65
"mission_11_last"Symbol 374 MovieClip Frame 66
"mission_12"Symbol 374 MovieClip Frame 67
"mission_12_last"Symbol 374 MovieClip Frame 74
"mission_13"Symbol 374 MovieClip Frame 75
"mission_13_last"Symbol 374 MovieClip Frame 77
"mission_14"Symbol 374 MovieClip Frame 78
"mission_14_last"Symbol 374 MovieClip Frame 81
"mission_15"Symbol 374 MovieClip Frame 82
"mission_15_last"Symbol 374 MovieClip Frame 87
"mission_16"Symbol 374 MovieClip Frame 88
"mission_16_last"Symbol 374 MovieClip Frame 90
"mission_17"Symbol 374 MovieClip Frame 91
"mission_17_last"Symbol 374 MovieClip Frame 94
"mission_18"Symbol 374 MovieClip Frame 95
"mission_19"Symbol 374 MovieClip Frame 103
"main_menu"Symbol 405 MovieClip Frame 1
"game_start"Symbol 405 MovieClip Frame 2
"level_select"Symbol 405 MovieClip Frame 3
"cutscenes"Symbol 405 MovieClip Frame 4
"instructions"Symbol 405 MovieClip Frame 5
"controls"Symbol 405 MovieClip Frame 6
"music"Symbol 405 MovieClip Frame 7
"level_complete"Symbol 405 MovieClip Frame 8
"game_complete"Symbol 405 MovieClip Frame 9
"pL_dies"Symbol 405 MovieClip Frame 10

Dynamic Text Variables

txtPercentLoadedSymbol 158 EditableText"   1"
txtPercentLoadedSymbol 159 EditableText"   1"
txtAmmoSymbol 261 EditableText"0"
txt_levelNoSymbol 284 EditableText"10"
txtLevelCodeSymbol 325 EditableText""
txtDialogueSymbol 336 EditableText"Wakey, wakey … Sam! "
txtLevelCodeSymbol 352 EditableText"3452345"
txtLevelNoSymbol 355 EditableText"3452345"
txtKeySymbol 388 EditableText"x"




http://swfchan.com/3/12934/info.shtml
Created: 5/6 -2019 10:10:10 Last modified: 5/6 -2019 10:10:10 Server time: 12/05 -2024 08:37:38