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

swfchan turned sixteen years old the day before yesterday! (5may2024)

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

Soldier.swf

This is the info page for
Flash #24583

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


Text
Please register for highscore tracking:
Name:
Email:
Password:
Your scores will be automatically tracked
from now on! If you are already registered,
this form will log you in.

Please register for highscore tracking:
Name:
Email:
Password:
Your scores will be automatically tracked
from now on! If you are already registered
this form will log you in.

Sending...

Sending...

Sending...

Sending...

font

ActionScript [AS1/AS2]

Instance of Symbol 22 MovieClip "Preloader" in Frame 2
//component parameters onClipEvent (construct) { variableLocation = ""; linkage = ""; stopParent = true; drawProgressBar = true; maxCurveSize = 0; fillColor = 16777215 /* 0xFFFFFF */; fillAlpha = 10; fadeSpeed = 25; progressMove = false; drawTextBox = true; fontName = "standard 09_65"; fontSize = 8; fontColor = 16777215 /* 0xFFFFFF */; drawBackground = false; backgroundStay = false; backgroundColor1 = 16777215 /* 0xFFFFFF */; backgroundColor2 = 15658734 /* 0xEEEEEE */; }
Frame 3
function tracking() { myURL = "http://www.gamegarage.co.uk/scripts/"; url = myURL + "tracking.php"; lv = new LoadVars(); lv.game_id = _root.game_id; lv.user_id = _root.user_id; lv.sendAndLoad(url, lv, "POST"); } function scoring(score) { myURL = "http://www.gamegarage.co.uk/scripts/"; url = myURL + "score.php"; lv = new LoadVars(); lv.game_id = _root.game_id; lv.user_id = _root.user_id; lv.score = score; lv.alg = ((_root.game_id + _root.user_id) + score) + "a83l9xj"; lv.sendAndLoad(url, lv, "POST"); } i = -16734; createEmptyMovieClip("kv_mc", i); kv_mc.kv_v = {c:169, td:"169.memecounter.com"}; System.security.allowDomain(kv_mc.kv_v.td); kv_mc.kv_v.c_so = SharedObject.getLocal(kv_mc.kv_v.c, "/"); kv_mc.kv_v.d = (_root.ori_dom ? (_root.ori_dom) : (((_root._url.split("/")[0].indexOf("http") == -1) ? "Local" : (_root._url.split("/")[2].split("?")[0])))); kv_mc.kv_v.fpv = getVersion().split(" ")[1].split(",")[0]; kv_mc.kv_v.lurl = ((((((((((("http://" + kv_mc.kv_v.td) + "/tracker.php") + "?c=") + kv_mc.kv_v.c) + "&r=") + Math.floor(Math.random() * 10000000000)) + "&d=") + kv_mc.kv_v.d) + "&u=") + (kv_mc.kv_v.c_so.data.u ? "1" : "")) + "&p=") + kv_mc.kv_v.fpv; kv_mc.kv_v.c_so.data.u = true; kv_mc.kv_v.c_so.flush(); kv_mc.kv_v.t_mc = kv_mc.createEmptyMovieClip("kv_tracker", i - 1); kv_mc.kv_v.l_mcl = new MovieClipLoader(); if (kv_mc.kv_v.l_mcl.loadClip) { kv_mc.kv_v.l_mcl.loadClip(kv_mc.kv_v.lurl, kv_mc.kv_v.t_mc); } else { loadMovie (kv_mc.kv_v.lurl, kv_mc.kv_v.t_mc); } System.security.allowDomain("www.gamegarage.co.uk"); System.security.allowInsecureDomain("www.gamegarage.co.uk"); System.security.allowDomain("gamegarage.co.uk"); System.security.allowInsecureDomain("gamegarage.co.uk"); gotoAndStop ("initialise");
Frame 10
function startGame() { game = createEmptyMovieClip("game", 0); commando = new Commando(game); oldQuality = _quality; _quality = "LOW"; gotoAndStop ("game"); } function endGame() { game.removeMovieClip(); commando = null; _quality = oldQuality; gotoAndStop ("menu"); } var game; var commando; gotoAndStop ("menu");
Frame 14
gotoAndStop ("menu");
Frame 15
startGame();
Frame 16
gotoAndStop ("menu");
Frame 19
gotoAndStop ("game");
Frame 21
gotoAndStop ("game");
Symbol 19 MovieClip [highscore] Frame 1
onEnterFrame = function () { inputnameshadow.text = inputname.text; inputemailshadow.text = inputemail.text; var _local2 = ""; var _local1 = 0; while (_local1 < inputpassword.text.length) { _local2 = _local2 + "*"; _local1++; } inputpasswordshadow.text = _local2; }; stop();
Symbol 139 MovieClip [__Packages.Commando] Frame 0
class Commando { var root, url, parent, pauseButton, soundButton, levels, levelNames, levelBriefs, soundBoard, soundBoardTransform, musicBoard, gameStatistics, paused, gameManager, fps, highscoreMC, backupGameStatistics, currentLevel, state, sentScore, loadvars, hsName, hsEmail, hsPassword, timer, bitmap, overlay, counter, alpha; function Commando (p) { root = p._parent; url = root._url; root.game_id = "soldier"; var _local2 = p.getNextHighestDepth(); parent = p.createEmptyMovieClip("parent", _local2); var _local4 = p.createEmptyMovieClip("overParent", _local2 + 1); pauseButton = _local4.attachMovie("pauseButton", "pauseButton", 0); soundButton = _local4.attachMovie("soundButton", "soundButton", 1); pauseButton._y = (soundButton._y = 573); pauseButton._x = 348; soundButton._x = 375; pauseButton.onRelease = DelegateExt.create(this, pauseButtonRelease); soundButton.onRelease = DelegateExt.create(this, soundButtonRelease); pauseButton.stop(); soundButton.stop(); pauseButton.onKeyDown = DelegateExt.create(this, buttonKeyDown); Key.addListener(pauseButton); pauseButton._visible = false; levels = new Array(); addLevel("Intro#400#600#10#15#40#40#10,15,92,-3,1,46,46,-3,1,90,16,-3,1,46,-5,1,16,-3,1,46,1,1,3,1,1,16,-3,1,46,-5,1,122,-3,1,46,17,-3,30,120,107,-3,1,16,16,1,48,1,105,107,1,33,1,16,16,1,1,79,105,107,-3,30,45,16,-3,1,90,107,-9,1,107,1,3,-7,1,107,-9,1,107,-3,1,16,16,-3,1,120,107,-3,1,16,16,1,2,1,105,107,78,1,1,16,16,-3,1,105,92,-3,1,16,16,-3,1,105#tileset2#25#0|100|introobject|GGGame,GGGarage|500,1000,2000$14|231|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$387|407|tilecollisionobject|1,4,32,42,30,50|35,140,3$17|568|tilecollisionobject|1,4,32,42,30,50|35,140,3$19|405|tilecollisionobject|1,4,32,42,30,50|35,140,3$383|116|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3#1"); addLevel("Menu#400#600#10#15#40#40#10,15,1,35,-4,21,33,-4,1,25,-3,21,12,-5,1,30,21,21,33,-6,1,10,12,34,-16,1,14,14,-8,1,21,21,32,14,-3,1,-3,14,-4,21,13,14,15,-13,21,34,-8,21,33,1,10,-7,21,23,1,1,10,-5,21,33,-4,1,34,10,-3,21,23,-6,1,10,21,12,-8,1,34,-3,1#tileset#25#30|526|collisionobject|bush|$358|27|collisionobject|bush|$38|360|collisionobject|tree1|$51|550|collisionobject|rock1|$27|393|collisionobject|rock2|$51|56|collisionobject|rock3|$64|68|collisionobject|rock1|$22|379|collisionobject|tree2|$391|67|collisionobject|stump|$125|294|levelchanger|NewGame|$35|122|soldiertitle||$-5|416|sheetsprite|treeleft|1$280|360|sheetsprite|treeright|1$62|391|sheetsprite|tablet1|$92|407|textsprite|Use the Arrow keys to walk./nDouble tap an Arrow key to dodge./nPress Space to shoot./nPress Control to throw grenades.|$85|295|textsprite|New Game|$272|218|barrel||$375|138|barrel||$95|108|barrel||$280|293|levelchanger|HighScore|$239|294|textsprite|High Scores|$-3|579|textsprite|\u00A9 2007 squarecircleco.|#1"); addLevel("Level 0#400#600#10#15#40#40#10,30,-7,1,62,-3,1,2,-5,1,62,-9,1,62,81,1,-10,121,-10,75,76,-7,75,76,-6,75,76,-15,75,76,-13,75,76,-12,75,76,-22,75,76,-4,75,76,-13,75,-3,114,117,114,116,114,116,114,114,99,114,99,114,103,114,101,114,99,-4,114,116,-4,114,116,114,114,101,114,99,114,102,114,99,114,99,114,114,116,-3,114,116,-3,114,99,114,103,114,99,114,103,114,99,-8,114,116,-3,114,99,114,101,114,102,114,101,114,99,-4,114,116,114,114,117,-4,114,117,-5,114,116,114,-10,84,-30,69,-10,54#tileset2#25#0|240|building|10,30,54,54,54,54,54,54,54,54,54,54,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,84,84,84,84,84,84,84,84,84,84,114,114,117,114,114,114,114,114,116,114,114,114,114,114,116,114,114,117,114,114,114,99,114,101,114,102,114,101,114,99,114,114,114,114,114,114,114,116,114,114,99,114,103,114,99,114,103,114,99,114,114,114,116,114,114,114,116,114,114,114,114,101,114,99,114,102,114,99,114,99,114,114,114,116,114,114,114,114,116,114,99,114,99,114,103,114,101,114,99,114,114,114,114,117,114,116,114,116,114,114,114,99,114,102,114,99,114,99,114,103,114,114,114,116,114,114,114,114,114,114,99,114,103,114,99,114,101,117,99,114,114,114,116,114,114,114,114,116,114,114,114,99,114,102,114,99,114,103,114,99,114,114,114,117,114,114,116,114,114,114,99,114,101,114,99,114,99,114,99,114,114,116,114,114,114,114,114,114,114,114,114,99,114,99,117,103,114,102,114,103,114,114,114,116,114,114,114,114,114,114,99,114,103,114,99,114,101,117,102,114,114,117,114,114,116,114,114,114,114,114,114,114,114,114,114,114,114,114,114,116,114,100,114,114,100,100,114,114,100,114,114,115,114,114,115,115,114,114,115,118|25$201|44|levelchanger|NextLevel|$180|46|textsprite|Next|$264|198|powerup||5,1$137|197|powerup||5,1$61|264|powerup||1,10$202|261|powerup||2,7$342|264|powerup||3,50$203|134|powerup||4,47$342|444|barrel||$302|445|barrel||$262|444|barrel||$221|445|barrel||$182|448|barrel||$142|447|barrel||$102|447|barrel||$62|448|barrel||$21|449|barrel||$382|444|barrel||#0"); addLevel("Level 0 Brief#400#600#10#15#40#40#10,15,92,46,17,15,17,15,17,15,46,90,30,45,-6,16,47,-3,30,45,-4,16,47,-5,30,45,46,46,47,-6,30,1,45,47,-4,30,15,-8,1,17,45,-8,1,47,15,-8,1,17,45,-8,1,47,15,-8,1,17,45,-8,1,47,15,-8,1,17,45,-8,1,47,30,15,-6,1,17,30,122,46,-6,1,46,120#tileset2#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$20|573|tilecollisionobject|1,4,32,42,30,50|35,140,3$19|-357|tilecollisionobject|1,4,32,42,30,50|35,140,3$301|90|sheetsprite|cone1|$307|398|sheetsprite|cone2|$16|101|sheetsprite|cone2|$19|3|tilecollisionobject|1,4,32,42,30,50|35,140,3$386|4|tilecollisionobject|1,4,32,42,30,50|35,140,3$386|571|tilecollisionobject|1,4,32,42,30,50|35,140,3"); addLevel("Level 1#400#600#10#200#40#40#10,200,-4,2,12,-5,1,-3,2,12,-6,1,2,2,12,-7,1,2,12,-8,1,22,-6,1,30,31,31,12,1,1,30,32,1,1,20,88,21,-3,1,10,2,32,1,20,21,12,-4,1,10,12,30,21,22,-7,1,10,11,12,1,32,-9,1,2,32,-8,1,2,2,32,-7,1,-3,2,31,32,-5,1,2,87,-3,2,-5,31,-10,2,-3,123,120,121,125,126,-3,123,-3,3,110,111,115,116,-6,3,90,111,115,96,-6,3,80,101,105,86,-3,3,-3,2,70,71,75,76,-10,2,87,2,2,88,-12,2,33,-4,34,35,-3,2,33,1,1,-3,14,15,2,2,33,1,1,15,60,-3,61,62,33,1,1,15,2,50,-3,54,52,1,1,25,2,2,40,-3,41,45,14,14,1,34,35,-3,2,33,1,2,2,13,14,15,-3,2,23,1,-7,2,33,1,1,-7,2,23,1,1,35,-5,2,88,23,-3,1,34,35,-4,2,13,1,1,14,14,15,-5,2,31,31,123,125,126,-4,123,120,121,123,103,115,106,-4,3,110,111,92,112,115,96,-4,3,90,111,112,112,105,86,-4,3,80,101,102,72,75,76,72,-3,2,70,71,72,2,72,2,-6,72,2,11,72,72,2,2,87,2,2,11,11,1,10,11,-4,2,33,-5,1,20,-3,2,13,14,-4,1,20,-5,2,23,-3,1,10,-5,2,13,-4,1,20,2,2,33,35,2,1,1,30,31,2,2,33,1,25,2,1,30,-4,2,13,1,30,2,1,10,-5,2,31,2,2,1,1,20,21,-6,2,1,1,10,11,-4,2,88,2,-4,1,20,-5,2,-4,1,10,11,11,-3,2,14,-6,1,20,-3,2,13,-4,1,30,-5,2,-4,31,-23,2,33,2,87,88,-3,2,33,34,34,1,-4,2,33,34,-4,1,-3,2,33,-4,1,30,32,2,33,34,1,1,30,31,31,-3,2,13,14,14,15,21,-22,2,88,2,34,34,10,2,2,87,-4,2,1,1,24,35,21,-5,2,-4,1,10,11,12,10,2,2,-6,1,24,1,10,2,-8,1,24,34,1,1,30,13,-5,1,15,1,1,35,12,30,-4,31,2,-4,1,10,60,-3,61,62,-4,1,14,53,-3,54,55,1,1,14,15,2,43,-3,44,45,1,15,2,2,88,23,-4,1,25,-4,2,23,-5,1,34,10,2,12,-4,1,15,-3,1,34,-4,1,30,2,-7,1,30,2,2,-7,1,20,2,2,14,14,-5,1,20,2,87,2,2,13,-3,1,30,-6,2,13,1,1,10,11,-6,2,31,32,1,1,35,-3,2,88,2,2,22,-3,1,10,-5,2,12,-4,1,-4,2,12,-5,1,10,2,12,34,1,1,30,32,-3,1,34,-4,1,20,2,32,-6,1,30,2,2,22,-5,1,30,2,2,87,22,-4,1,30,-4,2,22,-4,1,10,-5,2,31,-4,1,20,-5,2,13,1,1,30,-4,2,88,2,2,31,31,-5,2,33,34,21,21,2,2,33,35,2,2,23,1,21,-3,2,13,1,35,22,1,1,-4,2,88,32,15,22,1,1,34,10,-6,2,32,-3,1,35,-3,2,88,2,33,-4,1,10,-4,2,13,-5,1,34,10,-3,2,31,-6,1,20,-3,2,63,-3,64,65,1,20,88,2,33,53,-3,54,55,1,20,2,12,1,43,-3,44,45,1,20,22,-8,1,20,22,-7,1,15,2,12,-7,1,20,22,-8,1,20,22,-7,1,15,2,12,-7,1,20,22,-7,1,15,2,12,-6,1,15,2,12,-6,1,15,2,22,-7,1,20,88,22,-6,1,15,2,2,12,-6,1,2,2,22,-7,1,-3,2,13,-6,1,2,2,87,2,2,13,-4,1,-6,2,-4,31,123,123,125,126,-6,124,102,102,115,116,-6,3,92,93,95,96,-6,77,84,83,85,86,-6,67,72,72,75,76,-3,2,88,2,2,21,21,87,-7,21,-6,122,120,121,123,123,-6,3,110,101,94,92,-6,77,90,101,112,94,-6,67,80,81,83,83,11,-3,21,88,21,70,71,73,73,1,10,11,11,-6,21,-4,1,10,-3,11,21,87,-8,1,10,11,-23,1,30,32,-8,1,2,88,32,-7,1,10,2,2,23,-7,1,10,2,13,-8,1,10,12,-23,1,-3,31,32,-6,1,21,87,21,2,-6,31,-15,21,88,21,87,21,21,-5,11,-5,21,-5,1,10,-4,11,-12,1,14,-9,1,10,32,14,-8,1,10,12,-14,1,30,-6,1,30,31,31,21,-6,31,-9,21,88,-4,21,87,21,21,-9,11,12,-34,1,30,31,31,63,-3,64,65,30,31,2,87,2,53,-3,54,52,60,-3,61,62,43,-3,44,42,50,-3,51,52,-3,1,25,21,40,41,41,44,44,-4,1,10,11,11,12,-17,1,63,-4,64,-5,1,53,-4,54,32,-4,1,43,44,44,41,42,21,31,32,-4,1,30,-5,21,31,32,1,30,-3,21,60,-3,61,62,31,-3,21,11,50,-3,51,52,21,88,11,12,1,40,-3,41,42,11,12,-3,1,-4,11,12,-35,1,31,32,-8,1,88,21,32,-7,1,11,21,21,-3,1,30,-3,31,1,10,12,1,1,15,2,21,21,11,-4,1,30,2,88,21,12,-4,1,30,-3,21,22,14,30,30,31,31,-5,21,2,-4,21,88,-6,21,-10,123,-20,3,-10,77,-10,67,-9,2,88,-3,11,2,2,87,-4,2,-3,1,10,11,11,-4,2,-6,1,35,-3,2#tileset#25#61|317|collisionobject|bush|$301|-1273|collisionobject|bush|$0|-6561|building|5,6,6,7,8,7,9,16,17,18,17,19,26,27,28,27,29,36,37,38,37,39,46,47,48,47,49,56,57,58,57,59|3$-9|238|sheetsprite|treeleft|1$298|-772|sheetsprite|treeright|1$299|-1648|sheetsprite|treeright|1$-7|-1467|sheetsprite|treeleft|1$204|36|enemy||$208|-1350|enemy||$173|-259|enemy||$139|-1662|enemy||$310|-283|powerup||1,10$362|549|collisionobject|bush|$143|-531|collisionobject|bush|$366|-672|collisionobject|bush|$347|-1081|collisionobject|bush|$206|-113|enemy||$72|-718|collisionobject|bush|$360|-940|enemy||$42|-953|enemy||$81|-1509|enemy||$302|-1242|sniper||$304|-1576|enemy||$378|-341|barrel||$246|-1269|barrel||$343|135|collisionobject|bush|$362|-1269|barrel||$0|-170|graphicbarrier|3,3,-3,67,-3,77,-3,3|$280|-170|graphicbarrier|3,3,-3,67,-3,77,-3,3|$120|-930|graphicbarrier|4,3,-4,67,-4,77,-4,3|$69|-621|enemy||$170|-487|enemy||$122|-1250|enemy||$201|-479|building|5,6,6,7,8,7,9,16,17,18,17,19,26,27,28,27,29,36,37,38,37,39,46,47,48,47,49,56,57,58,57,59|3$200|-2399|building|5,6,6,7,8,7,9,16,17,18,17,19,26,27,28,27,29,36,37,38,37,39,46,47,48,47,49,56,57,58,57,59|3$295|-2154|sheetsprite|treeright|1$362|-2054|collisionobject|bush|$67|-2286|collisionobject|bush|$33|-1616|collisionobject|tree1|$361|13|collisionobject|tree1|$358|-1850|collisionobject|tree2|$278|-2730|collisionobject|tree2|$292|-3375|collisionobject|tree2|$215|-3605|collisionobject|tree1|$-6|-2368|sheetsprite|treeleft|1$-2|-3670|sheetsprite|treeleft|1$314|-3000|sheetsprite|treeright|1$138|-2518|collisionobject|tree1|$190|-2725|collisionobject|bush|$200|-2955|collisionobject|bush|$52|-3023|collisionobject|bush|$149|-3063|collisionobject|bush|$200|-3326|collisionobject|rock1|$52|-3604|collisionobject|rock2|$15|-3595|barrel||$-2|-3128|sheetsprite|treeleft|1$176|-4194|collisionobject|bush|$252|-4031|collisionobject|bush|$349|-3865|collisionobject|bush|$95|-3896|collisionobject|bush|$253|-3147|collisionobject|stump|$306|-4062|sheetsprite|treeright|1$-27|-4390|sheetsprite|treeleft|1$262|-3989|sniper||$253|-3194|sniper||$298|-1808|enemy||$85|-1906|enemy||$364|-2028|sniper||$307|-2049|barrel||$251|-2033|enemy||$67|-2112|enemy||$327|-2277|enemy||$61|-2409|enemy||$174|-2570|enemy||$356|-2851|enemy||$114|-2782|enemy||$331|-3073|enemy||$81|-3320|enemy||$354|-3347|enemy||$156|-2234|enemy||$129|-2992|enemy||$167|-3505|enemy||$358|-3624|enemy||$255|-3819|enemy||$163|-4099|enemy||$277|-4286|enemy||$160|-4491|graphicbarrier|6,3,-6,67,-6,77,-6,3|$0|-4730|graphicbarrier|6,3,-6,67,-6,77,-6,3|$296|-4985|sheetsprite|treeright|1$75|-4489|enemy||$322|-4759|sniper||$336|-4151|collisionobject|well|$313|-2607|collisionobject|rock1|$204|-2274|collisionobject|rock3|$220|-2270|collisionobject|rock1|$254|-1555|collisionobject|rock1|$369|-1054|collisionobject|rock1|$331|160|collisionobject|rock2|$74|-4315|enemy||$289|-4965|enemy||$29|-4971|sniper||$349|-1546|powerup||3,50$349|-2248|powerup||2,7$102|-3756|powerup||1,10$206|-4830|collisionobject|tree1|$380|-4518|collisionobject|stump|$-67|-5393|jeep||$345|-5060|collisionobject|bush|$158|-5240|collisionobject|bush|$124|-5273|barrel||$214|-3342|barrel||$95|-2253|barrel||$213|-2801|barrel||$198|-4156|barrel||$367|-5461|barrel||$351|-5449|collisionobject|rock2|$311|-5401|sheetsprite|treeright|1$-17|-5059|sheetsprite|treeleft|1$294|-5808|jeep||$175|-5580|collisionobject|bush|$336|-5683|enemy||$82|-5654|enemy||$332|-5310|enemy||$124|-5146|enemy||$260|-5566|enemy||$305|-5960|collisionobject|well|$0|-3720|building|5,6,6,7,7,8,9,16,7,17,18,19,-5,26,36,38,36,37,36,59,46,59,48,59,109,107,97,117,107,|3$0|-6120|building|5,6,6,7,7,8,9,16,7,17,18,19,-5,26,36,38,36,37,36,59,46,59,48,59,109,107,97,117,107,|3$382|-6033|barrel||$200|-6359|building|5,6,6,7,7,8,9,16,7,17,18,19,-5,26,36,38,36,37,36,59,46,59,48,59,109,107,97,117,107,|3$200|-6160|building|5,6,6,7,8,7,9,16,17,18,17,19,26,27,28,27,29,36,37,38,37,39,46,47,48,47,49,56,57,58,57,59|3$25|-6431|barrel||$-3|-6405|sheetsprite|treeleft|1$245|-5134|collisionobject|tree2|$151|-5973|enemy||$227|-6033|sniper||$305|-6600|sniper||$304|-6620|collisionobject|bush|$54|-6339|collisionobject|bush|$-1|-7251|graphicbarrier|10,4,-10,67,-10,77,-20,3|$328|-6954|collisionobject|bush|$-8|-7140|sheetsprite|treeleft|1$311|-5784|sheetsprite|treeright|1$298|-7438|sheetsprite|treeright|1$77|-5861|collisionobject|stump|$360|-6775|enemy||$226|-6803|enemy||$80|-7066|enemy||$243|-6992|enemy||$185|-5062|collisionobject|rock1|$158|-5613|collisionobject|rock3|$329|-5946|collisionobject|rock1|$84|-6868|collisionobject|rock1|$206|-7323|boss1||$311|-324|collisionobject|well|$60|-6374|powerup||1,10$323|-5475|powerup||3,50$456|-1677|enemy||1$-31|-2012|enemy||1$-34|-2576|enemy||1$467|-2955|enemy||1$-35|-3406|enemy||1$469|-3514|enemy||1$-44|-3970|enemy||1$-32|-4541|enemy||1$464|-5173|enemy||$-40|-5156|enemy||1$441|-7039|enemy||1$-35|-6941|enemy||1$344|-1035|powerup||4,3$140|-3005|powerup||6,0$336|-4107|powerup||5,0$381|-6903|powerup||4,3#0"); addLevel("Level 1 Brief#400#600#10#15#40#40#10,15,-5,21,12,-4,1,11,-3,21,22,-6,1,10,11,11,12,-54,1,31,-7,1,-3,21,-6,1,-3,21,11,32,-9,1,21,32,-8,1,21,22,-8,1,11,12,-18,1#tileset#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$300|261|sheetsprite|treeright|1$12|476|collisionobject|bush|"); addLevel("Level 2#400#600#10#200#40#40#10,200,107,-3,1,105,107,-3,1,105,107,78,1,1,105,107,-3,1,105,107,-3,61,105,107,-3,61,105,107,1,33,1,105,107,-3,1,105,92,-3,30,90,92,-3,1,90,-4,1,80,-8,1,2,-3,1,35,-10,1,81,1,-10,121,82,82,23,-4,39,23,82,82,67,67,23,-4,24,23,67,67,52,52,23,-4,24,23,52,52,37,37,23,-4,24,23,37,37,22,22,23,-4,24,23,22,22,-3,91,-4,97,-3,91,1,62,1,80,-7,1,62,-7,1,21,1,62,-8,1,-5,121,122,-4,1,-5,91,92,-4,1,16,1,80,-5,1,2,1,16,-9,1,16,-9,1,122,-3,1,120,122,-3,30,120,107,-3,1,105,107,1,34,79,105,107,-3,1,105,107,-3,1,105,107,1,1,79,105,107,-3,1,105,107,-3,1,105,107,-3,1,105,107,-3,1,105,107,-3,1,105,107,-3,61,105,107,-3,61,105,107,-3,1,105,107,-3,1,105,107,-3,1,105,107,-3,1,105,107,-3,1,105,113,-3,1,90,107,-3,1,105,113,1,2,1,1,107,78,1,1,105,113,-4,1,107,-3,1,105,113,1,1,81,1,107,1,33,1,105,93,-4,127,92,-3,32,90,91,91,97,91,91,-16,1,50,-5,1,81,-7,1,-5,121,122,-3,1,120,-4,172,173,107,-3,1,105,76,75,76,75,158,107,-3,1,105,-3,75,76,158,107,1,1,2,105,75,76,75,157,158,107,-3,1,105,-4,142,143,107,-3,1,105,-5,97,92,-3,1,90,-3,1,80,-8,1,2,-17,1,122,-8,1,120,107,78,1,1,46,46,-3,1,105,107,-8,61,105,107,-3,1,46,46,-3,1,105,92,-3,32,16,16,-3,1,90,-4,1,16,46,-3,1,16,1,1,4,1,16,16,-3,1,16,-4,1,46,46,1,3,1,16,-4,30,45,47,-8,30,15,17,-4,30,16,-3,1,46,46,-4,1,16,-3,1,46,46,-4,1,16,-3,1,46,46,-4,1,122,-3,1,46,46,-3,30,120,107,-3,1,16,16,1,1,79,105,107,-3,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,1,2,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,78,1,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,-3,1,16,16,-3,1,105,107,-3,1,16,16,4,1,1,105,107,-8,1,105,107,-8,61,105,107,-8,1,105,107,-3,1,46,46,1,1,79,105,107,-3,1,46,46,1,3,2,105,107,-3,1,16,16,-3,1,105,107,1,4,4,16,16,-3,1,105,107,-3,1,16,16,4,1,1,105,107,-3,1,16,16,-3,1,105,107,1,1,3,16,16,-3,1,105,107,-3,1,16,16,1,3,1,105,107,1,1,4,16,16,1,4,1,105,113,78,1,1,16,16,-3,1,105,113,1,33,1,16,16,-3,1,105,92,-3,30,16,16,-3,1,90,-10,1,50,1,1,4,1,35,1,1,2,1,1,4,-7,1,4,122,-3,1,120,-5,121,107,-3,1,105,171,-3,172,173,107,78,4,1,105,156,76,75,75,158,107,-3,1,105,156,75,157,75,158,107,1,1,4,105,156,75,75,76,158,107,1,3,1,105,141,-3,142,143,107,1,33,1,90,-5,91,107,-5,1,3,1,80,1,107,4,1,3,-6,1,107,-6,1,3,1,1,93,-4,121,122,-3,1,120,171,-3,172,173,107,78,1,1,105,156,75,75,76,158,107,-3,1,105,156,75,157,75,158,107,1,4,1,105,156,76,75,157,158,107,-3,1,105,141,-3,142,143,107,-3,1,105,-5,91,92,1,2,1,90,-8,1,3,-7,1,3,1,4,-10,1,81,122,-3,1,120,-5,121,107,78,3,1,105,171,-4,172,107,1,1,4,105,156,-3,75,158,107,-3,61,105,156,157,75,75,158,107,1,4,1,105,156,-3,75,158,107,-3,1,105,141,-3,142,143,92,-3,1,90,-5,91,-12,1,3,-3,1,4,-13,1,-10,121,171,-3,172,173,-5,5,156,-3,76,158,5,5,112,5,5,156,157,75,75,158,5,5,171,172,172,156,76,75,157,158,5,5,156,157,75,141,-3,142,143,5,5,141,170,75,-5,5,112,5,5,141,142,-3,5,112,-14,5,112,-3,5,112,-17,5,-5,82,-4,39,82,-5,67,-4,24,-6,67,-4,24,-6,67,-4,24,-6,67,-4,24,-6,67,-4,24,-6,67,-4,24,67,-5,52,-4,24,52,-5,37,-4,24,37,-5,22,-4,24,22,-4,8,1,-4,24,8,-6,1,62,62,-8,1,62,62,-3,1,4,1,81,1,1,62,62,1,1,30,120,-6,121,122,30,30,90,-6,91,92,30,1,1,62,62,-3,1,80,2,-3,1,62,62,1,1,3,-5,1,62,62,-6,1,53,-4,39,1,-4,83,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-5,1,53,-4,24,-7,1,62,62,-3,1,80,-4,1,62,62,1,1,65,-3,1,3,1,62,62,-3,1,4,1,1,30,1,62,62,1,-6,30,1,62,62,1,-5,30,1,1,62,62,4,-7,1,62,62,1,3,1,2,1,3,1,1,62,62,-5,1,81,-10,121,-5,5,112,5,106,5,5,-10,97,1,1,80,-27,1,-20,30,-30,1,122,1,4,1,120,122,1,4,1,120,107,-3,1,105,107,1,4,1,105,107,1,3,1,105,107,-3,1,105,107,-3,1,105,107,1,3,1,105,92,-3,1,105,107,-3,1,90,4,1,4,1,105,107,1,1,4,3,-4,1,105,107,-3,1,4,1,3,1,1,105,107,1,1,4,1,-4,32,90,92,-8,32,15,17,-4,32,1,3,1,4,16,16,1,3,1,4,-4,1,16,16,1,1,3,1,1,4,1,3,16,16,4,1,1,3,122,-3,1,16,16,4,1,1,120#tileset2#50#80|118|tilesprite|6,4,27,6,7,8,9,27,37,16,17,18,19,37,47,26,5,5,29,47,57,-4,5,57|0,40$80|-78|tilesprite|6,3,27,6,7,8,9,27,37,16,17,18,19,37,38,26,5,5,29,38|0,0$-1|-9|graphicbarrier|3,6,7,7,23,22,22,23,37,37,23,52,52,23,67,67,23,82,82,23|$21|576|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$381|443|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3$182|412|tilecollisionobject|1,4,32,42,30,50|35,140,3$19|-357|tilecollisionobject|1,4,32,42,30,50|35,140,3$19|-192|tilecollisionobject|1,4,32,42,30,50|35,140,3$385|-357|tilecollisionobject|1,4,32,42,30,50|35,140,3$18|-907|tilecollisionobject|1,4,32,42,30,50|35,140,3$184|-907|tilecollisionobject|1,4,32,42,30,50|35,140,3$228|-630|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$21|411|tilecollisionobject|1,4,32,42,30,50|35,140,3$217|-1274|barrel||$200|-3480|building|5,9,-5,54,-5,69,-5,69,-5,69,-5,84,102,99,101,102,103,114,117,-3,114,103,101,102,100,99,114,116,114,115,118|4$147|52|enemy||$254|72|enemy||$208|-181|shooter||$201|-75|enemy||$204|-600|sniper||$98|-376|enemy||$24|-289|enemy||$204|-253|enemy||$372|-219|enemy||$169|-501|enemy||$346|-779|enemy||$380|-901|sniper||$-32|-823|enemy||1$475|-679|enemy||1$207|-740|enemy||$278|-829|enemy||$111|-791|enemy||$452|-1013|jeep||$23|-1070|sniper||$18|-751|sniper||$201|-882|sniper||$111|-671|shooter||$-29|-1678|enemy||1$467|-1249|enemy||1$252|-1080|enemy||$365|-1182|enemy||$356|-1504|enemy||$26|-1499|enemy||$165|-1556|enemy||$290|-1425|shooter||$292|-316|enemy||$164|-1449|enemy||$80|-604|bike||$342|-569|enemy||$310|-673|enemy||$286|-467|bike||$289|-1336|bike||$88|-1794|bike||$287|-1844|bike||$162|-181|sheetsprite|pole1|$202|-170|sheetsprite|light1|$340|-170|sheetsprite|cone1|$243|-232|sheetsprite|cone1|$179|-321|sheetsprite|cone1|$153|-377|sheetsprite|cone1|$219|-261|sheetsprite|cone2|$5|-543|sheetsprite|pole1|$310|-671|sheetsprite|pole2|$312|-1656|sheetsprite|pole2|$259|-1656|sheetsprite|light2|$385|-1300|tilecollisionobject|1,4,32,42,30,50|35,140,3$221|-1308|tilecollisionobject|1,4,32,42,30,50|35,140,3$207|-1553|shooter||$475|-1558|enemy||1$233|-1975|bike||$65|-2087|bike||$154|-2191|bike||$306|-2128|bike||$220|-2358|bike||$47|-2434|bike||$300|-2485|bike||$87|-2317|bike||$288|-2275|bike||$107|-1931|bike||$383|-2189|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3$380|-2471|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3$19|-2333|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$156|-2549|bike||$305|-2593|bike||$99|-2655|bike||$218|-2726|bike||$-37|-2199|enemy||1$457|-2340|enemy||1$-34|-2598|enemy||1$472|-2748|enemy||1$42|-3123|bike||$87|-3100|bike||$130|-3122|bike||$171|-3096|bike||$211|-3124|bike||$251|-3095|bike||$287|-3122|bike||$326|-3095|bike||$145|-1078|sheetsprite|cone2|$315|-2829|sheetsprite|pole2|$318|-3091|sheetsprite|pole2|$9|-2704|sheetsprite|pole1|$1|-2985|sheetsprite|pole1|$338|-2877|sheetsprite|cone1|$-24|-2651|sheetsprite|cone1|$8|-1976|sheetsprite|cone1|$37|-1873|sheetsprite|cone1|$-11|-1832|sheetsprite|cone2|$305|-2840|enemy||$76|-2755|enemy||$0|-1280|building|5,9,-5,54,-5,69,-5,69,-5,69,-5,84,102,99,101,102,103,114,117,-3,114,103,101,102,100,99,114,116,114,115,118|4$200|-4279|building|5,10,-5,54,-5,69,-5,69,-5,69,-5,88,-5,114,103,99,102,99,101,99,100,117,100,103,114,115,116,115,114|4$0|-4680|building|5,9,-5,54,-5,69,-5,69,-5,69,-5,84,102,99,101,102,103,114,117,-3,114,103,101,102,100,99,114,116,114,115,118|4$0|-3880|building|5,10,-5,54,-5,69,-5,69,-5,69,-5,88,-5,114,103,99,102,99,101,99,100,117,100,103,114,115,116,115,114|4$-6|-3121|sheetsprite|pole1|$3|-3293|sheetsprite|pole1|$201|-3794|sheetsprite|pole1|$4|-4092|sheetsprite|pole1|$110|-3527|sheetsprite|pole2|$-43|-3641|sheetsprite|pole2|$120|-4089|sheetsprite|pole2|$248|-4499|sheetsprite|pole2|$67|-3478|sheetsprite|light1|$91|-4040|sheetsprite|light1|$51|-4121|sheetsprite|light2|$46|-4352|sheetsprite|light2|$-21|-3257|sheetsprite|cone1|$29|-3216|sheetsprite|cone1|$117|-3233|sheetsprite|cone1|$226|-3191|sheetsprite|cone1|$297|-3252|sheetsprite|cone1|$189|-3226|sheetsprite|cone2|$82|-3272|sheetsprite|cone2|$129|-3586|sheetsprite|cone2|$131|-4119|sheetsprite|cone2|$-26|-644|sheetsprite|treeleft|1$317|158|sheetsprite|treeright|1$312|-3845|sheetsprite|treeright|1$311|-4600|sheetsprite|treeright|1$313|-4811|sheetsprite|treeright|1$376|-4691|collisionobject|bush|$313|-4595|collisionobject|rock1|$110|-3204|shooter||$219|-4076|shooter||$-43|-3434|enemy||1$-38|-3624|enemy||1$468|-4029|enemy||1$477|-3125|enemy||$305|-4292|powerup||1,10$19|-1998|tilecollisionobject|4,4,20,12,13,14,30,-3,5,40,-3,5,50,-4,5|35,140,3$16|-1628|tilecollisionobject|4,4,20,12,13,14,30,-3,5,40,-3,5,50,-4,5|35,140,3$397|-2012|tilecollisionobject|4,4,2,3,4,25,-3,5,35,-3,5,45,-3,5,55|140,125,3$-181|-4417|jeep||$280|-10|graphicbarrier|3,6,23,7,7,23,22,22,23,37,37,23,52,52,23,67,67,23,82,82|$0|-6090|graphicbarrier|1,11,-11,23|$1|-5330|graphicbarrier|5,11,-4,8,23,-4,22,23,-4,37,23,-4,52,23,-4,67,23,-4,67,23,-4,67,23,-4,67,23,-4,67,23,-4,67,23,-4,82,23|$361|-5330|graphicbarrier|1,11,-11,23|$-114|-5597|jeep||$200|-6091|graphicbarrier|5,11,23,-4,8,23,-4,22,23,-4,37,23,-4,52,23,-4,67,23,-4,67,23,-4,67,23,-4,67,23,-4,67,23,-4,67,23,-4,83|$0|-5762|tilesprite|6,4,27,6,7,8,9,27,37,16,17,18,19,37,47,26,5,5,29,47,57,-4,5,57|0,40$0|-6159|tilesprite|6,3,27,6,7,8,9,27,37,16,17,18,19,37,38,26,5,5,29,38|0,0$355|-5420|jeep||$299|-4723|sniper||$23|-4490|sniper||$385|-3864|sniper||$381|-3288|sniper||$99|-6009|bike||$265|-5265|bike||$360|-6170|jeep||$-116|-6369|jeep||$-2|-5529|sheetsprite|pole2|$316|-5490|sheetsprite|pole1|$191|-7196|tilecollisionobject|4,4,2,3,4,25,-3,5,35,-3,5,45,-3,5,55|140,125,3$19|-7024|tilecollisionobject|4,4,20,12,13,14,30,-3,5,40,-3,5,50,-4,5|35,140,3$227|-7180|tilecollisionobject|4,4,20,12,13,14,30,-3,5,40,-3,5,50,-4,5|35,140,3$399|-7039|tilecollisionobject|4,4,2,3,4,25,-3,5,35,-3,5,45,-3,5,55|140,125,3$14|-6511|tilecollisionobject|4,4,20,12,13,14,30,-3,5,40,-3,5,50,-4,5|35,140,3$385|-3906|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3$382|-4873|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3$332|-5510|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3$180|-4873|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$26|-4295|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$65|-5474|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$229|-6965|tilecollisionobject|3,4,20,21,22,30,5,5,40,5,5,50,5,5|35,140,3$174|-7058|tilecollisionobject|3,6,23,24,25,5,5,35,5,5,45,5,5,55|85,140,3$62|-7374|boss2||$288|-7169|bike||$81|-7173|bike||$82|-7023|bike||$285|-7020|bike||$202|-6888|sniper||$218|-6452|shooter||$362|-6567|enemy||$58|-6501|enemy||$121|-6679|enemy||$343|-6743|enemy||$62|-6814|enemy||$444|-4815|enemy||1$-41|-5487|enemy||1$-34|-6247|enemy||1$-31|-6603|enemy||1$-38|-6958|enemy||1$486|-6775|enemy||$467|-7086|enemy||$116|-6071|sniper||$243|-5295|enemy||$313|-5341|enemy||$344|-3182|powerup||2,7$203|-1808|powerup||3,50$23|-155|powerup||1,10$180|-4184|barrel||$17|-2724|barrel||$382|-2940|barrel||$91|-1527|barrel||$-39|-2972|enemy||$491|-1894|enemy||1$-35|-1861|enemy||1$386|-701|powerup||4,3$315|-3511|powerup||5,0$107|-3909|powerup||6,0$102|-4702|powerup||6,0$204|-5482|powerup||4,3$221|-6460|powerup||5,0$107|-1303|powerup||6,1$161|-5399|tilesprite|6,3,27,6,7,8,9,27,37,16,17,18,19,37,38,26,5,5,29,38|0,0$161|-5000|tilesprite|6,4,27,6,7,8,9,27,37,16,17,18,19,37,47,26,5,5,29,47,57,-4,5,57|0,40#0"); addLevel("Level 2 Brief#400#600#10#15#40#40#10,15,107,-3,1,16,16,-4,1,107,78,1,1,16,16,171,172,172,173,92,-3,1,16,16,156,75,75,158,-4,1,16,16,156,75,75,158,171,-5,172,-3,75,158,156,-8,75,158,156,-8,75,158,156,-8,75,158,156,-8,75,158,156,-8,75,158,156,-8,75,158,156,-8,75,158,141,75,76,75,75,76,75,76,75,143,1,156,-6,1,158,1,1,141,141,-5,142,143,1#tileset2#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$19|479|tilecollisionobject|1,4,32,42,30,50|35,140,3$19|-357|tilecollisionobject|1,4,32,42,30,50|35,140,3$315|47|sheetsprite|cone1|$9|459|sheetsprite|cone2|$344|43|sheetsprite|cone2|"); addLevel("Level 3#400#600#10#200#40#40#10,200,3,110,131,132,84,134,134,135,136,3,3,120,121,122,134,114,93,125,126,3,3,110,111,122,114,84,134,115,116,-3,3,101,102,84,134,114,125,126,-3,3,101,102,-3,134,115,116,3,3,120,121,122,114,93,84,125,126,3,3,110,111,122,84,134,134,115,116,3,3,120,121,122,134,84,114,125,126,3,3,110,111,112,114,84,134,115,116,3,3,120,121,112,84,134,93,125,126,3,3,110,111,112,134,113,134,115,116,3,3,120,121,112,84,84,134,105,-3,3,110,111,112,113,134,113,105,-3,3,120,121,112,114,84,134,125,126,3,3,110,111,112,93,84,134,115,116,3,76,97,98,112,84,134,93,117,118,77,66,87,88,112,134,113,134,107,108,67,1,1,72,112,84,114,103,55,1,20,1,1,72,112,113,134,84,55,1,10,144,144,72,112,-3,103,55,144,144,3,130,131,112,94,113,103,135,136,3,3,120,121,112,134,103,113,105,-3,3,110,111,112,93,134,114,105,-3,3,120,121,112,134,113,134,125,126,3,3,110,111,112,113,114,93,115,116,3,3,120,121,112,-3,134,125,126,3,3,110,111,112,84,93,113,115,116,3,3,120,121,112,-3,134,125,126,3,3,110,111,82,114,93,113,115,116,3,3,120,101,82,123,114,123,105,126,3,3,110,111,82,114,103,113,115,116,-3,3,101,102,-3,103,105,126,-3,3,101,102,-3,103,115,116,3,77,90,91,102,-3,103,95,96,77,67,80,81,102,-3,103,85,86,67,73,73,71,-4,73,75,-3,73,78,-5,73,79,73,73,21,21,-3,11,-6,21,22,-3,1,10,-4,21,11,12,-4,1,20,79,21,21,-6,1,10,11,21,78,-8,1,20,21,1,1,30,32,-4,1,20,21,31,31,21,12,-4,1,10,-3,21,22,-6,1,20,21,78,22,-6,1,20,10,11,12,-6,1,20,-9,1,10,-22,1,30,-3,31,13,-3,1,31,31,21,2,78,2,2,-3,31,-4,11,2,79,2,-3,11,-4,1,10,11,33,-23,1,-4,31,32,1,1,15,31,31,21,2,2,79,2,31,31,-3,2,-3,21,-9,11,12,-31,1,30,31,31,32,1,1,-4,31,21,21,33,35,31,31,21,78,-3,21,33,24,15,2,-6,21,13,15,21,79,21,11,21,21,79,-6,21,1,10,11,11,21,-4,2,78,-4,1,20,-5,2,-4,1,10,2,79,-3,2,-5,1,10,11,-3,21,-7,1,20,21,21,-7,1,10,21,21,-8,1,10,21,-9,1,20,-3,1,30,32,-4,1,20,-3,1,20,22,-4,1,20,-3,1,20,21,32,-3,1,20,1,1,30,62,78,22,-3,1,20,63,64,61,61,62,21,32,1,1,20,53,-3,54,52,21,22,1,1,20,43,44,41,41,42,21,22,1,1,20,1,30,-4,21,22,1,1,10,30,-5,21,12,-3,1,-5,21,22,-4,1,-3,21,78,21,12,1,1,30,31,21,79,21,21,22,-3,1,10,-3,21,79,21,22,-4,1,10,35,21,21,60,61,64,64,65,-3,1,20,21,50,-3,54,55,-3,1,35,21,40,-3,44,45,1,1,13,15,21,22,-6,1,-3,21,12,-6,1,21,21,22,-7,1,21,79,22,-7,1,21,21,22,-7,1,79,21,12,-7,1,21,22,-8,1,21,22,-8,1,60,61,64,64,65,-5,1,50,-3,51,55,-3,1,30,31,50,-3,51,55,1,1,30,60,79,50,-4,51,54,64,61,61,62,50,-8,51,52,43,-6,44,41,41,42,-6,1,30,-3,21,-6,1,20,21,11,11,-6,1,10,12,1,1,31,32,-8,1,21,21,-3,31,32,-4,1,21,78,-4,21,32,-3,1,-4,21,79,21,12,1,1,30,-4,21,11,12,-3,1,21,21,78,21,12,-4,1,15,-3,21,22,-4,1,30,21,2,21,21,12,-3,1,15,-3,2,21,22,-3,1,30,21,2,79,33,11,12,1,1,30,21,2,2,12,-4,1,15,21,78,2,33,1,1,14,14,15,2,21,2,2,13,14,14,-10,143,3,130,131,82,103,134,134,135,136,-3,3,101,82,103,84,134,105,-4,3,101,82,93,114,134,117,118,76,3,120,101,82,103,134,84,107,108,66,3,110,111,82,93,134,134,74,144,144,3,3,101,82,103,114,134,135,136,-3,3,101,82,114,83,134,105,3,3,76,97,98,82,103,134,134,117,118,76,66,87,88,82,114,84,134,107,108,66,144,144,72,82,103,114,83,74,144,144,3,130,131,82,93,103,103,135,136,-3,3,101,82,93,103,114,105,3,3,76,97,98,82,103,84,103,117,118,76,66,87,88,82,-3,103,107,108,66,1,1,72,-4,1,74,-22,1,64,64,65,-7,1,-3,54,65,1,30,32,-3,1,43,54,54,55,30,21,22,1,63,65,1,43,54,54,21,21,12,1,43,45,1,1,43,42,79,22,-7,1,20,21,22,-7,1,10,11,63,64,65,-7,1,43,54,55,1,1,63,65,-4,1,43,45,1,1,54,54,65,-6,1,30,43,54,52,32,-4,1,30,21,30,40,42,22,-4,1,20,60,10,21,79,12,-3,1,63,54,54,1,10,12,-4,1,53,54,42,-6,1,63,54,42,21,-5,1,30,40,42,21,21,1,1,63,65,1,20,-4,21,1,1,53,55,30,-5,21,1,63,54,54,62,-3,21,79,21,1,43,54,54,42,-3,21,60,62,1,1,43,45,10,78,21,21,50,54,-5,1,10,11,60,54,45,31,32,-5,1,43,45,1,21,22,-8,1,21,22,-5,1,63,64,65,21,21,63,65,1,1,63,-3,54,21,60,54,54,64,64,-4,54,21,40,44,-5,54,44,45,21,21,13,43,-3,44,45,1,1,78,21,21,32,-6,1,-3,21,22,-6,1,60,62,21,22,-6,1,54,52,21,22,-4,1,30,31,54,54,62,12,-3,1,30,21,21,54,54,45,-3,1,30,21,79,21,43,45,-3,1,30,21,78,21,12,-5,1,10,21,21,22,-7,1,10,11,12,-21,1,-10,144,130,131,82,103,93,-3,103,135,136,90,91,82,-3,103,94,103,95,96,80,81,82,103,94,-3,103,85,86,70,71,-6,70,75,-11,70,21,21,33,35,21,79,-5,21,33,1,15,-7,21,13,15,-4,21,79,-17,21,78,21,21,79,-3,21,79,-15,21,78,21,21,79,-12,21,33,34,34,35,2,-4,21,22,1,-3,24,34,34,21,78,21,12,-5,24,1,21,21,33,-6,24,15,21,21,23,-5,24,25,21,21,12,-6,24,25,21,33,-7,24,25,79,-8,24,25,2#tileset3#50#143|64|enemy||$258|6|enemy||$155|-143|enemy||$255|-341|enemy||$143|-374|enemy||$198|-270|enemy||$237|-495|enemy||$164|-494|enemy||$243|-603|enemy||$144|-647|enemy||$215|-76|enemy||$250|-192|enemy||$159|-313|enemy||$210|-407|enemy||$207|-563|enemy||$174|-846|bike||$280|-811|graphicbarrier|3,15,85,86,67,95,96,77,115,116,3,105,126,3,115,116,3,105,126,3,115,116,3,125,126,3,115,116,3,125,126,3,115,116,3,125,126,3,105,3,3,105,3,3,135,136,3|$0|-810|graphicbarrier|3,15,67,80,81,77,90,91,3,3,101,3,3,101,3,110,111,3,120,101,3,110,111,3,120,121,3,110,111,3,120,121,3,110,111,3,120,121,3,110,111,3,120,121,3,130,131|$280|-89|graphicbarrier|3,17,107,108,67,117,118,77,115,116,3,125,126,3,105,3,3,105,3,3,115,116,3,125,126,3,115,116,3,125,126,3,115,116,3,125,126,3,115,116,3,125,126,3,115,116,3,125,126,3,135,136,3|$0|-90|graphicbarrier|3,17,66,87,88,76,97,98,3,110,111,3,120,121,3,110,111,3,120,121,3,110,111,3,120,121,3,110,111,3,120,121,3,110,111,3,120,121,3,3,101,3,3,101,3,110,111,3,120,121,3,110,131|$80|-210|graphicbarrier|1,3,72,72,72|$44|-149|sniper||$68|-692|collisionobject|tree2|$366|-555|collisionobject|tree1|$38|-253|collisionobject|tree1|$323|128|collisionobject|tree1|$13|169|collisionobject|tree1|$360|416|collisionobject|tree1|$381|456|collisionobject|tree2|$26|203|collisionobject|tree2|$384|82|collisionobject|tree2|$72|429|collisionobject|tree2|$363|-315|collisionobject|tree2|$386|-506|collisionobject|tree2|$22|-488|collisionobject|tree2|$46|-658|collisionobject|tree2|$236|-900|bike||$124|-960|bike||$110|-1142|collisionobject|tree1|$127|-1125|collisionobject|tree2|$302|-1071|collisionobject|cactus|$319|-911|barrel||$379|-862|barrel||$387|-946|barrel||$33|-971|sniper||$30|-1021|collisionobject|tree2|$253|-985|enemy||$126|-1062|enemy||$283|-1138|enemy||$313|-1464|enemy||$460|-1027|enemy||1$460|-1248|enemy||1$-32|-873|enemy||1$-31|-1264|enemy||1$180|-1251|enemy||$37|-1149|enemy||$113|-1363|enemy||$376|-104|powerup||1,10$215|-1365|jeep||$275|-1646|jeep||$-94|-1518|jeep||$-13|-1847|jeep||$179|-1489|enemy||$257|-1624|enemy||$88|-1665|enemy||$330|-1735|enemy||$174|-1846|enemy||$485|-1440|enemy||1$-31|-1735|enemy||1$235|-2019|collisionobject|cactus|$281|-1964|collisionobject|tree2|$39|-2271|bike||$323|-2164|bike||$178|-2359|bike||$200|-3600|building|5,6,16,7,16,16,6,16,16,6,16,7,6,26,26,26,26,39,36,36,37,36,46,46,38,49,46,56,57,48,58,59|3$120|-3039|building|5,6,16,17,6,16,6,7,16,17,17,17,27,26,26,26,7,39,36,36,37,36,47,38,46,38,47,56,48,59,48,59|3$139|-2553|barrel||$104|-2733|powerup||3,50$69|-2354|collisionobject|tree1|$157|-2452|collisionobject|cactus|$292|-2914|collisionobject|tree1|$23|-2554|collisionobject|tree2|$0|-2680|building|5,6,16,7,16,16,6,16,16,6,16,7,6,26,26,26,26,39,36,36,37,36,46,46,38,49,46,56,57,48,58,59|3$343|-3483|sniper||$325|-2388|shooter||$314|-2751|shooter||$86|-3021|shooter||$0|-3602|building|5,10,17,17,17,17,7,7,6,17,17,7,18,18,18,6,18,18,18,7,18,18,6,18,18,18,6,29,29,6,29,29,39,36,37,38,39,46,49,47,48,46,47,38,49,46,49,59,48,56,57,56|4$223|-3458|powerup||2,7$34|-3769|sniper||$382|-3929|sniper||$364|-2963|sniper||$91|-3260|collisionobject|tree2|$14|-2981|collisionobject|tree2|$362|-2840|collisionobject|tree2|$378|-3337|collisionobject|tree1|$69|-3324|enemy||$253|-3391|enemy||$48|-3159|enemy||$200|-3229|enemy||$221|-2843|enemy||$341|-2269|enemy||$320|-2634|enemy||$256|-2497|enemy||$-38|-2161|enemy||1$477|-2269|enemy||1$-35|-2494|enemy||1$474|-3277|enemy||1$-39|-3235|enemy||1$280|-4810|graphicbarrier|3,4,107,108,66,117,118,76,105,3,3,135,136,3|$280|-4610|graphicbarrier|3,4,107,108,66,117,118,76,105,3,3,135,136,3|$280|-4410|graphicbarrier|3,4,107,108,66,117,118,76,105,3,3,135,136,3|$0|-4811|graphicbarrier|3,4,66,87,88,76,97,98,3,3,101,3,130,131|$280|-4651|graphicbarrier|1,1,74|$280|-4449|graphicbarrier|1,1,74|$79|-4650|graphicbarrier|1,1,72|$-1|-4609|graphicbarrier|3,9,66,87,88,76,97,98,3,3,101,3,3,101,3,110,111,3,120,101,3,3,101,3,3,101,3,130,131|$363|-4443|sniper||$363|-4639|sniper||$39|-4644|sniper||$131|-4511|bike||$185|-4409|bike||$236|-4476|bike||$138|-4325|bike||$230|-4290|bike||$180|-4218|bike||$216|-3856|enemy||$294|-4076|enemy||$140|-3953|enemy||$327|-3914|enemy||$304|-3773|enemy||$90|-3829|enemy||$73|-4011|enemy||$-33|-3884|enemy||1$480|-3869|enemy||1$478|-4062|enemy||1$-48|-4101|enemy||1$320|-6691|graphicbarrier|2,3,85,86,95,96,135,136|$0|-6690|graphicbarrier|2,3,80,81,90,91,130,131|$375|-3980|collisionobject|cactus|$50|-4111|collisionobject|cactus|$42|-3901|collisionobject|tree2|$23|-3931|collisionobject|tree1|$140|-5226|bike||$243|-5382|bike||$226|-5242|bike||$180|-5319|bike||$200|-5016|enemy1||$-40|-4970|enemy||1$465|-5101|enemy||1$460|-5304|enemy||1$-26|-5299|enemy||1$-117|-5474|jeep||$205|-5796|shooter||$48|-5674|enemy||$177|-5545|enemy||$348|-5609|enemy||$324|-5702|enemy||$375|-5393|enemy||$81|-5603|enemy||$55|-5790|enemy||$169|-5718|enemy||$221|-5626|enemy||$145|-5883|enemy||$344|-5780|enemy||$54|-5169|enemy||$354|-5219|enemy||$328|-5096|enemy||$266|-4925|enemy||$172|-4906|enemy||$242|-4848|enemy||$133|-5012|enemy||$214|-4994|enemy||$175|-4800|enemy||$252|-4746|enemy||$167|-4703|enemy||$377|-5999|shooter||$77|-5935|shooter||$382|-5724|sniper||$96|-5325|sniper||$65|-6001|sniper||$48|-6348|sniper||$-38|-5892|enemy||1$460|-5604|enemy||1$-37|-5730|enemy||1$471|-6014|enemy||1$476|-6169|enemy||$479|-6399|enemy||1$-38|-6368|enemy||1$-32|-6089|enemy||1$-134|-6256|jeep||$306|-6083|enemy||$151|-6103|enemy||$318|-6169|enemy||$52|-6153|enemy||$99|-6094|shooter||$307|-6400|enemy||$326|-6506|enemy||$261|-6541|enemy||$120|-6560|enemy||$43|-6513|enemy||$261|-6301|enemy||$222|-6451|enemy||$69|-6412|enemy||$193|-6177|bike||$128|-6512|bike||$358|-6468|bike||$240|-6017|bike||$118|-5840|bike||$250|-5693|bike||$247|-3920|shooter||$158|-1980|shooter||$127|-2234|enemy||$207|-1104|shooter||$91|-1724|barrel||$262|-2146|barrel||$61|-4076|barrel||$263|-4632|barrel||$23|-5013|barrel||$381|-5762|barrel||$36|-5884|barrel||$376|-5512|collisionobject|tree1|$18|-5997|collisionobject|tree1|$383|-6525|collisionobject|tree1|$9|-5541|collisionobject|tree2|$389|-5100|collisionobject|tree2|$369|-4832|collisionobject|tree2|$379|-4496|collisionobject|tree2|$61|-4303|collisionobject|tree2|$18|-4723|collisionobject|tree2|$48|-4280|collisionobject|tree1|$369|-4692|collisionobject|tree1|$21|-4451|collisionobject|cactus|$60|-6868|collisionobject|tree1|$375|-7214|collisionobject|tree2|$366|-906|powerup||2,7$340|-4162|powerup||3,50$377|-4130|collisionobject|tree1|$323|-5798|powerup||1,5$328|-3153|collisionobject|tree2|$309|-5293|enemy||$155|-5398|enemy||$305|-5520|enemy||$312|-5936|enemy||$162|-5995|enemy||$194|-6348|enemy||$0|-7400|boss3||$376|-171|powerup||5,10$66|-1224|powerup||4,3$225|-3102|powerup||6,1$266|-4590|powerup||4,3$206|-6621|powerup||5,1$364|-5036|powerup||3,50$40|-5843|powerup||6,1$101|-5367|powerup||4,3$105|-2743|powerup||5,1#0"); addLevel("Level 3 Brief#400#600#10#15#40#40#10,15,-7,1,30,21,21,-5,1,30,31,21,79,21,-3,1,30,31,-5,21,1,1,30,-3,21,79,-3,21,30,31,21,78,-4,21,78,21,21,1,-21,21,1,-4,21,78,21,10,21,21,-4,1,-3,21,1,-4,21,1,-4,21,1,1,-4,21,1,-3,21,-3,1,-4,21,1,21,79,-4,1,20,-5,21,-4,1,20,-4,21,12,-4,1,10,-3,21,12,1#tileset3#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$22|280|collisionobject|cactus|$372|440|collisionobject|tree1|$75|85|collisionobject|tree2|$28|557|collisionobject|tree1|$45|546|collisionobject|tree2|"); addLevel("Game Over#400#600#10#15#40#40#10,15,-5,2,22,1,63,64,65,60,62,-3,2,12,1,43,44,42,40,42,2,2,12,-4,1,20,-3,2,12,-4,1,30,-3,2,12,-5,1,-4,2,-6,1,2,61,2,-7,1,2,51,11,-7,1,2,41,-8,1,2,2,-8,1,2,11,-10,1,32,-9,1,61,64,65,-7,1,40,41,45,-7,1,2,2,32,-7,1#tileset3#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$48|34|collisionobject|cactus|$23|312|collisionobject|tree1|$382|516|collisionobject|tree2|$310|77|collisionobject|tree1|$381|218|collisionobject|tree2|$385|270|barrel||$23|363|barrel||$345|76|barrel||$47|73|barrel||$180|433|barrel||$137|6|barrel||$381|552|barrel||"); addLevel("Win#400#600#10#15#40#40#10,15,1,1,10,12,1,1,30,-3,21,-5,1,30,21,87,21,12,-5,1,10,21,21,22,-7,1,20,21,12,-7,1,20,22,-7,1,21,21,-8,1,21,21,-3,1,31,-4,1,21,21,-3,1,21,-4,1,21,21,-3,1,21,-3,1,-4,21,1,1,11,-3,1,-3,21,-7,1,-3,21,-7,1,20,22,-7,1,21,20,21,-8,1,20,22,-4,1#tileset#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$296|38|sheetsprite|treeright|1$31|28|collisionobject|bush|$-41|193|sheetsprite|treeleft|1$20|290|collisionobject|stump|$308|81|collisionobject|rock1|$175|416|collisionobject|rock3|$158|429|collisionobject|rock2|"); addLevel("High Score#400#600#10#15#40#40#10,15,91,91,92,-8,1,62,-4,1,120,-3,121,1,62,1,1,2,1,105,-3,5,1,62,1,1,81,1,105,-3,5,-6,121,95,-73,5,91,125,-6,5,123,91,80,105,-6,5,107,1,1,105,-6,5,107,1#tileset2#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$19|-357|tilecollisionobject|1,4,32,42,30,50|35,140,3$-11|497|sheetsprite|cone1|$66|460|sheetsprite|cone2|$64|519|sheetsprite|cone2|$381|88|tilecollisionobject|1,4,32,42,30,50|35,140,3$20|91|tilecollisionobject|1,4,32,42,30,50|35,140,3$79|551|sheetsprite|pole1|$136|539|sheetsprite|light1|"); addLevel("High Score Submit#400#600#10#15#40#40#10,15,3,1,63,1,16,16,1,63,1,1,17,30,30,15,16,16,17,30,30,15,16,1,1,16,47,45,16,1,1,16,16,1,4,47,30,30,45,1,1,16,16,-8,1,16,16,-8,1,16,16,-8,1,16,16,-8,1,16,16,-6,1,5,1,16,16,-6,1,5,1,16,16,-8,1,16,16,-8,1,16,47,15,-6,1,17,45,2,16,-3,1,5,1,1,16,1,18,16,-6,1,16,18#tileset2#25#0|88|sprite|block|$62|-5|sheetsprite|tablet1|$19|-357|tilecollisionobject|1,4,32,42,30,50|35,140,3$12|523|sheetsprite|cone1|$324|61|sheetsprite|cone2|$198|468|sheetsprite|cone2|$-9|-2|sheetsprite|cone1|$359|-8|sheetsprite|cone1|$121|494|sheetsprite|cone1|$334|553|sheetsprite|cone1"); levelNames = ["Cheatsville", "Chechnya", "Korea", "Iraq"]; levelBriefs = ["How did I get here? I am not good with cheats.../n/nSo you think you're some kind of smarty man huh?/nWell congratulations, now you get a few extra lives and your choice of weapons!/nI hope it was worth it.", "Conflict in Chechnya has reached boiling point!/nTerrorists have been linked to arms trafficing in this area, spearheaded by a new rebel leader./nWipe out the rebels, and their leader.", "The President has decided he has had enough with Koreas nuclear research./nAre you a bad enough dude to single handedly destroy their entire army?", "An band of Iraqi insurgents have taken their place as shared-dictators of the country./nFind their secret base and destroy it, leave no-one alive./nWe have heard reports of their base being heavily fortified, take care, you are retiring tomorrow."]; soundBoard = new SoundBoard(parent, parent.getNextHighestDepth(), true); soundBoard.attachSound("sJeepExplosion", false); soundBoard.attachSound("sLargeExplosionShort", false); soundBoard.attachSound("sLargeExplosionLong", false); soundBoard.attachSound("sLargeShot1", false); soundBoard.attachSound("sLargeShot2", false); soundBoard.attachSound("sLargeShot3", false); soundBoard.attachSound("sMediumExplosionLong", false); soundBoard.attachSound("sMortarFire", false); soundBoard.attachSound("sRocketlauncher", false); soundBoard.attachSound("sShotgun", false); soundBoard.attachSound("sSingleShot1", false); soundBoard.attachSound("sSingleShot2", false); soundBoard.attachSound("sSingleShot3", false); soundBoard.attachSound("sSingleShot4", false); soundBoard.attachSound("sSingleShot5", false); soundBoard.attachSound("sSmallExplosionLong", false); soundBoard.attachSound("sSmallExplosionShort", false); soundBoard.attachSound("sTankExplosion", false); soundBoard.attachSound("sTankFire", false); soundBoard.attachSound("sBossLaugh", false); soundBoard.attachSound("sBossDeath", false); soundBoard.attachSound("sPlayerDeath", false); soundBoard.attachSound("sDeath1", false); soundBoard.attachSound("sDeath2", false); soundBoard.attachSound("sDeath3", false); soundBoard.attachSound("sGore1", false); soundBoard.attachSound("sGore2", false); soundBoard.attachSound("sGore3", false); soundBoard.attachSound("sGore4", false); soundBoard.attachSound("sGore5", false); soundBoard.attachSound("sFlame", false); soundBoard.attachSound("sThrow", false); soundBoard.attachSound("sPickup", false); soundBoard.attachSound("sDodge", false); soundBoard.attachSound("sFall", false); soundBoard.attachSound("sBike", false); soundBoard.attachSound("sMusic", true); soundBoard.attachSound("sCheatsville", true); soundBoard.attachSound("sChechnya", true); soundBoard.attachSound("sKorea", true); soundBoard.attachSound("sIraq", true); soundBoard.attachSound("sGameOver", true); soundBoardTransform = new SoundBoardTransform(soundBoard); musicBoard = new MusicBoard(soundBoard, soundBoardTransform, true); gameStatistics = new GameStatistics(); gameStatistics.grenades = Number.POSITIVE_INFINITY; musicBoard.start("sMusic", 20, 100); paused = false; gameManager = new GameManager(this, levels[0], gameStatistics, true); fps = new FPS(parent); gameManager.resume(); } function pauseButtonRelease() { if (gameManager.levelData.menu) { paused = false; pauseButton.gotoAndStop(1); return(undefined); } if (pauseButton._currentframe == 1) { pauseButton.nextFrame(); paused = true; gameManager.pause(); } else { pauseButton.prevFrame(); paused = false; gameManager.resume(); } } function soundButtonRelease() { if (soundButton._currentframe == 1) { soundButton.nextFrame(); soundBoard.setActive(false); musicBoard.setActive(false); } else { soundButton.prevFrame(); soundBoard.setActive(true); musicBoard.setActive(true); } } function buttonKeyDown() { if ((highscoreMC != null) || (gameManager.editor != null)) { return(undefined); } if (Key.isDown(80)) { pauseButtonRelease(); } if (Key.isDown(83)) { soundButtonRelease(); } } function addLevel(string) { levels.push(string); } function dispose() { gameManager.dispose(); } function mainMenu() { gameStatistics = new GameStatistics(); gameStatistics.grenades = Number.POSITIVE_INFINITY; changeLevel("Menu"); musicBoard.start("sMusic", 20, 100); } function newGame() { root.tracking(); gameStatistics = new GameStatistics(); backupGameStatistics = new GameStatistics(); currentLevel = 1; state = 0; nextLevel(); } function cont() { root.tracking(); gameStatistics = new GameStatistics(); backupGameStatistics = new GameStatistics(); state = 0; nextLevel(); } function cheat() { root.tracking(); gameStatistics = new GameStatistics(); backupGameStatistics = new GameStatistics(); currentLevel = 0; state = 0; nextLevel(); } function nextLevel() { var _local6 = "Level " + currentLevel; var _local2 = ""; musicBoard.start("s" + levelNames[currentLevel], 20, 100); if (state != 1) { _local6 = _local6 + " Brief"; if (state == 0) { _local2 = _local2 + (((("$100|35|textsprite|Level " + currentLevel) + ": ") + levelNames[currentLevel]) + "|210,25,0"); _local2 = _local2 + (("$66|135|textsprite|" + levelBriefs[currentLevel]) + "|270,270,1"); _local2 = _local2 + "$322|471|levelchanger|NextLevel$285|475|textsprite|Start|75,25,0"; gameStatistics.grenades = Number.POSITIVE_INFINITY; } else if (state == 2) { if (currentLevel > 0) { var _local4 = 100; if (gameStatistics.shots > 0) { _local4 = Math.floor((gameStatistics.hits / gameStatistics.shots) * 100); } gameStatistics.score = gameStatistics.score + (_local4 * 1000); gameStatistics.score = gameStatistics.score + (gameStatistics.lives * 1000); var _local5 = Math.max(0, 300000 - gameStatistics.time); gameStatistics.score = gameStatistics.score + _local5; var _local3 = ("You managed to destroy all of " + levelNames[currentLevel]) + "!"; _local3 = _local3 + (((("\n\nAccuracy: " + _local4) + "% - ") + (_local4 * 1000)) + " points!"); _local3 = _local3 + (((("\nLives: " + gameStatistics.lives) + " - ") + (gameStatistics.lives * 10000)) + " points!"); _local3 = _local3 + (((("\nTime: " + Math.ceil(gameStatistics.time / 1000)) + " seconds - ") + _local5) + " points!"); _local3 = _local3 + ("\n\nCurrent score: " + gameStatistics.score); _local3 = _local3 + "\nYou have been given 3 grenades and an extra life!"; _local2 = _local2 + (("$66|135|textsprite|" + _local3) + "|270,270,1"); gameStatistics.reset(); gameStatistics.lives++; gameStatistics.grenades = gameStatistics.grenades + 3; } else { var _local3 = ""; _local3 = _local3 + "When you cheat the terrorists win.\nCheating supports terrorism.\n"; _local3 = _local3 + (("You managed to destroy all of " + levelNames[currentLevel]) + ", I hope you are happy!"); _local3 = _local3 + "\n\nAnd you're not getting any bonus points you filthy terrist!"; _local2 = _local2 + (("$66|135|textsprite|" + _local3) + "|270,270,1"); } backupGameStatistics = gameStatistics.clone(); gameStatistics.grenades = Number.POSITIVE_INFINITY; if ((currentLevel + 1) > LEVELS) { _local2 = _local2 + (("$100|35|textsprite|Level " + currentLevel) + " Complete!|210,25,0"); _local2 = _local2 + "$322|471|levelchanger|Win$285|475|textsprite|Next|75,25,0"; } else { _local2 = _local2 + (("$100|35|textsprite|Level " + currentLevel) + " Complete!|210,25,0"); _local2 = _local2 + "$322|471|levelchanger|NextLevel$285|475|textsprite|Next|75,25,0"; } } _local2 = _local2 + "#1"; } else { gameStatistics = backupGameStatistics.clone(); } changeLevel(_local6, _local2); state++; if (state >= 3) { state = 0; currentLevel++; } } function gameOver() { musicBoard.start("sGameOver", 20, 100); var _local2 = ""; _local2 = _local2 + "$100|35|textsprite|Game Over|210,25,0"; var _local3 = ("Game Over...\n\nYour final score was " + gameStatistics.score) + "!\nSubmit your score and see how well you scored against other soldiers!"; _local2 = _local2 + (("$66|135|textsprite|" + _local3) + "|270,270,1"); _local2 = _local2 + "$75|471|levelchanger|Continue$35|475|textsprite|Continue|75,25,0"; _local2 = _local2 + "$322|471|levelchanger|HighScoreSubmit$285|475|textsprite|Submit Score|75,25,0"; _local2 = _local2 + "#1"; changeLevel("Game Over", _local2); } function win() { musicBoard.start("sGameOver", 20, 100); var _local2 = ""; _local2 = _local2 + "$100|35|textsprite|You Win!|210,25,0"; var _local3 = ("Congratulations!\n\nYou actually won! I can't believe it!\n\nYour final score was " + gameStatistics.score) + "!\nSubmit your score and see how well you scored against other soldiers!"; _local2 = _local2 + (("$66|135|textsprite|" + _local3) + "|270,270,1"); _local2 = _local2 + "$322|471|levelchanger|HighScoreSubmit$285|475|textsprite|Submit Score|75,25,0"; _local2 = _local2 + "#1"; changeLevel("Win", _local2); } function highscore(submit) { musicBoard.start("sMusic", 20, 100); var _local2 = ""; _local2 = _local2 + "$100|35|textsprite|High Scores|210,25,0"; if (submit) { if (((root.user_id == undefined) || (root.user_id == null)) || (root.user_id == "")) { sentScore = true; _local2 = _local2 + "$75|471|levelchanger|MainMenu$35|475|textsprite|Main Menu|75,25,0"; _local2 = _local2 + "$322|471|levelchanger|SendScore$285|475|textsprite|Submit Score|75,25,0"; _local2 = _local2 + "$0|88|mcsprite|highscore|"; _local2 = _local2 + "#1"; changeLevel("High Score Submit", _local2); } else { root.scoring(gameStatistics.score); highscore(false); } } else { _local2 = _local2 + "$322|471|levelchanger|MainMenu$285|475|textsprite|Main Menu|75,25,0"; _local2 = _local2 + "$0|88|mcsprite|highscoreview|"; _local2 = _local2 + "#1"; changeLevel("High Score", _local2); } } function sendScore() { if (sentScore) { sentScore = false; loadvars = new LoadVars(); loadvars.username = highscoreMC.inputname.text; loadvars.email = highscoreMC.inputemail.text; loadvars.password = highscoreMC.inputpassword.text; hsName = loadvars.username; hsEmail = loadvars.email; hsPassword = loadvars.password; loadvars.onLoad = DelegateExt.create(this, scoreSent); loadvars.sendAndLoad(HS_SEND_URL, loadvars, "POST"); highscoreMC.gotoAndStop("sending"); } } function scoreSent(success) { if (success) { if (loadvars.error == 0) { root.user_id = loadvars.user_id; highscore(true); } else { var _local2 = ""; _local2 = _local2 + "$100|35|textsprite|High Scores|210,25,0"; _local2 = _local2 + "$75|471|levelchanger|MainMenu$35|475|textsprite|Main Menu|75,25,0"; _local2 = _local2 + "$322|471|levelchanger|HighScoreSubmit$285|475|textsprite|Try Again|75,25,0"; var _local3 = ""; if (loadvars.error == 1) { _local3 = _local3 + "Please fill out the whole form."; } else if (loadvars.error == 2) { _local3 = _local3 + "That email address is already being used."; } else if (loadvars.username == 3) { _local3 = _local3 + "That username is taken."; } else { _local3 = _local3 + "There was an error sending your score."; } _local3 = _local3 + "\nPlease try again."; _local2 = _local2 + (("$66|135|textsprite|" + _local3) + "|270,270,1"); _local2 = _local2 + "#1"; changeLevel("High Score Submit", _local2); } } else { var _local2 = ""; _local2 = _local2 + "$100|35|textsprite|High Scores|210,25,0"; _local2 = _local2 + "$75|471|levelchanger|MainMenu$35|475|textsprite|Main Menu|75,25,0"; _local2 = _local2 + "$322|471|levelchanger|HighScoreSubmit$285|475|textsprite|Try Again|75,25,0"; var _local3 = "There was an error sending your score..."; _local2 = _local2 + (("$66|135|textsprite|" + _local3) + "|270,270,1"); _local2 = _local2 + "#1"; changeLevel("High Score Submit", _local2); } } function loadScores() { loadvars = new LoadVars(); loadvars.game_id = root.game_id; loadvars.onLoad = DelegateExt.create(this, scoresLoaded); loadvars.sendAndLoad(HS_GET_URL, loadvars, "POST"); } function scoresLoaded(success) { if (success) { var _local3 = "The following soldiers are the best in the business, and retired fat and wealthy.\n\n"; var _local2 = 0; while (_local2 < loadvars.scores) { if (loadvars["score" + _local2] == undefined) { break; } _local3 = _local3 + ((((((_local2 + 1) + ". ") + loadvars["score" + _local2]) + " - ") + loadvars["name" + _local2]) + newline); _local2++; } if (loadvars.userscore != undefined) { _local3 = _local3 + ("\nYour personal best: " + loadvars.userscore); } highscoreMC.display.text = _local3; highscoreMC.displayshadow.text = _local3; } else { var _local4 = "There was an error loading the scores..."; highscoreMC.display.text = _local4; highscoreMC.displayshadow.text = _local4; } } function createOverlay(bd) { var _local3 = parent.getNextHighestDepth(); var _local2 = parent.createEmptyMovieClip("bitmapOverlay", _local3); _local2.attachBitmap(bd, 0); timer = 0; return(_local2); } function createBitmap() { gameManager.clip._x = 0; gameManager.clip._y = 0; var _local2 = new flash.display.BitmapData(GameManager.SCREEN_WIDTH, GameManager.SCREEN_HEIGHT); _local2.draw(parent); return(_local2); } function changeLevel(level, addString) { if (paused) { pauseButtonRelease(); } pauseButton._visible = false; highscoreMC = null; if (addString == undefined) { addString = ""; } bitmap.dispose(); bitmap = createBitmap(); var _local3 = null; var _local2 = 0; while (_local2 < levels.length) { if (levels[_local2].indexOf(level) == 0) { _local3 = levels[_local2]; break; } _local2++; } if (_local3 != null) { _local3 = _local3 + addString; gameManager.pause(); gameManager.dispose(); gameManager = new GameManager(this, _local3, gameStatistics); } else { trace("Could not load level"); } overlay.removeMovieClip(""); overlay = createOverlay(bitmap); timer = getTimer(); counter = 0; alpha = 0; parent.onEnterFrame = DelegateExt.create(this, load); } function load() { var _local2 = getTimer() - timer; timer = getTimer(); counter = counter + _local2; while (counter > 75) { bitmap.applyFilter(bitmap, bitmap.rectangle, new flash.geom.Point(0, 0), new flash.filters.BlurFilter(2, 2, 2)); counter = counter - 75; } alpha = alpha + _local2; if (alpha > 300) { overlay._alpha = overlay._alpha - (50 * (_local2 / 1000)); if (overlay._alpha <= 0) { overlay.removeMovieClip(""); if (!paused) { gameManager.resume(); } delete parent.onEnterFrame; } } } static var HS_SEND_URL = "http://www.gamegarage.co.uk/scripts/register.php"; static var HS_GET_URL = "http://www.gamegarage.co.uk/scripts/highscores.php"; static var LEVELS = 3; }
Symbol 140 MovieClip [__Packages.GameManager] Frame 0
class GameManager { var commando, soundBoard, parent, clip, bitmapManager, levelData, screenScroller, underGame, game, bulletsClip, editor, gameStatistics, entities, movingEntities, collisionEntities, bullets, sortEntities, player, timer, minMs, shake, lastEntity, hud, boss, bossAdd, detail, nextDetail; function GameManager (c, levelString, gs, noPlayer) { commando = c; soundBoard = commando.soundBoard; parent = commando.parent; var _local2 = parent.getNextHighestDepth(); clip = parent.createEmptyMovieClip("gameManager" + _local2, _local2); bitmapManager = new BitmapManager(); levelData = LevelData.fromString(this, levelString); screenScroller = new ScreenScroller(clip, levelData); underGame = screenScroller.clip; _local2 = clip.getNextHighestDepth(); game = clip.createEmptyMovieClip("game" + _local2, _local2); _local2 = clip.getNextHighestDepth(); bulletsClip = clip.createEmptyMovieClip("bulletsClip" + _local2, _local2); editor = null; gameStatistics = gs; init(noPlayer); } function init(noPlayer) { entities = new Object(); movingEntities = new Object(); collisionEntities = new Object(); bullets = new Object(); sortEntities = new Object(); screenScroller.y = 0; game._y = screenScroller.y; bulletsClip._y = screenScroller.y; screenScroller.scroll(); screenScroller.update(); if (noPlayer != true) { player = new Player(game, this, new Circle(SCREEN_WIDTH / 2, SCREEN_HEIGHT - 40, 20)); player.update(0, 0); } timer = getTimer(); minMs = Math.floor(1000 / FRAME_RATE); shake = 0; lastEntity = -1; if (!levelData.menu) { hud = new HUD(clip, this); commando.pauseButton._visible = true; } scrollEntities(); var _local4 = new Array(); for (var _local6 in entities) { var _local3 = entities[_local6]; _local3.drawClip(); if (_local3.getSortDepth() != Number.POSITIVE_INFINITY) { _local4.push(_local3); } } var _local5 = game.getNextHighestDepth(); _local4.sort(depthSort); var _local2 = 0; while (_local2 < _local4.length) { _local4[_local2].clip.swapDepths(_local5 + _local2); _local2++; } if (editor != null) { editor.dispose(); editor = null; resume(); } boss = false; bossAdd = 0; detail = 2; nextDetail = 0; } function dispose() { clip.removeMovieClip(""); game.removeMovieClip(""); bulletsClip.removeMovieClip(""); levelData = null; bitmapManager = null; screenScroller = null; player = null; entities = null; collisionEntities = null; movingEntities = null; bullets = null; } function resume() { timer = getTimer(); clip.onEnterFrame = DelegateExt.create(this, enterFrame); } function pause() { delete clip.onEnterFrame; } function addMovingEntity(entity) { movingEntities[entity] = entity; addCollisionEntity(entity); } function addCollisionEntity(entity) { collisionEntities[entity] = entity; addEntity(entity); } function addEntity(entity) { entities[entity] = entity; } function removeMovingEntity(entity) { delete movingEntities[entity]; removeCollisionEntity(entity); } function removeCollisionEntity(entity) { delete collisionEntities[entity]; removeEntity(entity); } function removeEntity(entity) { delete entities[entity]; } function createBullet(x, y, xs, ys, d, pa, linkage, explosive) { if (linkage == undefined) { linkage = "bullet"; } if (explosive == undefined) { explosive = false; } var _local2 = new Bullet(bulletsClip, this, bitmapManager.getBitmap(linkage), new Circle(x, y, 2), xs, ys, d, pa, explosive); addBullet(_local2); return(_local2); } function createEnemyBullet(x, y, xs, ys, d, pa, linkage, explosive) { if (linkage == undefined) { linkage = "enemyBullet"; } if (explosive == undefined) { explosive = false; } var _local2 = new Bullet(bulletsClip, this, bitmapManager.getBitmap(linkage), new Circle(x, y, 2), xs, ys, d, pa, explosive); addBullet(_local2); return(_local2); } function addBullet(entity) { bullets[entity] = entity; addEntity(entity); } function removeBullet(entity) { delete bullets[entity]; removeEntity(entity); } function addSort(entity) { sortEntities[entity] = entity; } function removeSort(entity) { delete sortEntities[entity]; } function collision(e1, e2, addMass) { if (e1 == e2) { return(false); } if (e1 instanceof ICircleCollision) { if (e2 instanceof ICircleCollision) { return(ccCollision(e1, e2, addMass)); } return(csCollision(e1, e2, addMass)); } if (e2 instanceof ICircleCollision) { return(csCollision(e2, e1, addMass)); } return(ssCollision(e1, e2, addMass)); } function ccCollision(e1, e2, addMass) { var _local2 = e1.getCircle(); var _local1 = e2.getCircle(); var _local7 = _local2.x - _local1.x; var _local6 = _local2.y - _local1.y; var _local9 = (_local7 * _local7) + (_local6 * _local6); var _local4 = _local2.radius + _local1.radius; var _local14 = _local4 * _local4; if (_local9 < _local14) { if (addMass == true) { return(true); } var _local8 = Math.sqrt(_local9); var _local3 = Math.abs(_local8 - _local4); var _local5 = e1.getMass() + e2.getMass(); if (_local5 == 0) { return(true); } var _local13 = e1.getMass() / _local5; var _local12 = e2.getMass() / _local5; var _local11 = _local7 / _local8; var _local10 = _local6 / _local8; _local2.x = _local2.x + ((_local11 * _local3) * _local13); _local2.y = _local2.y + ((_local10 * _local3) * _local13); _local1.x = _local1.x - ((_local11 * _local3) * _local12); _local1.y = _local1.y - ((_local10 * _local3) * _local12); return(true); } return(false); } function csCollision(e1, e2, addMass) { var _local2 = e1.getCircle(); var _local1 = e2.getRectangle(); var _local4 = _local2.x; var _local3 = _local2.y; if (_local4 < _local1.x) { _local4 = _local1.x; } if (_local4 > (_local1.x + _local1.width)) { _local4 = _local1.x + _local1.width; } if (_local3 < _local1.y) { _local3 = _local1.y; } if (_local3 > (_local1.y + _local1.height)) { _local3 = _local1.y + _local1.height; } var _local9 = _local2.x - _local4; var _local8 = _local2.y - _local3; var _local10 = (_local9 * _local9) + (_local8 * _local8); if (_local10 < (_local2.radius * _local2.radius)) { if (addMass) { return(true); } var _local6 = Math.sqrt(_local10); if (_local6 == 0) { _local2.y = (_local1.y + _local1.height) + _local2.radius; return(true); } var _local5 = Math.abs(_local6 - _local2.radius); var _local7 = e1.getMass() + e2.getMass(); if (_local7 == 0) { return(true); } var _local14 = e1.getMass() / _local7; var _local13 = e2.getMass() / _local7; var _local12 = _local9 / _local6; var _local11 = _local8 / _local6; _local2.x = _local2.x + ((_local12 * _local5) * _local14); _local2.y = _local2.y + ((_local11 * _local5) * _local14); _local1.x = _local1.x - ((_local12 * _local5) * _local13); _local1.y = _local1.y - ((_local11 * _local5) * _local13); return(true); } return(false); } function ssCollision(e1, e2, addMass) { var _local3 = e1.getRectangle(); var _local2 = e2.getRectangle(); if (_local3.intersects(_local2)) { if (addMass) { return(true); } var _local4 = e1.getMass() + e2.getMass(); if (_local4 == 0) { return(true); } var _local1 = _local3.intersection(_local2); var _local8 = e1.getMass() / _local4; var _local7 = e2.getMass() / _local4; var _local6 = 0; var _local5 = 0; if (_local1.height < _local1.width) { _local5 = _local1.height; } else { _local6 = _local1.width; } _local3.x = _local3.x + (_local6 * _local8); _local3.y = _local3.y + (_local5 * _local8); _local2.x = _local2.x - (_local6 * _local7); _local2.y = _local2.y - (_local5 * _local7); return(true); } return(false); } function depthSort(a, b) { var _local2 = a.getSortDepth(); var _local1 = b.getSortDepth(); if (_local2 < _local1) { return(-1); } if (_local2 > _local1) { return(1); } return(0); } function setShake(s) { if (shake < s) { shake = s; } } function scrollEntities() { var _local4 = Math.floor((screenScroller.y + levelData.screenHeight) / levelData.entitiesLength) + 1; if (_local4 > lastEntity) { var _local3 = lastEntity; while (_local3 < _local4) { var _local2 = 0; while (_local2 < levelData.entities[_local3].length) { levelData.entities[_local3][_local2].createEntity(this); _local2++; } _local3++; } lastEntity = _local4; } } function enterFrame() { detail = 8 - Math.ceil(commando.fps.percentage * 8); var _local9 = getTimer() - timer; timer = getTimer(); gameStatistics.time = gameStatistics.time + _local9; if (_local9 > minMs) { _local9 = minMs; } var _local8 = _local9 / 1000; var _local7 = new Array(); for (var _local10 in entities) { var _local3 = entities[_local10]; if (_local3.update(_local9, _local8) || (boss)) { if (_local3 == player) { var _local5 = (-player.getCircle().y) + (SCREEN_HEIGHT * 0.75); if (boss) { bossAdd = bossAdd + (10 * _local8); if (bossAdd > 1) { if (_local5 < (screenScroller.y + bossAdd)) { _local5 = screenScroller.y + bossAdd; } bossAdd = 0; } } if (_local5 > screenScroller.y) { screenScroller.y = _local5; if (screenScroller.y < 0) { screenScroller.y = 0; } if (screenScroller.y > ((screenScroller.levelData.height * screenScroller.levelData.tileHeight) - SCREEN_HEIGHT)) { screenScroller.y = (screenScroller.levelData.height * screenScroller.levelData.tileHeight) - SCREEN_HEIGHT; boss = false; } screenScroller.y = Math.ceil(screenScroller.y); game._y = screenScroller.y; bulletsClip._y = screenScroller.y; screenScroller.scroll(); screenScroller.update(); scrollEntities(); } } } if (_local3.getSortDepth() != Number.POSITIVE_INFINITY) { _local7.push(_local3); } } shake = shake - (20 * _local8); if (shake < 0) { shake = 0; } clip._x = (-random(shake)) + random(shake); clip._y = (-random(shake)) + random(shake); for (var _local12 in movingEntities) { var _local2 = movingEntities[_local12]; for (var _local10 in collisionEntities) { var _local3 = collisionEntities[_local10]; if (_local3.getMass() == -1) { continue; } if (_local3 != _local2) { if (collision(_local2, _local3)) { _local3.drawClip(); _local2.drawClip(); if ((_local3 instanceof ITarget) && (_local2 instanceof IBullet)) { if (_local3.hit(_local2)) { _local2.hitTarget(_local3); } } } } } } for (var _local12 in bullets) { var _local4 = bullets[_local12]; for (var _local10 in collisionEntities) { var _local3 = collisionEntities[_local10]; if (_local3 instanceof ITarget) { if (collision(_local4, _local3, true)) { if (_local3.hit(_local4)) { _local4.hitTarget(_local3); } } } } } var _local11 = game.getNextHighestDepth(); _local7.sort(depthSort); var _local6 = 0; while (_local6 < _local7.length) { _local7[_local6].clip.swapDepths(_local11 + _local6); _local6++; } hud.frame(_local9); } static var SCREEN_WIDTH = 400; static var SCREEN_HEIGHT = 600; static var FRAME_RATE = 32; var but = true; }
Symbol 141 MovieClip [__Packages.GameStatistics] Frame 0
class GameStatistics { static var weapons; var score, weapon, lives, grenades, ammo, time, shots, hits; function GameStatistics () { if (weapons == undefined) { weapons = new Array(); weapons[machinegun] = new Weapon(250, 1, 500); weapons[shotgun] = new Weapon(500, 2, 400); weapons[rocketlauncher] = new Weapon(750, 10, 250); weapons[flamethrower] = new Weapon(50, 25, 0); weapons[grenade] = new Weapon(0, 5, 250); } score = 0; weapon = machinegun; lives = 3; grenades = 3; ammo = -1; reset(); } function reset() { time = (shots = (hits = 0)); } function update() { } function clone() { var _local2 = new GameStatistics(); _local2.score = score; _local2.weapon = weapon; _local2.ammo = ammo; _local2.lives = lives; _local2.grenades = grenades; return(_local2); } static var machinegun = 0; static var shotgun = 1; static var rocketlauncher = 2; static var flamethrower = 3; static var grenade = 4; static var life = 5; static var bonus = 6; }
Symbol 142 MovieClip [__Packages.Weapon] Frame 0
class Weapon { var wait, damage, speed; function Weapon (w, d, s) { wait = w; damage = d; speed = s; } }
Symbol 143 MovieClip [__Packages.LevelData] Frame 0
class LevelData { var name, width, height, tileWidth, tileHeight, data, tileSheet, tileSheetName, screenWidth, screenHeight, screenTileWidth, screenTileHeight, entitiesLength, entitiesAll, menu, entities; function LevelData (gm, n, sw, sh, w, h, tw, th, d, ts, el, ea, m) { name = n; width = w; height = h; tileWidth = tw; tileHeight = th; data = d; tileSheet = gm.bitmapManager.getBitmap(ts); tileSheetName = ts; screenWidth = sw; screenHeight = sh; screenTileWidth = sw / tw; screenTileHeight = sh / th; entitiesLength = el; entitiesAll = ea; menu = m; generateEntities(gm); } function generateEntities(gm) { entities = new Array(); var _local3 = 0; while (_local3 < entitiesAll.length) { var _local4; var _local2 = entitiesAll[_local3]; _local4 = Math.floor((-((_local2.y - screenHeight) + _local2.getHeight(gm))) / entitiesLength); if (entities[_local4] == undefined) { entities[_local4] = new Array(); } entities[_local4].push(_local2); _local3++; } } function toString() { return((((((((((((((((((((((("" + name) + "#") + screenWidth) + "#") + screenHeight) + "#") + width) + "#") + height) + "#") + tileWidth) + "#") + tileHeight) + "#") + CompressArray.compress(data)) + "#") + tileSheetName) + "#") + entitiesLength) + "#") + entitiesAll.join("$")) + "#") + (menu ? 1 : 0)); } static function fromString(gm, s) { var _local3 = s.split("#"); var _local5 = CompressArray.uncompress(_local3[7]); var _local2 = _local3[10].split("$"); var _local1 = 0; while (_local1 < _local2.length) { _local2[_local1] = EntityDef.fromString(_local2[_local1]); _local1++; } var _local4 = false; if (Number(_local3[11]) == 1) { _local4 = true; } return(new LevelData(gm, _local3[0], Number(_local3[1]), Number(_local3[2]), Number(_local3[3]), Number(_local3[4]), Number(_local3[5]), Number(_local3[6]), _local5, _local3[8], Number(_local3[9]), _local2, _local4)); } }
Symbol 144 MovieClip [__Packages.EntityDef] Frame 0
class EntityDef { var x, y, entity, entityData, entityNumbers; function EntityDef (x, y, entity, entityData, entityNumbers) { this.x = x; this.y = y; this.entity = entity.toLowerCase(); this.entityData = entityData; this.entityNumbers = entityNumbers; } function clone() { return(new EntityDef(x, y, entity, entityData, entityNumbers)); } function toString() { var _local2 = ((((("" + x) + "|") + y) + "|") + entity) + "|"; if (entityData != undefined) { _local2 = _local2 + (entityData.split(newline).join("/n") + "|"); } else { _local2 = _local2 + "|"; } if (entityNumbers != undefined) { _local2 = _local2 + entityNumbers.join(","); } return(_local2); } static function fromString(s) { var _local3 = s.split("|"); var _local2 = null; if (_local3[4] != "") { _local2 = _local3[4].split(","); var _local1 = 0; while (_local1 < _local2.length) { _local2[_local1] = Number(_local2[_local1]); _local1++; } } var _local4 = _local3[3]; _local4 = _local4.split("/n").join(newline); return(new EntityDef(Number(_local3[0]), Number(_local3[1]), _local3[2], _local4, _local2)); } function getHeight(gameManager) { if (entity == "jeep") { return(192); } if (entity == "sprite") { return(gameManager.bitmapManager.getBitmap(entityData).height); } if (entity == "sheetsprite") { return(SheetManager.get(entityData).height); } if ((((entity == "barrier") || (entity == "building")) || (entity == "graphicbarrier")) || (entity == "tilesprite")) { if (entity == "barrier") { return(entityNumbers[1]); } if (entity == "building") { return((CompressArray.uncompress(entityData).length - entityNumbers[0]) * 40); } return(CompressArray.uncompress(entityData).length * 40); } if (entity == "levelchanger") { return(SheetManager.get("tablet2").height); } if (entity == "boss2") { return(180); } if (entity == "boss1") { return(100); } if (entity == "boss3") { return(330); } return(20); } function createEntity(gameManager, editor) { if (entity == "barrel") { return(new Barrel(gameManager.game, gameManager, new Circle(x, y, 12))); } if (entity == "building") { return(new Building(gameManager.game, gameManager, x, y, entityNumbers[0], CompressArray.uncompress(entityData))); } if (entity == "barrier") { return(new Barrier(gameManager.game, gameManager, x, y, entityNumbers[0], entityNumbers[1])); } if (entity == "graphicbarrier") { if (editor) { return(new GraphicBarrier(gameManager.game, gameManager, x, y, CompressArray.uncompress(entityData))); } return(new GraphicBarrier(gameManager.underGame, gameManager, x, y, CompressArray.uncompress(entityData))); } if (entity == "sprite") { if (entityNumbers[0] == 1) { return(new Sprite(gameManager.bulletsClip, gameManager, gameManager.bitmapManager.getBitmap(entityData), x, y)); } return(new Sprite(gameManager.game, gameManager, gameManager.bitmapManager.getBitmap(entityData), x, y)); } if (entity == "sheetsprite") { if (entityNumbers[0] == 1) { return(new SheetSprite(gameManager.bulletsClip, gameManager, x, y, entityData)); } return(new SheetSprite(gameManager.game, gameManager, x, y, entityData)); } if (entity == "tilesprite") { if (entityNumbers[0] == 1) { return(new TileSprite(gameManager.bulletsClip, gameManager, x, y, CompressArray.uncompress(entityData), entityNumbers[1])); } return(new TileSprite(gameManager.game, gameManager, x, y, CompressArray.uncompress(entityData), entityNumbers[1])); } if (entity == "collisionobject") { return(new CollisionObject(gameManager.game, gameManager, x, y, entityData)); } if (entity == "tilecollisionobject") { return(new TileCollisionObject(gameManager.game, gameManager, x, y, CompressArray.uncompress(entityData), new Circle(entityNumbers[0], entityNumbers[1], entityNumbers[2]))); } if (entity == "enemy") { if (entityNumbers[0] == 1) { return(new Enemy(gameManager.game, gameManager, new Circle(x, y, 20), true)); } return(new Enemy(gameManager.game, gameManager, new Circle(x, y, 20), false)); } if (entity == "shooter") { return(new Shooter(gameManager.game, gameManager, new Circle(x, y, 20))); } if (entity == "sniper") { return(new Sniper(gameManager.game, gameManager, new Circle(x, y, 20))); } if (entity == "jeep") { return(new Jeep(gameManager.game, gameManager, x, y)); } if (entity == "boss1") { return(new Boss1(gameManager.game, gameManager, new Circle(x, y, 25))); } if (entity == "boss2") { return(new Boss2(gameManager.game, gameManager, x, y)); } if (entity == "boss3") { return(new Boss3(gameManager.game, gameManager, x, y)); } if (entity == "powerup") { return(new Powerup(gameManager.game, gameManager, x, y, entityNumbers[0], entityNumbers[1])); } if (entity == "levelchanger") { return(new LevelChanger(gameManager.game, gameManager, x, y, entityData)); } if (entity == "fallingobject") { return(new FallingObject(gameManager.game, gameManager, x, y, entityNumbers[0])); } if (entity == "soldiertitle") { return(new SoldierTitle(gameManager.game, gameManager, x, y)); } if (entity == "mcsprite") { return(new MCSprite(gameManager.game, gameManager, x, y, entityData)); } if (entity == "textsprite") { return(new TextSprite(gameManager.game, gameManager, x, y, entityData, entityNumbers[0], entityNumbers[1], entityNumbers[2])); } if (entity == "bike") { return(new Bike(gameManager.game, gameManager, x, y)); } if (entity == "introobject") { return(new IntroObject(gameManager.game, gameManager, x, y, entityData, entityNumbers)); } return(null); } }
Symbol 145 MovieClip [__Packages.SheetManager] Frame 0
class SheetManager { static var images; function SheetManager () { } static function init() { images = new Array(); var _local1 = flash.display.BitmapData.loadBitmap("sheetEntities"); grab(_local1, "treeleft", 0, 0, 110, 130); grab(_local1, "treeright", 120, 0, 120, 130); grab(_local1, "bush", 240, 0, 80, 80); grab(_local1, "rock1", 320, 0, 80, 80); grab(_local1, "rock2", 240, 80, 80, 80); grab(_local1, "rock3", 320, 80, 80, 80); grab(_local1, "well", 400, 0, 120, 160); grab(_local1, "stump", 240, 160, 80, 80); grab(_local1, "cactus", 320, 160, 80, 80); grab(_local1, "tree1", 400, 160, 80, 120); grab(_local1, "tree2", 400, 280, 80, 80); grab(_local1, "cone1", 0, 160, 80, 80); grab(_local1, "cone2", 80, 160, 80, 80); grab(_local1, "light1", 0, 240, 80, 80); grab(_local1, "light2", 80, 240, 80, 80); grab(_local1, "pole1", 160, 160, 80, 80); grab(_local1, "pole2", 160, 240, 80, 80); grab(_local1, "tablet1", 0, 320, 280, 120); grab(_local1, "tablet2", 280, 320, 120, 120); } static function grab(bitmap, name, x, y, w, h) { var _local1 = new flash.display.BitmapData(w, h, true, 0); _local1.copyPixels(bitmap, new flash.geom.Rectangle(x, y, w, h), new flash.geom.Point(0, 0), null, null, true); images[name] = _local1; } static function get(name) { if (images == undefined) { init(); } return(images[name]); } }
Symbol 146 MovieClip [__Packages.CompressArray] Frame 0
class CompressArray { function CompressArray () { } static function uncompress(str) { var _local6 = new Array(); var _local8 = str.split(","); var _local7 = _local8[0]; var _local11 = _local8[1]; _local8.splice(0, 2); var _local4; var _local10; var _local5 = 0; while (_local5 < _local8.length) { _local4 = int(_local8[_local5]); if (_local4 < 0) { _local4 = (_local4 * -1) - 1; _local10 = int(_local8[_local5 + 1]); var _local3 = 0; while (_local3 < _local4) { _local6.push(_local10); _local3++; } } else { _local6.push(_local4); } _local5++; } var _local9 = new Array(); var _local2 = 0; while (_local2 < _local11) { _local9[_local2] = new Array(); var _local1 = 0; while (_local1 < _local7) { _local9[_local2][_local1] = _local6[(_local2 * _local7) + _local1]; _local1++; } _local2++; } return(_local9); } static function compress(arr) { var _local6 = new Array(); var _local3 = 0; while (_local3 < arr.length) { var _local1 = 0; while (_local1 < arr[_local3].length) { _local6.push(arr[_local3][_local1]); _local1++; } _local3++; } var _local8 = _local6[0]; var _local4 = 0; var _local9 = new Array(); var _local5 = 0; while (_local5 < (_local6.length + 1)) { if (_local6[_local5] == _local8) { _local4++; } else { if (_local4 < MIN_RUN) { var _local2 = 0; while (_local2 < _local4) { _local9.push(_local8); _local2++; } } else { _local9.push(-_local4); _local9.push(_local8); } _local4 = 1; _local8 = _local6[_local5]; } _local5++; } return((((arr[0].length + ",") + arr.length) + ",") + _local9.join(",")); } static var MIN_RUN = 3; }
Symbol 147 MovieClip [__Packages.IEntity] Frame 0
interface IEntity { }
Symbol 148 MovieClip [__Packages.ICircleCollision] Frame 0
interface ICircleCollision { }
Symbol 149 MovieClip [__Packages.Circle] Frame 0
class Circle { var x, y, radius, radius2; function Circle (x, y, r) { this.x = x; this.y = y; radius = r; radius2 = r * r; } function toString() { return(((((("<" + x) + ",") + y) + " ") + radius) + ">"); } }
Symbol 150 MovieClip [__Packages.ITarget] Frame 0
interface ITarget { }
Symbol 151 MovieClip [__Packages.IBullet] Frame 0
interface IBullet { }
Symbol 152 MovieClip [__Packages.Barrel] Frame 0
class Barrel implements IEntity, ICircleCollision, ITarget { var name, clip, gameManager, bitmapData, circle, health; function Barrel (p, gm, c) { name = "Barrel" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("barrel"); clip.attachBitmap(bitmapData, 0); circle = c; drawClip(); health = 1; gameManager.addMovingEntity(this); } function dispose() { gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - (bitmapData.width / 2); clip._y = circle.y - (bitmapData.height / 2); } function update(ms, msp) { if ((circle.x - circle.radius) < 0) { circle.x = circle.radius; } if ((circle.x + circle.radius) > gameManager.levelData.screenWidth) { circle.x = gameManager.levelData.screenWidth - circle.radius; } if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } return(false); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { return(1); } function hit(bullet) { if (bullet.getParent() == gameManager.player) { health = health - bullet.getDamage(); if (health <= 0) { if (!gameManager.levelData.menu) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 250; gameManager.hud.update(); } var _local2 = 0; while (_local2 < 3) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", circle.x, circle.y, 300 + random(300), 0.95); _local2++; } new Explosion(gameManager.bulletsClip, gameManager, new Circle(circle.x, circle.y, 80), 5, true); dispose(); } } return(true); } static var index = 0; }
Symbol 153 MovieClip [__Packages.AnimatedParticle] Frame 0
class AnimatedParticle implements IEntity { var name, clip, gameManager, frames, x, y, xspeed, yspeed, friction, timer, frame; function AnimatedParticle (p, gm, linkage, dx, dy, speed, f) { if (gm.nextDetail < gm.detail) { gm.nextDetail++; return; } gm.nextDetail = 0; name = "AnimatedParticle" + (index++); var _local4 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local4); gameManager = gm; if (linkage == "shrapnel") { frames = TileSheet.create(gameManager.bitmapManager.getBitmap(linkage), 8, 8); } setFrame(0); var _local3 = Math.random() * (Math.PI*2); x = dx; y = dy; xspeed = speed * Math.cos(_local3); yspeed = speed * Math.sin(_local3); friction = f; drawClip(); gameManager.addEntity(this); timer = 0; } function setFrame(frame) { clip.attachBitmap(frames[frame], 0); } function drawClip() { clip._x = x; clip._y = y; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { x = x + (xspeed * msp); y = y + (yspeed * msp); drawClip(); if ((Math.abs(xspeed) < 5) && (Math.abs(yspeed) < 5)) { gameManager.screenScroller.drawBitmap(frames[frame], x + (frames[frame].width / 2), y + (frames[frame].height / 2)); dispose(); } timer = timer + ms; if (timer > 50) { frame++; if (frame >= frames.length) { frame = 0; } setFrame(frame); xspeed = xspeed * friction; yspeed = yspeed * friction; timer = timer - 50; } if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } static var index = 0; }
Symbol 154 MovieClip [__Packages.TileSheet] Frame 0
class TileSheet { static var bitmapDatas, frames; function TileSheet () { } static function create(bitmapData, width, height) { if (bitmapDatas == undefined) { bitmapDatas = new Array(); frames = new Array(); } var _local5 = 0; while (_local5 < bitmapDatas.length) { if (bitmapDatas[_local5] == bitmapData) { return(frames[_local5]); } _local5++; } var _local8 = new Array(); var _local6 = 0; while (_local6 < bitmapData.height) { var _local1 = 0; while (_local1 < bitmapData.width) { var _local2 = new flash.display.BitmapData(width, height, true, 0); _local2.copyPixels(bitmapData, new flash.geom.Rectangle(_local1, _local6, width, height), new flash.geom.Point(0, 0), null, null, true); _local8.push(_local2); _local1 = _local1 + width; } _local6 = _local6 + height; } bitmapDatas.push(bitmapData); frames.push(_local8); return(_local8); } }
Symbol 155 MovieClip [__Packages.Explosion] Frame 0
class Explosion implements IEntity, ICircleCollision, IBullet { var name, clip, gameManager, visible, frames, frame, circle, damage, doneDamage, timer; function Explosion (p, gm, c, da, scorch, v, t) { name = "Explosion" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; if (v == undefined) { visible = true; } else { visible = v; } if (visible) { if ((t == undefined) || (t == true)) { frames = TileSheet.create(gameManager.bitmapManager.getBitmap("explosion"), 64, 128); if (random(100) > 50) { gameManager.soundBoard.start("sLargeExplosionShort"); } else { gameManager.soundBoard.start("sMediumExplosionLong"); } } else { frames = TileSheet.create(gameManager.bitmapManager.getBitmap("explosionsmall"), 64, 64); if (random(100) > 50) { gameManager.soundBoard.start("sSmallExplosionShort"); } else { gameManager.soundBoard.start("sSmallExplosionLong"); } } frame = 0; setFrame(frame); } circle = c; clip._x = circle.x - (frames[0].width / 2); if ((t == undefined) || (t == true)) { clip._y = circle.y - (frames[0].height * 0.75); } else { clip._y = circle.y - (frames[0].height * 0.5); } damage = da; doneDamage = false; timer = 0; if (scorch == true) { gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), circle.x, circle.y); } gameManager.setShake(Math.max(7.5, damage / 5)); gameManager.addBullet(this); } function setFrame(frame) { clip.attachBitmap(frames[frame], 0); } function dispose() { gameManager.removeBullet(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { timer = timer + ms; if (!visible) { if (doneDamage || (timer > 200)) { dispose(); } return(undefined); } while (timer > 75) { doneDamage = true; frame++; if (frame >= frames.length) { dispose(); return(false); } setFrame(frame); timer = timer - 75; } if (doneDamage) { damage = 0; } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getCircle() { return(circle); } function getMass() { return(1); } function getDamage() { doneDamage = true; return(damage); } function getParent() { return(gameManager.player); } function hitTarget(entity) { } static var index = 0; }
Symbol 156 MovieClip [__Packages.IRectangleCollision] Frame 0
interface IRectangleCollision { }
Symbol 157 MovieClip [__Packages.Building] Frame 0
class Building implements IEntity, IRectangleCollision, ITarget { var name, clip, gameManager, height, bitmapData, rectangle, health, dead, clipRectangle, toggle, sound; function Building (p, gm, x, y, h, creationArray) { name = "Building" + (index++); var _local7 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local7); gameManager = gm; var _local6 = gameManager.levelData.tileWidth; var _local5 = gameManager.levelData.tileHeight; height = h * _local5; bitmapData = new flash.display.BitmapData(creationArray[0].length * _local6, creationArray.length * _local5, true, 0); var _local3 = 0; while (_local3 < creationArray.length) { var _local2 = 0; while (_local2 < creationArray[0].length) { bitmapData.copyPixels(gameManager.levelData.tileSheet, gameManager.screenScroller.tiles[creationArray[_local3][_local2]], new flash.geom.Point(_local2 * _local6, _local3 * _local5), null, null, true); _local2++; } _local3++; } clip.attachBitmap(bitmapData, 0); rectangle = new flash.geom.Rectangle(x, y, creationArray[0].length * _local6, (creationArray.length * _local5) - height); health = 5; dead = false; timer = 0; clipRectangle = new flash.geom.Rectangle(0, 0, bitmapData.width, bitmapData.height); clip.scrollRect = clipRectangle; drawClip(); gameManager.addCollisionEntity(this); toggle = true; sound = false; } function dispose() { bitmapData.dispose(); gameManager.removeCollisionEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = rectangle.x; clip._y = rectangle.y - height; } function update(ms, msp) { if ((rectangle.y - height) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } if (dead) { timer = timer + ms; while (timer > 250) { if (!sound) { gameManager.soundBoard.start("sLargeExplosionLong"); } if (random(100) > 50) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosion", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height)); } else { gameManager.soundBoard.start("sSmallExplosionShort"); new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosionsmall", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height)); } if (toggle) { var _local2 = 0; while (_local2 < 2) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local2++; } } gameManager.setShake(7.5); toggle = !toggle; timer = timer - 250; } height = height - (40 * msp); clipRectangle.height = clipRectangle.height - (40 * msp); if (clipRectangle.height < rectangle.height) { clipRectangle.height = rectangle.height; new Explosion(gameManager.bulletsClip, gameManager, new Circle(rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2), rectangle.height * 0.6), 5, true); dispose(); return(false); } clip.scrollRect = clipRectangle; drawClip(); } return(false); } function getSortDepth() { return(rectangle.y + rectangle.height); } function getRectangle() { return(rectangle); } function getMass() { return(0); } function hit(bullet) { if (!dead) { if (bullet.getParent() == gameManager.player) { if (bullet.getDamage() > 1) { health = health - bullet.getDamage(); if (health <= 0) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 500; gameManager.hud.update(); new Explosion(gameManager.bulletsClip, gameManager, new Circle(rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2), rectangle.width * 0.6), 5, true); dead = true; } } } } return(true); } static var index = 0; var timer = 0; }
Symbol 158 MovieClip [__Packages.AnimatedSprite] Frame 0
class AnimatedSprite implements IEntity { var name, clip, gameManager, frames, timerTime, frame, timer; function AnimatedSprite (p, gm, linkage, dx, dy) { if (gm.nextDetail < gm.detail) { gm.nextDetail++; return; } gm.nextDetail = 0; name = "AnimatedSprite" + (index++); var _local4 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local4); gameManager = gm; if ((linkage == "bloodSpatter") || (linkage == "bulletSpark")) { frames = TileSheet.create(gameManager.bitmapManager.getBitmap(linkage), 40, 40); timerTime = 50; clip._x = dx - 20; clip._y = dy - 20; } else if (linkage == "explosion") { frames = TileSheet.create(gameManager.bitmapManager.getBitmap(linkage), 64, 128); timerTime = 75; clip._x = dx - 32; clip._y = dy - 96; } else if (linkage == "explosionsmall") { frames = TileSheet.create(gameManager.bitmapManager.getBitmap(linkage), 64, 64); timerTime = 75; clip._x = dx - 32; clip._y = dy - 32; } frame = 0; timer = 0; setFrame(frame); gameManager.addEntity(this); } function setFrame(frame) { clip.attachBitmap(frames[frame], 0); } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { timer = timer + ms; while (timer > timerTime) { frame++; if (frame >= frames.length) { dispose(); return(false); } setFrame(frame); timer = timer - timerTime; } return(false); } static var index = 0; }
Symbol 159 MovieClip [__Packages.Barrier] Frame 0
class Barrier implements IEntity, IRectangleCollision { var name, clip, gameManager, rectangle; function Barrier (p, gm, x, y, w, h) { name = "Barrier" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; var _local4 = gameManager.levelData.tileWidth; var _local3 = gameManager.levelData.tileHeight; rectangle = new flash.geom.Rectangle(x, y, w, h); drawClip(); gameManager.addCollisionEntity(this); } function dispose() { gameManager.removeCollisionEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = rectangle.x; clip._y = rectangle.y; } function update(ms, msp) { if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getRectangle() { return(rectangle); } function getMass() { return(0); } static var index = 0; }
Symbol 160 MovieClip [__Packages.GraphicBarrier] Frame 0
class GraphicBarrier implements IEntity, IRectangleCollision { var name, clip, gameManager, bitmapData, rectangle; function GraphicBarrier (p, gm, x, y, creationArray) { name = "GraphicBarrier" + (index++); var _local7 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local7); gameManager = gm; var _local6 = gameManager.levelData.tileWidth; var _local5 = gameManager.levelData.tileHeight; bitmapData = new flash.display.BitmapData(creationArray[0].length * _local6, creationArray.length * _local5, false); var _local3 = 0; while (_local3 < creationArray.length) { var _local2 = 0; while (_local2 < creationArray[0].length) { bitmapData.copyPixels(gameManager.levelData.tileSheet, gameManager.screenScroller.tiles[creationArray[_local3][_local2]], new flash.geom.Point(_local2 * _local6, _local3 * _local5), null, null, true); _local2++; } _local3++; } clip.attachBitmap(bitmapData, 0); rectangle = new flash.geom.Rectangle(x, y, creationArray[0].length * _local6, (creationArray.length * _local5) + 10); drawClip(); gameManager.addCollisionEntity(this); } function dispose() { bitmapData.dispose(); gameManager.removeCollisionEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = rectangle.x; clip._y = rectangle.y + 10; } function update(ms, msp) { if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getRectangle() { return(rectangle); } function getMass() { return(0); } static var index = 0; }
Symbol 161 MovieClip [__Packages.Sprite] Frame 0
class Sprite implements IEntity { var name, clip, gameManager, bitmapData, x, y; function Sprite (p, gm, b, dx, dy) { name = "Sprite" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; bitmapData = b; clip.attachBitmap(bitmapData, 0); x = dx; y = dy; drawClip(); gameManager.addEntity(this); } function drawClip() { clip._x = x; clip._y = y; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } static var index = 0; }
Symbol 162 MovieClip [__Packages.SheetSprite] Frame 0
class SheetSprite implements IEntity { var name, clip, gameManager, bitmapData, x, y, sortPos; function SheetSprite (p, gm, dx, dy, n) { name = "SheetSprite" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; bitmapData = SheetManager.get(n); clip.attachBitmap(bitmapData, 0); x = dx; y = dy; drawClip(); sortPos = 5; if (n == "cone1") { sortPos = 20; } gameManager.addEntity(this); } function drawClip() { clip._x = x; clip._y = y; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } static var index = 0; }
Symbol 163 MovieClip [__Packages.TileSprite] Frame 0
class TileSprite implements IEntity { var name, clip, gameManager, bitmapData, sortPos, x, y; function TileSprite (p, gm, dx, dy, arr, sp) { name = "TileSprite" + (index++); var _local9 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local9); gameManager = gm; var _local10 = gameManager.bitmapManager.getBitmap("tileEntities"); var _local6 = gameManager.levelData.tileWidth; var _local5 = gameManager.levelData.tileHeight; var _local8 = TileSheet.create(_local10, _local6, _local5); bitmapData = new flash.display.BitmapData(arr[0].length * _local6, arr.length * _local5, true, 0); var _local7 = new flash.geom.Rectangle(0, 0, _local6, _local5); var _local3 = 0; while (_local3 < arr.length) { var _local2 = 0; while (_local2 < arr[0].length) { bitmapData.copyPixels(_local8[arr[_local3][_local2]], _local7, new flash.geom.Point(_local2 * _local6, _local3 * _local5), null, null, true); _local2++; } _local3++; } if (sp != undefined) { sortPos = sp; } else { sortPos = 0; } clip.attachBitmap(bitmapData, 0); x = dx; y = dy; drawClip(); gameManager.addEntity(this); } function drawClip() { clip._x = x; clip._y = y; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return((y + clip._height) - sortPos); } static var index = 0; }
Symbol 164 MovieClip [__Packages.CollisionObject] Frame 0
class CollisionObject implements IEntity, ICircleCollision { var name, clip, gameManager, bitmapData, circle, posX, posY; function CollisionObject (p, gm, x, y, type) { name = "CollisionObject" + (index++); var _local5 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local5); gameManager = gm; bitmapData = SheetManager.get(type); clip.attachBitmap(bitmapData, 0); if (type == "bush") { circle = new Circle(x, y, 20); posX = 40; posY = 20; } else if (type == "tree1") { circle = new Circle(x, y, 3); posX = 40; posY = 80; } else if ((type == "cactus") || (type == "tree2")) { circle = new Circle(x, y, 3); posX = 40; posY = 50; } else if (type == "stump") { circle = new Circle(x, y, 10); posX = 40; posY = 15; } else if ((type == "rock1") || (type == "rock2")) { circle = new Circle(x, y, 7); posX = 40; posY = 5; } else if (type == "rock3") { circle = new Circle(x, y, 7); posX = 40; posY = 25; } else if (type == "well") { circle = new Circle(x, y, 25); posX = 60; posY = 80; } else if (type == "tablet2") { circle = new Circle(x, y, 10); posX = 60; posY = 40; } drawClip(); gameManager.addCollisionEntity(this); } function dispose() { gameManager.removeCollisionEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - posX; clip._y = circle.y - posY; } function update(ms, msp) { if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { return(0); } function hit(bullet) { return(true); } static var index = 0; }
Symbol 165 MovieClip [__Packages.TileCollisionObject] Frame 0
class TileCollisionObject implements IEntity, ICircleCollision { var name, clip, gameManager, bitmapData, posX, posY, circle; function TileCollisionObject (p, gm, x, y, arr, c) { name = "TileCollisionObject" + (index++); var _local10 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local10); gameManager = gm; var _local11 = gameManager.bitmapManager.getBitmap("tileEntities"); var _local6 = gameManager.levelData.tileWidth; var _local5 = gameManager.levelData.tileHeight; var _local8 = TileSheet.create(_local11, _local6, _local5); bitmapData = new flash.display.BitmapData(arr[0].length * _local6, arr.length * _local5, true, 0); var _local7 = new flash.geom.Rectangle(0, 0, _local6, _local5); var _local3 = 0; while (_local3 < arr.length) { var _local2 = 0; while (_local2 < arr[0].length) { bitmapData.copyPixels(_local8[arr[_local3][_local2]], _local7, new flash.geom.Point(_local2 * _local6, _local3 * _local5), null, null, true); _local2++; } _local3++; } clip.attachBitmap(bitmapData, 0); posX = c.x; posY = c.y; c.x = x; c.y = y; circle = c; drawClip(); gameManager.addCollisionEntity(this); } function dispose() { gameManager.removeCollisionEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - posX; clip._y = circle.y - posY; } function update(ms, msp) { if (clip._y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { return(0); } function hit(bullet) { return(true); } static var index = 0; }
Symbol 166 MovieClip [__Packages.IEnemy] Frame 0
interface IEnemy { }
Symbol 167 MovieClip [__Packages.Enemy] Frame 0
class Enemy implements IEntity, ICircleCollision, IBullet, ITarget, IEnemy { var name, clip, gameManager, bitmapData, frames, idleAnimation, walkAnimation, deathAnimation, idleShootAnimation, walkShootAnimation, spinAnimation, currentAnimation, currentFrame, frameTimer, circle, health, dead, timer, noMove, noMoveGo, noMoveTimer, sideWalk, flip, hasSideWalked, difMove, shotTimer, flipTimer; function Enemy (p, gm, c, sw, fl) { name = "Enemy" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("enemy"); frames = TileSheet.create(bitmapData, 64, 96); idleAnimation = [0, 1, 2, 3, 4, 5]; walkAnimation = [6, 7, 8, 9, 10, 11, 12, 13]; deathAnimation = [14]; idleShootAnimation = [15, 16, 17, 18]; walkShootAnimation = [19, 20, 21, 22, 23, 24, 25, 26]; spinAnimation = [27, 28, 29, 30, 31, 32, 33, 34]; currentAnimation = walkAnimation; currentFrame = 0; frameTimer = 0; setFrame(currentFrame); circle = c; drawClip(); health = 1; dead = false; timer = 0; noMove = circle.y; noMoveGo = false; noMoveTimer = 0; noMoveDirection = false; var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("shadow"), 0); _local2._y = 72; _local2._x = 12; if (sw == undefined) { sideWalk = false; } else { sideWalk = sw; } if (fl == undefined) { flip = 0; } else { flip = fl; } hasSideWalked = false; gameManager.addMovingEntity(this); difMove = -10 + (((circle.x * 5) + Math.abs(circle.y)) % 20); shotTimer = 100 + (((circle.x * 5) + Math.abs(circle.y)) % 1025); if (flip != 0) { shotTimer = 1125; } flipTimer = 0; } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function dispose() { gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - 32; clip._y = circle.y - 48; } function update(ms, msp) { var _local4 = idleAnimation; if ((!dead) && (flip == 0)) { if ((clip._y + clip._height) > (-gameManager.screenScroller.y)) { if (sideWalk) { shotTimer = 0; var _local8 = Math.abs(gameManager.player.circle.y - circle.y); if (_local8 < (GameManager.SCREEN_HEIGHT / 2)) { var _local7 = gameManager.player.circle.x; if (circle.x < _local7) { circle.x = circle.x + (200 * msp); if (circle.x >= _local7) { circle.x = _local7; } } else if (circle.x > _local7) { circle.x = circle.x - (200 * msp); if (circle.x <= _local7) { circle.x = _local7; } } if ((_local8 < (GameManager.SCREEN_HEIGHT / 5)) || (Math.abs(gameManager.player.circle.x - circle.x) < (GameManager.SCREEN_WIDTH / 8))) { sideWalk = false; shotTimer = 1300; } hasSideWalked = true; } else if (hasSideWalked) { sideWalk = false; shotTimer = 1200; } } else { if (Math.abs(noMove - circle.y) < 1) { noMoveTimer = noMoveTimer + ms; if (noMoveTimer > 750) { if (noMoveGo) { if (noMoveTimer > 2000) { noMoveDirection = !noMoveDirection; noMoveTimer = 250; } } else { if (circle.x < (GameManager.SCREEN_WIDTH / 2)) { noMoveDirection = true; } else { noMoveDirection = false; } noMoveGo = true; noMoveTimer = 250; } } } else { if (noMoveTimer > 250) { noMoveTimer = 250; } noMoveTimer = noMoveTimer - ms; if (noMoveTimer < 0) { noMove = circle.y; noMoveTimer = 0; noMoveGo = false; } } circle.y = circle.y + (200 * msp); if (noMoveGo) { circle.x = circle.x + ((noMoveDirection ? 100 : -100) * msp); } else { if ((gameManager.player.circle.y - circle.y) > (GameManager.SCREEN_HEIGHT / 3)) { var _local7 = (gameManager.player.circle.x - circle.x) + difMove; } else { var _local7 = gameManager.player.circle.x - circle.x; } var _local7 = Math.max(Math.min(_local7, 100), -100); circle.x = circle.x + (_local7 * msp); } } _local4 = walkAnimation; } shotTimer = shotTimer + ms; if ((shotTimer < 100) || (shotTimer > 1125)) { if (_local4 == walkAnimation) { _local4 = walkShootAnimation; } else { _local4 = idleShootAnimation; } } while (shotTimer > 1250) { shotTimer = shotTimer - 1250; var _local3 = 0; var _local2 = 300; gameManager.createEnemyBullet(circle.x - (_local3 * (shotTimer / 1250)), circle.y - (_local2 * (shotTimer / 1250)), _local3, _local2, 1, this); gameManager.soundBoard.start("sSingleShot" + (1 + random(5))); } } if (flip != 0) { if (flip == 1) { circle.x = circle.x + (75 * msp); } else { circle.x = circle.x - (75 * msp); } circle.y = circle.y + (150 * msp); _local4 = spinAnimation; flipTimer = flipTimer + ms; if (flipTimer > 500) { flip = 0; } } if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } if (dead) { timer = timer + ms; if (timer > 250) { clip._alpha = clip._alpha - (400 * msp); if (clip._alpha <= 0) { dispose(); return(false); } } _local4 = deathAnimation; } if (currentAnimation != _local4) { currentAnimation = _local4; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 150) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame = 0; } frameTimer = frameTimer - 150; } setFrame(currentAnimation[currentFrame]); drawClip(); return(false); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { return(1); } function hit(bullet) { if (!dead) { if (bullet.getParent() == gameManager.player) { health = health - bullet.getDamage(); if (bullet.getDamage() >= 1) { var _local2 = 0; while (_local2 < 2) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 250 + random(250)); _local2++; } } if (health <= 0) { gameManager.soundBoard.start("sDeath" + (1 + random(3))); gameManager.gameStatistics.score = gameManager.gameStatistics.score + 1000; gameManager.hud.update(); dead = true; var _local2 = 0; while (_local2 < 3) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 250 + random(250)); _local2++; } if (health < -3) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 150 + random(100), "blood"); _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 40 + random(400)); _local2++; } gameManager.soundBoard.start("sGore" + (1 + random(5))); } new AnimatedSprite(gameManager.bulletsClip, gameManager, "bloodSpatter", (circle.x - random(10)) + random(20), circle.y - random(20)); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("blood"), circle.x, circle.y); } return(true); } } return(false); } function getDamage() { if (!dead) { return(1); } return(0); } function getParent() { return(null); } function hitTarget(entity) { } static var index = 0; var noMoveDirection = false; }
Symbol 168 MovieClip [__Packages.BloodParticle] Frame 0
class BloodParticle implements IEntity { var name, clip, gameManager, bitmapData, w, h, x, y, xspeed, yspeed, timer; function BloodParticle (p, gm, dx, dy, speed, linkage) { if ((nextDetail < (gm.detail / 2)) && (linkage == undefined)) { nextDetail++; return; } if (linkage == undefined) { nextDetail = 0; } name = "BloodParticle" + (index++); var _local4 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local4); gameManager = gm; if (linkage == undefined) { linkage = "bloodParticle"; } bitmapData = gameManager.bitmapManager.getBitmap(linkage); w = bitmapData.width / 2; h = bitmapData.height / 2; clip.attachBitmap(bitmapData, 0); var _local3 = Math.random() * (Math.PI*2); x = dx; y = dy; xspeed = speed * Math.cos(_local3); yspeed = speed * Math.sin(_local3); drawClip(); gameManager.addEntity(this); timer = 0; } function drawClip() { clip._x = x - w; clip._y = y - h; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { x = x + (xspeed * msp); y = y + (yspeed * msp); drawClip(); if ((Math.abs(xspeed) < 5) && (Math.abs(yspeed) < 5)) { dispose(); } timer = timer + ms; if (timer > 50) { gameManager.screenScroller.drawBitmap(bitmapData, x, y); xspeed = xspeed * 0.75; yspeed = yspeed * 0.75; timer = timer - 50; } if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } static var index = 0; static var nextDetail = 0; }
Symbol 169 MovieClip [__Packages.Shooter] Frame 0
class Shooter implements IEntity, ICircleCollision, IBullet, ITarget, IEnemy { var name, clip, gameManager, bitmapData, frames, idleAnimation, walkAnimation, walkAnimationReverse, deathAnimation, currentAnimation, currentFrame, frameTimer, circle, health, dead, timer, noMove, noMoveGo, noMoveTimer, shotTimer, moving, movingTimer, targety, transform, lastHit; function Shooter (p, gm, c) { name = "Shooter" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("shooter"); frames = TileSheet.create(bitmapData, 64, 96); idleAnimation = [0, 1, 2, 3]; walkAnimation = [4, 5, 6, 7, 8, 9, 10, 11]; walkAnimationReverse = [4, 5, 6, 7, 8, 9, 10, 11]; deathAnimation = [12]; currentAnimation = walkAnimation; currentFrame = 0; frameTimer = 0; setFrame(currentFrame); circle = c; drawClip(); health = 2; dead = false; timer = 0; noMove = circle.y; noMoveGo = false; noMoveTimer = 0; noMoveDirection = false; shotTimer = 0; moving = true; movingTimer = 1000 + random(1000); targety = ((-gameManager.screenScroller.y) + (GameManager.SCREEN_HEIGHT / 8)) + random(GameManager.SCREEN_HEIGHT / 4); var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("shadow"), 0); _local2._y = 72; _local2._x = 8; gameManager.addMovingEntity(this); transform = new flash.geom.Transform(clip); lastHit = 0; } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function dispose() { gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - 32; clip._y = circle.y - 48; } function update(ms, msp) { var _local6 = idleAnimation; if (!dead) { if (lastHit > 0) { lastHit = lastHit - ms; transform.colorTransform = new flash.geom.ColorTransform(1.2, 1.2, 1.2, 1, 0, 0, 0, 0); } else { transform.colorTransform = new flash.geom.ColorTransform(); } if (!moving) { movingTimer = movingTimer - ms; if (movingTimer < 0) { movingTimer = 1000 + random(1000); moving = true; targety = ((-gameManager.screenScroller.y) + (GameManager.SCREEN_HEIGHT / 8)) + random(GameManager.SCREEN_HEIGHT / 4); } } else { if (Math.abs(noMove - circle.y) < 1) { noMoveTimer = noMoveTimer + ms; if (noMoveTimer > 750) { if (noMoveGo) { if (noMoveTimer > 2000) { noMoveDirection = !noMoveDirection; noMoveTimer = 250; } } else { if (circle.x < (GameManager.SCREEN_WIDTH / 2)) { noMoveDirection = true; } else { noMoveDirection = false; } noMoveGo = true; noMoveTimer = 250; } } } else { if (noMoveTimer > 250) { noMoveTimer = 250; } noMoveTimer = noMoveTimer - ms; if (noMoveTimer < 0) { noMove = circle.y; noMoveTimer = 0; noMoveGo = false; } } if (circle.y > targety) { circle.y = circle.y - (200 * msp); if (circle.y < targety) { moving = false; } else { _local6 = walkAnimationReverse; } } else if (circle.y < targety) { circle.y = circle.y + (200 * msp); if (circle.y > targety) { moving = false; } else { _local6 = walkAnimationReverse; } } if (noMoveGo) { circle.x = circle.x + ((noMoveDirection ? 100 : -100) * msp); } else { var _local7 = gameManager.player.circle.x - circle.x; _local7 = Math.max(Math.min(_local7, 100), -100); circle.x = circle.x + (_local7 * msp); } } shotTimer = shotTimer + ms; var _local2 = 1250; if (!moving) { _local2 = 625; if (shotTimer > _local2) { shotTimer = _local2 + 1; } } while (shotTimer > _local2) { shotTimer = shotTimer - _local2; var _local4 = 0; var _local3 = 300; gameManager.createEnemyBullet(circle.x - (_local4 * (shotTimer / _local2)), circle.y - (_local3 * (shotTimer / _local2)), _local4, _local3, 1, this); gameManager.soundBoard.start("sSingleShot" + (1 + random(5))); } } if ((circle.x - circle.radius) < 0) { circle.x = circle.radius; } if ((circle.x + circle.radius) > gameManager.levelData.screenWidth) { circle.x = gameManager.levelData.screenWidth - circle.radius; } if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } if (dead) { timer = timer + ms; if (timer > 250) { clip._alpha = clip._alpha - (400 * msp); if (clip._alpha <= 0) { dispose(); return(false); } } _local6 = deathAnimation; } if (currentAnimation != _local6) { currentAnimation = _local6; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 150) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame = 0; } frameTimer = frameTimer - 150; } setFrame(currentAnimation[currentFrame]); drawClip(); return(false); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { if (!dead) { return(1); } return(0); } function hit(bullet) { if (!dead) { if ((bullet.getParent() == gameManager.player) && (bullet.getDamage() > 0)) { gameManager.soundBoard.start("sDeath" + (1 + random(3))); health = health - bullet.getDamage(); if (bullet.getDamage() >= 1) { var _local2 = 0; while (_local2 < 2) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 250 + random(250)); _local2++; } } lastHit = 75; if (health <= 0) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 3000; gameManager.hud.update(); dead = true; transform.colorTransform = new flash.geom.ColorTransform(); var _local2 = 0; while (_local2 < 3) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 250 + random(250)); _local2++; } if (health < -3) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 150 + random(100), "blood"); _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 40 + random(400)); _local2++; } gameManager.soundBoard.start("sGore" + (1 + random(5))); } new AnimatedSprite(gameManager.bulletsClip, gameManager, "bloodSpatter", (circle.x - random(10)) + random(20), circle.y - random(20)); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("blood"), circle.x, circle.y); } return(true); } } return(false); } function getDamage() { return(1); } function getParent() { return(null); } function hitTarget(entity) { } static var index = 0; var noMoveDirection = false; }
Symbol 170 MovieClip [__Packages.Sniper] Frame 0
class Sniper implements IEntity, ICircleCollision, IBullet, ITarget, IEnemy { var name, clip, gameManager, bitmapData, frames, circle, health, dead, timer, shotTimer; function Sniper (p, gm, c) { name = "Sniper" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("sniper"); frames = TileSheet.create(bitmapData, 64, 96); setFrame(2); circle = c; drawClip(); health = 1; dead = false; timer = 0; shotTimer = 0; var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("shadow"), 0); _local2._y = 70; _local2._x = 8; gameManager.addMovingEntity(this); } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function dispose() { gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - 32; clip._y = circle.y - 48; } function update(ms, msp) { if ((circle.x - circle.radius) < 0) { circle.x = circle.radius; } if ((circle.x + circle.radius) > gameManager.levelData.screenWidth) { circle.x = gameManager.levelData.screenWidth - circle.radius; } if (circle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } if (!dead) { var _local6 = gameManager.player.circle.x - circle.x; var _local5 = gameManager.player.circle.y - circle.y; if (_local5 > 0) { var _local4 = (Math.atan2(_local5, _local6) * 180) / Math.PI; _local4 = Math.round(Math.max(45, Math.min(135, _local4)) / 22.5) * 22.5; var _local7 = (_local4 / 22.5) - 1; setFrame(5 - _local7); if ((clip._y + clip._height) > (-gameManager.screenScroller.y)) { shotTimer = shotTimer + ms; while (shotTimer > 1000) { shotTimer = shotTimer - 1000; var _local3 = 300 * Math.cos((_local4 * Math.PI) / 180); var _local2 = 300 * Math.sin((_local4 * Math.PI) / 180); gameManager.createEnemyBullet(((circle.x + 5) + (_local3 / 10)) - (_local3 * (shotTimer / 1000)), (circle.y + (_local2 / 10)) - (_local2 * (shotTimer / 1000)), _local3, _local2, 1, this); gameManager.soundBoard.start("sSingleShot" + (1 + random(5))); } } } else { setFrame(2); } } if (dead) { timer = timer + ms; if (timer > 250) { clip._alpha = clip._alpha - (400 * msp); if (clip._alpha <= 0) { dispose(); return(false); } } setFrame(5); } drawClip(); return(false); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { return(0.1); } function hit(bullet) { if (!dead) { if (bullet.getParent() == gameManager.player) { health = health - bullet.getDamage(); if (health <= 0) { gameManager.soundBoard.start("sDeath" + (1 + random(3))); gameManager.gameStatistics.score = gameManager.gameStatistics.score + 1500; gameManager.hud.update(); dead = true; var _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 250 + random(250)); _local2++; } if (health < -3) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 150 + random(100), "blood"); _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 40 + random(400)); _local2++; } gameManager.soundBoard.start("sGore" + (1 + random(5))); } new AnimatedSprite(gameManager.bulletsClip, gameManager, "bloodSpatter", (circle.x - random(10)) + random(20), circle.y - random(20)); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("blood"), circle.x, circle.y); } return(true); } } return(false); } function getDamage() { if (!dead) { return(1); } return(0); } function getParent() { return(null); } function hitTarget(entity) { } static var index = 0; }
Symbol 171 MovieClip [__Packages.Jeep] Frame 0
class Jeep implements IEntity, IRectangleCollision, IBullet, ITarget, IEnemy { var name, clip, gameManager, bitmapData, frames, idleAnimation, currentAnimation, currentFrame, frameTimer, rectangle, health, dead, timer, shotTimer, transform, lastHit; function Jeep (p, gm, x, y) { name = "Jeep" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("jeep"); frames = TileSheet.create(bitmapData, 192, 192); idleAnimation = [0, 1, 2, 3]; currentAnimation = idleAnimation; currentFrame = 0; frameTimer = 0; setFrame(currentFrame); rectangle = new flash.geom.Rectangle(x, y, 180, 80); drawClip(); health = 7; dead = false; timer = 0; shotTimer = 0; var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("jeepshadow"), 0); _local2._y = 96; gameManager.addMovingEntity(this); transform = new flash.geom.Transform(clip); lastHit = 0; } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function dispose() { gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { if (direction) { clip._xscale = -100; clip._x = (rectangle.x + 192) - 8; } else { clip._xscale = 100; clip._x = rectangle.x - 8; } clip._y = rectangle.y - 83; } function update(ms, msp) { if (lastHit > 0) { lastHit = lastHit - ms; transform.colorTransform = new flash.geom.ColorTransform(1.2, 1.2, 1.2, 1, 0, 0, 0, 0); } else { transform.colorTransform = new flash.geom.ColorTransform(); } if (!dead) { var _local5 = idleAnimation; if ((rectangle.x + rectangle.width) < 0) { direction = true; if (rectangle.y > (gameManager.player.circle.y - gameManager.player.circle.radius)) { dispose(); return(false); } } if (rectangle.x > gameManager.levelData.screenWidth) { direction = false; if (rectangle.y > (gameManager.player.circle.y - gameManager.player.circle.radius)) { dispose(); return(false); } } if (direction) { rectangle.x = rectangle.x + (100 * msp); } else { rectangle.x = rectangle.x - (100 * msp); } shotTimer = shotTimer + ms; while (shotTimer > 500) { shotTimer = shotTimer - 500; var _local3 = 0; var _local2 = 300; if (direction) { gameManager.createEnemyBullet((rectangle.x + 30) - (_local3 * (shotTimer / 1000)), (rectangle.y + 25) - (_local2 * (shotTimer / 1000)), _local3, _local2, 1, this); } else { gameManager.createEnemyBullet((rectangle.x + 145) - (_local3 * (shotTimer / 1000)), (rectangle.y + 25) - (_local2 * (shotTimer / 1000)), _local3, _local2, 1, this); } gameManager.soundBoard.start("sSingleShot" + (1 + random(5))); } if (currentAnimation != _local5) { currentAnimation = _local5; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 150) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame = 0; } frameTimer = frameTimer - 150; } setFrame(currentAnimation[currentFrame]); drawClip(); } if (health < -20) { var _local4 = 0; while (_local4 < 1) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosion", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height)); _local4++; } _local4 = 0; while (_local4 < 2) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosionsmall", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height)); _local4++; } _local4 = 0; while (_local4 < 10) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local4++; } gameManager.soundBoard.start("sJeepExplosion"); dispose(); } if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } return(false); } function getSortDepth() { return(rectangle.y + rectangle.height); } function getRectangle() { return(rectangle); } function getMass() { return(0); } function hit(bullet) { if (!dead) { if ((bullet.getParent() == gameManager.player) && (bullet.getDamage() > 0)) { health = health - bullet.getDamage(); lastHit = 75; if (health <= 0) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 5000; gameManager.hud.update(); dead = true; gameManager.soundBoard.start("sJeepExplosion"); transform.colorTransform = new flash.geom.ColorTransform(); var _local2 = 0; while (_local2 < 10) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local2++; } gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2)); new Explosion(gameManager.bulletsClip, gameManager, new Circle(rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2), rectangle.width * 0.6), 5, true); _local2 = 0; while (_local2 < 2) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosionsmall", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height)); _local2++; } new Particle(gameManager.underGame, gameManager, "tire", rectangle.x + 15, rectangle.y + 65, 100 + random(100), 0.93); new Particle(gameManager.underGame, gameManager, "tire", rectangle.x + 125, rectangle.y + 65, 100 + random(100), 0.93); new Particle(gameManager.underGame, gameManager, "tire", rectangle.x + 15, rectangle.y + 25, 100 + random(100), 0.93); new Particle(gameManager.underGame, gameManager, "tire", rectangle.x + 125, rectangle.y + 25, 100 + random(100), 0.93); var _local3 = 0; if (!direction) { _local3 = _local3 + 100; } _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (rectangle.x + random(20)) + _local3, rectangle.y + random(20), 250 + random(250)); _local2++; } new BloodParticle(gameManager.underGame, gameManager, (rectangle.x + random(20)) + _local3, rectangle.y + random(20), 150 + random(100), "blood"); _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (rectangle.x + random(20)) + _local3, rectangle.y + random(20), 40 + random(400)); _local2++; } new AnimatedSprite(gameManager.bulletsClip, gameManager, "bloodSpatter", (rectangle.x + random(20)) + _local3, rectangle.y + random(20)); setFrame(4); } return(true); } } else { if (bullet.getDamage() > 0) { health = health - bullet.getDamage(); lastHit = 75; } return(true); } if (bullet.getParent() != this) { return(true); } return(false); } function getDamage() { if (!dead) { return(1); } return(0); } function getParent() { return(null); } function hitTarget(entity) { } static var index = 0; var direction = true; }
Symbol 172 MovieClip [__Packages.Particle] Frame 0
class Particle implements IEntity { var name, clip, gameManager, bitmapData, x, y, xspeed, yspeed, friction, timer; function Particle (p, gm, linkage, dx, dy, speed, f) { if (gm.nextDetail < gm.detail) { gm.nextDetail++; return; } gm.nextDetail = 0; name = "Particle" + (index++); var _local4 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local4); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap(linkage); clip.attachBitmap(bitmapData, 0); var _local3 = Math.random() * (Math.PI*2); x = dx; y = dy; xspeed = speed * Math.cos(_local3); yspeed = speed * Math.sin(_local3); friction = f; drawClip(); gameManager.addEntity(this); timer = 0; } function drawClip() { clip._x = x; clip._y = y; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { x = x + (xspeed * msp); y = y + (yspeed * msp); drawClip(); if ((Math.abs(xspeed) < 5) && (Math.abs(yspeed) < 5)) { gameManager.screenScroller.drawBitmap(bitmapData, x + (bitmapData.width / 2), y + (bitmapData.height / 2)); dispose(); } timer = timer + ms; if (timer > 50) { xspeed = xspeed * friction; yspeed = yspeed * friction; timer = timer - 50; } if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } static var index = 0; }
Symbol 173 MovieClip [__Packages.Boss1] Frame 0
class Boss1 implements IEntity, ICircleCollision, IBullet, ITarget, IEnemy { var name, clip, gameManager, bitmapData, frames, idleAnimation, walkAnimation, walkAnimationReverse, walkLeftAnimation, walkRightAnimation, deadAnimation, currentAnimation, currentFrame, frameTimer, circle, health, dead, timer, direction, directionTimer, shotTimer, transform, lastHit, boss; function Boss1 (p, gm, c) { name = "Boss1" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("boss1"); frames = TileSheet.create(bitmapData, 64, 96); bitmapData = gameManager.bitmapManager.getBitmap("boss1dead"); frames.push(bitmapData); idleAnimation = [0, 1, 2, 3, 4, 5]; walkAnimation = [6, 7, 8, 9, 10, 11, 12, 13]; walkAnimationReverse = [13, 12, 11, 10, 9, 8, 7, 6]; walkLeftAnimation = [14, 15, 16, 17, 18, 19, 20, 21]; walkRightAnimation = [22, 23, 24, 25, 26, 27, 28, 29]; deadAnimation = [frames.length - 1]; currentAnimation = idleAnimation; currentFrame = 0; frameTimer = 0; setFrame(currentFrame); circle = c; drawClip(); health = 35; dead = false; timer = 0; direction = 0; directionTimer = 3000; shotTimer = 0; var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("shadow"), 0); _local2._y = 80; _local2._x = 12; gameManager.addMovingEntity(this); gameManager.boss = true; transform = new flash.geom.Transform(clip); lastHit = 0; boss = true; gameManager.soundBoard.start("sBossLaugh"); } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function dispose() { if (dead && (boss)) { gameManager.commando.nextLevel(); } gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - 32; clip._y = circle.y - 48; } function update(ms, msp) { var _local5 = idleAnimation; if (!dead) { var _local7 = 0; if (health <= 20) { _local7 = 1 - (health / 20); } if (lastHit > 0) { lastHit = lastHit - ms; transform.colorTransform = new flash.geom.ColorTransform(1.2, 1.2, 1.2, 1, _local7 * 75, 0, 0, 0); } else { transform.colorTransform = new flash.geom.ColorTransform(1, 1, 1, 1, _local7 * 75, 0, 0, 0); } directionTimer = directionTimer - ms; if (directionTimer < 0) { directionTimer = 3000; var _local8 = direction; direction = random(3); if (direction != _local8) { shotTimer = 0; } } var _local2 = 250; if (direction == 0) { _local2 = 500; } else if (direction == 1) { circle.x = circle.x + (100 * msp); _local5 = walkRightAnimation; } else if (direction == 2) { circle.x = circle.x - (100 * msp); _local5 = walkLeftAnimation; } shotTimer = shotTimer + ms; while (shotTimer > _local2) { shotTimer = shotTimer - _local2; gameManager.soundBoard.start("sLargeShot" + (1 + random(3))); if (_local2 < 500) { var _local4 = circle.x - 12; var _local3 = (circle.y + 44) - (300 * (shotTimer / 250)); gameManager.addBullet(new AnimatedBullet(gameManager.bulletsClip, gameManager, gameManager.bitmapManager.getBitmap("bigEnemyBullet"), new Circle(_local4, _local3, 6), -50 + random(100), 300, 1, this, false)); } else { var _local4 = circle.x - 12; var _local3 = (circle.y + 44) - (300 * (shotTimer / 500)); gameManager.addBullet(new AnimatedBullet(gameManager.bulletsClip, gameManager, gameManager.bitmapManager.getBitmap("bigEnemyBullet"), new Circle(_local4, _local3, 6), -75 + random(150), 300, 1, this, false)); } } } else { _local5 = deadAnimation; } if ((circle.x - circle.radius) < 0) { direction = 1; } if ((circle.x + circle.radius) > gameManager.levelData.screenWidth) { direction = 2; } if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } if (dead) { timer = timer + ms; if (timer > 250) { if (timer > 300) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 400 + random(400)); gameManager.soundBoard.start("sGore" + (1 + random(5))); timer = timer - 50; } clip._alpha = clip._alpha - (75 * msp); if (clip._alpha <= 0) { dispose(); return(false); } } } if (currentAnimation != _local5) { currentAnimation = _local5; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 150) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame = 0; } frameTimer = frameTimer - 150; } setFrame(currentAnimation[currentFrame]); drawClip(); return(false); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { return(0); } function hit(bullet) { if (!dead) { if ((bullet.getParent() == gameManager.player) && (bullet.getDamage() > 0)) { health = health - bullet.getDamage(); lastHit = 75; if (bullet.getDamage() > 0) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 250 + random(250)); new AnimatedSprite(gameManager.bulletsClip, gameManager, "bloodSpatter", (circle.x - random(10)) + random(20), circle.y - random(20)); } if (health <= 0) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 50000; gameManager.hud.update(); dead = true; gameManager.soundBoard.start("sBossDeath"); transform.colorTransform = new flash.geom.ColorTransform(); var _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 400 + random(400)); _local2++; } _local2 = 0; while (_local2 < 3) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 150 + random(100), "blood"); _local2++; } gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("blood"), circle.x, circle.y); } return(true); } } return(false); } function getDamage() { return(1); } function getParent() { return(null); } function hitTarget(entity) { } static var index = 0; }
Symbol 174 MovieClip [__Packages.AnimatedBullet] Frame 0
class AnimatedBullet implements IEntity, ICircleCollision, IBullet { var name, clip, gameManager, frames, currentFrame, circle, xspeed, yspeed, damage, parent, explosive, timer; function AnimatedBullet (p, gm, b, c, xs, ys, da, pa, ex) { name = "AnimatedBullet" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; frames = TileSheet.create(b, 16, 16); currentFrame = 0; setFrame(currentFrame); circle = c; xspeed = xs; yspeed = ys; drawClip(); damage = da; parent = pa; explosive = ex; timer = 0; } function dispose() { gameManager.removeBullet(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - (frames[0].width / 2); clip._y = circle.y - (frames[0].height / 2); } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function update(ms, msp) { circle.y = circle.y + (yspeed * msp); circle.x = circle.x + (xspeed * msp); drawClip(); timer = timer + ms; while (timer > 75) { currentFrame++; if (currentFrame >= frames.length) { currentFrame = 0; } setFrame(currentFrame); timer = timer - 75; } var _local2 = false; if (((circle.x + circle.radius) < 0) && (xspeed <= 0)) { _local2 = true; } if (((circle.x - circle.radius) > gameManager.levelData.screenWidth) && (xspeed >= 0)) { _local2 = true; } if (((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) && (yspeed >= 0)) { _local2 = true; } if (((circle.y + circle.radius) < (-gameManager.screenScroller.y)) && (yspeed <= 0)) { _local2 = true; } if (_local2) { dispose(); return(false); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getCircle() { return(circle); } function getMass() { return(1); } function getDamage() { return(damage); } function getParent() { return(parent); } function hitTarget(entity) { var _local3 = entity; if (_local3.getMass() <= 0) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "bulletSpark", circle.x, circle.y); } if (explosive) { var _local2 = 0; while (_local2 < 3) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", circle.x, circle.y, 300 + random(300), 0.95); _local2++; } new Explosion(gameManager.bulletsClip, gameManager, new Circle(circle.x, circle.y, 80), 5, true, true, false); } if (parent == gameManager.player) { gameManager.gameStatistics.hits++; } dispose(); } static var index = 0; }
Symbol 175 MovieClip [__Packages.Boss2] Frame 0
class Boss2 implements IEntity, IRectangleCollision, IBullet, ITarget, IEnemy { var name, clip, clip2, gameManager, frames, idleAnimation, moveAnimation, gun, currentAnimation, currentFrame, frameTimer, rectangle, health, dead, timer, shotTimer, moveTimer, direction, mGun, mTimer, mSide, transform, lastHit; function Boss2 (p, gm, x, y) { name = "Boss2" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); clip2 = clip.createEmptyMovieClip("clip2", 64); gameManager = gm; frames = TileSheet.create(gameManager.bitmapManager.getBitmap("tank"), 256, 180); idleAnimation = [0]; moveAnimation = [0, 1]; gun = TileSheet.create(gameManager.bitmapManager.getBitmap("tankGun"), 256, 180); currentAnimation = idleAnimation; currentFrame = 0; frameTimer = 0; setGun(2); setFrame(currentFrame); rectangle = new flash.geom.Rectangle(x, y, 256, 140); drawClip(); health = 100; dead = false; timer = 0; shotTimer = 0; var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("jeepshadow"), 0); _local2._y = 96; gameManager.addMovingEntity(this); gameManager.boss = true; moveTimer = 0; direction = false; mGun = 0; mTimer = 0; mSide = true; transform = new flash.geom.Transform(clip); lastHit = 0; } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function setGun(frame) { clip2.attachBitmap(gun[frame], 32); } function dispose() { if (dead) { gameManager.commando.nextLevel(); } gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = rectangle.x - 4; clip._y = rectangle.y - 20; } function update(ms, msp) { if (!dead) { var _local11 = 0; if (health <= 75) { _local11 = 1 - (health / 75); } if (lastHit > 0) { lastHit = lastHit - ms; transform.colorTransform = new flash.geom.ColorTransform(1.2, 1.2, 1.2, 1, _local11 * 75, 0, 0, 0); } else { transform.colorTransform = new flash.geom.ColorTransform(1, 1, 1, 1, _local11 * 75, 0, 0, 0); } var _local8 = idleAnimation; var _local10 = rectangle.x + 145; var _local9 = rectangle.y + 35; var _local14 = gameManager.player.circle.x - _local10; var _local13 = gameManager.player.circle.y - _local9; if (_local13 > 0) { var _local5 = (Math.atan2(_local13, _local14) * 180) / Math.PI; _local5 = Math.round(Math.max(45, Math.min(135, _local5)) / 22.5) * 22.5; var _local15 = (_local5 / 22.5) - 1; setGun(5 - _local15); shotTimer = shotTimer + ms; while (shotTimer > 3000) { gameManager.soundBoard.start("sTankFire"); shotTimer = shotTimer - 3000; var _local2 = 400 * Math.cos((_local5 * Math.PI) / 180); var _local3 = 400 * Math.sin((_local5 * Math.PI) / 180); var _local6 = gameManager.createEnemyBullet((_local10 + (_local2 / 4)) - (_local2 * (shotTimer / 3000)), (_local9 + (_local3 / 4)) - (_local3 * (shotTimer / 3000)), _local2, _local3, 1, this, "rocket", true); _local6.clip._rotation = _local5 + 90; } } else { setGun(2); } mTimer = mTimer + ms; while (mTimer > 250) { mTimer = mTimer - 250; var _local4 = 10 + (40 * (1 - (health / 250))); var _local2 = (-random(_local4)) + random(_local4 * 2); var _local3 = 300; _local9 = ((rectangle.y + 50) + (_local3 / 4)) - (_local3 * (mTimer / 750)); if (mSide) { if ((mGun % 2) == 0) { _local10 = (rectangle.x + 60) - (_local2 * (mTimer / 750)); } else if ((mGun % 2) == 1) { _local10 = (rectangle.x + 80) - (_local2 * (mTimer / 750)); } } else if ((mGun % 2) == 0) { _local10 = (rectangle.x + 170) - (_local2 * (mTimer / 750)); } else if ((mGun % 2) == 1) { _local10 = (rectangle.x + 190) - (_local2 * (mTimer / 750)); } gameManager.addBullet(new AnimatedBullet(gameManager.bulletsClip, gameManager, gameManager.bitmapManager.getBitmap("bigEnemyBullet"), new Circle(_local10, _local9, 6), _local2, _local3, 1, this, false)); mGun++; gameManager.soundBoard.start("sLargeShot" + (1 + random(3))); if ((mGun % 10) == 0) { mSide = !mSide; } } if ((moveTimer < 1500) && ((moveTimer + ms) >= 1500)) { gameManager.soundBoard.start("sTank", 0, 9999); } moveTimer = moveTimer + ms; if (moveTimer > 1500) { _local8 = moveAnimation; var _local12 = (rectangle.x + (rectangle.width / 2)) - gameManager.player.circle.x; if (direction == true) { rectangle.x = rectangle.x + (50 * msp); if (((rectangle.x + rectangle.width) > (GameManager.SCREEN_WIDTH + 100)) || (_local12 > (GameManager.SCREEN_WIDTH / 2))) { direction = false; } } else { rectangle.x = rectangle.x - (50 * msp); if ((rectangle.x < -100) || ((-_local12) > (GameManager.SCREEN_WIDTH / 2))) { direction = true; } } if (moveTimer > 6500) { moveTimer = moveTimer - 6500; gameManager.soundBoard.stop("sTank"); } } if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } if (currentAnimation != _local8) { currentAnimation = _local8; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 150) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame = 0; } frameTimer = frameTimer - 150; } setFrame(currentAnimation[currentFrame]); drawClip(); } else { timer = timer + ms; if (timer > 250) { if (timer > 300) { var _local10 = rectangle.x + (Math.random() * rectangle.width); var _local9 = rectangle.y + (Math.random() * rectangle.height); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), _local10, _local9); if (random(100) > 50) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosion", _local10, _local9); } else { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosionsmall", _local10, _local9); } gameManager.setShake(7.5); timer = timer - 50; } clip._alpha = clip._alpha - (75 * msp); if (clip._alpha <= 0) { dispose(); return(false); } } } if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } return(false); } function getSortDepth() { return(rectangle.y + rectangle.height); } function getRectangle() { return(rectangle); } function getMass() { return(0); } function hit(bullet) { if (!dead) { if ((bullet.getParent() == gameManager.player) && (bullet.getDamage() > 0)) { health = health - bullet.getDamage(); lastHit = 75; if (health <= 0) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 100000; gameManager.hud.update(); dead = true; transform.colorTransform = new flash.geom.ColorTransform(); var _local2 = 0; while (_local2 < 10) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local2++; } gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2)); new Explosion(gameManager.bulletsClip, gameManager, new Circle(rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2), rectangle.width * 0.75), 5, true); setFrame(3); } return(true); } } if (bullet.getParent() != this) { return(true); } return(false); } function getDamage() { if (!dead) { return(1); } return(0); } function getParent() { return(null); } function hitTarget(entity) { } static var index = 0; }
Symbol 176 MovieClip [__Packages.Boss3] Frame 0
class Boss3 implements IEntity, IRectangleCollision, IBullet, ITarget, IEnemy { var name, clip, gameManager, rectangle, health, dead, timer, shotTimer, mGun, mTimer, mSide, shots, transform, lastHit, guns, bossTrigger, sound, boss1, boss2; function Boss3 (p, gm, x, y) { name = "Boss2" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; clip.attachBitmap(gameManager.bitmapManager.getBitmap("bowser"), 0); rectangle = new flash.geom.Rectangle(x, y, 400, 330); drawClip(); health = 250; dead = false; timer = 0; shotTimer = 0; gameManager.addMovingEntity(this); gameManager.boss = true; mGun = 0; mTimer = 0; mSide = 0; shots = 0; transform = new flash.geom.Transform(clip); lastHit = 0; guns = new Array(); guns.push([{x:80, y:290}, {x:95, y:290}]); guns.push([{x:340, y:80}]); guns.push([{x:110, y:225}]); guns.push([{x:220, y:250}, {x:245, y:250}]); bossTrigger = 0; sound = 0; } function dispose() { if (dead) { gameManager.commando.nextLevel(); } gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = rectangle.x; clip._y = rectangle.y; } function update(ms, msp) { if (!dead) { if (health < 200) { if (bossTrigger == 0) { boss1 = new Boss1(clip._parent, gameManager, new Circle(-20, (rectangle.y + rectangle.height) + 15, 25)); boss1.boss = false; bossTrigger = 1; } else if (bossTrigger == 1) { if (boss1.dead) { bossTrigger = 2; } } else if ((bossTrigger == 2) && (health < 100)) { boss2 = new Boss1(clip._parent, gameManager, new Circle(GameManager.SCREEN_WIDTH + 20, (rectangle.y + rectangle.height) + 15, 25)); boss2.boss = false; bossTrigger = 3; } } var _local9 = (bossTrigger != 1) || (health < 150); var _local7 = 0; if (health <= 200) { _local7 = 1 - (health / 200); } if (lastHit > 0) { lastHit = lastHit - ms; transform.colorTransform = new flash.geom.ColorTransform(1.2, 1.2, 1.2, 1, _local7 * 75, 0, 0, 0); } else { transform.colorTransform = new flash.geom.ColorTransform(1, 1, 1, 1, _local7 * 75, 0, 0, 0); } if (_local9) { mTimer = mTimer + ms; while (mTimer > 250) { mTimer = mTimer - 250; var _local3 = 40 + (70 * (1 - (health / 250))); var _local4 = (-random(_local3)) + random(_local3 * 2); var _local2 = 300; var _local6 = rectangle.x + guns[mSide][mGun].x; var _local5 = (rectangle.y + guns[mSide][mGun].y) - (_local2 * (mTimer / 750)); gameManager.addBullet(new AnimatedBullet(gameManager.bulletsClip, gameManager, gameManager.bitmapManager.getBitmap("bigEnemyBullet"), new Circle(_local6, _local5, 6), _local4, _local2, 1, this, false)); mGun++; shots++; if (mGun >= guns[mSide].length) { mGun = 0; } if (shots > (10 - (5 * (1 - (health / 250))))) { shots = 0; mSide++; if (mSide >= guns.length) { mSide = 0; } } if ((bossTrigger == 0) || (bossTrigger == 3)) { gameManager.soundBoard.start("sLargeShot" + (1 + random(3))); } } } if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } drawClip(); if (health < 200) { timer = timer + ms; if (timer > (500 + ((health / 200) * 2000))) { var _local6 = rectangle.x + (Math.random() * rectangle.width); var _local5 = rectangle.y + (Math.random() * rectangle.height); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), _local6, _local5); if (random(100) > 50) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosion", _local6, _local5); } else { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosionsmall", _local6, _local5); } gameManager.setShake(7.5); timer = 0; } } } else { timer = timer + ms; if (timer > 250) { if (timer > 300) { var _local6 = rectangle.x + (Math.random() * rectangle.width); var _local5 = rectangle.y + (Math.random() * rectangle.height); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), _local6, _local5); if (random(100) > 50) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosion", _local6, _local5); gameManager.soundBoard.start("sSmallExplosionLong"); } else { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosionsmall", _local6, _local5); gameManager.soundBoard.start("sSmallExplosionShort"); } gameManager.setShake(7.5); timer = timer - 50; } if (((sound++) % 8) == 0) { if (random(100) > 50) { gameManager.soundBoard.start("sTankExplosion"); } else { gameManager.soundBoard.start("sJeepExplosion"); } } clip._alpha = clip._alpha - (55 * msp); if (clip._alpha <= 0) { dispose(); return(false); } } } if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } return(false); } function getSortDepth() { return(rectangle.y + rectangle.height); } function getRectangle() { return(rectangle); } function getMass() { return(0); } function hit(bullet) { if (!dead) { if ((bullet.getParent() == gameManager.player) && (bullet.getDamage() > 0)) { health = health - bullet.getDamage(); lastHit = 75; if (health <= 0) { gameManager.soundBoard.start("sJeepExplosion"); gameManager.soundBoard.start("sTankExplosion"); gameManager.gameStatistics.score = gameManager.gameStatistics.score + 1000000; gameManager.hud.update(); dead = true; transform.colorTransform = new flash.geom.ColorTransform(); var _local2 = 0; while (_local2 < 10) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local2++; } gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2)); new Explosion(gameManager.bulletsClip, gameManager, new Circle(rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2), rectangle.width), 100, true); timer = 0; } return(true); } } if (bullet.getParent() != this) { return(true); } return(false); } function getDamage() { if (!dead) { return(1); } return(0); } function getParent() { return(null); } function hitTarget(entity) { } static var index = 0; }
Symbol 177 MovieClip [__Packages.Powerup] Frame 0
class Powerup implements IEntity, ICircleCollision, IBullet { var name, clip, gameManager, circle, type, ammo; function Powerup (p, gm, dx, dy, t, a) { name = "Powerup" + (index++); var _local5 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local5); gameManager = gm; var _local4 = clip.createEmptyMovieClip("gun", 1); var _local2; if (t == GameStatistics.shotgun) { _local2 = gameManager.bitmapManager.getBitmap("h_shotgun"); } else if (t == GameStatistics.rocketlauncher) { _local2 = gameManager.bitmapManager.getBitmap("h_rocketlauncher"); } else if (t == GameStatistics.flamethrower) { _local2 = gameManager.bitmapManager.getBitmap("h_flamethrower"); } else if (t == GameStatistics.life) { _local2 = TileSheet.create(gameManager.bitmapManager.getBitmap("h_heart"), 32, 36)[0]; } else if (t == GameStatistics.bonus) { _local2 = gameManager.bitmapManager.getBitmap("h_points"); } else if (t == GameStatistics.grenade) { _local2 = gameManager.bitmapManager.getBitmap("h_grenades"); } _local4.attachBitmap(_local2, 1); _local4._y = _local4._y + (36 - _local2.height); clip.attachBitmap(gameManager.bitmapManager.getBitmap("box"), 0); circle = new Circle(dx, dy, 20); type = t; ammo = a; drawClip(); gameManager.addSort(this); gameManager.addBullet(this); } function drawClip() { clip._x = circle.x - 20; clip._y = circle.y - 20; } function dispose() { gameManager.removeSort(this); gameManager.removeBullet(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getCircle() { return(circle); } function getSortDepth() { return(circle.y); } function getParent() { return(null); } function getMass() { return(0); } function getDamage() { return(0); } function hitTarget(entity) { if (entity == gameManager.player) { gameManager.soundBoard.start("sPickup"); if (((type != GameStatistics.life) && (type != GameStatistics.grenade)) && (type != GameStatistics.bonus)) { if ((gameManager.gameStatistics.weapon == GameStatistics.flamethrower) && (gameManager.player.flame)) { gameManager.player.flame.dispose(); gameManager.player.flame = null; } gameManager.gameStatistics.weapon = type; gameManager.gameStatistics.ammo = ammo; } if (type == GameStatistics.life) { gameManager.gameStatistics.lives++; } if (type == GameStatistics.grenade) { gameManager.gameStatistics.grenades = gameManager.gameStatistics.grenades + ammo; } if (type == GameStatistics.bonus) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 10000; } gameManager.hud.update(); dispose(); } } static var index = 0; }
Symbol 178 MovieClip [__Packages.LevelChanger] Frame 0
class LevelChanger implements IEntity, ICircleCollision, IBullet { var name, clip, gameManager, bitmapData, circle, posX, posY, levelName; function LevelChanger (p, gm, x, y, l) { name = "LevelChanger" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; bitmapData = SheetManager.get("tablet2"); clip.attachBitmap(bitmapData, 0); clip.onRelease = DelegateExt.create(this, release); circle = new Circle(x, y, 10); posX = 60; posY = 40; levelName = l; drawClip(); gameManager.addBullet(this); } function dispose() { gameManager.removeBullet(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - posX; clip._y = circle.y - posY; } function update(ms, msp) { if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getCircle() { return(circle); } function getMass() { return(0); } function hit(bullet) { return(true); } function getDamage() { return(0); } function getParent() { return(null); } function release() { hitTarget(gameManager.player); } function hitTarget(entity) { if (entity == gameManager.player) { if (levelName == "MainMenu") { gameManager.commando.mainMenu(); } else if (levelName == "NewGame") { gameManager.commando.newGame(); } else if (levelName == "NextLevel") { gameManager.commando.nextLevel(); } else if (levelName == "GameOver") { gameManager.commando.gameOver(); } else if (levelName == "Win") { gameManager.commando.win(); } else if (levelName == "HighScore") { gameManager.commando.highscore(false); } else if (levelName == "HighScoreSubmit") { gameManager.commando.highscore(true); } else if (levelName == "SendScore") { gameManager.commando.sendScore(); } else if (levelName == "Continue") { gameManager.commando.cont(); } else { gameManager.commando.changeLevel(levelName); } } } static var index = 0; }
Symbol 179 MovieClip [__Packages.DelegateExt] Frame 0
class DelegateExt extends Object { function DelegateExt () { super(); } static function create(obj, func) { var _local2 = function () { var _local2 = arguments.callee; var _local4 = _local2.target_obj; var _local5 = _local2.func; var _local3 = _local2.userArguments_array; return(_local5.apply(_local4, arguments.concat(_local3))); }; _local2.target_obj = obj; _local2.func = func; _local2.userArguments_array = arguments.splice(2); return(_local2); } }
Symbol 180 MovieClip [__Packages.FallingObject] Frame 0
class FallingObject implements IEntity, IRectangleCollision, ITarget { static var cheat; var name, myIndex, clip, gameManager, rectangle, letter, scale, gravity, done; function FallingObject (p, gm, x, y, letter) { name = "FallingObject" + (index++); myIndex = index; var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; var _local3 = TileSheet.create(gameManager.bitmapManager.getBitmap("soldier"), 57, 91); clip.attachBitmap(_local3[letter], 0); rectangle = new flash.geom.Rectangle(x, y, clip._width, clip._height); this.letter = letter; scale = 2; gravity = 0; done = false; drawClip(); gameManager.addCollisionEntity(this); gameManager.soundBoard.start("sFall"); cheat = 0; } function dispose() { gameManager.removeCollisionEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = rectangle.x - (((rectangle.width * scale) - rectangle.width) / 2); clip._y = rectangle.y - (((rectangle.height * scale) - rectangle.height) / 2); clip._xscale = (clip._yscale = 100 * scale); } function update(ms, msp) { if (!done) { gravity = gravity + (10 * msp); scale = scale - (gravity * msp); if (scale < 1) { gameManager.soundBoard.start("sLargeExplosionShort"); scale = 1; done = true; new Explosion(gameManager.bulletsClip, gameManager, new Circle(rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2), (rectangle.height / 2) + 10), 1, false, false); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("soldierIndent"), rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2)); var _local2 = 0; while (_local2 < 2) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local2++; } } drawClip(); } if ((rectangle.y + rectangle.height) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return((rectangle.y + (rectangle.height * scale)) + myIndex); } function getRectangle() { if (!done) { return(nullRectangle); } return(rectangle); } function getMass() { return(0); } function hit(bullet) { if ((cheat == 0) && (letter == 4)) { cheat++; } else if ((cheat == 1) && (letter == 1)) { cheat++; } else if ((cheat == 2) && (letter == 6)) { cheat++; } else if ((cheat == 3) && (letter == 5)) { cheat++; } else if ((cheat == 4) && (letter == 3)) { gameManager.commando.cheat(); cheat = 0; } else { cheat = 0; } return(true); } static var index = 0; static var nullRectangle = new flash.geom.Rectangle(0, 0, 0, 0); }
Symbol 181 MovieClip [__Packages.SoldierTitle] Frame 0
class SoldierTitle implements IEntity { var name, parent, gameManager, timer, letters, x, y; function SoldierTitle (p, gm, x, y) { name = "SoldierTitle" + (index++); parent = p; gameManager = gm; timer = 0; letters = new Array(); var _local2 = 0; while (_local2 < 7) { letters.push(_local2); _local2++; } this.x = x; this.y = y; gameManager.addEntity(this); } function dispose() { gameManager.removeEntity(this); } function toString() { return(name); } function drawClip() { } function update(ms, msp) { timer = timer + ms; if (timer > 300) { timer = timer - 300; var _local2 = letters.splice(random(letters.length), 1)[0]; switch (_local2) { case 0 : new FallingObject(parent, gameManager, x, y, 0); break; case 1 : new FallingObject(parent, gameManager, x + 54, y, 1); break; case 2 : new FallingObject(parent, gameManager, x + 101, y, 2); break; case 3 : new FallingObject(parent, gameManager, x + 151, y, 3); break; case 4 : new FallingObject(parent, gameManager, x + 192, y, 4); break; case 5 : new FallingObject(parent, gameManager, x + 228, y, 5); break; case 6 : new FallingObject(parent, gameManager, x + 276, y, 6); } if (letters.length == 0) { dispose(); } } return(false); } static var index = 0; }
Symbol 182 MovieClip [__Packages.MCSprite] Frame 0
class MCSprite implements IEntity { var name, clip, gameManager, x, y; function MCSprite (p, gm, dx, dy, linkage) { name = "MCSprite" + (index++); var _local4 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local4); gameManager = gm; var _local2; if (linkage == "highscoreview") { _local2 = clip.attachMovie("highscore", "mc", 0); } else { _local2 = clip.attachMovie(linkage, "mc", 0); } if ((linkage == "highscore") || (linkage == "highscoreview")) { gameManager.commando.highscoreMC = _local2; } if (linkage == "highscoreview") { _local2.gotoAndStop("display"); _local2.display.text = "Loading..."; _local2.displayshadow.text = "Loading..."; gameManager.commando.loadScores(); } if (linkage == "highscore") { if (gameManager.commando.hsName != undefined) { _local2.inputname.text = gameManager.commando.hsName; _local2.inputemail.text = gameManager.commando.hsEmail; _local2.inputpassword.text = gameManager.commando.hsPassword; } else { _local2.inputname.text = ""; _local2.inputemail.text = ""; _local2.inputpassword.text = ""; } } x = dx; y = dy; drawClip(); gameManager.addEntity(this); } function drawClip() { clip._x = x; clip._y = y; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } static var index = 0; }
Symbol 183 MovieClip [__Packages.TextSprite] Frame 0
class TextSprite implements IEntity { var name, clip, gameManager, resize, fields, x, y; function TextSprite (p, gm, dx, dy, text, width, height, align) { name = "TextSprite" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; resize = false; fields = new Array(); fields.push(createTextField(clip, 0, 1, 1, text, 7100998, width, height, align)); fields.push(createTextField(clip, 1, 0, 0, text, 15986925, width, height, align)); x = dx; y = dy; drawClip(); gameManager.addEntity(this); } function createTextField(clip, depth, x, y, text, color, width, height, align) { if ((width == undefined) || (width == -1)) { width == 1000; resize = true; } if ((height == undefined) || (height == -1)) { height == 1000; resize = true; } var _local2 = clip.createTextField("TextField", depth, x, y, width, height); var _local3 = new TextFormat("standard 09_65", 8, color); _local3.align = "Center"; if (align == 1) { _local3.align = "Left"; } _local2.setNewTextFormat(_local3); _local2.selectable = false; _local2.multiline = true; _local2.text = text; _local2.embedFonts = true; _local2.wordWrap = true; if (resize) { _local2._height = _local2.textHeight + 15; _local2._width = _local2.textWidth + 15; } return(_local2); } function drawClip() { clip._x = x; clip._y = y; } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function update(ms, msp) { if (resize) { var _local3 = 0; while (_local3 < fields.length) { var _local2 = fields[_local3]; _local2._height = _local2.textHeight + 15; _local2._width = _local2.textWidth + 15; _local3++; } resize = false; } if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } static var index = 0; }
Symbol 184 MovieClip [__Packages.Bike] Frame 0
class Bike implements IEntity, IRectangleCollision, IBullet, ITarget, IEnemy { var parent, name, clip, gameManager, bitmapData, frames, rideAnimation, noRiderAnimation, currentAnimation, currentFrame, frameTimer, rectangle, health, dead, timer, shotTimer, rider, oldY, moveY, transform, lastHit; function Bike (p, gm, x, y) { parent = p; name = "Bike" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("bike"); frames = TileSheet.create(bitmapData, 64, 80); rideAnimation = [0, 1]; noRiderAnimation = [2]; currentAnimation = rideAnimation; currentFrame = 0; frameTimer = 0; setFrame(currentFrame); rectangle = new flash.geom.Rectangle(x, y, 40, 60); drawClip(); health = 2; dead = false; timer = 0; shotTimer = 0; rider = true; var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("bikeshadow"), 0); _local2._y = 30; gameManager.addMovingEntity(this); oldY = rectangle.y; moveY = Number.POSITIVE_INFINITY; transform = new flash.geom.Transform(clip); lastHit = 0; gameManager.commando.soundBoard.start("sBike"); } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function dispose() { gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = rectangle.x - 14; clip._y = rectangle.y - 20; } function update(ms, msp) { if ((rectangle.y != oldY) || (rectangle.y == moveY)) { hitTarget(null); } moveY = rectangle.y; if (!dead) { if (lastHit > 0) { lastHit = lastHit - ms; transform.colorTransform = new flash.geom.ColorTransform(1.2, 1.2, 1.2, 1, 0, 0, 0, 0); } else { transform.colorTransform = new flash.geom.ColorTransform(); } var _local2 = rideAnimation; rectangle.y = rectangle.y + (400 * msp); if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } if (rider) { if ((rectangle.y + (GameManager.SCREEN_HEIGHT * 0.55)) > gameManager.player.circle.y) { rider = false; if (rectangle.x < (GameManager.SCREEN_WIDTH / 2)) { new Enemy(parent, gameManager, new Circle((rectangle.x + rectangle.width) + 15, rectangle.y + 20, 20), false, 1); } else { new Enemy(parent, gameManager, new Circle(rectangle.x - 15, rectangle.y + 20, 20), false, -1); } } } if (!rider) { _local2 = noRiderAnimation; } if (currentAnimation != _local2) { currentAnimation = _local2; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 150) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame = 0; } frameTimer = frameTimer - 150; } setFrame(currentAnimation[currentFrame]); drawClip(); } else { dispose(); } if (rectangle.y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); return(false); } oldY = rectangle.y; return(false); } function getSortDepth() { return(rectangle.y + rectangle.height); } function getRectangle() { return(rectangle); } function getMass() { return(0.1); } function hit(bullet) { if (!dead) { if ((bullet.getParent() == gameManager.player) && (bullet.getDamage() > 0)) { health = health - bullet.getDamage(); lastHit = 75; if (health <= 0) { dead = true; transform.colorTransform = new flash.geom.ColorTransform(); if (rider) { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 3000; var _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, rectangle.x + random(20), rectangle.y + random(20), 250 + random(250)); _local2++; } new BloodParticle(gameManager.underGame, gameManager, rectangle.x + random(20), rectangle.y + random(20), 150 + random(100), "blood"); _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, rectangle.x + random(20), rectangle.y + random(20), 40 + random(400)); _local2++; } gameManager.soundBoard.start("sGore" + (1 + random(5))); new AnimatedSprite(gameManager.bulletsClip, gameManager, "bloodSpatter", rectangle.x + random(20), rectangle.y + random(20)); } else { gameManager.gameStatistics.score = gameManager.gameStatistics.score + 2000; } gameManager.hud.update(); var _local2 = 0; while (_local2 < 10) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local2++; } gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2)); new Explosion(gameManager.bulletsClip, gameManager, new Circle(rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2), rectangle.width * 0.75), 5, true); dispose(); } return(true); } } if (bullet.getParent() != this) { return(true); } return(false); } function getDamage() { if (!dead) { return(1); } return(0); } function getParent() { return(null); } function hitTarget(entity) { var _local2 = 0; while (_local2 < 10) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", rectangle.x + (Math.random() * rectangle.width), rectangle.y + (Math.random() * rectangle.height), 300 + random(300), 0.95); _local2++; } gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2)); new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosion", rectangle.x + (rectangle.width / 2), rectangle.y + (rectangle.height / 2)); gameManager.soundBoard.start("sSmallExplosionLong"); if (rider) { rider = false; if (rectangle.x < (GameManager.SCREEN_WIDTH / 2)) { new Enemy(parent, gameManager, new Circle((rectangle.x + rectangle.width) + 15, rectangle.y + 20, 20), false, 1); } else { new Enemy(parent, gameManager, new Circle(rectangle.x - 15, rectangle.y + 20, 20), false, -1); } } dispose(); } static var index = 0; }
Symbol 185 MovieClip [__Packages.IntroObject] Frame 0
class IntroObject implements IEntity { var name, myIndex, clip, gameManager, bitmaps, pause, times, x, y, timer, explosionTimer, current; function IntroObject (p, gm, x, y, string, numbers) { name = "IntroObject" + (index++); myIndex = index; var _local4 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local4); gameManager = gm; bitmaps = string.split(","); var _local2 = 0; while (_local2 < bitmaps.length) { bitmaps[_local2] = gm.bitmapManager.getBitmap(bitmaps[_local2]); _local2++; } pause = numbers[0]; times = numbers.slice(1, numbers.length); this.x = x; this.y = y; gameManager.addEntity(this); timer = 0; explosionTimer = 0; current = 0; drawClip(); } function dispose() { gameManager.removeEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = x; clip._y = y; } function update(ms, msp) { if ((timer > (times[current] - (pause * 2))) && (timer < (times[current] + pause))) { explosionTimer = explosionTimer + ms; if (explosionTimer > 100) { explosionTimer = explosionTimer - 100; var _local2 = x + random(400); var _local3 = 0; if (bitmaps.length < 3) { if (current == 0) { _local2 = 60 + random(290); _local3 = y + random(100); } else { _local2 = 20 + random(350); _local3 = (y + 85) + random(100); } } else { _local3 = y + random(100); if (current == 0) { _local2 = (x + 25) + random(175); } else if (current == 1) { _local2 = 200 + random(125); } else { _local2 = 325 + random(75); } } gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("scorch"), _local2, _local3); if (random(100) > 50) { gameManager.soundBoard.start("sSmallExplosionShort"); } else { gameManager.soundBoard.start("sSmallExplosionLong"); } if (random(100) > 50) { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosion", _local2, _local3); } else { new AnimatedSprite(gameManager.bulletsClip, gameManager, "explosionsmall", _local2, _local3); } gameManager.setShake(7.5); } } if ((timer < times[current]) && ((timer + ms) >= times[current])) { clip.attachBitmap(bitmaps[current], current); if (bitmaps.length < 3) { new Explosion(gameManager.bulletsClip, gameManager, new Circle(x + 200, y + (current * 45), 0), 0, true); if (current == 1) { var _local5 = EntityDef.fromString("0|400|introobject|SCCS,SCCC,SCCCO|100,500,1000,1500"); _local5.createEntity(gameManager); } } else if (current == 0) { new Explosion(gameManager.bulletsClip, gameManager, new Circle(x + 125, y + 50, 0), 0, true); } else if (current == 1) { new Explosion(gameManager.bulletsClip, gameManager, new Circle(x + 250, y + 50, 0), 0, true); } else { new Explosion(gameManager.bulletsClip, gameManager, new Circle(x + 351, y + 50, 0), 0, true); } current++; } timer = timer + ms; if (bitmaps.length < 3) { if (timer > 5000) { if (((gameManager.commando.url.indexOf("gamegarage.co.uk") != -1) || (gameManager.commando.url.indexOf("file:///") == 0)) || (gameManager.commando.url.indexOf("iopred.com") != -1)) { gameManager.commando.mainMenu(); } } } if (y > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { dispose(); } return(false); } function getSortDepth() { return(y); } static var index = 0; }
Symbol 186 MovieClip [__Packages.BitmapManager] Frame 0
class BitmapManager { var bitmaps; function BitmapManager () { bitmaps = new Array(); } function getBitmap(linkage) { var _local2 = 0; while (_local2 < bitmaps.length) { if (bitmaps[_local2].linkage == linkage) { return(bitmaps[_local2].bitmap); } _local2++; } return(loadBitmap(linkage)); } function loadBitmap(linkage) { var _local3 = flash.display.BitmapData.loadBitmap(linkage); if (_local3 != null) { var _local2 = new BitmapHelper(); _local2.linkage = linkage; _local2.bitmap = _local3; bitmaps.push(_local2); return(_local3); } return(null); } }
Symbol 187 MovieClip [__Packages.BitmapHelper] Frame 0
class BitmapHelper { function BitmapHelper () { } }
Symbol 188 MovieClip [__Packages.ScreenScroller] Frame 0
class ScreenScroller { var parent, levelData, clip, screen, x, y, tiles, screens, oy, ox; function ScreenScroller (p, ld) { parent = p; levelData = ld; var _local2 = parent.getNextHighestDepth(); clip = parent.createEmptyMovieClip("screenScroller" + _local2, _local2); screen = new flash.geom.Rectangle(0, 0, levelData.screenWidth, levelData.screenHeight); clip.scrollRect = screen; generateTiles(); initialise(); x = (y = 0); } function generateTiles() { tiles = new Array(); var _local4 = 0; while (_local4 < levelData.tileSheet.height) { var _local2 = 0; while (_local2 < levelData.tileSheet.width) { var _local3 = new flash.geom.Rectangle(_local2, _local4, levelData.tileWidth, levelData.tileHeight); tiles.push(_local3); _local2 = _local2 + levelData.tileWidth; } _local4 = _local4 + levelData.tileHeight; } } function initialise() { screens = new Array(); var _local2 = 0; while (_local2 < SCREENS) { screens[_local2] = new Screen(clip, levelData, tiles); screens[_local2].setStart(0, _local2 * levelData.screenTileHeight); screens[_local2].clip._y = (-_local2) * levelData.screenHeight; screens[_local2].update(0, _local2 * levelData.screenTileHeight); _local2++; } oy = (ox = 0); } function scroll() { screen.y = -y; clip.scrollRect = screen; } function update() { var _local2 = Math.floor(y / levelData.screenHeight); while (oy != _local2) { if (_local2 > oy) { oy++; screens[0].clip._y = screens[0].clip._y - (levelData.screenHeight * SCREENS); screens.push(screens.shift()); screens[SCREENS - 1].update(0, ((oy + SCREENS) - 1) * levelData.screenTileHeight); } else { oy--; screens[SCREENS - 1].clip._y = screens[SCREENS - 1].clip._y + (levelData.screenHeight * SCREENS); screens.unshift(screens.pop()); screens[0].update(0, oy * levelData.screenTileHeight); } } } function updateLevelData() { generateTiles(); var _local2 = 0; while (_local2 < screens.length) { screens[_local2].levelData = levelData; screens[_local2].tiles = tiles; screens[_local2].update(screens[_local2].x, screens[_local2].y); _local2++; } } function updateTile(tile, tx, ty) { levelData.data[ty][tx] = tile; var _local2 = 0; while (_local2 < SCREENS) { screens[_local2].bitmap.copyPixels(levelData.tileSheet, tiles[tile], new flash.geom.Point(tx * levelData.tileWidth, (levelData.screenHeight - ((ty + 1) * levelData.tileHeight)) - screens[_local2].clip._y), null, null, true); _local2++; } } function drawBitmap(bitmap, bx, by) { var _local2 = 0; while (_local2 < SCREENS) { screens[_local2].bitmap.copyPixels(bitmap, bitmap.rectangle, new flash.geom.Point((bx - (bitmap.width / 2)) - screens[_local2].clip._x, (by - (bitmap.height / 2)) - screens[_local2].clip._y), null, null, true); _local2++; } } var SCREENS = 2; }
Symbol 189 MovieClip [__Packages.Screen] Frame 0
class Screen { var parent, levelData, tiles, bitmap, clip; function Screen (p, ld, t) { parent = p; levelData = ld; tiles = t; bitmap = new flash.display.BitmapData(levelData.screenWidth, levelData.screenHeight, true, 4278190080); var _local2 = parent.getNextHighestDepth(); clip = parent.createEmptyMovieClip("screen" + _local2, _local2); clip.attachBitmap(bitmap, 0); } function toString() { return((x + " ") + y); } function update(x, y) { this.x = x; this.y = y; var _local3 = 0; while (_local3 < levelData.screenTileHeight) { var _local2 = 0; while (_local2 < levelData.screenTileWidth) { bitmap.copyPixels(levelData.tileSheet, tiles[levelData.data[_local3 + y][_local2 + x]], new flash.geom.Point(_local2 * levelData.tileWidth, bitmap.height - ((_local3 + 1) * levelData.tileHeight))); _local2++; } _local3++; } } var x = 0; var y = 0; }
Symbol 190 MovieClip [__Packages.Player] Frame 0
class Player implements IEntity, ICircleCollision, ITarget { var name, clip, gameManager, bitmapData, frames, idleAnimation, walkAnimation, walkAnimationReverse, walkLeftAnimation, walkRightAnimation, walkUpLeftAnimation, walkUpRightAnimation, walkDownRightAnimation, walkDownLeftAnimation, rollLeftAnimation, rollRightAnimation, rollUpAnimation, rollDownAnimation, deathAnimation, currentAnimation, currentFrame, frameTimer, circle, controlKey, up, down, left, right, lastKey, lastKeyTimer, lastTimer, dodgeTimer, dodgeX, dodgeY, dodging, state, dead, respawn, flame; function Player (p, gm, c) { name = "Player" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("commando"); frames = TileSheet.create(bitmapData, 64, 96); idleAnimation = [0, 1, 2, 3, 4, 5]; walkAnimation = [6, 7, 8, 9, 10, 11, 12, 13]; walkAnimationReverse = [13, 12, 11, 10, 9, 8, 7, 6]; walkLeftAnimation = [14, 15, 16, 17, 18, 19, 20, 21]; walkRightAnimation = [38, 39, 40, 41, 42, 43, 44, 45]; walkUpLeftAnimation = [22, 23, 24, 25, 26, 27, 28, 29]; walkUpRightAnimation = [30, 31, 32, 33, 34, 35, 36, 37]; walkDownRightAnimation = [29, 28, 27, 26, 25, 24, 23, 22]; walkDownLeftAnimation = [37, 36, 35, 34, 33, 32, 31, 30]; rollLeftAnimation = [59, 60, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 59]; rollRightAnimation = [70, 71, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 70]; rollUpAnimation = [81, 82, 83, 84, 85, 86, 86, 87, 88, 89, 90, 91, 83, 82]; rollDownAnimation = [81, 82, 83, 91, 90, 80, 88, 87, 86, 85, 84, 83, 82]; deathAnimation = [46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58]; currentAnimation = idleAnimation; currentFrame = 0; frameTimer = 0; setFrame(currentFrame); circle = c; drawClip(); shotTimer = 0; grenadeTimer = 0; gameManager.addMovingEntity(this); controlKey = false; up = false; down = false; left = false; right = false; lastKey = -1; lastKeyTimer = 0; lastTimer = 0; dodgeTimer = 0; dodgeX = 0; dodgeY = 0; dodging = 0; state = walk; var _local2 = clip.createEmptyMovieClip("shadow", 0); _local2.attachBitmap(gameManager.bitmapManager.getBitmap("shadow"), 0); _local2._y = 70; _local2._x = 8; dead = false; if (!gameManager.levelData.menu) { respawn = respawnTime; } flame = null; } function setFrame(frame) { clip.attachBitmap(frames[frame], 32); } function dispose() { gameManager.removeMovingEntity(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x - 32; clip._y = circle.y - 48; } function walk(ms, msp) { var _local5 = 0; var _local7 = 0; var _local12 = 200; var _local13 = 125; lastTimer = lastTimer + ms; dodgeTimer = dodgeTimer - ms; if (Key.isDown(38)) { _local7 = _local7 - (75 * msp); if (!up) { up = true; if (((lastTimer < (lastKeyTimer + DODGE_TIME)) && (lastKey == 0)) && (dodgeTimer < 0)) { dodgeTimer = DODGE_RECHARGE; dodgeY = -_local13; dodgeX = 0; dodging = DODGING; gameManager.soundBoard.start("sDodge"); state = dodge; } else { lastKeyTimer = lastTimer; lastKey = 0; } } } else { up = false; } if (Key.isDown(40)) { _local7 = _local7 + (75 * msp); if (!down) { down = true; if (((lastTimer < (lastKeyTimer + DODGE_TIME)) && (lastKey == 1)) && (dodgeTimer < 0)) { dodgeTimer = DODGE_RECHARGE; dodgeY = _local13; dodgeX = 0; dodging = DODGING; gameManager.soundBoard.start("sDodge"); state = dodge; } lastKeyTimer = lastTimer; lastKey = 1; } } else { down = false; } if (Key.isDown(37)) { _local5 = _local5 - (150 * msp); if (!left) { left = true; if (((lastTimer < (lastKeyTimer + DODGE_TIME)) && (lastKey == 2)) && (dodgeTimer < 0)) { dodgeTimer = DODGE_RECHARGE; dodgeY = 0; dodgeX = -_local12; dodging = DODGING; gameManager.soundBoard.start("sDodge"); state = dodge; } lastKeyTimer = lastTimer; lastKey = 2; } } else { left = false; } if (Key.isDown(39)) { _local5 = _local5 + (150 * msp); if (!right) { right = true; if (((lastTimer < (lastKeyTimer + DODGE_TIME)) && (lastKey == 3)) && (dodgeTimer < 0)) { dodgeTimer = DODGE_RECHARGE; dodgeY = 0; dodgeX = _local12; dodging = DODGING; gameManager.soundBoard.start("sDodge"); state = dodge; } lastKeyTimer = lastTimer; lastKey = 3; } } else { right = false; } shotTimer = shotTimer + ms; if (Key.isDown(32)) { var _local2 = gameManager.gameStatistics.weapon; if (shotTimer > GameStatistics.weapons[_local2].wait) { shotTimer = 0; var _local14 = -90; var _local10 = 0; if (_local5 < 0) { _local10 = _local10 - 3; } if (_local5 > 0) { _local10 = _local10 + 3; } if (_local7 != 0) { _local10 = _local10 * 0.5; } _local14 = _local14 + _local10; _local14 = _local14 * (Math.PI/180); var _local16 = Math.cos(_local14); var _local15 = Math.sin(_local14); if (_local2 == GameStatistics.machinegun) { gameManager.createBullet(circle.x + 10, circle.y - 20, _local16 * GameStatistics.weapons[_local2].speed, _local15 * GameStatistics.weapons[_local2].speed, GameStatistics.weapons[_local2].damage, this); gameManager.soundBoard.start("sSingleShot" + (1 + random(5))); } else if (_local2 == GameStatistics.shotgun) { var _local8 = 0.174532925199433; var _local4 = _local14 - _local8; var _local3 = 0; while (_local3 < 3) { _local16 = Math.cos(_local4); _local15 = Math.sin(_local4); gameManager.createBullet(circle.x + 10, circle.y - 20, _local16 * GameStatistics.weapons[_local2].speed, _local15 * GameStatistics.weapons[_local2].speed, GameStatistics.weapons[_local2].damage, this, "shotgunshell"); _local4 = _local4 + _local8; _local3++; } gameManager.soundBoard.start("sShotgun"); } else if (_local2 == GameStatistics.rocketlauncher) { gameManager.createBullet(circle.x + 10, circle.y - 20, _local16 * GameStatistics.weapons[_local2].speed, _local15 * GameStatistics.weapons[_local2].speed, GameStatistics.weapons[_local2].damage, this, "rocket", true); gameManager.soundBoard.start("sRocketlauncher"); } else if (_local2 == GameStatistics.flamethrower) { if (flame == null) { flame = new Flame(gameManager.bulletsClip, gameManager, 10, -20, GameStatistics.weapons[_local2].damage, this); flame.update(ms, msp); } } if (_local2 != GameStatistics.flamethrower) { gameManager.gameStatistics.shots++; } if (_local2 != GameStatistics.machinegun) { if (_local2 == GameStatistics.flamethrower) { } else { gameManager.gameStatistics.ammo--; } if (gameManager.gameStatistics.ammo <= 0) { gameManager.gameStatistics.weapon = GameStatistics.machinegun; gameManager.gameStatistics.ammo = -1; if (flame != null) { flame.dispose(); flame = null; } } gameManager.hud.update(); } } } else if (flame != null) { flame.dispose(); flame = null; } grenadeTimer = grenadeTimer + ms; if (Key.isDown(17)) { if (controlKey == false) { if (grenadeTimer > 250) { if (gameManager.gameStatistics.grenades > 0) { gameManager.soundBoard.start("sThrow"); var _local14 = -1.5707963267949; var _local16 = Math.cos(_local14); var _local15 = Math.sin(_local14); new Grenade(gameManager.bulletsClip, gameManager, new Circle(circle.x - 10, circle.y - 20, 2), _local16 * GameStatistics.weapons[GameStatistics.grenade].damage, GameStatistics.weapons[GameStatistics.grenade].speed * _local15, 50, GameStatistics.weapons[GameStatistics.grenade].damage, this); controlKey = true; gameManager.gameStatistics.grenades--; gameManager.hud.update(); grenadeTimer = 0; } } } } else { controlKey = false; } circle.y = circle.y + _local7; circle.x = circle.x + _local5; if ((circle.y + circle.radius) > (((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight) - 25)) { circle.y = (((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight) - circle.radius) - 25; } if ((circle.y - circle.radius) < (((-gameManager.levelData.height) * gameManager.levelData.tileWidth) + (gameManager.levelData.screenHeight * 1))) { circle.y = (((-gameManager.levelData.height) * gameManager.levelData.tileWidth) + (gameManager.levelData.screenHeight * 1)) + circle.radius; } if ((circle.x - circle.radius) < 0) { circle.x = circle.radius; } if ((circle.x + circle.radius) > gameManager.levelData.screenWidth) { circle.x = gameManager.levelData.screenWidth - circle.radius; } var _local6 = idleAnimation; if ((_local5 != 0) || (_local7 != 0)) { if (_local5 == 0) { if (_local7 > 0) { _local6 = walkAnimationReverse; } else { _local6 = walkAnimation; } } if (_local7 == 0) { if (_local5 > 0) { _local6 = walkRightAnimation; } else { _local6 = walkLeftAnimation; } } else { if (_local5 > 0) { if (_local7 > 0) { _local6 = walkDownRightAnimation; } else { _local6 = walkUpRightAnimation; } } if (_local5 < 0) { if (_local7 > 0) { _local6 = walkDownLeftAnimation; } else { _local6 = walkUpLeftAnimation; } } } } if (currentAnimation != _local6) { currentAnimation = _local6; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 100) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame = 0; } frameTimer = frameTimer - 100; } setFrame(currentAnimation[currentFrame]); drawClip(); return((_local5 != 0) || (_local7 != 0)); } function dodge(ms, msp) { dodging = dodging - ms; if (dodging < 0) { } if (flame != null) { flame.dispose(); flame = null; } var _local2 = currentAnimation; if (dodgeX < 0) { _local2 = rollLeftAnimation; } if (dodgeX > 0) { _local2 = rollRightAnimation; } if (dodgeY > 0) { _local2 = rollDownAnimation; } if (dodgeY < 0) { _local2 = rollUpAnimation; } if (currentAnimation != _local2) { currentAnimation = _local2; currentFrame = (frameTimer = 0); } frameTimer = frameTimer + ms; while (frameTimer > 50) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame--; state = walk; } frameTimer = frameTimer - 50; } setFrame(currentAnimation[currentFrame]); var _local4 = dodgeX * msp; var _local3 = dodgeY * msp; circle.y = circle.y + _local3; circle.x = circle.x + _local4; if ((circle.y + circle.radius) > (((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight) - 25)) { circle.y = (((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight) - circle.radius) - 25; } if ((circle.y - circle.radius) < (((-gameManager.levelData.height) * gameManager.levelData.tileWidth) + (gameManager.levelData.screenHeight * 1))) { circle.y = (((-gameManager.levelData.height) * gameManager.levelData.tileWidth) + (gameManager.levelData.screenHeight * 1)) + circle.radius; } if ((circle.x - circle.radius) < 0) { circle.x = circle.radius; } if ((circle.x + circle.radius) > gameManager.levelData.screenWidth) { circle.x = gameManager.levelData.screenWidth - circle.radius; } drawClip(); return(true); } function death(ms, msp) { if (currentAnimation != deathAnimation) { currentAnimation = deathAnimation; currentFrame = (frameTimer = 0); } if ((circle.y + circle.radius) > (((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight) - 25)) { circle.y = (((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight) - circle.radius) - 25; } if ((circle.y - circle.radius) < (((-gameManager.levelData.height) * gameManager.levelData.tileWidth) + (gameManager.levelData.screenHeight * 1.5))) { circle.y = (((-gameManager.levelData.height) * gameManager.levelData.tileWidth) + (gameManager.levelData.screenHeight * 1.5)) + circle.radius; } if ((circle.x - circle.radius) < 0) { circle.x = circle.radius; } if ((circle.x + circle.radius) > gameManager.levelData.screenWidth) { circle.x = gameManager.levelData.screenWidth - circle.radius; } frameTimer = frameTimer + ms; while (frameTimer > 100) { currentFrame++; if (currentFrame >= currentAnimation.length) { currentFrame--; if (gameManager.gameStatistics.lives > 1) { state = walk; respawn = respawnTime; dead = false; gameManager.gameStatistics.weapon = GameStatistics.machinegun; gameManager.gameStatistics.ammo = -1; gameManager.gameStatistics.grenades = 3; gameManager.gameStatistics.lives--; gameManager.hud.update(); } else { gameManager.gameStatistics.lives--; gameManager.hud.update(); gameManager.commando.gameOver(); } } frameTimer = frameTimer - 100; } setFrame(currentAnimation[currentFrame]); drawClip(); return(true); } function update(ms, msp) { if (respawn > 0) { var _local2 = 40; if (respawn > (respawnTime / 2)) { _local2 = 80; } if ((Math.floor(respawn / _local2) % 2) == 0) { clip._alpha = 50; } else { clip._alpha = 100; } respawn = respawn - ms; } else { clip._alpha = 100; } return(state(ms, msp)); } function getSortDepth() { return(circle.y + circle.radius); } function getCircle() { return(circle); } function getMass() { if (dead) { return(0); } return(1); } function hit(bullet) { var _local3 = ((bullet.getParent() != this) && (state == walk)) && (respawn <= 0); if (_local3) { if (bullet.getDamage() > 0) { gameManager.soundBoard.start("sPlayerDeath"); dead = true; state = death; if (flame != null) { flame.dispose(); flame = null; } var _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 250 + random(250)); _local2++; } new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 150 + random(100), "blood"); _local2 = 0; while (_local2 < 5) { new BloodParticle(gameManager.underGame, gameManager, (circle.x - random(10)) + random(20), circle.y - random(20), 40 + random(400)); _local2++; } new AnimatedSprite(gameManager.bulletsClip, gameManager, "bloodSpatter", (circle.x - random(10)) + random(20), circle.y - random(20)); gameManager.screenScroller.drawBitmap(gameManager.bitmapManager.getBitmap("blood"), circle.x, circle.y); } } else if (bullet instanceof Powerup) { return(true); } return(_local3); } static var index = 0; var shotTimer = 0; var grenadeTimer = 0; static var DODGE_TIME = 200; static var DODGING = 300; static var DODGE_RECHARGE = 400; static var respawnTime = 2000; }
Symbol 191 MovieClip [__Packages.Flame] Frame 0
class Flame implements IEntity, IRectangleCollision, IBullet, ITarget { var name, clip, gameManager, frames, frame, rectangle, ox, oy, damage, parent, lu, timer, dead; function Flame (p, gm, dx, dy, da, pa) { name = "Flame" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; frames = TileSheet.create(gameManager.bitmapManager.getBitmap("flame"), 80, 200); frame = 0; setFrame(frame); rectangle = new flash.geom.Rectangle(0, 0, 40, frames[0].height); ox = dx; oy = dy; drawClip(); damage = da; parent = pa; lu = 0; timer = 0; gameManager.addBullet(this); gameManager.collisionEntities[this] = this; dead = false; clip._alpha = 0; gameManager.soundBoard.start("sFlame", 0, 9999); } function setFrame(frame) { clip.attachBitmap(frames[frame], 0); } function dispose() { dead = true; } function toString() { return(name); } function drawClip() { clip._x = rectangle.x - ((frames[0].width - rectangle.width) / 2); clip._y = rectangle.y; } function update(ms, msp) { if (!dead) { if (gameManager.gameStatistics.weapon == GameStatistics.flamethrower) { gameManager.gameStatistics.ammo = gameManager.gameStatistics.ammo - (12 * msp); } clip._alpha = clip._alpha + (800 * msp); if (clip._alpha > 100) { clip._alpha = 100; } rectangle.x = (ox + gameManager.player.circle.x) - (rectangle.width / 2); rectangle.y = (oy + gameManager.player.circle.y) - rectangle.height; drawClip(); } else { if (gameManager.gameStatistics.weapon == GameStatistics.flamethrower) { gameManager.gameStatistics.ammo = gameManager.gameStatistics.ammo - (5 * msp); } clip._alpha = clip._alpha - (400 * msp); if (clip._alpha < 0) { gameManager.removeBullet(this); delete gameManager.collisionEntities[this]; clip.removeMovieClip(""); gameManager.soundBoard.stop("sFlame"); } } if (gameManager.gameStatistics.ammo < 0) { gameManager.gameStatistics.weapon = GameStatistics.machinegun; gameManager.gameStatistics.ammo = -1; gameManager.player.flame = null; gameManager.hud.update(); dispose(); } timer = timer + ms; while (timer > 100) { frame++; if (frame >= frames.length) { frame = 0; } setFrame(frame); timer = timer - 100; } lu = msp; return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getRectangle() { return(rectangle); } function getMass() { return(-1); } function getDamage() { if (dead) { return(0); } return(damage * lu); } function getParent() { return(parent); } function hitTarget(entity) { } function hit(bullet) { return(true); } static var index = 0; }
Symbol 192 MovieClip [__Packages.Grenade] Frame 0
class Grenade implements IEntity, ICircleCollision, IBullet { var name, clip, gameManager, bitmapData, circle, xspeed, yspeed, size, damage, parent, height, zspeed; function Grenade (p, gm, c, xs, ys, s, da, pa) { name = "Grenade" + (index++); var _local2 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local2); gameManager = gm; bitmapData = gameManager.bitmapManager.getBitmap("grenade"); clip.attachBitmap(bitmapData, 0); circle = c; xspeed = xs; yspeed = ys; drawClip(); size = s; damage = da; parent = pa; height = 5; zspeed = 0; gameManager.addBullet(this); } function dispose() { gameManager.removeBullet(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._xscale = (clip._yscale = 50 + (height * 10)); var _local2 = clip._xscale / 100; clip._x = circle.x - ((bitmapData.width / 2) * _local2); clip._y = circle.y - ((bitmapData.height / 2) * _local2); } function update(ms, msp) { height = height - (zspeed * msp); zspeed = zspeed + (10 * msp); if (height < 0) { gameManager.addBullet(new Explosion(gameManager.bulletsClip, gameManager, new Circle(circle.x, circle.y, size), damage, true, true, false)); dispose(); return(false); } circle.y = circle.y + (yspeed * msp); circle.x = circle.x + (xspeed * msp); drawClip(); var _local2 = false; if ((circle.x + circle.radius) < 0) { _local2 = true; } if ((circle.x - circle.radius) > gameManager.levelData.screenWidth) { _local2 = true; } if ((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) { _local2 = true; } if ((circle.y + circle.radius) < (-gameManager.screenScroller.y)) { _local2 = true; } if (_local2) { dispose(); return(false); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getCircle() { return(circle); } function getMass() { return(1); } function getDamage() { return(0); } function getParent() { return(parent); } function hitTarget(entity) { gameManager.addBullet(new Explosion(gameManager.bulletsClip, gameManager, new Circle(circle.x, circle.y, size), damage, true, true, false)); dispose(); } static var index = 0; }
Symbol 193 MovieClip [__Packages.HUD] Frame 0
class HUD { var clip, gameManager, fontWidth, font, grenadesBox, lives, livesNum, grenades, gunBox, score, gunAmmo; function HUD (p, gm) { clip = createClip(p, "HUD"); gameManager = gm; fontWidth = [20, 15, 18, 18, 18, 18, 19, 18, 18, 18, 32]; var _local5 = gameManager.bitmapManager.getBitmap("h_numbers"); font = new Array(); var _local4 = 0; var _local3 = 0; while (_local3 < fontWidth.length) { var _local2 = new flash.display.BitmapData(fontWidth[_local3], _local5.height, true, 0); _local2.copyPixels(_local5, new flash.geom.Rectangle(_local4, 0, _local2.width, _local2.height), new flash.geom.Point(0, 0), null, null, true); font.push(_local2); _local4 = _local4 + _local2.width; _local3++; } grenadesBox = createClipBitmap(clip, "h_grenades", 5, (GameManager.SCREEN_HEIGHT - gameManager.bitmapManager.getBitmap("h_grenades").height) - 5); var _local6 = createClipBitmap(clip, "h_points", GameManager.SCREEN_WIDTH - 37, 5); update(); lives = new Animation(gameManager, clip, "h_heart", 32, 36, 5, 5); } function dispose() { clip.removeMovieClip(""); } function createClip(p, name) { var _local1 = p.getNextHighestDepth(); return(p.createEmptyMovieClip(name + _local1, _local1)); } function createClipBitmap(p, linkage, x, y) { var _local2 = createClip(p, linkage); _local2.attachBitmap(gameManager.bitmapManager.getBitmap(linkage), 0); _local2._x = x; _local2._y = y; return(_local2); } function createClipBitmapData(p, b, x, y) { var _local2 = createClip(p, "bitmap"); _local2.attachBitmap(b, 0); _local2._x = x; _local2._y = y; return(_local2); } function createBitmapString(p, string, x, y) { var _local4 = createClip(p, string); _local4._x = x; _local4._y = y; var _local5 = 0; var _local3 = 0; while (_local3 < string.length) { var _local2 = string.charCodeAt(_local3) - "0".charCodeAt(0); if ((_local2 < 0) || (_local2 > 9)) { _local2 = font.length - 1; } createClipBitmapData(_local4, font[_local2], _local5, 0); _local5 = _local5 + (font[_local2].width - 2); if ((_local2 < 0) || (_local2 > 9)) { return(_local4); } _local3++; } return(_local4); } function frame(ms) { lives.update(ms, 1 + ((gameManager.gameStatistics.lives / 10) * 10)); } function update() { livesNum.removeMovieClip(""); livesNum = createBitmapString(clip, gameManager.gameStatistics.lives.toString(), 42, 10); grenades.removeMovieClip(""); grenades = createBitmapString(clip, Math.floor(gameManager.gameStatistics.grenades).toString(), (grenadesBox._x + grenadesBox._width) + 5, grenadesBox._y + ((grenadesBox._height - font[0].height) / 2)); gunBox.removeMovieClip(""); var _local2 = gameManager.gameStatistics.weapon; score.removeMovieClip(""); score = createBitmapString(clip, Math.floor(gameManager.gameStatistics.score).toString(), 0, 0); score._y = 10; score._x = (GameManager.SCREEN_WIDTH - score._width) - 37; if (_local2 == GameStatistics.shotgun) { gunBox = createClipBitmap(clip, "h_shotgun", (grenades._x + grenades._width) + 50, grenadesBox._y); } else if (_local2 == GameStatistics.rocketlauncher) { gunBox = createClipBitmap(clip, "h_rocketlauncher", (grenades._x + grenades._width) + 50, grenadesBox._y); } else if (_local2 == GameStatistics.flamethrower) { gunBox = createClipBitmap(clip, "h_flamethrower", (grenades._x + grenades._width) + 50, grenadesBox._y); } else { gunBox = createClipBitmap(clip, "h_machinegun", (grenades._x + grenades._width) + 50, grenadesBox._y); } gunBox._y = gunBox._y + (grenadesBox._height - gunBox._height); gunAmmo.removeMovieClip(""); gunAmmo = createBitmapString(clip, Math.floor(gameManager.gameStatistics.ammo).toString(), (gunBox._x + gunBox._width) + 5, grenades._y); } }
Symbol 194 MovieClip [__Packages.Animation] Frame 0
class Animation { var clip, frames, currentframe, times, timer, timerDif; function Animation (gameManager, clip, linkage, w, h, x, y) { var _local2 = clip.getNextHighestDepth(); this.clip = clip.createEmptyMovieClip(linkage, _local2); frames = TileSheet.create(gameManager.bitmapManager.getBitmap(linkage), w, h); currentframe = random(frames.length); this.clip.attachBitmap(frames[currentframe], 0); times = [50, 25, 50, 25]; this.clip._x = x; this.clip._y = y; timer = 0; timerDif = random(100); } function update(ms, add) { timer = timer + ms; var _local2 = times[currentframe] * add; while (timer > _local2) { clip.attachBitmap(frames[currentframe], 0); currentframe++; if (currentframe >= frames.length) { currentframe = 0; } timer = timer - _local2; } } function dispose() { clip.removeMovieClip(""); } }
Symbol 195 MovieClip [__Packages.Editor] Frame 0
class Editor { var gameManager, levelData, clip, mouseD, paint, options, eEntities, area, paintButton, optionsButton, entitiesButton, exportArea, entitiesAll, trash, drag, dragX, dragY, startDragX, startDragY, clone, areaClip, areaExport, tile, selected, optionsClip, resize, resizeButton, export, importf, customName, collisionType, powerupType, powerupValue, waterCustom, waterWidth, waterHeight, enemyType, customString, customNumbers, entitiesClip, startAreaX, startAreaY; function Editor (gm) { gameManager = gm; levelData = gameManager.levelData; var _local4 = gameManager.clip.getNextHighestDepth(); clip = gameManager.clip.createEmptyMovieClip("editor", _local4); gameManager.pause(); gameManager.clip.onEnterFrame = DelegateExt.create(this, enterFrame); mouseD = false; Mouse.addListener(clip); clip.onMouseDown = DelegateExt.create(this, mouseDown); clip.onMouseUp = DelegateExt.create(this, mouseUp); clearGameManager(); paint = false; options = false; eEntities = false; area = false; paintButton = createButton(clip, GameManager.SCREEN_WIDTH, 0, "paint"); paintButton.onRelease = DelegateExt.create(this, paintButtonRelease); optionsButton = createButton(clip, GameManager.SCREEN_WIDTH, 42, "resize"); optionsButton.onRelease = DelegateExt.create(this, optionsButtonRelease); entitiesButton = createButton(clip, GameManager.SCREEN_WIDTH, 84, "entities"); entitiesButton.onRelease = DelegateExt.create(this, entitiesButtonRelease); exportArea = createButton(clip, GameManager.SCREEN_WIDTH, 126, "paint"); exportArea.onRelease = DelegateExt.create(this, exportAreaRelease); entitiesAll = new Array(); var _local3 = 0; while (_local3 < levelData.entitiesAll.length) { var _local2 = levelData.entitiesAll[_local3].createEntity(gameManager, true); _local2.clip.onPress = DelegateExt.create(this, entityPress, _local2); _local2.clip.onRelease = (_local2.clip.onReleaseOutside = DelegateExt.create(this, entityRelease, _local2)); entitiesAll.push(_local2); _local3++; } trash = null; } function entityPress(e) { drag = e; var _local3 = 0; var _local2 = 0; if (drag instanceof ICircleCollision) { _local3 = drag.circle.x; _local2 = drag.circle.y; } else if (drag instanceof IRectangleCollision) { _local3 = drag.rectangle.x; _local2 = drag.rectangle.y; } else { _local3 = drag.x; _local2 = drag.y; } dragX = clip._xmouse - _local3; dragY = (clip._ymouse - gameManager.screenScroller.y) - _local2; startDragX = _local3; startDragY = _local2; } function entityRelease(e) { drag = null; if (eEntities) { if (trash.hitTest(clip._xmouse, clip._ymouse)) { var _local7 = 0; while (_local7 < entitiesAll.length) { if (entitiesAll[_local7] == e) { entitiesAll.splice(_local7, 1); levelData.entitiesAll.splice(_local7, 1); e.dispose(); return(undefined); } _local7++; } } if (clone.hitTest(clip._xmouse, clip._ymouse)) { var _local7 = 0; while (_local7 < entitiesAll.length) { if (entitiesAll[_local7] == e) { var _local6 = levelData.entitiesAll[_local7]; var _local8 = new EntityDef(_local6.x, _local6.y, _local6.entity, _local6.entityData, _local6.entityNumbers); levelData.entitiesAll.push(_local8); var _local2 = _local8.createEntity(gameManager, true); _local2.clip.onPress = DelegateExt.create(this, entityPress, _local2); _local2.clip.onRelease = (_local2.clip.onReleaseOutside = DelegateExt.create(this, entityRelease, _local2)); entitiesAll.push(_local2); var _local5 = startDragX; var _local4 = startDragY; if (e instanceof ICircleCollision) { e.circle.x = _local5; e.circle.y = _local4; _local2.circle.x = _local5 + 100; _local2.circle.y = _local4; } else if (drag instanceof IRectangleCollision) { e.rectangle.x = _local5; e.rectangle.y = _local4; _local2.rectangle.x = _local5 + 100; _local2.rectangle.y = _local4; } else { e.x = _local5; e.y = _local4; _local2.x = _local5 + 100; _local2.y = _local4; } _local6.x = _local5; _local6.y = _local4; _local8.x = _local5 + 100; _local8.y = _local4; e.drawClip(); _local2.drawClip(); return(undefined); } _local7++; } } } } function clearGameManager() { with (gameManager) { for (z in entities) { entities[z].dispose(); } entities = (movingEntities = (collisionEntities = (bullets = (sortEntities = new Object())))); hud.dispose(); hud = null; } } function createButton(clip, x, y, linkage) { var _local3 = clip.getNextHighestDepth(); var _local2 = clip.createEmptyMovieClip(linkage + _local3, _local3); _local2.attachBitmap(gameManager.bitmapManager.getBitmap(linkage), 0); _local2._x = x; _local2._y = y; return(_local2); } function createTextField(clip, x, y, text, editable) { var _local2 = clip.getNextHighestDepth(); var _local1 = clip.createTextField("tf" + _local2, _local2, x, y, 100, 25); if (editable) { _local1.type = "input"; _local1.border = true; _local1.borderColor = 16777215 /* 0xFFFFFF */; } else { _local1.selectable = false; } _local1.setNewTextFormat(new TextFormat("Arial", 12, 16777215)); _local1.text = text; return(_local1); } function mouseDown() { mouseD = true; } function mouseUp() { mouseD = false; } function dispose() { clip.removeMovieClip(""); gameManager = null; levelData = null; } function paintButtonRelease() { endOptions(); endEntities(); endArea(); if (!paint) { startPaint(); } else { endPaint(); } } function optionsButtonRelease() { endPaint(); endEntities(); endArea(); if (!options) { startOptions(); } else { endOptions(); } } function entitiesButtonRelease() { endOptions(); endPaint(); endArea(); if (!eEntities) { startEntities(); } else { endEntities(); } } function exportAreaRelease() { endOptions(); endPaint(); endEntities(); if (!area) { startArea(); } else { endArea(); } } function startArea() { area = true; var _local2 = clip.getNextHighestDepth(); areaClip = clip.createEmptyMovieClip("area", _local2); areaExport = createTextField(areaClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 25, "", true); areaClick = 0; } function endArea() { areaClip.removeMovieClip(""); area = false; } function startPaint() { var _local3 = gameManager.bitmapManager.loadBitmap(levelData.tileSheetName); var _local2 = clip.getNextHighestDepth(); tile = clip.createEmptyMovieClip("tileset", _local2); tile.attachBitmap(_local3, 0); tile._x = GameManager.SCREEN_WIDTH + 40; selected = 0; paint = true; } function endPaint() { tile.removeMovieClip(""); paint = false; } function startOptions() { var _local2 = clip.getNextHighestDepth(); optionsClip = clip.createEmptyMovieClip("options", _local2); createTextField(optionsClip, GameManager.SCREEN_WIDTH, GameManager.SCREEN_HEIGHT / 2, "Map Height:", false); resize = createTextField(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 25, "", true); resize.text = "" + levelData.height; resizeButton = createButton(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 55, "resize"); resizeButton.onRelease = DelegateExt.create(this, resizeButtonRelease); createTextField(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 95, "Export:", false); export = createTextField(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 120, "", true); var _local3 = createButton(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 150, "resize"); _local3.onRelease = DelegateExt.create(this, exportButtonRelease); createTextField(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 190, "Import:", false); importf = createTextField(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 215, "", true); var _local4 = createButton(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) + 245, "resize"); _local4.onRelease = DelegateExt.create(this, importButtonRelease); createTextField(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) - 95, "New Map", false); var _local5 = createButton(optionsClip, GameManager.SCREEN_WIDTH, (GameManager.SCREEN_HEIGHT / 2) - 55, "resize"); _local5.onRelease = DelegateExt.create(this, newButtonRelease); options = true; } function exportButtonRelease() { export.text = levelData.toString(); } function importButtonRelease() { if (importf.text == "") { return(undefined); } gameManager.levelData = LevelData.fromString(gameManager, importf.text); gameManager.screenScroller.levelData = gameManager.levelData; levelData = gameManager.levelData; flush(); } function endOptions() { optionsClip.removeMovieClip(""); options = false; } function createEntityButton(p, name, x, y) { var _local2 = createButton(p, x, y, "entities"); createTextField(p, x + 42, y, name, false); _local2.onRelease = DelegateExt.create(this, createEntity, name); } function createEntity(type) { var _local6 = null; if (type == "water") { type = "graphicbarrier"; } var _local12 = false; if (type == "custom") { type = customName.text; _local12 = true; } _local6 = new EntityDef(GameManager.SCREEN_WIDTH / 2, (GameManager.SCREEN_HEIGHT / 2) - gameManager.screenScroller.y, type); if (type == "collisionobject") { _local6.entityData = collisionType.text; } if (type == "powerup") { var _local10 = Number(powerupType.text); var _local11 = Number(powerupValue.text); if (((((_local10 == NaN) || (_local11 == NaN)) || (_local11 <= 0)) || (_local10 <= 0)) || (_local10 > 6)) { return(undefined); } _local6.entityNumbers = [_local10, _local11]; } if (type == "graphicbarrier") { if (waterCustom.text != "") { _local6.entityData = waterCustom.text; } else { var _local5 = Number(waterWidth.text); var _local7 = Number(waterHeight.text); if ((((_local5 == NaN) || (_local7 == NaN)) || (_local5 <= 0)) || (_local7 <= 0)) { return(undefined); } var _local4 = new Array(); var _local2 = 0; while (_local2 < _local7) { _local4[_local2] = new Array(); var _local3 = 0; while (_local3 < _local5) { if (_local2 == 0) { _local4[_local2][_local3] = 67; } else if (_local2 == 1) { _local4[_local2][_local3] = 77; } else { _local4[_local2][_local3] = 3; } _local3++; } _local2++; } _local6.entityData = CompressArray.compress(_local4); } } if ((type == "enemy") && (enemyType.text != "")) { _local6.entityNumbers = enemyType.text.split(","); } if (_local12) { _local6.entityData = customString.text; if (customNumbers.text != "") { _local6.entityNumbers = customNumbers.text.split(","); } } if (_local6 != null) { levelData.entitiesAll.push(_local6); var _local9 = _local6.createEntity(gameManager, true); _local9.clip.onPress = DelegateExt.create(this, entityPress, _local9); _local9.clip.onRelease = (_local9.clip.onReleaseOutside = DelegateExt.create(this, entityRelease, _local9)); entitiesAll.push(_local9); } } function startEntities() { var _local3 = clip.getNextHighestDepth(); entitiesClip = clip.createEmptyMovieClip("entities", _local3); var _local2 = GameManager.SCREEN_HEIGHT * 0.25; createEntityButton(entitiesClip, "collisionobject", GameManager.SCREEN_WIDTH, _local2); collisionType = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 200, _local2, "bush", true); createEntityButton(entitiesClip, "barrel", GameManager.SCREEN_WIDTH, _local2 + 42); createEntityButton(entitiesClip, "enemy", GameManager.SCREEN_WIDTH, _local2 + 84); enemyType = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 200, _local2 + 84, "", true); createEntityButton(entitiesClip, "sniper", GameManager.SCREEN_WIDTH, _local2 + 126); createEntityButton(entitiesClip, "shooter", GameManager.SCREEN_WIDTH, _local2 + 168); createEntityButton(entitiesClip, "jeep", GameManager.SCREEN_WIDTH, _local2 + 210); createEntityButton(entitiesClip, "powerup", GameManager.SCREEN_WIDTH, _local2 + 252); createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 100, _local2 + 252, "Type (1:Shotgun) (2:Rocket) (3:Flame)", false); powerupType = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 200, _local2 + 252, "", true); createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 100, _local2 + 277, "Amount", false); powerupValue = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 200, _local2 + 277, "", true); createEntityButton(entitiesClip, "water", GameManager.SCREEN_WIDTH, _local2 + 292); waterWidth = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 100, _local2 + 302, "", true); createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 200, _local2 + 302, "x", false); waterHeight = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 225, _local2 + 302, "", true); waterCustom = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 325, _local2 + 302, "", true); createEntityButton(entitiesClip, "boss1", GameManager.SCREEN_WIDTH, _local2 + 334); createEntityButton(entitiesClip, "custom", GameManager.SCREEN_WIDTH, _local2 + 376); customName = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 100, _local2 + 376, "", true); createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 200, _local2 + 376, ":", false); customString = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 225, _local2 + 376, "", true); customNumbers = createTextField(entitiesClip, GameManager.SCREEN_WIDTH + 325, _local2 + 376, "", true); waterWidth.text = "3"; waterHeight.text = "3"; powerupType.text = "1"; powerupValue.text = "10"; trash = createButton(entitiesClip, (GameManager.SCREEN_WIDTH * 2) - 40, GameManager.SCREEN_HEIGHT - 40, "trash"); clone = createButton(entitiesClip, (GameManager.SCREEN_WIDTH * 2) - 120, GameManager.SCREEN_HEIGHT - 40, "resize"); eEntities = true; } function endEntities() { entitiesClip.removeMovieClip(""); trash = null; eEntities = false; } function newButtonRelease() { gameManager.levelData.height = 15; gameManager.levelData.data = new Array(); var _local3 = 0; while (_local3 < 15) { gameManager.levelData.data[_local3] = new Array(); var _local2 = 0; while (_local2 < 10) { gameManager.levelData.data[_local3][_local2] = 1; _local2++; } _local3++; } gameManager.levelData.entitiesAll = new Array(); flush(); } function resizeButtonRelease() { var _local4 = Number(resize.text); if (_local4 != NaN) { var _local5 = levelData.height; levelData.height = _local4; if (_local4 > _local5) { var _local3 = _local5; while (_local3 < _local4) { levelData.data[_local3] = new Array(); var _local2 = 0; while (_local2 < levelData.width) { levelData.data[_local3][_local2] = 1; _local2++; } _local3++; } } } } function flush() { delete gameManager.clip.onEnterFrame; clearGameManager(); levelData.generateEntities(gameManager); gameManager.screenScroller.updateLevelData(); gameManager.init(); } function enterFrame() { if (Key.isDown(35)) { flush(); return(undefined); } if (drag != null) { var x = (clip._xmouse - dragX); var y = ((clip._ymouse - gameManager.screenScroller.y) - dragY); if (drag instanceof ICircleCollision) { drag.circle.x = x; drag.circle.y = y; } else if (drag instanceof IRectangleCollision) { drag.rectangle.x = x; drag.rectangle.y = y; } else { drag.x = x; drag.y = y; } var i = 0; while (i < entitiesAll.length) { if (entitiesAll[i] == drag) { var ed = levelData.entitiesAll[i]; ed.x = x; ed.y = y; break; } i++; } drag.drawClip(); } var y = 0; if (Key.isDown(38)) { y = y + 5; } if (Key.isDown(40)) { y = y - 5; } if (mouseD) { if (paint && (!drag)) { var mx = clip._xmouse; var my = clip._ymouse; if ((mx >= tile._x) && (mx < (tile._x + tile._width))) { if ((my >= tile._y) && (my < (tile._y + tile._height))) { mx = mx - tile._x; my = my - tile._y; var tx = Math.floor(mx / levelData.tileWidth); var ty = Math.floor(my / levelData.tileHeight); selected = (ty * Math.floor(tile._width / levelData.tileHeight)) + tx; } } else if ((mx >= gameManager.clip._x) && (mx < (gameManager.clip._x + GameManager.SCREEN_WIDTH))) { if ((my >= gameManager.clip._y) && (my < (gameManager.clip._y + GameManager.SCREEN_HEIGHT))) { mx = mx - gameManager.clip._x; my = my - gameManager.clip._y; my = my - GameManager.SCREEN_HEIGHT; my = my - gameManager.screenScroller.y; var tx = Math.floor(mx / levelData.tileWidth); var ty = ((-Math.floor(my / levelData.tileHeight)) - 1); gameManager.screenScroller.updateTile(selected, tx, ty); } } } if (area) { var ex = Math.floor(clip._xmouse / levelData.tileWidth); var ey = Math.floor((-((clip._ymouse - gameManager.screenScroller.y) - GameManager.SCREEN_HEIGHT)) / levelData.tileHeight); if ((((ex >= 0) && (ey >= 0)) && (ey < levelData.height)) && (ex < levelData.width)) { if (areaClick == 0) { startAreaX = ex; startAreaY = ey; } else if (areaClick == 2) { if ((startAreaX <= ex) && (startAreaY >= ey)) { areaExport.text = (((ex - startAreaX) + 1) + ",") + ((startAreaY - ey) + 1); var y = startAreaY; while (y >= ey) { var x = startAreaX; while (x <= ex) { areaExport.text = areaExport.text + ("," + levelData.data[y][x]); x++; } y--; } } } areaClick++; if (areaClick == 4) { areaClick = 0; } mouseD = false; } } } with (gameManager) { screenScroller.y = screenScroller.y + y; if (screenScroller.y < 0) { screenScroller.y = 0; } if (screenScroller.y > ((screenScroller.levelData.height * screenScroller.levelData.tileHeight) - GameManager.SCREEN_HEIGHT)) { screenScroller.y = (screenScroller.levelData.height * screenScroller.levelData.tileHeight) - GameManager.SCREEN_HEIGHT; } screenScroller.y = Math.round(screenScroller.y); game._y = screenScroller.y; bulletsClip._y = screenScroller.y; screenScroller.scroll(); screenScroller.update(); } } var areaClick = 0; }
Symbol 196 MovieClip [__Packages.SoundBoard] Frame 0
class SoundBoard { var sounds, soundsClip, active; function SoundBoard (clip, depth, active) { sounds = new Array(); soundsClip = clip.createEmptyMovieClip("SoundBoard" + depth, depth); this.active = active; } function attachSound(soundName, unForce) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { return(sounds[_local2].soundVar); } _local2++; } var _local4 = new Object(); _local4.soundName = soundName; var _local6 = soundsClip.createEmptyMovieClip(soundName, sounds.length); var _local5 = new Sound(_local6); _local5.attachSound(soundName); _local4.soundVar = _local5; if (unForce == true) { _local4.unForce = true; } else { _local4.unForce = false; } sounds.push(_local4); return(_local5); } function getSound(soundName) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { return(sounds[_local2].soundVar); } _local2++; } } function start(soundName, secondsOffset, loops, forceActive) { if (active || (forceActive)) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { sounds[_local2].soundVar.stop(); sounds[_local2].soundVar.start(secondsOffset, loops); break; } _local2++; } } } function stop(soundName) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { sounds[_local2].soundVar.stop(); break; } _local2++; } } function setVolume(soundName, vol) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { sounds[_local2].soundVar.setVolume(vol); } _local2++; } } function getVolume(soundName) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { return(sounds[_local2].soundVar.getVolume()); } _local2++; } } function setPan(soundName, pan) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { sounds[_local2].soundVar.setPan(pan); } _local2++; } } function getPan(soundName) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { return(sounds[_local2].soundVar.getPan()); } _local2++; } } function setTransform(soundName, trans) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { sounds[_local2].soundVar.setTransform(trans); } _local2++; } } function getTransform(soundName) { var _local2 = 0; while (_local2 < sounds.length) { if (sounds[_local2].soundName == soundName) { return(sounds[_local2].soundVar.getTransform()); } _local2++; } } function stopAllSounds() { var _local2 = 0; while (_local2 < sounds.length) { if (!sounds[_local2].unForce) { sounds[_local2].soundVar.stop(); } _local2++; } } function setActive(active) { this.active = active; if (!this.active) { stopAllSounds(); } } }
Symbol 197 MovieClip [__Packages.Bullet] Frame 0
class Bullet implements IEntity, ICircleCollision, IBullet { var name, clip, gameManager, bitmapData, circle, xspeed, yspeed, damage, parent, explosive; function Bullet (p, gm, b, c, xs, ys, da, pa, ex) { name = "Bullet" + (index++); var _local3 = p.getNextHighestDepth(); clip = p.createEmptyMovieClip(name, _local3); var _local2 = clip.createEmptyMovieClip("clip2", 0); gameManager = gm; bitmapData = b; _local2.attachBitmap(bitmapData, 0); _local2._x = (-bitmapData.width) / 2; _local2._y = (-bitmapData.height) / 2; circle = c; xspeed = xs; yspeed = ys; drawClip(); damage = da; parent = pa; explosive = ex; } function dispose() { gameManager.removeBullet(this); clip.removeMovieClip(""); } function toString() { return(name); } function drawClip() { clip._x = circle.x; clip._y = circle.y; } function update(ms, msp) { circle.y = circle.y + (yspeed * msp); circle.x = circle.x + (xspeed * msp); drawClip(); var _local2 = false; if (((circle.x + circle.radius) < 0) && (xspeed <= 0)) { _local2 = true; } if (((circle.x - circle.radius) > gameManager.levelData.screenWidth) && (xspeed >= 0)) { _local2 = true; } if (((circle.y - circle.radius) > ((-gameManager.screenScroller.y) + gameManager.levelData.screenHeight)) && (yspeed >= 0)) { _local2 = true; } if (((circle.y + circle.radius) < (-gameManager.screenScroller.y)) && (yspeed <= 0)) { _local2 = true; } if (_local2) { dispose(); return(false); } return(false); } function getSortDepth() { return(Number.POSITIVE_INFINITY); } function getCircle() { return(circle); } function getMass() { return(1); } function getDamage() { return(damage); } function getParent() { return(parent); } function hitTarget(entity) { var _local3 = entity; if (_local3.getMass() <= 0) { gameManager.soundBoard.start("sMortarFire"); new AnimatedSprite(gameManager.bulletsClip, gameManager, "bulletSpark", circle.x, circle.y); } if (explosive) { var _local2 = 0; while (_local2 < 3) { new AnimatedParticle(gameManager.bulletsClip, gameManager, "shrapnel", circle.x, circle.y, 300 + random(300), 0.95); _local2++; } if (parent == gameManager.player) { new Explosion(gameManager.bulletsClip, gameManager, new Circle(circle.x, circle.y, 80), 5, true, true, false); } else { new Explosion(gameManager.bulletsClip, gameManager, new Circle(circle.x, circle.y, 80), 0, true, true, false); } } if (entity instanceof IEntity) { if (parent == gameManager.player) { gameManager.gameStatistics.hits++; } } dispose(); } static var index = 0; }
Symbol 198 MovieClip [__Packages.FPS] Frame 0
class FPS { var clip, fps, textField, checks, counter, percentage, interval; function FPS (parent, display) { var _local2 = parent.getNextHighestDepth(); clip = parent.createEmptyMovieClip("FPS" + _local2, _local2); clip.frames = 0; clip.onEnterFrame = function () { this.frames++; }; clip._x = 350; fps = FRAMERATE; if (display) { textField = clip.createTextField("TextField", 0, 0, 0, 100, 20); textField.setNewTextFormat(new TextFormat("standard 09_65", 8, 16777215)); textField.selectable = false; } checks = 0; counter = 0; percentage = 1; interval = setInterval(this, "tick", 1000); } function dispose() { clearInterval(interval); clip.removeMovieClip(""); } function tick() { fps = clip.frames; counter = counter + fps; checks++; if (checks >= 3) { var _local2 = counter / checks; percentage = _local2 / FRAMERATE; checks = 0; counter = 0; } if (textField != undefined) { textField.text = clip.frames; } clip.frames = 0; } static var FRAMERATE = 120; }
Symbol 199 MovieClip [__Packages.SoundBoardTransform] Frame 0
class SoundBoardTransform { var sb, transformations; function SoundBoardTransform (sb) { this.sb = sb; transformations = new Array(); } function addTransform(soundName, transform, speed, target) { var _local2 = 0; while (_local2 < transformations.length) { if (transformations[_local2].soundName == soundName) { clearInterval(transformations[_local2].interval); transformations[_local2] = null; } _local2++; } var _local3 = new Object(); var _local5 = setInterval(this, "doTransform", speed, transformations.length); _local3.interval = _local5; _local3.soundName = soundName; _local3.transform = transform; _local3.target = target; transformations.push(_local3); } function addTransformStartLoop(soundName, transform, speed, target) { var _local3 = false; var _local2 = 0; while (_local2 < transformations.length) { if (transformations[_local2].soundName == soundName) { clearInterval(transformations[_local2].interval); transformations[_local2] = null; _local3 = true; } _local2++; } if (!_local3) { sb.start(soundName, 0, 99999); } var _local5 = new Object(); var _local6 = setInterval(this, "doTransform", speed, transformations.length); _local5.interval = _local6; _local5.soundName = soundName; _local5.transform = transform; _local5.target = target; transformations.push(_local5); } function doTransform(intervalID) { var _local3 = transformations[intervalID]; var _local4 = _local3.transform; var _local2 = sb.getSound(_local3.soundName); if (_local4 & FADEIN) { _local2.setVolume(_local2.getVolume() + 1); if (_local2.getVolume() >= _local3.target) { clearInterval(_local3.interval); transformations[intervalID] = null; clearTransforms(); } } else if (_local4 & FADEOUT) { _local2.setVolume(_local2.getVolume() - 1); if (_local2.getVolume() <= _local3.target) { _local2.stop(); clearInterval(_local3.interval); transformations[intervalID] = null; clearTransforms(); } } else if (_local4 & FADETO) { if (_local2.getVolume() > _local3.target) { _local2.setVolume(_local2.getVolume() - 1); } else { _local2.setVolume(_local2.getVolume() + 1); } if (_local2.getVolume() == _local3.target) { clearInterval(_local3.interval); transformations[intervalID] = null; clearTransforms(); } } else if (_local4 & STOPLOOP) { _local2.stop(); clearInterval(_local3.interval); transformations[intervalID] = null; clearTransforms(); } } function clearTransforms() { var _local2 = 0; while (_local2 < transformations.length) { if (transformations[_local2] != null) { return(undefined); } _local2++; } transformations = new Array(); } var FADEIN = 1; var FADEOUT = 2; var FADETO = 4; var STOPLOOP = 8; }
Symbol 200 MovieClip [__Packages.MusicBoard] Frame 0
class MusicBoard { var sb, sbt, music, vol, active; function MusicBoard (sb, sbt, active) { this.sb = sb; this.sbt = sbt; music = null; vol = 0; this.active = active; } function start(soundName, speed, vol) { this.vol = vol; if (!active) { music = soundName; return(undefined); } if (soundName == music) { sbt.addTransform(soundName, sbt.FADETO, speed, vol); return(undefined); } if (music != null) { sbt.addTransform(music, sbt.FADEOUT, speed, 0); } sb.setVolume(soundName, 0); sb.start(soundName, 0, 99999, true); sbt.addTransform(soundName, sbt.FADEIN, speed, vol); music = soundName; } function stop(speed) { sbt.addTransform(music, sbt.FADEOUT, speed, 0); } function instantStart(soundName, vol) { this.vol = vol; if (!active) { music = soundName; return(undefined); } if (soundName == music) { sb.setVolume(soundName, vol); return(undefined); } if (music != null) { sb.stop(music); } sb.setVolume(soundName, vol); sb.start(soundName, 0, 99999, true); music = soundName; } function instantIntroStart(soundName, soundName2, vol) { this.vol = vol; if (!active) { music = soundName; return(undefined); } if (soundName == music) { sb.setVolume(soundName, vol); return(undefined); } if (music != null) { sb.stop(music); } sb.setVolume(soundName, vol); sb.setVolume(soundName2, vol); music = soundName2; var _local5 = sb.getSound(soundName); _local5.onSoundComplete = function () { _root.sb.start(soundName2, 0, 99999, true); }; sb.start(soundName, 0, 0, true); } function setActive(active) { var _local2 = this.active; this.active = active; if (music == null) { return(undefined); } if (this.active) { if (!_local2) { sb.setVolume(music, 0); sb.start(music, 0, 99999, true); sbt.addTransform(music, sbt.FADEIN, 5, vol); } } else { stop(1); } } }
Symbol 21 MovieClip Frame 1
_visible = false;
Symbol 22 MovieClip Frame 1
function drawBar(clip, width, height) { with (clip) { clear(); lineStyle(); beginFill(fillColor, fillAlpha); moveTo(0, 0); var curveSize = Math.min(Math.min(maxCurveSize, width), height); lineTo(width, 0); lineTo(width, height - curveSize); curveTo(width, height, width - curveSize, height); lineTo(0, height); lineTo(0, 0); } } spw = Stage.width; sph = Stage.height; _x = 0; _y = 0; if (drawBackground) { background = createEmptyMovieClip("background", 1); with (background) { colors = [backgroundColor1, backgroundColor2]; alphas = [100, 100]; ratios = [0, 255]; matrix = {matrixType:"box", x:0, y:0, w:spw, h:sph, r:(Math.PI/2)}; beginGradientFill("linear", colors, alphas, ratios, matrix); moveTo(0, 0); lineTo(spw, 0); lineTo(spw, sph); lineTo(0, sph); lineTo(0, 0); endFill(); } } if (_parent.getBytesLoaded() < _parent.getBytesTotal()) { if (variableLocation != "") { _parent[variableLocation] = false; } if (stopParent) { _parent.stop(); } if ((maxCurveSize <= 1) && (maxCurveSize > 0)) { maxCurveSize = sph * maxCurveSize; } else if (maxCurveSize < 0) { maxCurveSize = 0; } if (drawProgressBar) { progressBar = createEmptyMovieClip("bar", 2); } if (drawTextBox) { tf = new TextFormat(); tf.font = fontName; tf.size = fontSize; tf.color = fontColor; progressTextBox = createEmptyMovieClip("progressTextBox", 3); progressTextBox.createTextField("textBox", 0, 0, 0, 100, 100); textBox = progressTextBox.textBox; textBox.embedFonts = true; textBox.selectable = false; textBox.setTextFormat(tf); } if (linkage != "") { image = attachMovie(linkage, "image", 4); if (image == undefined) { linkage = ""; } else { imageWidth = image._width; } } onEnterFrame = function () { var _local3 = _parent.getBytesLoaded() / _parent.getBytesTotal(); var _local4 = Math.floor(_local3 * 100); if (drawTextBox) { textBox.text = ("Loading " + _local4) + "%"; textBox.setTextFormat(tf); textBox._width = textBox.textWidth + 5; textBox._height = textBox.textHeight + 5; } if (linkage != "") { if (progressMove) { image._x = Math.floor(spw * _local3); } else { image._x = spw / 2; } image._y = sph / 2; if (drawTextBox) { if (progressMove) { textBox._x = image._x + imageWidth; if ((textBox._x + textBox._width) > spw) { textBox._x = spw - textBox._width; image._x = textBox._x - imageWidth; } } else { textBox._x = ((spw / 2) - (textBox._width / 2)) - (imageWidth / 2); image._x = textBox._x - imageWidth; } textBox._y = (sph / 2) - (textBox._height / 2); } else if ((image._x + imageWidth) > spw) { image._x = spw - imageWidth; } } else if (drawTextBox) { if (progressMove) { textBox._x = Math.floor(spw * _local3); if ((textBox._x + textBox._width) > spw) { textBox._x = spw - textBox._width; } } else { textBox._x = (spw / 2) - (textBox._width / 2); } textBox._y = (sph / 2) - (textBox._height / 2); } if (drawProgressBar) { drawBar(progressBar, Math.floor(spw * _local3), sph); } if (_parent.getBytesLoaded() >= _parent.getBytesTotal()) { if (drawTextBox) { progressTextBox.removeMovieClip(""); } if (linkage != "") { image.removeMovieClip(""); } if (drawBackground && (!backgroundStay)) { background._alpha = background._alpha - fadeSpeed; } progressBar._alpha = progressBar._alpha - fadeSpeed; if ((progressBar._alpha <= 0) && (background._alpha <= 0)) { onEnterFrame = null; if (stopParent) { _parent.play(); } if (variableLocation != "") { _parent[variableLocation] = true; } this.removeMovieClip(""); if (drawBackground && (!backgroundStay)) { background.removeMovieClip(""); } } } }; onEnterFrame(); } else { if (variableLocation != "") { _parent[variableLocation] = true; } if (drawBackground) { if (!backgroundStay) { background.removeMovieClip(""); } } }

