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

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

Witching Hour.swf

This is the info page for
Flash #39572

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


ActionScript [AS3]
Section 1
//AreaLightSprite (AreaLightSprite) package { import flash.display.*; public dynamic class AreaLightSprite extends Sprite { } }//package
Section 2
//AreaShadowSprite (AreaShadowSprite) package { import flash.display.*; public dynamic class AreaShadowSprite extends Sprite { } }//package
Section 3
//ArmorGamesLogoGhostBMD (ArmorGamesLogoGhostBMD) package { import flash.display.*; public dynamic class ArmorGamesLogoGhostBMD extends BitmapData { public function ArmorGamesLogoGhostBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 4
//ArmorGamesLogoOrangeBMD (ArmorGamesLogoOrangeBMD) package { import flash.display.*; public dynamic class ArmorGamesLogoOrangeBMD extends BitmapData { public function ArmorGamesLogoOrangeBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 5
//BooEcho1Sound (BooEcho1Sound) package { import flash.media.*; public dynamic class BooEcho1Sound extends Sound { } }//package
Section 6
//Boss1WakeSprite (Boss1WakeSprite) package { import flash.display.*; public dynamic class Boss1WakeSprite extends Sprite { } }//package
Section 7
//BossBanishedSound (BossBanishedSound) package { import flash.media.*; public dynamic class BossBanishedSound extends Sound { } }//package
Section 8
//BossDammageAreaSprite (BossDammageAreaSprite) package { import flash.display.*; public dynamic class BossDammageAreaSprite extends Sprite { } }//package
Section 9
//BossMusic (BossMusic) package { import flash.media.*; public dynamic class BossMusic extends Sound { } }//package
Section 10
//CigSmokeBMD (CigSmokeBMD) package { import flash.display.*; public dynamic class CigSmokeBMD extends BitmapData { public function CigSmokeBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 11
//CloudsBMD (CloudsBMD) package { import flash.display.*; public dynamic class CloudsBMD extends BitmapData { public function CloudsBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 12
//DecoyEnemy (DecoyEnemy) package { import flash.display.*; import flash.geom.*; public class DecoyEnemy { private var sourceBMD:BitmapData; private var distanceTravelled:int;// = 0 private var timer:int;// = 0 private var displayArea:Rectangle; public var angle:Number; private var ySpeed:Number; public var speed:int; private var collisionArea:Rectangle; private var hotSpot:Point; private var lifeSpan:int; private var xSpeed:Number; public var x:int; public var y:int; private var range:int; public function DecoyEnemy(_arg1:BitmapData, _arg2:Rectangle, _arg3:Point, _arg4:int, _arg5:int, _arg6:Number, _arg7:Number, _arg8:int, _arg9:int){ timer = 0; distanceTravelled = 0; super(); x = _arg4; y = _arg5; angle = _arg6; speed = _arg7; lifeSpan = _arg8; range = _arg9; displayArea = new Rectangle(0, 0, _arg1.width, _arg1.height); collisionArea = _arg2; hotSpot = _arg3; sourceBMD = _arg1; } public function update(_arg1:Array, _arg2:int){ timer++; distanceTravelled = (distanceTravelled + speed); xSpeed = (speed * Math.cos(angle)); ySpeed = (speed * Math.sin(angle)); x = (x + xSpeed); y = (y + ySpeed); if ((((lifeSpan > 0)) && ((timer > lifeSpan)))){ _arg1.Remove(_arg1[_arg2]); }; if ((((range > 0)) && ((distanceTravelled > range)))){ _arg1.Remove(_arg1[_arg2]); }; } public function render(_arg1:BitmapData){ _arg1.copyPixels(sourceBMD, displayArea, new Point(x, y)); } } }//package
Section 13
//DreamMusic (DreamMusic) package { import flash.media.*; public dynamic class DreamMusic extends Sound { } }//package
Section 14
//EnemyShot (EnemyShot) package { import flash.display.*; import flash.geom.*; public class EnemyShot { private var sourceBMD:BitmapData; private var distanceTravelled:int;// = 0 private var timer:int;// = 0 public var width:uint; private var stage:Stage; private var xSpeed:Number; public var angle:Number; public var speed:int; private var ySpeed:Number; private var collisionArea:Rectangle; public var height:uint; private var hotSpot:Point; private var lifeSpan:int; private var displayArea:Rectangle; public var x:Number; public var y:Number; private var range:int; public function EnemyShot(_arg1, _arg2:BitmapData, _arg3:Rectangle, _arg4:Point, _arg5:int, _arg6:int, _arg7:Number, _arg8:Number, _arg9:int, _arg10:int){ timer = 0; distanceTravelled = 0; super(); x = _arg5; y = _arg6; angle = _arg7; speed = _arg8; lifeSpan = _arg9; range = _arg10; displayArea = new Rectangle(0, 0, _arg2.width, _arg2.height); collisionArea = _arg3; hotSpot = _arg4; sourceBMD = _arg2; width = _arg2.width; height = _arg2.height; stage = _arg1; } public function update(_arg1:Array, _arg2:int){ timer++; distanceTravelled = (distanceTravelled + speed); xSpeed = (speed * Math.cos(angle)); ySpeed = (speed * Math.sin(angle)); x = (x + xSpeed); y = (y + ySpeed); if ((((lifeSpan > 0)) && ((timer > lifeSpan)))){ _arg1.Remove(_arg1[_arg2]); }; if ((((range > 0)) && ((distanceTravelled > range)))){ _arg1.Remove(_arg1[_arg2]); }; if (x > stage.width){ _arg1.Remove(_arg1[_arg2]); }; if (x < 0){ _arg1.Remove(_arg1[_arg2]); }; if (y > stage.height){ _arg1.Remove(_arg1[_arg2]); }; if (y < 0){ _arg1.Remove(_arg1[_arg2]); }; } public function render(_arg1:BitmapData){ _arg1.copyPixels(sourceBMD, displayArea, new Point((x - hotSpot.x), (y - hotSpot.y))); } } }//package
Section 15
//Game (Game) package { import flash.display.*; import flash.geom.*; import flash.events.*; import flash.media.*; import flash.text.*; import flash.utils.*; import flash.ui.*; import flash.net.*; import flash.filters.*; public class Game extends MovieClip { var titleBMD:BitmapData; var scrolling:Boolean; var smallEnemyArray:ObjectList; var debugText:TextField; var bossAnimationArray:Array; var music:Sound; var areaShadowBMD:BitmapData; var areaLightBMD:BitmapData; var boss1WakeBMD:BitmapData; var gameStarted:Boolean; var playerScore:uint;// = 0 var smallEnemyDelayArray:Array; var playerWeaponSpread:int;// = 1 public var ScreenRectangle:Rectangle; var decoyEnemyArray:ObjectList; var scrollingPropArray:ObjectList; var menuOpen:Boolean; var playerWeaponReload:int;// = 5 var debug:Boolean;// = false var playerAnimationArray:Array; var fadeValue:int; var maxLevel:uint;// = 5 public var lastTime:uint;// = 0 var smallFireballBMD:BitmapData; var levelPropBMDArray:Array; var groundBMD:BitmapData; var bossMovementArray:Array; var smallEnemyAnimationArray:Array; var skyBMD:BitmapData; public var ScreenWidth:int; var playerHealth:uint;// = 10 private var inTitleScreen:Boolean;// = true var levelPropBMDArray2:Array; var playerWeaponPower:int;// = 1 var magicSmokeBuffer:BitmapData; var playerLives:int; private var inGame:Boolean;// = false var playerDeathSequenceTimer:int; public var ScreenSize:Point; public var ScreenHeight:int; var enemyShotArray:ObjectList; var playerWeaponRange:int;// = 7 var player:Player; var playerDead:Boolean;// = false var playerGlowAnimationArray:Array; var currentMenuOption:int; var bossDammageAreaBMD:BitmapData; var format1:TextFormat; var musicChannel:SoundChannel; var fogMagicSmoke:MagicSmoke; var levelClear:Boolean; var levelDuration:int;// = 2000 var keyDownArray:Array; var timer:uint; var fadeChange:int; public var lastTick:uint;// = 0 var spotShadowBMD:BitmapData; var levelClearSequenceTimer:int; var bossAttackArray:Array; private var scoreTextField:TextField; var levelScroll:uint; var smallLinearShotBMD:SmallLinearShotBMD; public var renderBuffer:BitmapData; var missingGraphicBMD:MissingGraphicBMD; var smallEnemyAttackArray:Array; var currentLevel:uint; var playerHealthMax:uint;// = 10 var playerReloadTimer:int;// = 0 var enemyTwister:MersenneTwister; public var tick:uint;// = 0 var playerShotArray:ObjectList; var bossSpeedArray:Array; var instructionsTextField:TextField; var smallEnemyMovementArray:Array; var spotLightBMD:BitmapData; var bossHealthArray:Array; var magicSmokeToggle:Boolean;// = true private var scoreTextFormat:TextFormat; var gameOverSequenceTimer:int; var gamePaused:Boolean;// = false var musicToggle:Boolean;// = true var soundsToggle:Boolean;// = true public var fpsTimer:Timer; var smallEnemyHealthArray:Array; var gameOver:Boolean; var bossDelayArray:Array; var smallEnemySpeedArray:Array; private var scoreSprite:Sprite; var playerWeaponSpeed:int;// = 32 var instructionsFormat:TextFormat; var playerShotBMD:PlayerShotBMD; public function Game(){ lastTime = 0; fpsTimer = new Timer(1000, 0); tick = 0; lastTick = 0; debug = false; debugText = new TextField(); format1 = new TextFormat(); instructionsTextField = new TextField(); instructionsFormat = new TextFormat(); playerShotBMD = new PlayerShotBMD(64, 64); smallLinearShotBMD = new SmallLinearShotBMD(32, 32); missingGraphicBMD = new MissingGraphicBMD(64, 64); music = new Sound(); playerShotArray = new ObjectList(); enemyShotArray = new ObjectList(); decoyEnemyArray = new ObjectList(); smallEnemyArray = new ObjectList(); scrollingPropArray = new ObjectList(); maxLevel = 5; levelDuration = 2000; gamePaused = false; playerWeaponSpeed = 32; playerWeaponRange = 7; playerWeaponSpread = 1; playerWeaponPower = 1; playerWeaponReload = 5; playerReloadTimer = 0; magicSmokeToggle = true; musicToggle = true; soundsToggle = true; playerScore = 0; playerHealth = 10; playerHealthMax = 10; playerDead = false; inTitleScreen = true; inGame = false; enemyTwister = new MersenneTwister(); super(); stage.quality = "low"; ScreenWidth = 600; ScreenHeight = 400; ScreenRectangle = new Rectangle(0, 0, ScreenWidth, ScreenHeight); ScreenSize = new Point(ScreenWidth, ScreenHeight); renderBuffer = new BitmapData(stage.stageWidth, stage.stageHeight, false, 0); stage.addChild(new Bitmap(renderBuffer)); stage.addEventListener(Event.ENTER_FRAME, EnterFrame); fpsTimer.addEventListener(TimerEvent.TIMER, FpsUpdate); fpsTimer.start(); lastTime = getTimer(); debugText.selectable = false; debugText.text = ""; debugText.width = 600; debugText.height = 200; format1 = new TextFormat(); format1.color = 0xFFFF00; format1.font = "Arial"; debugText.defaultTextFormat = format1; stage.addChild(debugText); instructionsTextField.selectable = false; instructionsTextField.text = ""; instructionsTextField.width = 600; instructionsTextField.height = 200; instructionsTextField.y = 300; instructionsFormat = new TextFormat(); instructionsFormat.color = 0xFFFFFF; instructionsFormat.font = "Arial"; instructionsFormat.align = TextFormatAlign.CENTER; instructionsTextField.defaultTextFormat = instructionsFormat; stage.addChild(instructionsTextField); scrolling = true; levelScroll = 0; scoreTextFormat = new TextFormat(); scoreTextFormat.color = 0xFFFFFF; scoreTextFormat.font = "Arial"; scoreSprite = new Sprite(); scoreTextField = new TextField(); scoreTextField.selectable = false; scoreTextField.text = "Score:"; scoreTextField.width = 600; scoreTextField.height = 200; scoreTextField.setTextFormat(scoreTextFormat); scoreTextField.defaultTextFormat = scoreTextFormat; scoreSprite.addChild(scoreTextField); Key.initialize(stage); keyDownArray = new Array(); stage.addEventListener(KeyboardEvent.KEY_DOWN, keyDownHandler); stage.addEventListener(KeyboardEvent.KEY_UP, keyUpHandler); InitializeTitleScreen(); } public function SpawnPlayer():void{ player = new Player(this, stage, playerAnimationArray, playerGlowAnimationArray, 3, new Rectangle(0, 0, 128, 64), new Rectangle(0, 0, 128, 64), new Point(64, 32), 0, 200, 15); playerHealth = playerHealthMax; } public function playSound(_arg1:Class, _arg2:Number=1, _arg3:Number=0){ var _local4:SoundTransform; var _local5:Sound; var _local6:SoundChannel; if (soundsToggle){ _local4 = new SoundTransform(_arg2, _arg3); _local5 = new (_arg1); _local6 = new SoundChannel(); _local6 = _local5.play(); _local6.soundTransform = _local4; }; } public function clearEnemyShots():void{ enemyShotArray = new ObjectList(); } private function keyUpHandler(_arg1:KeyboardEvent):void{ var _local2:*; if (!Key.isDown(_arg1.keyCode)){ _local2 = 0; while (_local2 < keyDownArray.length) { if (keyDownArray[_local2] == _arg1.keyCode){ keyDownArray.splice(_local2, 1); }; _local2++; }; }; } private function keyDownHandler(_arg1:KeyboardEvent):void{ var _local2:Boolean; var _local3:*; _local2 = false; _local3 = 0; while (_local3 < keyDownArray.length) { if (keyDownArray[_local3] == _arg1.keyCode){ _local2 = true; }; _local3++; }; if (!_local2){ keyDownArray.push(_arg1.keyCode); if (_arg1.keyCode == 192){ if (debug){ debug = false; } else { debug = true; }; }; if (_arg1.keyCode == Keyboard.UP){ if (((((inTitleScreen) && ((timer > 100)))) && (menuOpen))){ currentMenuOption--; }; }; if (_arg1.keyCode == Keyboard.DOWN){ if (((((inTitleScreen) && ((timer > 100)))) && (menuOpen))){ currentMenuOption++; }; }; if (currentMenuOption < 0){ currentMenuOption = 4; }; if (currentMenuOption > 4){ currentMenuOption = 0; }; if (_arg1.keyCode == 90){ if (((inTitleScreen) && ((timer > 100)))){ if (menuOpen){ switch (currentMenuOption){ case 0: navigateToURL(new URLRequest("http://www.armorgames.com")); break; case 1: if (musicToggle){ musicToggle = false; stopMusic(); } else { musicToggle = true; playMusic(TitleMusic); }; break; case 2: if (soundsToggle){ soundsToggle = false; } else { soundsToggle = true; }; break; case 3: if (magicSmokeToggle){ magicSmokeToggle = false; } else { magicSmokeToggle = true; }; break; case 4: currentLevel = 1; playerLives = 5; InitializeLevel(currentLevel); break; default: trace("Pressed Z with invalid menu option"); }; } else { menuOpen = true; }; }; }; if (_arg1.keyCode == 32){ if (inGame){ if (gamePaused){ musicChannel.soundTransform = new SoundTransform(1); gamePaused = false; } else { musicChannel.soundTransform = new SoundTransform(0.25); renderBuffer.copyPixels(new BitmapData(600, 400, true, 2566914048), new Rectangle(0, 0, 600, 400), new Point(0, 0)); gamePaused = true; }; }; }; }; } public function Rasterize(_arg1:Sprite):BitmapData{ var _local2:BitmapData; _local2 = new BitmapData(_arg1.width, _arg1.height, true, 0); _local2.draw(_arg1); return (_local2); } public function FpsUpdate(_arg1:TimerEvent):void{ lastTick = tick; tick = 0; } public function Update():void{ var _local1:uint; var _local2:uint; var _local3:int; var _local4:int; var _local5:int; var _local6:int; var _local7:int; var _local8:int; var _local9:int; var _local10:int; var _local11:int; var _local12:Number; var _local13:uint; var _local14:uint; var _local15:Number; var _local16:int; var _local17:Number; _local1 = getTimer(); _local2 = (_local1 - lastTime); lastTime = _local1; if (scrolling){ levelScroll++; if ((levelScroll % 150) == 0){ _local8 = Math.floor((enemyTwister.percentMT() * levelPropBMDArray.length)); _local9 = (600 + (enemyTwister.percentMT() * 100)); _local10 = ((ScreenHeight - levelPropBMDArray[_local8].height) - (enemyTwister.percentMT() * 32)); scrollingPropArray.push(new ScrollingProp(levelPropBMDArray[_local8], _local9, _local10)); }; if ((levelScroll % 75) == 0){ _local8 = Math.floor((enemyTwister.percentMT() * levelPropBMDArray2.length)); scrollingPropArray.push(new ScrollingProp(levelPropBMDArray2[_local8], (600 + (enemyTwister.percentMT() * 100)), ((ScreenHeight - (levelPropBMDArray2[_local8].height * 3)) - (enemyTwister.percentMT() * 32)))); }; if (((((((levelScroll % 5) == 0)) && ((levelScroll == 5)))) && ((currentLevel == 1)))){ playSound(GhostArmySound); }; if (((((((levelScroll % 5) == 0)) && ((levelScroll < 100)))) && ((currentLevel == 1)))){ decoyEnemyArray.push(new DecoyEnemy(areaLightBMD, new Rectangle(4, 4, 24, 24), new Point(16, 16), (Math.random() * 600), 400, ((-90 * Math.PI) / 180), 8, -1, 400)); }; if (((((((levelScroll % 25) == 0)) && ((currentLevel == 1)))) && ((levelScroll > 100)))){ _local11 = ((enemyTwister.percentMT() * 336) + 32); _local12 = (enemyTwister.percentMT() * 2); _local13 = Math.round(_local12); trace(_local13); smallEnemyArray.push(new SmallEnemy(this, stage, currentLevel, smallEnemyAnimationArray[_local13], smallEnemyDelayArray[_local13], 600, _local11, Math.PI, smallEnemySpeedArray[_local13], -1, -1, null, null, smallEnemyHealthArray[_local13], false, null, smallEnemyMovementArray[_local13], smallEnemyAttackArray[_local13])); }; if (((((((levelScroll % 25) == 0)) && ((currentLevel > 1)))) && ((levelScroll < (levelDuration / 4))))){ _local11 = ((enemyTwister.percentMT() * 336) + 32); _local13 = (currentLevel + 1); _local13 = (_local13 % smallEnemyAnimationArray.length); trace(_local13); smallEnemyArray.push(new SmallEnemy(this, stage, currentLevel, smallEnemyAnimationArray[_local13], smallEnemyDelayArray[_local13], 600, _local11, Math.PI, smallEnemySpeedArray[_local13], -1, -1, null, null, smallEnemyHealthArray[_local13], false, null, smallEnemyMovementArray[_local13], smallEnemyAttackArray[_local13])); }; if (((((((((levelScroll % 25) == 0)) && ((currentLevel > 1)))) && ((levelScroll > (levelDuration / 4))))) && ((levelScroll < levelDuration)))){ _local11 = ((enemyTwister.percentMT() * 336) + 32); _local14 = (currentLevel + 1); _local15 = (enemyTwister.percentMT() * _local14); _local15 = (_local15 % smallEnemyAnimationArray.length); _local13 = Math.round(_local15); trace(_local13); smallEnemyArray.push(new SmallEnemy(this, stage, currentLevel, smallEnemyAnimationArray[_local13], smallEnemyDelayArray[_local13], 600, _local11, Math.PI, smallEnemySpeedArray[_local13], -1, -1, null, null, smallEnemyHealthArray[_local13], false, null, smallEnemyMovementArray[_local13], smallEnemyAttackArray[_local13])); }; if (((((levelScroll % 24) == 0)) && ((levelScroll > levelDuration)))){ smallEnemyArray.push(new SmallEnemy(this, stage, currentLevel, bossAnimationArray, 5, 728, 200, ((45 * Math.PI) / 180), 1.5, -1, -1, new Rectangle(76, 0, 0x0100, 0x0100), new Point(128, 128), 0, true, new Rectangle(350, 128, 472, 272), bossMovementArray[(currentLevel % bossMovementArray.length)], bossAttackArray[(currentLevel % bossAttackArray.length)])); scrolling = false; playMusic(BossMusic); }; _local7 = 0; while (_local7 < scrollingPropArray.length) { scrollingPropArray[_local7].update(scrollingPropArray, _local7, -1, 0); _local7++; }; }; _local3 = 0; while (_local3 < enemyShotArray.length) { enemyShotArray[_local3].update(enemyShotArray, _local3); if (player != null){ if (!player.invincible){ if (getDistance(enemyShotArray[_local3].x, enemyShotArray[_local3].y, player.x, player.y) < enemyShotArray[_local3].width){ playerHealth--; if (playerHealth <= 0){ playerLives--; playerDead = true; playerDeathSequenceTimer = 1; }; enemyShotArray.Remove(enemyShotArray[_local3]); }; }; }; _local3++; }; _local4 = 0; while (_local4 < decoyEnemyArray.length) { decoyEnemyArray[_local4].update(decoyEnemyArray, _local4); _local4++; }; _local5 = 0; while (_local5 < smallEnemyArray.length) { smallEnemyArray[_local5].update(smallEnemyArray, _local5); if (player != null){ if (!player.invincible){ if (getDistance(smallEnemyArray[_local5].x, smallEnemyArray[_local5].y, player.x, player.y) < (smallEnemyArray[_local5].width * 0.5)){ playerHealth--; if (playerHealth <= 0){ playerLives--; playerDead = true; playerDeathSequenceTimer = 1; }; if (!smallEnemyArray[_local5].isBoss){ decoyEnemyArray.push(new DecoyEnemy(areaLightBMD, new Rectangle(4, 4, 24, 24), new Point(16, 16), smallEnemyArray[_local5].x, smallEnemyArray[_local5].y, ((-90 * Math.PI) / 180), 8, -1, 400)); smallEnemyArray.Remove(smallEnemyArray[_local5]); }; }; }; }; _local5++; }; playerReloadTimer--; _local6 = 0; while (_local6 < playerShotArray.length) { playerShotArray[_local6].update(playerShotArray, _local6); _local16 = 0; while (_local16 < smallEnemyArray.length) { if ((((((((playerShotArray[_local6].x > smallEnemyArray[_local16].leftEdge)) && ((playerShotArray[_local6].x < smallEnemyArray[_local16].rightEdge)))) && ((playerShotArray[_local6].y > smallEnemyArray[_local16].topEdge)))) && ((playerShotArray[_local6].y < smallEnemyArray[_local16].bottomEdge)))){ if (smallEnemyArray[_local16].dammage(playerShotArray[_local6].power) <= 0){ if (smallEnemyArray[_local16].isBoss){ player.controlable = false; player.maxSpeed = (player.maxSpeed * 0.5); player.autoTarget = new Point((stage.width * 0.5), (ScreenHeight * 0.5)); clearEnemyShots(); clearEnemies(); levelClear = true; levelClearSequenceTimer = 1; playSound(BossBanishedSound); stopMusic(); }; if (!smallEnemyArray[_local16].isBoss){ _local17 = (300 - smallEnemyArray[_local16].x); _local17 = (_local17 / 300); _local17 = (_local17 * -1); playSound(BooEcho1Sound, 0.75, _local17); }; playerScore = (playerScore + smallEnemyArray[_local16].scoreBounty); smallEnemyArray.Remove(smallEnemyArray[_local16]); }; playerShotArray.Remove(playerShotArray[_local6]); break; }; _local16++; }; _local6++; }; if (player != null){ player.update(); }; playerShotArray.CleanUp(); enemyShotArray.CleanUp(); decoyEnemyArray.CleanUp(); smallEnemyArray.CleanUp(); scrollingPropArray.CleanUp(); if (levelClear){ if (levelClearSequenceTimer > 0){ levelClearSequenceTimer++; if (levelClearSequenceTimer == 25){ player.maxSpeed = (player.maxSpeed * 5); player.autoTarget = new Point((stage.width * 2), (ScreenHeight * 0.5)); }; if (levelClearSequenceTimer == 75){ fadeValue = 16; fadeChange = 16; }; if (fadeValue >= 0xFF){ EndLevel(); currentLevel++; if ((currentLevel % maxLevel) == 0){ InitializeTitleScreen(); } else { InitializeLevel(currentLevel); }; }; }; }; if (playerDead){ if (player != null){ playSound(WitchScreamSound); fogMagicSmoke.copyPixelsParticle(new WitchGhostBMD(128, 64), (player.x - 64), (player.y - 32)); player = null; }; playerDeathSequenceTimer++; if (playerDeathSequenceTimer >= 30){ if ((((playerLives < 0)) && (!(gameOver)))){ playSound(GameOverSound); player = null; gameOver = true; gameOverSequenceTimer = 1; stopMusic(); } else { if (!gameOver){ playerDead = false; SpawnPlayer(); }; }; }; }; if (gameOver){ if (gameOverSequenceTimer > 0){ gameOverSequenceTimer++; if (gameOverSequenceTimer == 75){ fadeValue = 16; fadeChange = 16; }; if (fadeValue >= 0xFF){ EndLevel(); InitializeTitleScreen(); }; }; }; } public function InitializeTitleScreen():void{ var _local1:TitleFogSprite; var _local2:StarrySkyBMD; var _local3:SmokeBMD; currentMenuOption = 4; menuOpen = false; gameStarted = false; _local1 = new TitleFogSprite(); if (magicSmokeToggle){ _local3 = new SmokeBMD(300, 200); magicSmokeBuffer = new BitmapData(600, 400, true, 0); fogMagicSmoke = new MagicSmoke(ScreenSize, _local3, new ColorTransform(1, 1, 1, 1, 64, 64, 64, 0), new ColorTransform(0.95, 0.95, 0.95, 1, 0, 0, 0, 0), 1, -1, "difference", "multiply", "lighten", 0); fogMagicSmoke.ghostParticleLayerBMD = new BitmapData(600, 800, true, 4278190080); }; inGame = false; inTitleScreen = true; _local2 = new StarrySkyBMD(600, 300); titleBMD = new TitleBMD(320, 192); skyBMD = new BitmapData(600, 400, false, 0); skyBMD.copyPixels(_local2, ScreenRectangle, new Point(0, 0)); skyBMD.copyPixels(_local2, ScreenRectangle, new Point(0, 300)); playMusic(TitleMusic); } public function clearEnemies():void{ smallEnemyArray = new ObjectList(); } public function spawnEnemyShotWave(_arg1:Object, _arg2:int=1, _arg3:int=1){ var _local4:*; var _local5:Number; var _local6:Number; var _local7:Number; var _local8:Number; if (_arg3 == 3){ _arg2 = 1; }; _local4 = 0; while (_local4 < _arg2) { switch (_arg3){ case 1: enemyShotArray.push(new EnemyShot(stage, smallLinearShotBMD, new Rectangle(4, 4, 24, 24), new Point(16, 16), _arg1.x, _arg1.y, Math.PI, ((currentLevel + 1) + _local4), -1, 700)); break; case 2: _local5 = 0; _local6 = (-10 * _arg2); _local7 = (20 * _local4); _local5 = (((_local6 + _local7) + 10) + 180); enemyShotArray.push(new EnemyShot(stage, smallFireballBMD, new Rectangle(4, 4, 24, 24), new Point(16, 16), _arg1.x, _arg1.y, ((_local5 * Math.PI) / 180), (currentLevel + 3), -1, 700)); break; case 3: if (player == null){ _local8 = 0; } else { _local8 = pointLookAtPoint(_arg1.x, _arg1.y, player.x, player.y); }; enemyShotArray.push(new EnemyShot(stage, smallFireballBMD, new Rectangle(4, 4, 24, 24), new Point(16, 16), _arg1.x, _arg1.y, _local8, (currentLevel + 3), -1, 700)); break; case 4: enemyShotArray.push(new EnemyShot(stage, smallFireballBMD, new Rectangle(4, 4, 24, 24), new Point(16, 16), _arg1.x, _arg1.y, (((Math.random() * 360) * Math.PI) / 180), ((Math.random() * currentLevel) + 3), -1, 600)); break; default: trace(("unknown Shot type: " + _arg3)); }; _local4++; }; } public function playMusic(_arg1:Class){ if (musicToggle){ stopMusic(); music = new (_arg1); musicChannel = music.play(0, 9999); }; } public function stopMusic(){ if (musicChannel != null){ musicChannel.stop(); }; } public function getDistance(_arg1, _arg2, _arg3, _arg4):Number{ var _local5:Number; var _local6:Number; _local5 = (_arg3 - _arg1); _local6 = (_arg4 - _arg2); return (Math.sqrt(((_local5 * _local5) + (_local6 * _local6)))); } public function EndLevel(){ playerShotArray = new ObjectList(); enemyShotArray = new ObjectList(); decoyEnemyArray = new ObjectList(); smallEnemyArray = new ObjectList(); scrollingPropArray = new ObjectList(); } public function EnterFrame(_arg1:Event):void{ var _local2:int; var _local3:Number; var _local4:BitmapData; var _local5:ColorTransform; var _local6:Matrix; var _local7:Rectangle; var _local8:Point; var _local9:Point; var _local10:Point; var _local11:Point; var _local12:Point; var _local13:Number; var _local14:TitleFogSprite; var _local15:uint; var _local16:uint; var _local17:uint; var _local18:uint; if (debug){ debugText.text = ((("FPS: " + lastTick) + " / ") + stage.frameRate); debugText.appendText(("\n Current Frame: " + timer)); debugText.appendText(("\n Virtual seconds elapsed: " + (timer / stage.frameRate))); debugText.appendText(("\n Enemy Shots: " + enemyShotArray.length)); debugText.appendText(("\n Player Shots: " + playerShotArray.length)); _local2 = (decoyEnemyArray.length + smallEnemyArray.length); debugText.appendText(("\n Ghosts: " + _local2)); debugText.appendText(("\n Player Shot collisions checked: " + (_local2 * playerShotArray.length))); debugText.autoSize = "left"; renderBuffer.copyPixels(new BitmapData(debugText.width, debugText.height, true, 1711276032), new Rectangle(0, 0, debugText.width, debugText.height), new Point(0, 0)); } else { debugText.text = ""; }; if (inTitleScreen){ timer++; renderBuffer.copyPixels(skyBMD, new Rectangle(0, 0, 600, 400), new Point(0, 0)); if (timer < 25){ _local3 = (1 - (timer / 25)); _local4 = new BitmapData(600, 800, true, 4278190080); renderBuffer.copyPixels(_local4, new Rectangle(0, 0, 600, 400), new Point(0, 0)); _local5 = new ColorTransform(0, 0, 0, _local3, 0, 0, 0, 0); renderBuffer.copyPixels(new ArmorGamesLogoOrangeBMD(249, 153), new Rectangle(0, 0, 249, 153), new Point(181, 115)); renderBuffer.draw(_local4, null, _local5); }; if ((((timer >= 25)) && ((timer < 50)))){ _local4 = new BitmapData(600, 800, true, 4278190080); _local3 = (1 - ((timer - 25) / 25)); _local5 = new ColorTransform(1, 1, 1, _local3, 0, 0, 0, 0); _local6 = new Matrix(1, 0, 0, 1, 181, 115); renderBuffer.draw(_local4, null, _local5); renderBuffer.copyPixels(new ArmorGamesLogoGhostBMD(249, 153), new Rectangle(0, 0, 249, 153), new Point(181, 115)); renderBuffer.draw(new ArmorGamesLogoOrangeBMD(249, 153), _local6, _local5); }; if ((((timer >= 50)) && ((timer < 75)))){ renderBuffer.copyPixels(new ArmorGamesLogoGhostBMD(249, 153), new Rectangle(0, 0, 249, 153), new Point(181, 115)); }; if ((((timer >= 75)) && ((timer < 100)))){ _local3 = (2 - ((timer - 50) / 25)); _local5 = new ColorTransform(1, 1, 1, _local3, 0, 0, 0, 0); _local6 = new Matrix(1, 0, 0, 1, 181, 115); renderBuffer.draw(new ArmorGamesLogoGhostBMD(249, 153), _local6, _local5); }; if (timer >= 100){ if (magicSmokeToggle){ _local14 = new TitleFogSprite(); fogMagicSmoke.ghostParticleLayerBMD = Rasterize(_local14); fogMagicSmoke.update(renderBuffer); }; renderBuffer.copyPixels(titleBMD, new Rectangle(0, 0, titleBMD.width, titleBMD.height), new Point((300 - (titleBMD.width / 2)), (200 - (titleBMD.height / 2)))); _local7 = new Rectangle(0, 0, 150, 12); _local8 = new Point(225, 280); _local9 = new Point(225, 294); _local10 = new Point(225, 308); _local11 = new Point(225, 322); _local12 = new Point(225, 352); _local13 = Math.abs((15 - (timer % 31))); if (menuOpen){ _local15 = ((((_local13 * 0x0100) * 0x0100) * 0x0100) * 16); _local16 = ((0x0100 * 0x0100) * 0xFF); _local17 = (0x0100 * 128); _local18 = (((_local15 + _local16) + _local17) + 0); instructionsTextField.textColor = 0xFFFFFF; instructionsTextField.y = 270; instructionsTextField.text = ""; renderBuffer.copyPixels(new MenuBackgroundBMD(300, 135), new Rectangle(0, 0, 300, 135), new Point(150, 250)); switch (currentMenuOption){ case 0: renderBuffer.copyPixels(new BitmapData(300, 150, true, _local18), _local7, _local8); break; case 1: renderBuffer.copyPixels(new BitmapData(300, 150, true, _local18), _local7, _local9); break; case 2: renderBuffer.copyPixels(new BitmapData(300, 150, true, _local18), _local7, _local10); break; case 3: renderBuffer.copyPixels(new BitmapData(300, 150, true, _local18), _local7, _local11); break; case 4: renderBuffer.copyPixels(new BitmapData(300, 150, true, _local18), _local7, _local12); break; default: trace("Invalid menu selection"); }; renderBuffer.copyPixels(new MoreGamesBMD(150, 12), _local7, _local8); renderBuffer.copyPixels(new ToggleMusicBMD(150, 12), _local7, _local9); renderBuffer.copyPixels(new ToggleSoundsBMD(150, 12), _local7, _local10); renderBuffer.copyPixels(new ToggleSmokeBMD(150, 12), _local7, _local11); renderBuffer.copyPixels(new StartGameBMD(150, 12), _local7, _local12); } else { instructionsTextField.textColor = (((((_local13 * 0x0100) * 0x0100) * 16) + ((_local13 * 0x0100) * 16)) + (_local13 * 16)); instructionsTextField.text = "Press Z key to begin"; }; }; }; if (inGame){ if (!gamePaused){ timer++; instructionsTextField.text = ""; Update(); Render(); }; }; tick++; } public function InitializeLevel(_arg1):void{ var _local2:StarrySkyBMD; var _local3:GrassyHillsBMD; var _local4:PlayerShotBMD; var _local5:MoonBMD; var _local6:SmokeBMD; var _local7:Swirl2BMD; var _local8:CloudsBMD; var _local9:SlimeBMD; var _local10:CigSmokeBMD; var _local11:GhostSwirlBMD; var _local12:House1BMD; var _local13:House2BMD; var _local14:House3BMD; var _local15:House4BMD; var _local16:House5BMD; var _local17:Ghost1BMD; var _local18:Ghost2BMD; var _local19:Ghost3BMD; var _local20:SkeletonIdle1BMD; var _local21:SkeletonIdle2BMD; var _local22:SkeletonIdle3BMD; var _local23:SkeletonSpit1BMD; var _local24:SkeletonSpit2BMD; var _local25:SkeletonSpell1BMD; var _local26:SkeletonSpell2BMD; var _local27:Skull1BMD; var _local28:Skull2BMD; var _local29:Skull3BMD; var _local30:LostSoul1BMD; var _local31:SpotLightSprite; var _local32:SpotShadowSprite; var _local33:AreaLightSprite; var _local34:AreaShadowSprite; var _local35:SmallFireballSprite; var _local36:Matrix; var _local37:Matrix; var _local38:Matrix; var _local39:ColorMatrixFilter; var _local40:ColorMatrixFilter; var _local41:ColorMatrixFilter; var _local42:ColorMatrixFilter; var _local43:ColorMatrixFilter; var _local44:ColorMatrixFilter; var _local45:*; var _local46:BitmapData; var _local47:BitmapData; var _local48:BitmapData; var _local49:*; var _local50:BitmapData; var _local51:BitmapData; var _local52:BitmapData; var _local53:*; var _local54:BitmapData; var _local55:*; var _local56:BitmapData; var _local57:BitmapData; var _local58:BitmapData; var _local59:*; var _local60:BitmapData; var _local61:*; var _local62:BitmapData; var _local63:BitmapData; var _local64:BitmapData; var _local65:*; var _local66:BitmapData; var _local67:BitmapData; var _local68:BitmapData; var _local69:BitmapData; var _local70:BitmapData; var _local71:BitmapData; var _local72:BitmapData; var _local73:*; var _local74:*; var _local75:*; var _local76:Witch3Frame1BMD; var _local77:Witch3Frame2BMD; var _local78:GlowFilter; var _local79:Matrix; var _local80:ColorTransform; var _local81:BitmapData; var _local82:BitmapData; var _local83:BitmapData; var _local84:BitmapData; var _local85:Matrix; var _local86:*; enemyTwister = new MersenneTwister(); enemyTwister.seedMT((_arg1 + 111)); _local2 = new StarrySkyBMD(600, 300); _local3 = new GrassyHillsBMD(600, 128); _local4 = new PlayerShotBMD(64, 64); _local5 = new MoonBMD(128, 128); _local6 = new SmokeBMD(300, 200); _local7 = new Swirl2BMD(300, 200); _local8 = new CloudsBMD(300, 200); _local9 = new SlimeBMD(300, 200); _local10 = new CigSmokeBMD(300, 200); _local11 = new GhostSwirlBMD(300, 200); _local10 = new CigSmokeBMD(300, 200); _local11 = new GhostSwirlBMD(300, 200); _local12 = new House1BMD(64, 72); _local13 = new House2BMD(64, 72); _local14 = new House3BMD(64, 72); _local15 = new House4BMD(64, 72); _local16 = new House5BMD(64, 72); _local17 = new Ghost1BMD(0x0100, 0x0100); _local18 = new Ghost2BMD(0x0100, 0x0100); _local19 = new Ghost3BMD(0x0100, 0x0100); _local20 = new SkeletonIdle1BMD(0x0100, 0x0100); _local21 = new SkeletonIdle2BMD(0x0100, 0x0100); _local22 = new SkeletonIdle3BMD(0x0100, 0x0100); _local23 = new SkeletonSpit1BMD(0x0100, 0x0100); _local24 = new SkeletonSpit2BMD(0x0100, 0x0100); _local25 = new SkeletonSpell1BMD(0x0100, 0x0100); _local26 = new SkeletonSpell2BMD(0x0100, 0x0100); _local27 = new Skull1BMD(0x0100, 0x0100); _local28 = new Skull2BMD(0x0100, 0x0100); _local29 = new Skull3BMD(0x0100, 0x0100); _local30 = new LostSoul1BMD(0x0100, 0x0100); _local31 = new SpotLightSprite(); _local32 = new SpotShadowSprite(); _local33 = new AreaLightSprite(); _local34 = new AreaShadowSprite(); _local35 = new SmallFireballSprite(); spotLightBMD = Rasterize(_local31); spotShadowBMD = Rasterize(_local32); areaLightBMD = Rasterize(_local33); areaShadowBMD = Rasterize(_local34); boss1WakeBMD = Rasterize(new Boss1WakeSprite()); bossDammageAreaBMD = Rasterize(new BossDammageAreaSprite()); smallFireballBMD = Rasterize(_local35); _local36 = new Matrix(); _local36.scale(0.125, 0.125); _local37 = new Matrix(); _local37.scale(0.25, 0.25); _local38 = new Matrix(); _local38.scale(0.5, 0.5); smallEnemyDelayArray = [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]; smallEnemySpeedArray = [3, 3, 7, 2, 3, 8, 9, 10, 11, 12]; smallEnemyHealthArray = [5, 5, 3, 7, 5, 5, 5, 5, 5, 5]; smallEnemyMovementArray = [0, 1, 0, 0, 1, 4, 0, 0, 0, 0]; smallEnemyAttackArray = [0, 0, 0, 2, 1, 3, 0, 0, 0, 0]; smallEnemyAnimationArray = new Array(); bossDelayArray = [5, 5, 5, 5, 5, 5, 5, 5, 5, 5]; bossSpeedArray = [3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; bossHealthArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; bossMovementArray = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]; bossAttackArray = [[1, 2], [0], [0], [0], [0], [0], [0], [0], [0], [0]]; bossAnimationArray = new Array(); _local39 = new ColorMatrixFilter(new Array(0.264397472143173, 0.561962068080902, 0.173640415072441, 0, 74.9999923706055, 0.316821455955505, 0.628798305988312, 0.0543802045285702, 0, 74.9999923706055, 0.22523432970047, 0.702789485454559, 0.07197605073452, 0, 74.9999847412109, 0, 0, 0, 0.9, 0)); _local40 = new ColorMatrixFilter(new Array(-0.102924875915051, 2.45701885223389, -1.35409390926361, 0, -49.9999961853027, 0.0720274969935417, 0.361373662948608, 0.566598832607269, 0, -50, 1.54704344272614, 0.188983634114265, -0.73602694272995, 0, -50.0000114440918, 0, 0, 0, 1, 0)); _local41 = new ColorMatrixFilter(new Array(0.220339983701706, 0.691459894180298, 0.0881999954581261, 0, -49.9999923706055, 0.320339947938919, 0.591459929943085, 0.0881999880075455, 0, -49.9999923706055, 0.320340007543564, 0.691460013389587, -0.0117999836802483, 0, -50, 0, 0, 0, 1, 0)); _local42 = new ColorMatrixFilter(new Array(1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0)); _local43 = new ColorMatrixFilter(new Array(1.44625961780548, 7.8825569152832, -7.32881689071655, 0, -13.4999980926514, -1.26168692111969, 0.903979420661926, 2.35770773887634, 0, -13.5000009536743, 6.17717981338501, -3.55570006370544, -0.621479392051697, 0, -13.4999990463257, 0, 0, 0, 1, 0)); _local44 = new ColorMatrixFilter(new Array(-1.23594999313354, 2.04544973373413, 0.190500125288963, 0, -49.9999923706055, 0.5140500664711, 0.29544997215271, 0.190499946475029, 0, -49.9999961853027, 0.514049887657166, 2.04544997215271, -1.55949997901917, 0, -50.0000038146973, 0, 0, 0, 1, 0)); _local45 = new Array(missingGraphicBMD); _local46 = new BitmapData(64, 64, true, 0); _local46.draw(_local17, _local37); _local46.applyFilter(_local46, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local39); _local47 = new BitmapData(64, 64, true, 0); _local47.draw(_local18, _local37); _local47.applyFilter(_local47, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local39); _local48 = new BitmapData(64, 64, true, 0); _local48.draw(_local19, _local37); _local48.applyFilter(_local48, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local39); _local49 = new Array(_local46, _local47, _local48, _local47); _local50 = new BitmapData(64, 64, true, 0); _local50.draw(_local27, _local37); _local50.applyFilter(_local50, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local39); _local51 = new BitmapData(64, 64, true, 0); _local51.draw(_local28, _local37); _local51.applyFilter(_local51, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local39); _local52 = new BitmapData(64, 64, true, 0); _local52.draw(_local29, _local37); _local52.applyFilter(_local52, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local39); _local53 = new Array(_local51); _local54 = new BitmapData(64, 64, true, 0); _local54.draw(_local30, _local37); _local54.applyFilter(_local54, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local39); _local55 = new Array(_local54); _local56 = new BitmapData(128, 128, true, 0); _local56.draw(_local17, _local38); _local56.applyFilter(_local56, new Rectangle(0, 0, 128, 128), new Point(0, 0), _local39); _local57 = new BitmapData(128, 128, true, 0); _local57.draw(_local18, _local38); _local57.applyFilter(_local57, new Rectangle(0, 0, 128, 128), new Point(0, 0), _local39); _local58 = new BitmapData(128, 128, true, 0); _local58.draw(_local19, _local38); _local58.applyFilter(_local58, new Rectangle(0, 0, 128, 128), new Point(0, 0), _local39); _local59 = new Array(_local56, _local57, _local58, _local57); _local60 = new BitmapData(64, 64, true, 0); _local60.draw(_local30, _local37); _local60.applyFilter(_local60, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local42); _local61 = new Array(_local60); _local62 = new BitmapData(64, 64, true, 0); _local62.draw(_local17, _local37); _local62.applyFilter(_local62, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local40); _local63 = new BitmapData(64, 64, true, 0); _local63.draw(_local18, _local37); _local63.applyFilter(_local63, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local40); _local64 = new BitmapData(64, 64, true, 0); _local64.draw(_local19, _local37); _local64.applyFilter(_local64, new Rectangle(0, 0, 64, 64), new Point(0, 0), _local40); _local65 = new Array(_local62, _local63, _local64, _local63); smallEnemyAnimationArray.push(new Array(_local49)); smallEnemyAnimationArray.push(new Array(_local53)); smallEnemyAnimationArray.push(new Array(_local55)); smallEnemyAnimationArray.push(new Array(_local59)); smallEnemyAnimationArray.push(new Array(_local61)); smallEnemyAnimationArray.push(new Array(_local65)); smallEnemyAnimationArray.push(new Array(_local45)); smallEnemyAnimationArray.push(new Array(_local45)); smallEnemyAnimationArray.push(new Array(_local45)); smallEnemyAnimationArray.push(new Array(_local45)); _local66 = new BitmapData(0x0100, 0x0100, true, 0); _local67 = new BitmapData(0x0100, 0x0100, true, 0); _local68 = new BitmapData(0x0100, 0x0100, true, 0); _local66.applyFilter(_local20, new Rectangle(0, 0, 0x0100, 0x0100), new Point(0, 0), _local39); _local67.applyFilter(_local21, new Rectangle(0, 0, 0x0100, 0x0100), new Point(0, 0), _local39); _local68.applyFilter(_local22, new Rectangle(0, 0, 0x0100, 0x0100), new Point(0, 0), _local39); _local69 = new BitmapData(0x0100, 0x0100, true, 0); _local70 = new BitmapData(0x0100, 0x0100, true, 0); _local69.applyFilter(_local23, new Rectangle(0, 0, 0x0100, 0x0100), new Point(0, 0), _local39); _local70.applyFilter(_local24, new Rectangle(0, 0, 0x0100, 0x0100), new Point(0, 0), _local39); _local71 = new BitmapData(0x0100, 0x0100, true, 0); _local72 = new BitmapData(0x0100, 0x0100, true, 0); _local71.applyFilter(_local25, new Rectangle(0, 0, 0x0100, 0x0100), new Point(0, 0), _local39); _local72.applyFilter(_local26, new Rectangle(0, 0, 0x0100, 0x0100), new Point(0, 0), _local39); _local73 = new Array(_local66, _local67, _local68, _local67); _local74 = new Array(_local69, _local70); _local75 = new Array(_local71, _local72); bossAnimationArray = new Array(_local73, _local74, _local75); _local76 = new Witch3Frame1BMD(128, 64); _local77 = new Witch3Frame2BMD(128, 64); playerAnimationArray = new Array(_local76, _local77); _local78 = new GlowFilter(0x660099, 1, 8, 8, 4, BitmapFilterQuality.LOW, false, false); _local79 = new Matrix(); _local79.translate(64, 32); _local80 = new ColorTransform(0, 0, 0, 1, 0, 0, 0, 0); _local81 = new BitmapData(0x0100, 128, true, 0); _local81.applyFilter(_local76, new Rectangle(0, 0, 128, 64), new Point(64, 32), _local78); _local81.draw(_local76, _local79, _local80); _local82 = new BitmapData(0x0100, 128, true, 0); _local82.applyFilter(_local77, new Rectangle(0, 0, 128, 64), new Point(64, 32), _local78); _local82.draw(_local77, _local79, _local80); playerGlowAnimationArray = new Array(_local81, _local82); skyBMD = new BitmapData(600, 400, false, 0); groundBMD = new BitmapData(600, 0x0100, true, 0); skyBMD.copyPixels(_local2, ScreenRectangle, new Point(0, 0)); skyBMD.copyPixels(_local5, new Rectangle(0, 0, 128, 128), new Point(64, 48)); _local2.dispose(); _local5.dispose(); groundBMD.copyPixels(_local3, new Rectangle(0, 0, 600, 128), new Point(0, 0)); _local83 = new BitmapData(600, 128, false, 0); _local84 = new BitmapData(600, 128, false, 0); _local85 = new Matrix(); _local85.scale(1, -1); _local85.ty = 0x0100; _local83.copyPixels(groundBMD, new Rectangle(300, 0, 600, 128), new Point(0, 0)); _local83.copyPixels(groundBMD, new Rectangle(0, 0, 300, 128), new Point(300, 0)); groundBMD.copyPixels(_local83, new Rectangle(0, 0, 600, 128), new Point(0, 128)); groundBMD.draw(_local83, _local85); _local84.dispose(); _local83.dispose(); _local3.dispose(); levelPropBMDArray = new Array(_local12, _local13, _local14, _local15, _local16); levelPropBMDArray2 = new Array(); _local86 = 0; while (_local86 < levelPropBMDArray.length) { _local83 = new BitmapData((levelPropBMDArray[_local86].width / 2), (levelPropBMDArray[_local86].height / 2), true, 0); _local83.draw(levelPropBMDArray[_local86], _local38); levelPropBMDArray2.push(_local83); _local86++; }; if (magicSmokeToggle){ magicSmokeBuffer = new BitmapData(600, 400, true, 0); fogMagicSmoke = new MagicSmoke(ScreenSize, _local6, new ColorTransform(1, 1, 1, 1, 64, 64, 64, 0), new ColorTransform(0.95, 0.95, 0.95, 1, 0, 0, 0, 0), 1, -1, "difference", "multiply", "lighten", 0); }; if (musicToggle){ playMusic(DreamMusic); }; scrolling = true; levelScroll = 0; timer = 0; gamePaused = false; fadeValue = 0xFF; fadeChange = -16; inTitleScreen = false; inGame = true; levelClear = false; levelClearSequenceTimer = 0; gameOverSequenceTimer = 0; playerDeathSequenceTimer = 0; playerHealth = playerHealthMax; gameOver = false; playerDead = false; SpawnPlayer(); } public function Render():void{ var _local1:int; var _local2:int; var _local3:int; var _local4:int; var _local5:int; var _local6:int; var _local7:BitmapData; var _local8:int; var _local9:Matrix; var _local10:*; var _local11:Number; var _local12:ColorTransform; var _local13:*; var _local14:ColorTransform; var _local15:int; var _local16:uint; renderBuffer.copyPixels(skyBMD, new Rectangle(0, 0, 600, 300), new Point()); _local1 = (levelScroll % 600); renderBuffer.copyPixels(groundBMD, new Rectangle(_local1, 0, 600, 0x0100), new Point(0, 200)); renderBuffer.copyPixels(groundBMD, new Rectangle(0, 0, _local1, 0x0100), new Point((600 - _local1), 200)); _local2 = 0; while (_local2 < scrollingPropArray.length) { scrollingPropArray[_local2].render(renderBuffer); _local2++; }; if (magicSmokeToggle){ _local8 = 0; while (_local8 < decoyEnemyArray.length) { fogMagicSmoke.copyPixelsParticle(areaLightBMD, decoyEnemyArray[_local8].x, decoyEnemyArray[_local8].y); _local8++; }; _local3 = 0; while (_local3 < smallEnemyArray.length) { _local9 = new Matrix(); _local9.translate((smallEnemyArray[_local3].x - (areaLightBMD.width / 2)), (smallEnemyArray[_local3].y - (areaLightBMD.height / 2))); fogMagicSmoke.copyPixelsParticle(areaLightBMD, (smallEnemyArray[_local3].x - 32), (smallEnemyArray[_local3].y - 32)); if (smallEnemyArray[_local3].isBoss){ fogMagicSmoke.copyPixelsParticle(boss1WakeBMD, (smallEnemyArray[_local3].x - 128), ((smallEnemyArray[_local3].y - 128) - 64)); }; _local3++; }; fogMagicSmoke.update(renderBuffer); }; _local3 = 0; while (_local3 < smallEnemyArray.length) { smallEnemyArray[_local3].render(renderBuffer); if (smallEnemyArray[_local3].isBoss){ if (player != null){ _local10 = new Matrix(); _local10.translate((smallEnemyArray[_local3].x - 128), (smallEnemyArray[_local3].y - 128)); _local11 = getDistance(player.x, player.y, smallEnemyArray[_local3].x, smallEnemyArray[_local3].y); _local11 = (_local11 - 128); _local11 = (_local11 / 128); _local11 = (1 - _local11); _local12 = new ColorTransform(1, 1, 1, _local11, 0, 0, 0, 0); renderBuffer.draw(bossDammageAreaBMD, _local10, _local12, "add"); }; }; _local3++; }; _local4 = 0; while (_local4 < playerShotArray.length) { playerShotArray[_local4].render(renderBuffer); _local4++; }; if (player != null){ player.render(renderBuffer); }; _local5 = 0; while (_local5 < enemyShotArray.length) { enemyShotArray[_local5].render(renderBuffer); _local5++; }; renderBuffer.copyPixels(new HealthBottomBMD(150, 12), new Rectangle(0, 0, 150, 12), new Point(48, 16)); renderBuffer.copyPixels(new BitmapData(150, 12, true, 2566979430), new Rectangle(0, 0, (playerHealth * 15), 12), new Point(48, 16)); renderBuffer.copyPixels(new HealthTopBMD(150, 12), new Rectangle(0, 0, 150, 12), new Point(48, 16)); renderBuffer.copyPixels(new Witch3Frame1BMD(128, 64), new Rectangle(74, 0, 32, 32), new Point(0, 0)); _local6 = playerLives; if (_local6 < 0){ _local6 = 0; }; scoreTextField.text = ("x" + _local6); _local7 = Rasterize(scoreSprite); renderBuffer.copyPixels(_local7, new Rectangle(0, 0, scoreSprite.width, scoreSprite.height), new Point(24, 24)); scoreTextField.text = ("" + playerScore); _local7 = Rasterize(scoreSprite); renderBuffer.copyPixels(_local7, new Rectangle(0, 0, scoreSprite.width, scoreSprite.height), new Point(214, 16)); if (gameOver){ _local13 = new Matrix(); _local13.translate(160, 150); _local11 = (gameOverSequenceTimer / 25); _local14 = new ColorTransform(1, 1, 1, _local11, 0, 0, 0, 0); renderBuffer.draw(new GameOverGlowBMD(320, 100), _local13, _local14, "add"); renderBuffer.copyPixels(new GameOverBMD(320, 100), new Rectangle(0, 0, 320, 100), new Point(160, 150)); }; if (fadeValue > 0){ _local15 = fadeValue; if (_local15 > 0xFF){ _local15 = 0xFF; }; _local16 = (((_local15 * 0x0100) * 0x0100) * 0x0100); renderBuffer.copyPixels(new BitmapData(600, 400, true, _local16), new Rectangle(0, 0, 600, 400), new Point(0, 0)); fadeValue = (fadeValue + fadeChange); }; } public function pointLookAtPoint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Number{ var _local5:Number; var _local6:Number; var _local7:Number; _local5 = (_arg3 - _arg1); _local6 = (_arg4 - _arg2); _local7 = Math.atan2(_local6, _local5); return (_local7); } public function playerShoot():void{ var _local1:Number; var _local2:*; var _local3:Number; var _local4:Number; var _local5:Number; if (playerReloadTimer <= 0){ _local1 = (300 - player.x); _local1 = (_local1 / 300); _local1 = (_local1 * -1); playSound(Spell1Sound, 0.25, _local1); _local2 = 0; while (_local2 < playerWeaponSpread) { _local3 = 0; _local4 = (-5 * playerWeaponSpread); _local5 = (10 * _local2); _local3 = ((_local4 + _local5) + 5); playerShotArray.push(new PlayerShot(stage, playerShotBMD, new Rectangle(0, 0, 64, 64), new Point(32, 32), (player.x + 64), player.y, ((_local3 * Math.PI) / 180), playerWeaponSpeed, -1, ((playerWeaponRange * 100) + 100), playerWeaponPower)); _local2++; }; playerReloadTimer = (8 - playerWeaponReload); }; } } }//package
Section 16
//GameOverBMD (GameOverBMD) package { import flash.display.*; public dynamic class GameOverBMD extends BitmapData { public function GameOverBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 17
//GameOverGlowBMD (GameOverGlowBMD) package { import flash.display.*; public dynamic class GameOverGlowBMD extends BitmapData { public function GameOverGlowBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 18
//GameOverSound (GameOverSound) package { import flash.media.*; public dynamic class GameOverSound extends Sound { } }//package
Section 19
//Ghost1BMD (Ghost1BMD) package { import flash.display.*; public dynamic class Ghost1BMD extends BitmapData { public function Ghost1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 20
//Ghost2BMD (Ghost2BMD) package { import flash.display.*; public dynamic class Ghost2BMD extends BitmapData { public function Ghost2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 21
//Ghost3BMD (Ghost3BMD) package { import flash.display.*; public dynamic class Ghost3BMD extends BitmapData { public function Ghost3BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 22
//GhostArmySound (GhostArmySound) package { import flash.media.*; public dynamic class GhostArmySound extends Sound { } }//package
Section 23
//GhostSwirlBMD (GhostSwirlBMD) package { import flash.display.*; public dynamic class GhostSwirlBMD extends BitmapData { public function GhostSwirlBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 24
//GrassyHillsBMD (GrassyHillsBMD) package { import flash.display.*; public dynamic class GrassyHillsBMD extends BitmapData { public function GrassyHillsBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 25
//HealthBottomBMD (HealthBottomBMD) package { import flash.display.*; public dynamic class HealthBottomBMD extends BitmapData { public function HealthBottomBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 26
//HealthTopBMD (HealthTopBMD) package { import flash.display.*; public dynamic class HealthTopBMD extends BitmapData { public function HealthTopBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 27
//House1BMD (House1BMD) package { import flash.display.*; public dynamic class House1BMD extends BitmapData { public function House1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 28
//House2BMD (House2BMD) package { import flash.display.*; public dynamic class House2BMD extends BitmapData { public function House2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 29
//House3BMD (House3BMD) package { import flash.display.*; public dynamic class House3BMD extends BitmapData { public function House3BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 30
//House4BMD (House4BMD) package { import flash.display.*; public dynamic class House4BMD extends BitmapData { public function House4BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 31
//House5BMD (House5BMD) package { import flash.display.*; public dynamic class House5BMD extends BitmapData { public function House5BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 32
//Key (Key) package { import flash.display.*; import flash.events.*; public class Key { private static var initialized:Boolean = false; private static var keysDown:Object = new Object(); public static function initialize(_arg1:Stage){ if (!initialized){ _arg1.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed); _arg1.addEventListener(KeyboardEvent.KEY_UP, keyReleased); _arg1.addEventListener(Event.DEACTIVATE, clearKeys); initialized = true; }; } private static function clearKeys(_arg1:Event):void{ keysDown = new Object(); } public static function isDown(_arg1:uint):Boolean{ if (!initialized){ throw (new Error("Key class has yet been initialized.")); }; return (Boolean((_arg1 in keysDown))); } private static function keyPressed(_arg1:KeyboardEvent):void{ keysDown[_arg1.keyCode] = true; } private static function keyReleased(_arg1:KeyboardEvent):void{ if ((_arg1.keyCode in keysDown)){ delete keysDown[_arg1.keyCode]; }; } } }//package
Section 33
//LargeAreaLightSprite (LargeAreaLightSprite) package { import flash.display.*; public dynamic class LargeAreaLightSprite extends Sprite { } }//package
Section 34
//LostSoul1BMD (LostSoul1BMD) package { import flash.display.*; public dynamic class LostSoul1BMD extends BitmapData { public function LostSoul1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 35
//MagicSmoke (MagicSmoke) package { import flash.display.*; import flash.geom.*; public class MagicSmoke { private var particleLayer1Blend:String; private var fogLayerBMD:BitmapData; private var layer2MaxScroll:int; private var layer1ScrollSpeed:int; private var screenRectangle:Rectangle; private var fadeColorTransform:ColorTransform; private var fogColorTransform:ColorTransform; private var particleLayer2Blend:String; private var layer1Scroll:int;// = 0 private var layer2Scroll:int;// = 0 private var magicSmokeBlend:String; private var layer1MaxScroll:int; private var screenHeight:int; private var layer2ScrollSpeed:int; private var screenWidth:int; private var smokeTileBMD:BitmapData; public var ghostParticleLayerBMD:BitmapData; public function MagicSmoke(_arg1:Point, _arg2:BitmapData, _arg3:ColorTransform, _arg4:ColorTransform, _arg5:int=1, _arg6:int=-1, _arg7:String=null, _arg8:String=null, _arg9:String=null, _arg10:uint=0){ var _local11:Rectangle; layer1Scroll = 0; layer2Scroll = 0; super(); particleLayer1Blend = _arg7; particleLayer2Blend = _arg8; magicSmokeBlend = _arg9; screenWidth = _arg1.x; screenHeight = _arg1.y; layer1ScrollSpeed = _arg5; layer2ScrollSpeed = _arg6; layer1MaxScroll = _arg2.height; layer2MaxScroll = _arg2.height; fogColorTransform = _arg3; fadeColorTransform = _arg4; screenRectangle = new Rectangle(0, 0, screenWidth, screenHeight); fogLayerBMD = new BitmapData(screenWidth, screenHeight, false, _arg10); _local11 = new Rectangle(0, 0, _arg2.width, _arg2.height); smokeTileBMD = new BitmapData(screenWidth, (screenHeight + _arg2.height), false, 0); smokeTileBMD.copyPixels(_arg2, _local11, new Point(0, 0)); smokeTileBMD.copyPixels(_arg2, _local11, new Point(300, 0)); smokeTileBMD.copyPixels(_arg2, _local11, new Point(0, 200)); smokeTileBMD.copyPixels(_arg2, _local11, new Point(300, 200)); smokeTileBMD.copyPixels(_arg2, _local11, new Point(0, 400)); smokeTileBMD.copyPixels(_arg2, _local11, new Point(300, 400)); ghostParticleLayerBMD = new BitmapData(screenWidth, screenHeight, false, _arg10); } public function drawParticle(_arg1:IBitmapDrawable, _arg2:Matrix=null, _arg3:ColorTransform=null, _arg4:String=null, _arg5:Rectangle=null, _arg6:Boolean=false):void{ ghostParticleLayerBMD.draw(_arg1, _arg2, _arg3, _arg4, _arg5, _arg6); } public function update(_arg1:BitmapData):void{ var _local2:Matrix; layer1Scroll = (layer1Scroll + layer1ScrollSpeed); if ((((layer1ScrollSpeed > 0)) && ((layer1Scroll > layer1MaxScroll)))){ layer1Scroll = 0; }; if ((((layer1ScrollSpeed < 0)) && ((layer1Scroll < -(layer1MaxScroll))))){ layer1Scroll = 0; }; layer2Scroll = (layer2Scroll + layer2ScrollSpeed); if ((((layer2ScrollSpeed > 0)) && ((layer2Scroll > layer2MaxScroll)))){ layer2Scroll = 0; }; if ((((layer2ScrollSpeed < 0)) && ((layer2Scroll < -(layer2MaxScroll))))){ layer2Scroll = 0; }; fogLayerBMD.colorTransform(screenRectangle, fogColorTransform); fogLayerBMD.copyPixels(smokeTileBMD, new Rectangle(0, layer1Scroll, (600 + layer1Scroll), 400), new Point()); _local2 = new Matrix(); _local2.scale(-1, 1); _local2.tx = 600; _local2.ty = (-(layer2Scroll) - layer2MaxScroll); fogLayerBMD.draw(smokeTileBMD, _local2, null, particleLayer1Blend, screenRectangle); fogLayerBMD.colorTransform(screenRectangle, fogColorTransform); fogLayerBMD.draw(ghostParticleLayerBMD, null, null, particleLayer2Blend, screenRectangle); _arg1.draw(fogLayerBMD, null, null, magicSmokeBlend); ghostParticleLayerBMD.colorTransform(screenRectangle, fadeColorTransform); } public function copyPixelsParticle(_arg1:BitmapData, _arg2:int, _arg3:int):void{ ghostParticleLayerBMD.copyPixels(_arg1, new Rectangle(0, 0, _arg1.width, _arg1.height), new Point(_arg2, _arg3)); } } }//package
Section 36
//MenuBackgroundBMD (MenuBackgroundBMD) package { import flash.display.*; public dynamic class MenuBackgroundBMD extends BitmapData { public function MenuBackgroundBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 37
//MersenneTwister (MersenneTwister) package { public class MersenneTwister { private var state; private var next; private var left; public function MersenneTwister(){ state = new Array((624 + 1)); next = 0; left = -1; } private function reloadMT(){ var _local1:*; var _local2:*; var _local3:*; var _local4:*; var _local5:*; var _local6:*; _local1 = 0; _local2 = 2; _local3 = 397; if (left < -1){ seedMT(4357); }; left = (624 - 1); next = 1; _local4 = state[0]; _local5 = state[1]; _local6 = ((624 - 397) + 1); while (_local6 > 0) { var _temp1 = _local1; _local1 = (_local1 + 1); var _local7 = _temp1; var _temp2 = _local3; _local3 = (_local3 + 1); state[_local7] = ((state[_temp2] ^ ((((_local4 & 2147483648) | (_local5 & 2147483647)) >> 1) & 2147483647)) ^ ((_local5 & 1)) ? 2567483615 : 0); _local4 = _local5; var _temp3 = _local2; _local2 = (_local2 + 1); _local5 = state[_temp3]; _local6--; }; _local3 = 0; _local6 = 397; while (_local6 > 0) { var _temp4 = _local1; _local1 = (_local1 + 1); _local7 = _temp4; var _temp5 = _local3; _local3 = (_local3 + 1); state[_local7] = ((state[_temp5] ^ ((((_local4 & 2147483648) | (_local5 & 2147483647)) >> 1) & 2147483647)) ^ ((_local5 & 1)) ? 2567483615 : 0); _local4 = _local5; var _temp6 = _local2; _local2 = (_local2 + 1); _local5 = state[_temp6]; _local6--; }; _local5 = state[0]; state[_local1] = ((state[_local3] ^ ((((_local4 & 2147483648) | (_local5 & 2147483647)) >> 1) & 2147483647)) ^ ((_local5 & 1)) ? 2567483615 : 0); var _temp7 = (_local5 ^ ((_local5 >> 11) & 2097151)); _local5 = (_local5 ^ ((_local5 >> 11) & 2097151)); var _temp8 = (_temp7 ^ ((_local5 << 7) & 2636928640)); _local5 = (_temp7 ^ ((_local5 << 7) & 2636928640)); var _temp9 = (_temp8 ^ ((_local5 << 15) & 4022730752)); _local5 = (_temp8 ^ ((_local5 << 15) & 4022730752)); return ((_temp9 ^ ((_local5 >> 18) & 16383))); } public function randomMT(){ var _local1:*; if (--left < 0){ return (reloadMT()); }; _local1 = state[next++]; _local1 = (_local1 ^ ((_local1 >> 11) & 2097151)); _local1 = (_local1 ^ ((_local1 << 7) & 2636928640)); _local1 = (_local1 ^ ((_local1 << 15) & 4022730752)); return ((_local1 ^ ((_local1 >> 18) & 16383))); } public function percentMT(){ var _local1:*; _local1 = randomMT(); if (_local1 < 0){ _local1 = (_local1 + 4294967296); }; return ((_local1 / 4294967296)); } public function rangedMT(_arg1, _arg2){ var _local3:*; _local3 = randomMT(); if (_local3 < 0){ _local3 = (_local3 + 4294967296); }; return (Math.floor((((_local3 * _arg2) - _arg1) + (1 / (4294967296 + _arg1))))); } public function seedMT(_arg1){ var _local2:*; var _local3:*; var _local4:*; _local2 = ((_arg1 & 4294967295) | 1); _arg1 = _local2; left = 0; _local3 = 0; var _temp1 = _local3; _local3 = (_local3 + 1); var _local5 = _temp1; state[_local5] = _local2; _local4 = 624; while (_local4 > 0) { _local2 = (_local2 * 69069); _local2 = (_local2 & 4294967295); var _temp2 = _local3; _local3 = (_local3 + 1); var _local6 = _temp2; state[_local6] = _local2; _local4--; }; return (_arg1); } } }//package
Section 38
//MissingGraphicBMD (MissingGraphicBMD) package { import flash.display.*; public dynamic class MissingGraphicBMD extends BitmapData { public function MissingGraphicBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 39
//MoonBMD (MoonBMD) package { import flash.display.*; public dynamic class MoonBMD extends BitmapData { public function MoonBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 40
//MoreGamesBMD (MoreGamesBMD) package { import flash.display.*; public dynamic class MoreGamesBMD extends BitmapData { public function MoreGamesBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 41
//ObjectList (ObjectList) package { dynamic class ObjectList extends Array { public var removalList:Array; public var Debug:Boolean;// = true function ObjectList(){ Debug = true; super(); removalList = new Array(); } public function GetIndex(_arg1:Object):int{ var _local2:int; var _local3:int; _local2 = -1; _local3 = 0; while (_local3 < this.length) { if (this[_local3] == _arg1){ _local2 = _local3; }; _local3++; }; return (_local2); } public function CleanUp(){ var _local1:int; var _local2:int; _local1 = 0; while (_local1 < removalList.length) { _local2 = GetIndex(removalList[_local1]); if (_local2 != -1){ this.splice(_local2, 1); }; _local1++; }; } public function Remove(_arg1:Object){ removalList.push(_arg1); } } }//package
Section 42
//Player (Player) package { import flash.display.*; import flash.geom.*; import flash.ui.*; public class Player { public var maxSpeed:int; private var timer:int; public var invincible:Boolean;// = true public var ySpeed:int; public var xSpeed:int; private var graphicsArray:Array; private var stage:Stage; private var gameObject:Object; private var animationLength:int; private var spawning:Boolean;// = true private var collisionArea:Rectangle; public var autoTarget:Point; private var glowAnimationArray:Array; private var animationDelay:int; private var displayArea:Rectangle; private var currentFrame:int; public var hotSpot:Point; public var controlable:Boolean; public var x:int; public var y:int; public function Player(_arg1:Object, _arg2:Stage, _arg3:Array, _arg4, _arg5:int, _arg6:Rectangle, _arg7:Rectangle, _arg8:Point, _arg9:int, _arg10:int, _arg11:int, _arg12:Point=null){ spawning = true; invincible = true; super(); gameObject = _arg1; stage = _arg2; autoTarget = _arg12; if (autoTarget == null){ autoTarget = new Point((gameObject.ScreenWidth * 0.25), (gameObject.ScreenHeight * 0.5)); }; timer = 0; x = _arg9; y = _arg10; maxSpeed = _arg11; xSpeed = 0; ySpeed = 0; displayArea = _arg6; collisionArea = _arg7; hotSpot = _arg8; graphicsArray = _arg3; glowAnimationArray = _arg4; animationDelay = _arg5; currentFrame = 0; controlable = false; } public function update(){ timer++; if (timer > 100){ invincible = false; }; if (controlable){ if (Key.isDown(90)){ gameObject.playerShoot(); }; if (Key.isDown(Keyboard.LEFT)){ xSpeed = (xSpeed - 2); } else { if (xSpeed < 0){ xSpeed = 0; }; }; if (Key.isDown(Keyboard.RIGHT)){ xSpeed = (xSpeed + 2); } else { if (xSpeed > 0){ xSpeed = 0; }; }; if (Key.isDown(Keyboard.UP)){ ySpeed = (ySpeed - 2); } else { if (ySpeed < 0){ ySpeed = 0; }; }; if (Key.isDown(Keyboard.DOWN)){ ySpeed = (ySpeed + 2); } else { if (ySpeed > 0){ ySpeed = 0; }; }; if (xSpeed > maxSpeed){ xSpeed = maxSpeed; }; if (xSpeed < -(maxSpeed)){ xSpeed = -(maxSpeed); }; if (ySpeed > maxSpeed){ ySpeed = maxSpeed; }; if (ySpeed < -(maxSpeed)){ ySpeed = -(maxSpeed); }; x = (x + xSpeed); y = (y + ySpeed); if (x < hotSpot.x){ x = hotSpot.x; }; if (x > (gameObject.ScreenWidth - hotSpot.x)){ x = (gameObject.ScreenWidth - hotSpot.x); }; if (y < hotSpot.y){ y = hotSpot.y; }; if (y > (gameObject.ScreenHeight - hotSpot.y)){ y = (gameObject.ScreenHeight - hotSpot.y); }; }; if (autoTarget != null){ if (x < autoTarget.x){ x = (x + maxSpeed); }; if (x > autoTarget.x){ x = (x - maxSpeed); }; if (y < autoTarget.y){ y = (y + maxSpeed); }; if (y > autoTarget.y){ y = (y - maxSpeed); }; if ((((((((x < (autoTarget.x + maxSpeed))) && ((x > (autoTarget.x - maxSpeed))))) && ((y < (autoTarget.y + maxSpeed))))) && ((y > (autoTarget.y - maxSpeed))))){ autoTarget = null; if (spawning){ controlable = true; spawning = false; }; }; }; if ((timer % animationDelay) == 0){ currentFrame++; if (currentFrame >= graphicsArray.length){ currentFrame = 0; }; }; } public function render(_arg1:BitmapData){ var _local2:*; var _local3:BitmapData; var _local4:*; var _local5:Number; var _local6:ColorTransform; var _local7:Number; var _local8:ColorTransform; var _local9:*; _local2 = graphicsArray[currentFrame]; _arg1.copyPixels(_local2, displayArea, new Point((x - hotSpot.x), (y - hotSpot.y))); _local3 = glowAnimationArray[currentFrame]; _local4 = new Matrix(); _local4.translate((x - 128), (y - 64)); _local5 = (Math.abs((10 - (timer % 20))) + 10); _local6 = new ColorTransform(1, 1, 1, (_local5 / 20), 0, 0, 0, 0); _arg1.draw(_local3, _local4, _local6, "add"); if (invincible){ _local7 = (Math.abs((2 - (timer % 4))) + 2); _local8 = new ColorTransform(1, 1, 1, (_local7 / 4), 0, 0, 0, 0); _local9 = new Matrix(); _local9.translate((x - 64), (y - 32)); _arg1.draw(_local2, _local9, _local8, "screen"); }; } } }//package
Section 43
//PlayerShot (PlayerShot) package { import flash.display.*; import flash.geom.*; public class PlayerShot { private var sourceBMD:BitmapData; private var distanceTravelled:int;// = 0 private var timer:int;// = 0 private var stage:Stage; private var displayArea:Rectangle; public var angle:Number; public var power:int; private var ySpeed:Number; public var speed:int; private var collisionArea:Rectangle; private var hotSpot:Point; private var lifeSpan:int; private var xSpeed:Number; public var x:Number; public var y:Number; private var range:int; public function PlayerShot(_arg1:Stage, _arg2:BitmapData, _arg3:Rectangle, _arg4:Point, _arg5:int, _arg6:int, _arg7:Number, _arg8:Number, _arg9:int, _arg10:int, _arg11:int){ timer = 0; distanceTravelled = 0; super(); x = _arg5; y = _arg6; angle = _arg7; speed = _arg8; lifeSpan = _arg9; range = _arg10; power = _arg11; displayArea = new Rectangle(0, 0, _arg2.width, _arg2.height); collisionArea = _arg3; hotSpot = _arg4; sourceBMD = _arg2; stage = _arg1; } public function get rightEdge():int{ return (((x - hotSpot.x) + collisionArea.width)); } public function update(_arg1:Array, _arg2:int){ timer++; distanceTravelled = (distanceTravelled + speed); xSpeed = (speed * Math.cos(angle)); ySpeed = (speed * Math.sin(angle)); x = (x + xSpeed); y = (y + ySpeed); if ((((lifeSpan > 0)) && ((timer > lifeSpan)))){ _arg1.Remove(_arg1[_arg2]); }; if ((((range > 0)) && ((distanceTravelled > range)))){ _arg1.Remove(_arg1[_arg2]); }; if (x > stage.width){ _arg1.Remove(_arg1[_arg2]); }; if (x < 0){ _arg1.Remove(_arg1[_arg2]); }; if (y > stage.height){ _arg1.Remove(_arg1[_arg2]); }; if (y < 0){ _arg1.Remove(_arg1[_arg2]); }; } public function get bottomEdge():int{ return (((y - hotSpot.y) + collisionArea.height)); } public function render(_arg1:BitmapData){ _arg1.copyPixels(sourceBMD, displayArea, new Point((x - hotSpot.x), (y - hotSpot.y))); } public function get leftEdge():int{ return (((x - hotSpot.x) + collisionArea.x)); } public function get topEdge():int{ return (((y - hotSpot.y) + collisionArea.y)); } } }//package
Section 44
//PlayerShotBMD (PlayerShotBMD) package { import flash.display.*; public dynamic class PlayerShotBMD extends BitmapData { public function PlayerShotBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 45
//ScrollingProp (ScrollingProp) package { import flash.display.*; import flash.geom.*; public class ScrollingProp { private var sourceBMD:BitmapData; private var displayArea:Rectangle; public var x:Number; public var y:Number; public function ScrollingProp(_arg1:BitmapData, _arg2:int, _arg3:int){ x = _arg2; y = _arg3; sourceBMD = _arg1; displayArea = new Rectangle(0, 0, sourceBMD.width, sourceBMD.height); } public function update(_arg1:Array, _arg2:int, _arg3, _arg4){ x = (x + _arg3); y = (y + _arg4); if (x < -(sourceBMD.width)){ _arg1.Remove(_arg1[_arg2]); }; } public function render(_arg1:BitmapData){ _arg1.copyPixels(sourceBMD, displayArea, new Point(x, y)); } } }//package
Section 46
//SkeletonIdle1BMD (SkeletonIdle1BMD) package { import flash.display.*; public dynamic class SkeletonIdle1BMD extends BitmapData { public function SkeletonIdle1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 47
//SkeletonIdle2BMD (SkeletonIdle2BMD) package { import flash.display.*; public dynamic class SkeletonIdle2BMD extends BitmapData { public function SkeletonIdle2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 48
//SkeletonIdle3BMD (SkeletonIdle3BMD) package { import flash.display.*; public dynamic class SkeletonIdle3BMD extends BitmapData { public function SkeletonIdle3BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 49
//SkeletonSpell1BMD (SkeletonSpell1BMD) package { import flash.display.*; public dynamic class SkeletonSpell1BMD extends BitmapData { public function SkeletonSpell1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 50
//SkeletonSpell2BMD (SkeletonSpell2BMD) package { import flash.display.*; public dynamic class SkeletonSpell2BMD extends BitmapData { public function SkeletonSpell2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 51
//SkeletonSpit1BMD (SkeletonSpit1BMD) package { import flash.display.*; public dynamic class SkeletonSpit1BMD extends BitmapData { public function SkeletonSpit1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 52
//SkeletonSpit2BMD (SkeletonSpit2BMD) package { import flash.display.*; public dynamic class SkeletonSpit2BMD extends BitmapData { public function SkeletonSpit2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 53
//Skull1BMD (Skull1BMD) package { import flash.display.*; public dynamic class Skull1BMD extends BitmapData { public function Skull1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 54
//Skull2BMD (Skull2BMD) package { import flash.display.*; public dynamic class Skull2BMD extends BitmapData { public function Skull2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 55
//Skull3BMD (Skull3BMD) package { import flash.display.*; public dynamic class Skull3BMD extends BitmapData { public function Skull3BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 56
//SlimeBMD (SlimeBMD) package { import flash.display.*; public dynamic class SlimeBMD extends BitmapData { public function SlimeBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 57
//SmallEnemy (SmallEnemy) package { import flash.display.*; import flash.geom.*; public class SmallEnemy { public var y:int; private var animationLength:int; private var currentLevel:int; private var currentAnimation:int;// = 0 private var attackPhase:int;// = 0 public var height:int; private var onScreen;// = false private var xSpeed:Number; private var animationArray:Array; public var isBoss:Boolean; private var distanceTravelled:int;// = 0 private var range:int; private var movementStyle:uint; private var timer:int;// = 0 public var width:int; public var speed:Number; private var attackStyle:uint; public var angle:Number; private var ySpeed:Number; private var bounceRectangle:Rectangle; private var health:int; private var attacksLaunched:int;// = 0 public var collisionArea:Rectangle; private var lifeSpan:int; public var scoreBounty:uint; private var animationDelay:int; private var hotSpot:Point; private var game:Game; private var currentFrame:int; private var displayArea:Rectangle; private var stage:Stage; public var x:int; public function SmallEnemy(_arg1:Game, _arg2:Stage, _arg3:int, _arg4:Array, _arg5:int, _arg6:int, _arg7:int, _arg8:Number, _arg9:Number=3, _arg10:int=-1, _arg11:int=-1, _arg12:Rectangle=null, _arg13:Point=null, _arg14:int=0, _arg15=false, _arg16:Rectangle=null, _arg17:uint=0, _arg18:uint=0){ timer = 0; distanceTravelled = 0; currentAnimation = 0; attackPhase = 0; attacksLaunched = 0; onScreen = false; super(); x = _arg6; y = _arg7; angle = _arg8; speed = _arg9; lifeSpan = _arg10; range = _arg11; health = _arg14; displayArea = new Rectangle(0, 0, _arg4[0][0].width, _arg4[0][0].height); width = displayArea.width; height = displayArea.height; collisionArea = _arg12; hotSpot = _arg13; animationArray = _arg4; animationDelay = _arg5; currentFrame = 0; stage = _arg2; game = _arg1; currentLevel = _arg3; isBoss = _arg15; bounceRectangle = _arg16; movementStyle = _arg17; attackStyle = _arg18; if (health == 0){ health = currentLevel; if (isBoss){ health = (health * 100); }; }; scoreBounty = (health * 100); if (collisionArea == null){ collisionArea = displayArea; }; if (hotSpot == null){ hotSpot = new Point((collisionArea.width / 2), (collisionArea.height / 2)); }; updateAngle(); if (movementStyle == 1){ y = 200; xSpeed = -(speed); ySpeed = (speed * -2); }; if (movementStyle == 4){ updateAngle(); }; } public function dammage(_arg1:int):int{ health = (health - _arg1); return (health); } public function get rightEdge():int{ return (((x - hotSpot.x) + collisionArea.width)); } public function get bottomEdge():int{ return (((y - hotSpot.y) + collisionArea.height)); } private function updateAngle(){ xSpeed = (speed * Math.cos(angle)); ySpeed = (speed * Math.sin(angle)); } public function render(_arg1:BitmapData){ var _local2:*; _local2 = animationArray[currentAnimation][currentFrame]; _arg1.copyPixels(_local2, displayArea, new Point((x - hotSpot.x), (y - hotSpot.y))); } public function get topEdge():int{ return (((y - hotSpot.y) + collisionArea.y)); } public function update(_arg1:Array, _arg2:int){ var _local3:int; var _local4:*; timer++; distanceTravelled = (distanceTravelled + speed); x = (x + xSpeed); y = (y + ySpeed); if (movementStyle == 0){ }; if (movementStyle == 1){ if (y < 100){ ySpeed++; }; if (y > 300){ ySpeed--; }; if (y > stage.height){ y = stage.height; }; if (y < 0){ y = 0; }; }; if (movementStyle == 4){ if (timer == 25){ angle = ((90 * Math.PI) / 180); }; updateAngle(); if (timer > 25){ angle = (angle + ((speed * Math.PI) / 180)); updateAngle(); }; }; if ((((lifeSpan > 0)) && ((timer > lifeSpan)))){ _arg1.Remove(_arg1[_arg2]); }; if ((((range > 0)) && ((distanceTravelled > range)))){ _arg1.Remove(_arg1[_arg2]); }; if (((((((((!(onScreen)) && ((x < stage.width)))) && ((x > 0)))) && ((y < stage.height)))) && ((y > 0)))){ onScreen = true; }; if (!isBoss){ if (x < 0){ _arg1.Remove(_arg1[_arg2]); }; }; if (bounceRectangle != null){ if ((((x < bounceRectangle.x)) && ((xSpeed < 0)))){ xSpeed = (xSpeed * -1); }; if ((((x > bounceRectangle.width)) && ((xSpeed > 0)))){ xSpeed = (xSpeed * -1); }; if ((((y < bounceRectangle.y)) && ((ySpeed < 0)))){ ySpeed = (ySpeed * -1); }; if ((((y > bounceRectangle.height)) && ((ySpeed > 0)))){ ySpeed = (ySpeed * -1); }; }; if ((timer % animationDelay) == 0){ if (currentAnimation == 0){ currentFrame++; if (currentFrame >= animationArray[currentAnimation].length){ currentFrame = 0; }; } else { if (currentFrame < animationArray[currentAnimation].length){ if (attackPhase == 0){ currentFrame++; if (currentFrame > (animationArray[currentAnimation].length - 1)){ currentFrame = (animationArray[currentAnimation].length - 1); attackPhase = 1; }; }; if (attackPhase == 1){ attacksLaunched++; if (attacksLaunched > (10 - currentLevel)){ game.spawnEnemyShotWave(this, 5, currentAnimation); }; if (attacksLaunched >= 10){ attackPhase = 2; }; }; if (attackPhase == 2){ currentFrame--; if (currentFrame < 0){ currentFrame = 0; attackPhase = 0; currentAnimation = 0; }; }; }; }; }; if (((((timer % 100) == 0)) && ((animationArray.length > 1)))){ _local3 = (animationArray.length - 1); _local4 = (Math.random() * _local3); currentAnimation = (_local4 + 1); currentFrame = 0; attackPhase = 0; attacksLaunched = 0; }; if ((timer % (100 - (currentLevel * 5))) == 0){ if (attackStyle > 0){ game.spawnEnemyShotWave(this, currentLevel, attackStyle); }; }; } public function get leftEdge():int{ return (((x - hotSpot.x) + collisionArea.x)); } } }//package
Section 58
//SmallFireballSprite (SmallFireballSprite) package { import flash.display.*; public dynamic class SmallFireballSprite extends Sprite { } }//package
Section 59
//SmallLinearShotBMD (SmallLinearShotBMD) package { import flash.display.*; public dynamic class SmallLinearShotBMD extends BitmapData { public function SmallLinearShotBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 60
//SmokeBMD (SmokeBMD) package { import flash.display.*; public dynamic class SmokeBMD extends BitmapData { public function SmokeBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 61
//Spell1Sound (Spell1Sound) package { import flash.media.*; public dynamic class Spell1Sound extends Sound { } }//package
Section 62
//Spell2Sound (Spell2Sound) package { import flash.media.*; public dynamic class Spell2Sound extends Sound { } }//package
Section 63
//Spell3Sound (Spell3Sound) package { import flash.media.*; public dynamic class Spell3Sound extends Sound { } }//package
Section 64
//Spell4Sound (Spell4Sound) package { import flash.media.*; public dynamic class Spell4Sound extends Sound { } }//package
Section 65
//Spell5Sound (Spell5Sound) package { import flash.media.*; public dynamic class Spell5Sound extends Sound { } }//package
Section 66
//SpotLightSprite (SpotLightSprite) package { import flash.display.*; public dynamic class SpotLightSprite extends Sprite { } }//package
Section 67
//SpotShadowSprite (SpotShadowSprite) package { import flash.display.*; public dynamic class SpotShadowSprite extends Sprite { } }//package
Section 68
//StarrySkyBMD (StarrySkyBMD) package { import flash.display.*; public dynamic class StarrySkyBMD extends BitmapData { public function StarrySkyBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 69
//StartGameBMD (StartGameBMD) package { import flash.display.*; public dynamic class StartGameBMD extends BitmapData { public function StartGameBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 70
//Swirl2BMD (Swirl2BMD) package { import flash.display.*; public dynamic class Swirl2BMD extends BitmapData { public function Swirl2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 71
//TitleBMD (TitleBMD) package { import flash.display.*; public dynamic class TitleBMD extends BitmapData { public function TitleBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 72
//TitleFogSprite (TitleFogSprite) package { import flash.display.*; public dynamic class TitleFogSprite extends Sprite { } }//package
Section 73
//TitleMusic (TitleMusic) package { import flash.media.*; public dynamic class TitleMusic extends Sound { } }//package
Section 74
//ToggleMusicBMD (ToggleMusicBMD) package { import flash.display.*; public dynamic class ToggleMusicBMD extends BitmapData { public function ToggleMusicBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 75
//ToggleSmokeBMD (ToggleSmokeBMD) package { import flash.display.*; public dynamic class ToggleSmokeBMD extends BitmapData { public function ToggleSmokeBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 76
//ToggleSoundsBMD (ToggleSoundsBMD) package { import flash.display.*; public dynamic class ToggleSoundsBMD extends BitmapData { public function ToggleSoundsBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 77
//Witch3Frame1BMD (Witch3Frame1BMD) package { import flash.display.*; public dynamic class Witch3Frame1BMD extends BitmapData { public function Witch3Frame1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 78
//Witch3Frame2BMD (Witch3Frame2BMD) package { import flash.display.*; public dynamic class Witch3Frame2BMD extends BitmapData { public function Witch3Frame2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 79
//WitchBroomGlowBMD (WitchBroomGlowBMD) package { import flash.display.*; public dynamic class WitchBroomGlowBMD extends BitmapData { public function WitchBroomGlowBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 80
//WitchBroomStraight1BMD (WitchBroomStraight1BMD) package { import flash.display.*; public dynamic class WitchBroomStraight1BMD extends BitmapData { public function WitchBroomStraight1BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 81
//WitchBroomStraight2BMD (WitchBroomStraight2BMD) package { import flash.display.*; public dynamic class WitchBroomStraight2BMD extends BitmapData { public function WitchBroomStraight2BMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 82
//WitchGhostBMD (WitchGhostBMD) package { import flash.display.*; public dynamic class WitchGhostBMD extends BitmapData { public function WitchGhostBMD(_arg1:Number, _arg2:Number){ super(_arg1, _arg2); } } }//package
Section 83
//WitchScreamSound (WitchScreamSound) package { import flash.media.*; public dynamic class WitchScreamSound extends Sound { } }//package