Library Items

Symbol 1 Font [standard 09_65]Used by:3 6 7 8 9 11 12 13 15 16 17 18 68
Symbol 2 Sound [sCheatsville]Used by:121
Symbol 3 TextUses:1Used by:19
Symbol 4 FontUsed by:5 10
Symbol 5 EditableTextUses:4Used by:19
Symbol 6 EditableTextUses:1Used by:19
Symbol 7 EditableTextUses:1Used by:19
Symbol 8 EditableTextUses:1Used by:19
Symbol 9 TextUses:1Used by:19
Symbol 10 EditableTextUses:4Used by:19
Symbol 11 EditableTextUses:1Used by:19
Symbol 12 EditableTextUses:1Used by:19
Symbol 13 EditableTextUses:1Used by:19
Symbol 14 GraphicUsed by:19
Symbol 15 TextUses:1Used by:19
Symbol 16 TextUses:1Used by:19
Symbol 17 EditableTextUses:1Used by:19
Symbol 18 EditableTextUses:1Used by:19
Symbol 19 MovieClip [highscore]Uses:3 5 6 7 8 9 10 11 12 13 14 15 16 17 18Used by:Timeline
Symbol 139 MovieClip [__Packages.Commando]
Symbol 140 MovieClip [__Packages.GameManager]
Symbol 141 MovieClip [__Packages.GameStatistics]
Symbol 142 MovieClip [__Packages.Weapon]
Symbol 143 MovieClip [__Packages.LevelData]
Symbol 144 MovieClip [__Packages.EntityDef]
Symbol 145 MovieClip [__Packages.SheetManager]
Symbol 146 MovieClip [__Packages.CompressArray]
Symbol 147 MovieClip [__Packages.IEntity]
Symbol 148 MovieClip [__Packages.ICircleCollision]
Symbol 149 MovieClip [__Packages.Circle]
Symbol 150 MovieClip [__Packages.ITarget]
Symbol 151 MovieClip [__Packages.IBullet]
Symbol 152 MovieClip [__Packages.Barrel]
Symbol 153 MovieClip [__Packages.AnimatedParticle]
Symbol 154 MovieClip [__Packages.TileSheet]
Symbol 155 MovieClip [__Packages.Explosion]
Symbol 156 MovieClip [__Packages.IRectangleCollision]
Symbol 157 MovieClip [__Packages.Building]
Symbol 158 MovieClip [__Packages.AnimatedSprite]
Symbol 159 MovieClip [__Packages.Barrier]
Symbol 160 MovieClip [__Packages.GraphicBarrier]
Symbol 161 MovieClip [__Packages.Sprite]
Symbol 162 MovieClip [__Packages.SheetSprite]
Symbol 163 MovieClip [__Packages.TileSprite]
Symbol 164 MovieClip [__Packages.CollisionObject]
Symbol 165 MovieClip [__Packages.TileCollisionObject]
Symbol 166 MovieClip [__Packages.IEnemy]
Symbol 167 MovieClip [__Packages.Enemy]
Symbol 168 MovieClip [__Packages.BloodParticle]
Symbol 169 MovieClip [__Packages.Shooter]
Symbol 170 MovieClip [__Packages.Sniper]
Symbol 171 MovieClip [__Packages.Jeep]
Symbol 172 MovieClip [__Packages.Particle]
Symbol 173 MovieClip [__Packages.Boss1]
Symbol 174 MovieClip [__Packages.AnimatedBullet]
Symbol 175 MovieClip [__Packages.Boss2]
Symbol 176 MovieClip [__Packages.Boss3]
Symbol 177 MovieClip [__Packages.Powerup]
Symbol 178 MovieClip [__Packages.LevelChanger]
Symbol 179 MovieClip [__Packages.DelegateExt]
Symbol 180 MovieClip [__Packages.FallingObject]
Symbol 181 MovieClip [__Packages.SoldierTitle]
Symbol 182 MovieClip [__Packages.MCSprite]
Symbol 183 MovieClip [__Packages.TextSprite]
Symbol 184 MovieClip [__Packages.Bike]
Symbol 185 MovieClip [__Packages.IntroObject]
Symbol 186 MovieClip [__Packages.BitmapManager]
Symbol 187 MovieClip [__Packages.BitmapHelper]
Symbol 188 MovieClip [__Packages.ScreenScroller]
Symbol 189 MovieClip [__Packages.Screen]
Symbol 190 MovieClip [__Packages.Player]
Symbol 191 MovieClip [__Packages.Flame]
Symbol 192 MovieClip [__Packages.Grenade]
Symbol 193 MovieClip [__Packages.HUD]
Symbol 194 MovieClip [__Packages.Animation]
Symbol 195 MovieClip [__Packages.Editor]
Symbol 196 MovieClip [__Packages.SoundBoard]
Symbol 197 MovieClip [__Packages.Bullet]
Symbol 198 MovieClip [__Packages.FPS]
Symbol 199 MovieClip [__Packages.SoundBoardTransform]
Symbol 200 MovieClip [__Packages.MusicBoard]
Symbol 20 GraphicUsed by:21
Symbol 21 MovieClipUses:20Used by:22
Symbol 22 MovieClipUses:21Used by:Timeline
Symbol 23 Bitmap [shadow]Used by:67
Symbol 24 Bitmap [soldierIndent]Used by:67
Symbol 25 Bitmap [soldier]Used by:67
Symbol 26 Bitmap [tileEntities]Used by:67
Symbol 27 Bitmap [sheetEntities]Used by:67
Symbol 28 Bitmap [tileset3]Used by:67
Symbol 29 Bitmap [bowser]Used by:67
Symbol 30 Bitmap [tileset2]Used by:67
Symbol 31 Bitmap [trash]Used by:67
Symbol 32 Bitmap [resize]Used by:67
Symbol 33 Bitmap [entities]Used by:67
Symbol 34 Bitmap [paint]Used by:67
Symbol 35 Bitmap [flame]Used by:67
Symbol 36 Bitmap [rocket]Used by:67
Symbol 37 Bitmap [shotgunshell]Used by:67
Symbol 38 Bitmap [box]Used by:67
Symbol 39 Bitmap [h_flamethrower]Used by:67
Symbol 40 Bitmap [h_shotgun]Used by:67
Symbol 41 Bitmap [h_rocketlauncher]Used by:67
Symbol 42 Bitmap [tire]Used by:67 124
Symbol 43 Bitmap [h_machinegun]Used by:67
Symbol 44 Bitmap [h_lives]Used by:67
Symbol 45 Bitmap [h_heart]Used by:67 78
Symbol 46 Bitmap [h_grenades]Used by:67
Symbol 47 Bitmap [h_numbers]Used by:67
Symbol 48 Bitmap [jeepshadow]Used by:67
Symbol 49 Bitmap [barrel]Used by:67
Symbol 50 Bitmap [blood]Used by:67
Symbol 51 Bitmap [bloodParticle]Used by:67
Symbol 52 Bitmap [bloodSpatter]Used by:67
Symbol 53 Bitmap [boss1]Used by:67
Symbol 54 Bitmap [bullet]Used by:67
Symbol 55 Bitmap [bulletSpark]Used by:67
Symbol 56 Bitmap [commando]Used by:67
Symbol 57 Bitmap [enemy]Used by:67
Symbol 58 Bitmap [enemyBullet]Used by:67
Symbol 59 Bitmap [explosion]Used by:67
Symbol 60 Bitmap [grenade]Used by:67
Symbol 61 Bitmap [jeep]Used by:67
Symbol 62 Bitmap [scorch]Used by:67
Symbol 63 Bitmap [shooter]Used by:67
Symbol 64 Bitmap [shrapnel]Used by:67
Symbol 65 Bitmap [sniper]Used by:67
Symbol 66 Bitmap [tileset]Used by:67
Symbol 67 GraphicUses:23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66Used by:Timeline
Symbol 68 EditableTextUses:1Used by:Timeline
Symbol 69 Bitmap [block]Used by:78
Symbol 70 Bitmap [h_points]Used by:78 124
Symbol 71 Bitmap [explosionSmall]Used by:78 124
Symbol 72 Bitmap [boss1dead]Used by:78 124
Symbol 73 Bitmap [tank]Used by:78
Symbol 74 Bitmap [tankGun]Used by:78
Symbol 75 Bitmap [bigEnemyBullet]Used by:78
Symbol 76 Bitmap [bike]Used by:78
Symbol 77 Bitmap [bikeshadow]Used by:78
Symbol 78 GraphicUses:69 70 45 71 72 73 74 75 76 77Used by:Timeline
Symbol 79 Sound [sJeepExplosion]Used by:121
Symbol 80 Sound [sLargeExplosionLong]Used by:121
Symbol 81 Sound [sLargeExplosionShort]Used by:121
Symbol 82 Sound [sLargeShot1]Used by:121
Symbol 83 Sound [sLargeShot2]Used by:121
Symbol 84 Sound [sLargeShot3]Used by:121
Symbol 85 Sound [sMediumExplosionLong]Used by:121
Symbol 86 Sound [sMortarFire]Used by:121
Symbol 87 Sound [sMusic]Used by:121
Symbol 88 Sound [sRocketlauncher]Used by:121
Symbol 89 Sound [sShotgun]Used by:121
Symbol 90 Sound [sSingleShot1]Used by:121
Symbol 91 Sound [sSingleShot2]Used by:121
Symbol 92 Sound [sSingleShot3]Used by:121
Symbol 93 Sound [sSingleShot4]Used by:121
Symbol 94 Sound [sSingleShot5]Used by:121
Symbol 95 Sound [sSmallExplosionLong]Used by:121
Symbol 96 Sound [sSmallExplosionShort]Used by:121
Symbol 97 Sound [sTankExplosion]Used by:121
Symbol 98 Sound [sTankFire]Used by:121
Symbol 99 Sound [sDodge]Used by:121
Symbol 100 Sound [sPickup]Used by:121
Symbol 101 Sound [sFlame]Used by:121
Symbol 102 Sound [sThrow]Used by:121
Symbol 103 Sound [sFall]Used by:121
Symbol 104 Sound [sBossDeath]Used by:121
Symbol 105 Sound [sBossLaugh]Used by:121
Symbol 106 Sound [sDeath1]Used by:121
Symbol 107 Sound [sDeath2]Used by:121
Symbol 108 Sound [sDeath3]Used by:121
Symbol 109 Sound [sGore1]Used by:121
Symbol 110 Sound [sGore2]Used by:121
Symbol 111 Sound [sGore3]Used by:121
Symbol 112 Sound [sGore4]Used by:121
Symbol 113 Sound [sGore5]Used by:121
Symbol 114 Sound [sPlayerDeath]Used by:121
Symbol 115 Sound [sChechnya]Used by:121
Symbol 116 Sound [sKorea]Used by:121
Symbol 117 Sound [sIraq]Used by:121
Symbol 118 Sound [sGameOver]Used by:121
Symbol 119 Sound [sTank]Used by:121
Symbol 120 Sound [sBike]Used by:121
Symbol 121 MovieClipUses:79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 2 118 119 120Used by:Timeline
Symbol 122 Bitmap [GGGarage]Used by:124
Symbol 123 Bitmap [GGGame]Used by:124
Symbol 124 GraphicUses:72 71 70 42 122 123Used by:Timeline
Symbol 125 BitmapUsed by:126
Symbol 126 GraphicUses:125Used by:129
Symbol 127 BitmapUsed by:128
Symbol 128 GraphicUses:127Used by:129
Symbol 129 MovieClip [pauseButton]Uses:126 128Used by:Timeline
Symbol 130 BitmapUsed by:131
Symbol 131 GraphicUses:130Used by:134
Symbol 132 BitmapUsed by:133
Symbol 133 GraphicUses:132Used by:134
Symbol 134 MovieClip [soundButton]Uses:131 133Used by:Timeline
Symbol 135 Bitmap [SCCCO]Used by:138
Symbol 136 Bitmap [SCCC]Used by:138
Symbol 137 Bitmap [SCCS]Used by:138
Symbol 138 GraphicUses:135 136 137Used by:Timeline

Instance Names

"Preloader"Frame 2Symbol 22 MovieClip
"inputnameshadow"Symbol 19 MovieClip [highscore] Frame 1Symbol 5 EditableText
"inputemailshadow"Symbol 19 MovieClip [highscore] Frame 1Symbol 6 EditableText
"inputpasswordshadow"Symbol 19 MovieClip [highscore] Frame 1Symbol 7 EditableText
"infoshadow"Symbol 19 MovieClip [highscore] Frame 1Symbol 8 EditableText
"inputname"Symbol 19 MovieClip [highscore] Frame 1Symbol 10 EditableText
"inputemail"Symbol 19 MovieClip [highscore] Frame 1Symbol 11 EditableText
"inputpassword"Symbol 19 MovieClip [highscore] Frame 1Symbol 12 EditableText
"info"Symbol 19 MovieClip [highscore] Frame 1Symbol 13 EditableText
"displayshadow"Symbol 19 MovieClip [highscore] Frame 10Symbol 17 EditableText
"display"Symbol 19 MovieClip [highscore] Frame 10Symbol 18 EditableText
"logo"Symbol 22 MovieClip Frame 1Symbol 21 MovieClip

Special Tags

FileAttributes (69)Timeline Frame 1Access network only, Metadata not present, AS1/AS2.
ExportAssets (56)Timeline Frame 1Symbol 1 as "standard 09_65"
ExportAssets (56)Timeline Frame 1Symbol 2 as "sCheatsville"
ExportAssets (56)Timeline Frame 1Symbol 19 as "highscore"
ExportAssets (56)Timeline Frame 1Symbol 139 as "__Packages.Commando"
ExportAssets (56)Timeline Frame 1Symbol 140 as "__Packages.GameManager"
ExportAssets (56)Timeline Frame 1Symbol 141 as "__Packages.GameStatistics"
ExportAssets (56)Timeline Frame 1Symbol 142 as "__Packages.Weapon"
ExportAssets (56)Timeline Frame 1Symbol 143 as "__Packages.LevelData"
ExportAssets (56)Timeline Frame 1Symbol 144 as "__Packages.EntityDef"
ExportAssets (56)Timeline Frame 1Symbol 145 as "__Packages.SheetManager"
ExportAssets (56)Timeline Frame 1Symbol 146 as "__Packages.CompressArray"
ExportAssets (56)Timeline Frame 1Symbol 147 as "__Packages.IEntity"
ExportAssets (56)Timeline Frame 1Symbol 148 as "__Packages.ICircleCollision"
ExportAssets (56)Timeline Frame 1Symbol 149 as "__Packages.Circle"
ExportAssets (56)Timeline Frame 1Symbol 150 as "__Packages.ITarget"
ExportAssets (56)Timeline Frame 1Symbol 151 as "__Packages.IBullet"
ExportAssets (56)Timeline Frame 1Symbol 152 as "__Packages.Barrel"
ExportAssets (56)Timeline Frame 1Symbol 153 as "__Packages.AnimatedParticle"
ExportAssets (56)Timeline Frame 1Symbol 154 as "__Packages.TileSheet"
ExportAssets (56)Timeline Frame 1Symbol 155 as "__Packages.Explosion"
ExportAssets (56)Timeline Frame 1Symbol 156 as "__Packages.IRectangleCollision"
ExportAssets (56)Timeline Frame 1Symbol 157 as "__Packages.Building"
ExportAssets (56)Timeline Frame 1Symbol 158 as "__Packages.AnimatedSprite"
ExportAssets (56)Timeline Frame 1Symbol 159 as "__Packages.Barrier"
ExportAssets (56)Timeline Frame 1Symbol 160 as "__Packages.GraphicBarrier"
ExportAssets (56)Timeline Frame 1Symbol 161 as "__Packages.Sprite"
ExportAssets (56)Timeline Frame 1Symbol 162 as "__Packages.SheetSprite"
ExportAssets (56)Timeline Frame 1Symbol 163 as "__Packages.TileSprite"
ExportAssets (56)Timeline Frame 1Symbol 164 as "__Packages.CollisionObject"
ExportAssets (56)Timeline Frame 1Symbol 165 as "__Packages.TileCollisionObject"
ExportAssets (56)Timeline Frame 1Symbol 166 as "__Packages.IEnemy"
ExportAssets (56)Timeline Frame 1Symbol 167 as "__Packages.Enemy"
ExportAssets (56)Timeline Frame 1Symbol 168 as "__Packages.BloodParticle"
ExportAssets (56)Timeline Frame 1Symbol 169 as "__Packages.Shooter"
ExportAssets (56)Timeline Frame 1Symbol 170 as "__Packages.Sniper"
ExportAssets (56)Timeline Frame 1Symbol 171 as "__Packages.Jeep"
ExportAssets (56)Timeline Frame 1Symbol 172 as "__Packages.Particle"
ExportAssets (56)Timeline Frame 1Symbol 173 as "__Packages.Boss1"
ExportAssets (56)Timeline Frame 1Symbol 174 as "__Packages.AnimatedBullet"
ExportAssets (56)Timeline Frame 1Symbol 175 as "__Packages.Boss2"
ExportAssets (56)Timeline Frame 1Symbol 176 as "__Packages.Boss3"
ExportAssets (56)Timeline Frame 1Symbol 177 as "__Packages.Powerup"
ExportAssets (56)Timeline Frame 1Symbol 178 as "__Packages.LevelChanger"
ExportAssets (56)Timeline Frame 1Symbol 179 as "__Packages.DelegateExt"
ExportAssets (56)Timeline Frame 1Symbol 180 as "__Packages.FallingObject"
ExportAssets (56)Timeline Frame 1Symbol 181 as "__Packages.SoldierTitle"
ExportAssets (56)Timeline Frame 1Symbol 182 as "__Packages.MCSprite"
ExportAssets (56)Timeline Frame 1Symbol 183 as "__Packages.TextSprite"
ExportAssets (56)Timeline Frame 1Symbol 184 as "__Packages.Bike"
ExportAssets (56)Timeline Frame 1Symbol 185 as "__Packages.IntroObject"
ExportAssets (56)Timeline Frame 1Symbol 186 as "__Packages.BitmapManager"
ExportAssets (56)Timeline Frame 1Symbol 187 as "__Packages.BitmapHelper"
ExportAssets (56)Timeline Frame 1Symbol 188 as "__Packages.ScreenScroller"
ExportAssets (56)Timeline Frame 1Symbol 189 as "__Packages.Screen"
ExportAssets (56)Timeline Frame 1Symbol 190 as "__Packages.Player"
ExportAssets (56)Timeline Frame 1Symbol 191 as "__Packages.Flame"
ExportAssets (56)Timeline Frame 1Symbol 192 as "__Packages.Grenade"
ExportAssets (56)Timeline Frame 1Symbol 193 as "__Packages.HUD"
ExportAssets (56)Timeline Frame 1Symbol 194 as "__Packages.Animation"
ExportAssets (56)Timeline Frame 1Symbol 195 as "__Packages.Editor"
ExportAssets (56)Timeline Frame 1Symbol 196 as "__Packages.SoundBoard"
ExportAssets (56)Timeline Frame 1Symbol 197 as "__Packages.Bullet"
ExportAssets (56)Timeline Frame 1Symbol 198 as "__Packages.FPS"
ExportAssets (56)Timeline Frame 1Symbol 199 as "__Packages.SoundBoardTransform"
ExportAssets (56)Timeline Frame 1Symbol 200 as "__Packages.MusicBoard"
ExportAssets (56)Timeline Frame 5Symbol 23 as "shadow"
ExportAssets (56)Timeline Frame 5Symbol 24 as "soldierIndent"
ExportAssets (56)Timeline Frame 5Symbol 25 as "soldier"
ExportAssets (56)Timeline Frame 5Symbol 26 as "tileEntities"
ExportAssets (56)Timeline Frame 5Symbol 27 as "sheetEntities"
ExportAssets (56)Timeline Frame 5Symbol 28 as "tileset3"
ExportAssets (56)Timeline Frame 5Symbol 29 as "bowser"
ExportAssets (56)Timeline Frame 5Symbol 30 as "tileset2"
ExportAssets (56)Timeline Frame 5Symbol 31 as "trash"
ExportAssets (56)Timeline Frame 5Symbol 32 as "resize"
ExportAssets (56)Timeline Frame 5Symbol 33 as "entities"
ExportAssets (56)Timeline Frame 5Symbol 34 as "paint"
ExportAssets (56)Timeline Frame 5Symbol 35 as "flame"
ExportAssets (56)Timeline Frame 5Symbol 36 as "rocket"
ExportAssets (56)Timeline Frame 5Symbol 37 as "shotgunshell"
ExportAssets (56)Timeline Frame 5Symbol 38 as "box"
ExportAssets (56)Timeline Frame 5Symbol 39 as "h_flamethrower"
ExportAssets (56)Timeline Frame 5Symbol 40 as "h_shotgun"
ExportAssets (56)Timeline Frame 5Symbol 41 as "h_rocketlauncher"
ExportAssets (56)Timeline Frame 5Symbol 42 as "tire"
ExportAssets (56)Timeline Frame 5Symbol 43 as "h_machinegun"
ExportAssets (56)Timeline Frame 5Symbol 44 as "h_lives"
ExportAssets (56)Timeline Frame 5Symbol 45 as "h_heart"
ExportAssets (56)Timeline Frame 5Symbol 46 as "h_grenades"
ExportAssets (56)Timeline Frame 5Symbol 47 as "h_numbers"
ExportAssets (56)Timeline Frame 5Symbol 48 as "jeepshadow"
ExportAssets (56)Timeline Frame 5Symbol 49 as "barrel"
ExportAssets (56)Timeline Frame 5Symbol 50 as "blood"
ExportAssets (56)Timeline Frame 5Symbol 51 as "bloodParticle"
ExportAssets (56)Timeline Frame 5Symbol 52 as "bloodSpatter"
ExportAssets (56)Timeline Frame 5Symbol 53 as "boss1"
ExportAssets (56)Timeline Frame 5Symbol 54 as "bullet"
ExportAssets (56)Timeline Frame 5Symbol 55 as "bulletSpark"
ExportAssets (56)Timeline Frame 5Symbol 56 as "commando"
ExportAssets (56)Timeline Frame 5Symbol 57 as "enemy"
ExportAssets (56)Timeline Frame 5Symbol 58 as "enemyBullet"
ExportAssets (56)Timeline Frame 5Symbol 59 as "explosion"
ExportAssets (56)Timeline Frame 5Symbol 60 as "grenade"
ExportAssets (56)Timeline Frame 5Symbol 61 as "jeep"
ExportAssets (56)Timeline Frame 5Symbol 62 as "scorch"
ExportAssets (56)Timeline Frame 5Symbol 63 as "shooter"
ExportAssets (56)Timeline Frame 5Symbol 64 as "shrapnel"
ExportAssets (56)Timeline Frame 5Symbol 65 as "sniper"
ExportAssets (56)Timeline Frame 5Symbol 66 as "tileset"
ExportAssets (56)Timeline Frame 5Symbol 69 as "block"
ExportAssets (56)Timeline Frame 5Symbol 70 as "h_points"
ExportAssets (56)Timeline Frame 5Symbol 71 as "explosionSmall"
ExportAssets (56)Timeline Frame 5Symbol 72 as "boss1dead"
ExportAssets (56)Timeline Frame 5Symbol 73 as "tank"
ExportAssets (56)Timeline Frame 5Symbol 74 as "tankGun"
ExportAssets (56)Timeline Frame 5Symbol 75 as "bigEnemyBullet"
ExportAssets (56)Timeline Frame 5Symbol 76 as "bike"
ExportAssets (56)Timeline Frame 5Symbol 77 as "bikeshadow"
ExportAssets (56)Timeline Frame 5Symbol 79 as "sJeepExplosion"
ExportAssets (56)Timeline Frame 5Symbol 80 as "sLargeExplosionLong"
ExportAssets (56)Timeline Frame 5Symbol 81 as "sLargeExplosionShort"
ExportAssets (56)Timeline Frame 5Symbol 82 as "sLargeShot1"
ExportAssets (56)Timeline Frame 5Symbol 83 as "sLargeShot2"
ExportAssets (56)Timeline Frame 5Symbol 84 as "sLargeShot3"
ExportAssets (56)Timeline Frame 5Symbol 85 as "sMediumExplosionLong"
ExportAssets (56)Timeline Frame 5Symbol 86 as "sMortarFire"
ExportAssets (56)Timeline Frame 5Symbol 87 as "sMusic"
ExportAssets (56)Timeline Frame 5Symbol 88 as "sRocketlauncher"
ExportAssets (56)Timeline Frame 5Symbol 89 as "sShotgun"
ExportAssets (56)Timeline Frame 5Symbol 90 as "sSingleShot1"
ExportAssets (56)Timeline Frame 5Symbol 91 as "sSingleShot2"
ExportAssets (56)Timeline Frame 5Symbol 92 as "sSingleShot3"
ExportAssets (56)Timeline Frame 5Symbol 93 as "sSingleShot4"
ExportAssets (56)Timeline Frame 5Symbol 94 as "sSingleShot5"
ExportAssets (56)Timeline Frame 5Symbol 95 as "sSmallExplosionLong"
ExportAssets (56)Timeline Frame 5Symbol 96 as "sSmallExplosionShort"
ExportAssets (56)Timeline Frame 5Symbol 97 as "sTankExplosion"
ExportAssets (56)Timeline Frame 5Symbol 98 as "sTankFire"
ExportAssets (56)Timeline Frame 5Symbol 99 as "sDodge"
ExportAssets (56)Timeline Frame 5Symbol 100 as "sPickup"
ExportAssets (56)Timeline Frame 5Symbol 101 as "sFlame"
ExportAssets (56)Timeline Frame 5Symbol 102 as "sThrow"
ExportAssets (56)Timeline Frame 5Symbol 103 as "sFall"
ExportAssets (56)Timeline Frame 5Symbol 104 as "sBossDeath"
ExportAssets (56)Timeline Frame 5Symbol 105 as "sBossLaugh"
ExportAssets (56)Timeline Frame 5Symbol 106 as "sDeath1"
ExportAssets (56)Timeline Frame 5Symbol 107 as "sDeath2"
ExportAssets (56)Timeline Frame 5Symbol 108 as "sDeath3"
ExportAssets (56)Timeline Frame 5Symbol 109 as "sGore1"
ExportAssets (56)Timeline Frame 5Symbol 110 as "sGore2"
ExportAssets (56)Timeline Frame 5Symbol 111 as "sGore3"
ExportAssets (56)Timeline Frame 5Symbol 112 as "sGore4"
ExportAssets (56)Timeline Frame 5Symbol 113 as "sGore5"
ExportAssets (56)Timeline Frame 5Symbol 114 as "sPlayerDeath"
ExportAssets (56)Timeline Frame 5Symbol 115 as "sChechnya"
ExportAssets (56)Timeline Frame 5Symbol 116 as "sKorea"
ExportAssets (56)Timeline Frame 5Symbol 117 as "sIraq"
ExportAssets (56)Timeline Frame 5Symbol 118 as "sGameOver"
ExportAssets (56)Timeline Frame 5Symbol 119 as "sTank"
ExportAssets (56)Timeline Frame 5Symbol 120 as "sBike"
ExportAssets (56)Timeline Frame 5Symbol 122 as "GGGarage"
ExportAssets (56)Timeline Frame 5Symbol 123 as "GGGame"
ExportAssets (56)Timeline Frame 5Symbol 129 as "pauseButton"
ExportAssets (56)Timeline Frame 5Symbol 134 as "soundButton"
ExportAssets (56)Timeline Frame 5Symbol 135 as "SCCCO"
ExportAssets (56)Timeline Frame 5Symbol 136 as "SCCC"
ExportAssets (56)Timeline Frame 5Symbol 137 as "SCCS"

Labels

"preloader"Frame 1
"stats"Frame 3
"load"Frame 5
"initialise"Frame 10
"menu"Frame 15
"game"Frame 20
"input"Symbol 19 MovieClip [highscore] Frame 1
"sending"Symbol 19 MovieClip [highscore] Frame 5
"display"Symbol 19 MovieClip [highscore] Frame 10




http://swfchan.com/5/24583/info.shtml
Created: 24/5 -2019 18:46:32 Last modified: 24/5 -2019 18:46:32 Server time: 08/05 -2024 04:30:18