Library Items

Symbol 1 Sound {WitchScreamSound}
Symbol 2 Sound {TitleMusic}
Symbol 3 Sound {Spell5Sound}
Symbol 4 Sound {Spell4Sound}
Symbol 5 Sound {Spell3Sound}
Symbol 6 Sound {Spell2Sound}
Symbol 7 Sound {Spell1Sound}
Symbol 8 Sound {GhostArmySound}
Symbol 9 Sound {GameOverSound}
Symbol 10 Sound {DreamMusic}
Symbol 11 Sound {BossMusic}
Symbol 12 Sound {BossBanishedSound}
Symbol 13 Sound {BooEcho1Sound}
Symbol 14 Bitmap {WitchGhostBMD}
Symbol 15 Bitmap {WitchBroomStraight2BMD}
Symbol 16 Bitmap {WitchBroomStraight1BMD}
Symbol 17 Bitmap {WitchBroomGlowBMD}
Symbol 18 Bitmap {Witch3Frame2BMD}
Symbol 19 Bitmap {Witch3Frame1BMD}
Symbol 20 Bitmap {ToggleSoundsBMD}
Symbol 21 Bitmap {ToggleSmokeBMD}
Symbol 22 Bitmap {ToggleMusicBMD}
Symbol 23 Bitmap {TitleBMD}
Symbol 24 Bitmap {Swirl2BMD}
Symbol 25 Bitmap {StartGameBMD}
Symbol 26 Bitmap {StarrySkyBMD}
Symbol 27 Bitmap {SmokeBMD}
Symbol 28 Bitmap {SmallLinearShotBMD}
Symbol 29 Bitmap {SlimeBMD}
Symbol 30 Bitmap {Skull3BMD}
Symbol 31 Bitmap {Skull2BMD}
Symbol 32 Bitmap {Skull1BMD}
Symbol 33 Bitmap {SkeletonSpit2BMD}
Symbol 34 Bitmap {SkeletonSpit1BMD}
Symbol 35 Bitmap {SkeletonSpell2BMD}
Symbol 36 Bitmap {SkeletonSpell1BMD}
Symbol 37 Bitmap {SkeletonIdle3BMD}
Symbol 38 Bitmap {SkeletonIdle2BMD}
Symbol 39 Bitmap {SkeletonIdle1BMD}
Symbol 40 Bitmap {PlayerShotBMD}
Symbol 41 Bitmap {MoreGamesBMD}
Symbol 42 Bitmap {MoonBMD}
Symbol 43 Bitmap {MissingGraphicBMD}
Symbol 44 Bitmap {MenuBackgroundBMD}
Symbol 45 Bitmap {LostSoul1BMD}
Symbol 46 Bitmap {House5BMD}
Symbol 47 Bitmap {House4BMD}
Symbol 48 Bitmap {House3BMD}
Symbol 49 Bitmap {House2BMD}
Symbol 50 Bitmap {House1BMD}
Symbol 51 Bitmap {HealthTopBMD}
Symbol 52 Bitmap {HealthBottomBMD}
Symbol 53 Bitmap {GrassyHillsBMD}
Symbol 54 Bitmap {GhostSwirlBMD}
Symbol 55 Bitmap {Ghost3BMD}
Symbol 56 Bitmap {Ghost2BMD}
Symbol 57 Bitmap {Ghost1BMD}
Symbol 58 Bitmap {GameOverGlowBMD}
Symbol 59 Bitmap {GameOverBMD}
Symbol 60 Bitmap {CloudsBMD}
Symbol 61 Bitmap {CigSmokeBMD}
Symbol 62 Bitmap {ArmorGamesLogoOrangeBMD}
Symbol 63 Bitmap {ArmorGamesLogoGhostBMD}
Symbol 64 GraphicUsed by:65
Symbol 65 MovieClip {SmallFireballSprite}Uses:64
Symbol 66 GraphicUsed by:67
Symbol 67 MovieClip {AreaShadowSprite}Uses:66
Symbol 68 GraphicUsed by:69
Symbol 69 MovieClip {SpotShadowSprite}Uses:68
Symbol 70 GraphicUsed by:71
Symbol 71 MovieClip {AreaLightSprite}Uses:70
Symbol 72 GraphicUsed by:73
Symbol 73 MovieClip {SpotLightSprite}Uses:72
Symbol 74 GraphicUsed by:75
Symbol 75 MovieClip {TitleFogSprite}Uses:74
Symbol 76 GraphicUsed by:77
Symbol 77 MovieClip {LargeAreaLightSprite}Uses:76
Symbol 78 GraphicUsed by:79
Symbol 79 MovieClip {Boss1WakeSprite}Uses:78
Symbol 80 GraphicUsed by:81
Symbol 81 MovieClip {BossDammageAreaSprite}Uses:80

Special Tags

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




http://swfchan.com/8/39572/info.shtml
Created: 12/5 -2019 04:17:46 Last modified: 12/5 -2019 04:17:46 Server time: 22/12 -2024 12:59:34