Section 1
//PolarBearGameEvent (adultswim.polarbearpayback.events.PolarBearGameEvent)
package adultswim.polarbearpayback.events {
import flash.events.*;
public class PolarBearGameEvent extends Event {
public static const PLAYER_DIED:String = "playerDied";
public static const SPIT_SKULL:String = "spitSkull";
public static const SHOW_BOSS:String = "showBoss";
public static const BEAR_THROW:String = "bearThrow";
public static const UPDATE_HEALTH:String = "updateHealth";
public static const BEAR_PROJECTILE_ATTACK:String = "projectileAttack";
public static const WEAPON_ADDED:String = "weaponAdded";
public static const NEXT_LEVEL:String = "nextLevel";
public static const BLOODSTAIN:String = "bloodStain";
public static const ADD_BULLY:String = "addBully";
public static const ADD_SUITS:String = "addSuits";
public static const SKULL_SUCKED:String = "skullSucked";
public static const CHAR_DIED:String = "charDied";
public static const SPLASH_NEW_GAME:String = "splashNewGame";
public static const BEAR_ATTACK:String = "bearAttack";
public static const OPEN_MENU:String = "openMenu";
public static const GRENADE:String = "grenade";
public static const GAME_WON:String = "gameWon";
public static const LEVEL_COMPLETE:String = "levelComplete";
public static const REMOVE_PROJECTILE:String = "removeProjectile";
public static const ADD_MINI_SUIT:String = "addMiniSuit";
public static const HEALTH_PICKUP:String = "healthPickup";
public static const ADD_HEALTH_SMALL:String = "addHealthSmall";
public static const RESET_CHARGE:String = "resetCharge";
public static const WAVE_COMPLETE:String = "waveComplete";
public static const NEXT_SCREEN:String = "nextScreen";
public static const SPAWN_ENEMY:String = "spawnEnemy";
public static const ADD_OBJECT:String = "addObject";
public static const CUTSCENE_COMPLETE:String = "cutsceneComplete";
public static const CHAR_ATTACK:String = "charAttack";
public static const ADD_SPAWN_POINT:String = "addSpawnPoint";
public static const SHOW_TRANSITION:String = "showTransition";
public static const GAME_LOST:String = "gameLost";
public static const GATE_OPENED:String = "gateOpened";
public static const REMOVE_SPAWN_POINT:String = "removeSpawnPoint";
public static const REMOVE_OBJECT:String = "removeObject";
public static const PICKUP_OBJECT:String = "pickupObject";
public static const DISABLE_BEAR:String = "disableBear";
public static const WHALE_BOSS_THROW:String = "whaleBossThrow";
public static const ELEVATOR_UPDATED:String = "elevatorUpdated";
public static const PAYBACK:String = "payback";
public static const LOAD_COMPLETE:String = "loadComplete";
public static const BOSS_THROW:String = "bossThrow";
public static const EXPLOSION:String = "explosion";
public static const ELEVATOR_COMPLETE:String = "elevatorComplete";
public static const ADD_HEALTH_BIG:String = "addHealthBig";
public static const SAVE:String = "save";
public static const SPLASH_CONTINUE:String = "splashContinue";
public function PolarBearGameEvent(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
override public function toString():String{
return (formatToString("PolarBearGameEvent", "type", "bubbles", "cancelable", "eventPhase"));
}
override public function clone():Event{
return (new PolarBearGameEvent(type, bubbles, cancelable));
}
}
}//package adultswim.polarbearpayback.events
Section 2
//TransitionEvent (adultswim.polarbearpayback.events.TransitionEvent)
package adultswim.polarbearpayback.events {
import flash.events.*;
public class TransitionEvent extends Event {
public static const TRANSITION_OPENED:String = "transitionOpened";
public static const TRANSITION_CLOSED:String = "transitionClosed";
public function TransitionEvent(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false){
super(_arg1, _arg2, _arg3);
}
override public function toString():String{
return (formatToString("TransitionEvent", "type", "bubbles", "cancelable", "eventPhase"));
}
override public function clone():Event{
return (new TransitionEvent(type, bubbles, cancelable));
}
}
}//package adultswim.polarbearpayback.events
Section 3
//UIEvent (adultswim.polarbearpayback.events.UIEvent)
package adultswim.polarbearpayback.events {
import flash.events.*;
public class UIEvent extends Event {
public var points:int;
public static const SHOW_HAND:String = "showHand";
public static const UPDATE_WEAPON_COUNT:String = "updateWeaponCount";
public static const SHOW_HELP:String = "showHelp";
public static const FLASH_VIGNETTE:String = "flashVignette";
public static const LOCK_HAND:String = "lockHand";
public static const OUTRO_COMPLETE:String = "outroComplete";
public static const UNLOCK_HAND:String = "unlockHand";
public static const PAUSE:String = "pause";
public static const UPDATE_POINTS:String = "updatePoints";
public static const UNPAUSE:String = "unpause";
public static const CONTINUE:String = "continue";
public static const AS_LINK:String = "asLink";
public static const GAME_CONTINUED:String = "gameContinued";
public static const VIGNETTE_RESET:String = "resetVignette";
public static const PLAY_AGAIN:String = "playAgain";
public static const CHARGE_READY:String = "chargeReady";
public function UIEvent(_arg1:String, _arg2:Boolean=true, _arg3:Boolean=false, _arg4:int=0){
points = _arg4;
super(_arg1, _arg2, _arg3);
}
override public function toString():String{
return (formatToString("UIEvent", "type", "bubbles", "cancelable", "points"));
}
override public function clone():Event{
return (new UIEvent(type, bubbles, cancelable, points));
}
}
}//package adultswim.polarbearpayback.events
Section 4
//Level_1 (adultswim.polarbearpayback.game.levels.Level_1)
package adultswim.polarbearpayback.game.levels {
import adultswim.polarbearpayback.game.*;
public class Level_1 extends Waves {
protected function wave2():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 100, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 1000), 150);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 350, 2);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + -100), 250, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 300, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 100, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 1100), 100, 4);
addEnemyToGroup(_local1, 4);
}
protected function wave6():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 500, 0, true);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 500);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1100), 500, 2);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) - 100), 200, 6);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) - 100), 400, 6);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 100, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 500, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 300, 2);
addEnemyToGroup(_local1, 5);
}
protected function wave3():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + -200), 200);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 1100), 100, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 400, 1);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 400, 8);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 400, 3);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
}
override protected function waveFunction(_arg1:int):void{
var pWave = _arg1;
try {
var _local3 = this;
_local3[("wave" + pWave)]();
} catch(e:Error) {
};
}
protected function wave0():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + -100), 300, 1);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + -100), 300, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + -100), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 200, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 300, 7);
addEnemyToGroup(_local1, 4);
}
protected function wave1():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + -100), 400);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 150, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 200, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 1000), 200, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 300, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 200, 5);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 300, 5);
addEnemyToGroup(_local1, 5);
}
protected function wave4():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 1100), 100, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 300, 6, true);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 1000), 300);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + -100), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 400, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + -100), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 100, 4, true);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 150, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 200), 500);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 200, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 400);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 300);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1100), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 400, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) - 100), 200, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 100, 0, true);
addEnemyToGroup(_local1, 5);
}
protected function wave5():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 200);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 300);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 400, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 100, 3);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 250, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1000), 300, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 1000), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 1000), 300, 8);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 1100), 500);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) + 900), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) - 150), 100, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.SEAL_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_CLUBBER_2, (-(_x) - 100), 300, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.SEAL_SHOOTER_1, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 5);
}
protected function wave7():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.SEAL_BOSS, 6053.9, 373.6);
addEnemyToGroup(_local1, 1);
}
}
}//package adultswim.polarbearpayback.game.levels
Section 5
//Level_2 (adultswim.polarbearpayback.game.levels.Level_2)
package adultswim.polarbearpayback.game.levels {
import adultswim.polarbearpayback.game.*;
public class Level_2 extends Waves {
protected function wave2():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 100, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 1000), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 500, 2);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + -100), 250, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 300, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 1000), 100, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 1100), 100, 4);
addEnemyToGroup(_local1, 4);
}
protected function wave6():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 500, 0, true);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 300);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 500, 2);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 200, 6);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 400, 6);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 300, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 500, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 1000), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 1000), 500, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 300, 2);
addEnemyToGroup(_local1, 5);
}
protected function wave3():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + -200), 200);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 1100), 100, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 1000), 400, 1);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 400, 3);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
}
override protected function waveFunction(_arg1:int):void{
var pWave = _arg1;
try {
var _local3 = this;
_local3[("wave" + pWave)]();
} catch(e:Error) {
};
}
protected function wave0():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + -100), 300, 1);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + -100), 300, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + -100), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 200, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 300, 7);
addEnemyToGroup(_local1, 4);
}
protected function wave1():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + -100), 400);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 150, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 200, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 1000), 200, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 300, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 1000), 200, 5);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 300, 5);
addEnemyToGroup(_local1, 5);
}
protected function wave4():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 1100), 100, 2, true);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 300, 6, true);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 1000), 300);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + -100), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 400, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + -100), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 100, 4, true);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 150, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 200), 500);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 200, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 1000), 400);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 300);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 1100), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) + 900), 400, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) - 100), 200, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 100, 0, true);
addEnemyToGroup(_local1, 5);
}
protected function wave5():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 200), 200);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 200), 300);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 150), 150, 3);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 250, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 300, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 150), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 300, 8);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 200);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 300, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 200), 450, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.WHALER_BULLY, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 400);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 300, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
}
protected function wave7():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) - 100), 400);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_1, (-(_x) + 1100), 450, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_2, (-(_x) + -200), 100, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.WHALER_SHOOTER, (-(_x) - 100), 200, 4);
addEnemyToGroup(_local1, 1);
}
protected function wave8():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.WHALER_BOSS, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 1);
}
}
}//package adultswim.polarbearpayback.game.levels
Section 6
//Level_3 (adultswim.polarbearpayback.game.levels.Level_3)
package adultswim.polarbearpayback.game.levels {
import adultswim.polarbearpayback.game.*;
public class Level_3 extends Waves {
protected function wave2():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 100, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 1000), 150);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 350, 2);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + -100), 250, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 300, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 100, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 1100), 100, 4);
addEnemyToGroup(_local1, 4);
}
protected function wave6():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + -100), 300, 1);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + -100), 300, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + -100), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 3);
}
protected function wave3():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + -200), 200);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 1100), 100, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 400, 1);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 400, 3);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
}
override protected function waveFunction(_arg1:int):void{
var pWave = _arg1;
try {
var _local3 = this;
_local3[("wave" + pWave)]();
} catch(e:Error) {
};
}
protected function wave0():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 1100), 300, 1);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 300, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 250, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 250);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 1000), 350);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 350);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 1100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 250, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 300, 7);
addEnemyToGroup(_local1, 4);
}
protected function wave1():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + -100), 400);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 150, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 200, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 1000), 200, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 300, 5);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 200, 5);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 300, 5);
addEnemyToGroup(_local1, 5);
}
protected function wave4():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 1100), 100, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 300, 6, true);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 1000), 300);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + -100), 500);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 400, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + -100), 300, 3);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 100, 4, true);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 150, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 200), 500);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 200, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 400);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 300);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1100), 500, 4);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 400, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) - 100), 200, 2);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 400, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 100, 0, true);
addEnemyToGroup(_local1, 5);
}
protected function wave5():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 200);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 300);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 400, 2);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 100, 3);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 250, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 300, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 1000), 100);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 1000), 300, 8);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1100), 500);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) - 150), 100, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 500, 4);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 400);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) - 100), 300, 2);
addEnemyToGroup(_local1, 5);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 5);
}
protected function wave7():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) - 100), 100);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 100, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 300, 4);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 100, 1);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 1000), 150);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 350, 2);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + -100), 250, 4);
addEnemyToGroup(_local1, 2);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_2, (-(_x) + 900), 300, 2);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) - 100), 400, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_SUIT_1, (-(_x) + 1000), 100, 8);
addEnemyToGroup(_local1, 3);
_local1 = new Enemy(Enemy.CITY_BULLY, (-(_x) + 900), 100);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) - 100), 500, 1);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 900), 500, 4);
addEnemyToGroup(_local1, 4);
_local1 = new Enemy(Enemy.CITY_SHOOTER, (-(_x) + 1100), 100, 4);
addEnemyToGroup(_local1, 4);
}
protected function wave8():void{
var _local1:Enemy;
_local1 = new Enemy(Enemy.CITY_CEO, (-(_x) + 900), 500);
addEnemyToGroup(_local1, 1);
_local1 = new Enemy(Enemy.CITY_BOSS, (-(_x) + 130), 377);
addEnemyToGroup(_local1, 2);
}
}
}//package adultswim.polarbearpayback.game.levels
Section 7
//Barrel (adultswim.polarbearpayback.game.Barrel)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Barrel extends CollisionObject {
public var hitTarget:HitArea;
public var item:MovieClip;
public var anim:MovieClip;
public var attack:HitArea;
protected var _health:Number;// = 0
public var hit:Boolean;
protected var _noTimer:Boolean;
public function Barrel(){
attack = new HitArea(38, -50, 175, 20);
_health = 0;
super();
stop();
hitTarget = new HitArea(25.4, -31.7, 40);
}
override protected function addedToStage(_arg1:Event):void{
super.addedToStage(_arg1);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_OBJECT));
}
protected function hitComplete():void{
anim.stop();
}
override public function hitCheck(_arg1:HitArea):Boolean{
var _local2:Point;
var _local3:Number;
if (disabled){
return (false);
};
_local2 = localToGlobal(new Point(hitTarget.x, hitTarget.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((hitTarget.d + _arg1.d) / 2)){
objectHit(_arg1.strength);
return (true);
};
return (false);
}
public function pause():void{
if (anim){
if (anim.currentFrame < anim.totalFrames){
anim.stop();
};
};
}
public function unpause():void{
if (anim){
if (anim.currentFrame < anim.totalFrames){
anim.play();
};
};
}
protected function initHit():void{
anim.gotoAndPlay(1);
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), hitComplete);
}
protected function explosionComplete():void{
anim.stop();
this.y = (this.y - 40);
anim.y = (anim.y + 40);
}
protected function attackCheck():void{
disabled = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.EXPLOSION));
}
protected function objectHit(_arg1:int=0):void{
_health = (_health - _arg1);
if (_health > 0){
FrameUtils.addFrameLabelScript(this, "hit", initHit);
gotoAndStop("hit");
return;
};
FrameUtils.addFrameLabelScript(this, "explode", initExplosion);
gotoAndStop("explode");
if (_arg1 >= 20){
_noTimer = true;
};
}
protected function initExplosion():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), explosionComplete);
FrameUtils.addFrameLabelScript(anim, "hit", attackCheck);
if (_noTimer){
anim.gotoAndPlay("explode");
};
}
}
}//package adultswim.polarbearpayback.game
Section 8
//Bear (adultswim.polarbearpayback.game.Bear)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
import flash.filters.*;
import flash.ui.*;
public class Bear extends Character {
protected const TAP_TIME:Number = 0.25;
protected const MAX_CHARGE:Number = 800;
protected const ATTACK_R:int = 65;
protected const PAUSE_KEY:int = 80;
private const INVULN_DURATION:Number = 16;
private const ALERT_HEALTH:int = 20;
private const NORMAL_SPEED:Number = 200;
protected const R_KEY:int = 39;
private const BOOST_DURATION:Number = 12;
private const CHARGE_SPEED:Number = 600;
protected const COMBO_TIME:Number = 0.75;
protected const BITE:int = 83;
protected const U_KEY:int = 38;
private const SPEED_BOOST:int = 200;
private const HOLD_COUNT:int = 10;
protected const PICK_UP:int = 90;
protected const L_KEY:int = 37;
protected const D_KEY:int = 40;
private var _password:String;// = "invalid"
protected var _lastTap:Number;
public var message:Message;
protected var _held:int;
protected var _comboReset:Number;// = 0
protected var _attackKeys:Array;
protected var _isLeftAttack:Boolean;
protected var _boostDuration:Number;
protected var _directionKeys:Array;
public var weaponCount:int;
public var offset:Number;// = 456
public var bonusIndicator:BonusIndicator;
protected var _comboBonus:int;// = 0
protected var _tapKey:int;
public var projectileNum:int;
protected var attack1:HitArea;
protected var attack2:HitArea;
protected var attack5:HitArea;
private var _passwordUsed:Boolean;
public var NUM_USES:int;// = 10
protected var _chargeDirection:String;
protected var bite:HitArea;
private var _passwordEntryString:String;
protected var _speedBoost:int;// = 0
public var isBite:Boolean;
public var chargeReady:Boolean;// = false
protected var _weapon:Weapon;
protected var attack4_short:HitArea;
protected var _controlsDisabled:Boolean;
public var MAX_HEALTH:int;// = 100
protected var _charging:Boolean;
protected var _chargeStartX:Number;
protected var attack4_long:HitArea;
public function Bear(){
MAX_HEALTH = 100;
NUM_USES = 10;
offset = 456;
attack1 = new HitArea(72, -89, 93, 3);
attack2 = new HitArea(84, -90, 93, 3);
bite = new HitArea(72, -104, 105, 7);
attack4_short = new HitArea(83, -78, 58, 12);
attack4_long = new HitArea(141, -82, 58, 12);
attack5 = new HitArea(30, -77, 80, 16);
_comboBonus = 0;
_comboReset = 0;
_speedBoost = 0;
chargeReady = false;
_password = "invalid";
super();
stop();
_persistent = true;
_flip = -1;
_directionKeys = [];
_attackKeys = [];
_speed = NORMAL_SPEED;
_filters = this.filters;
_passwordEntryString = "";
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "strike_1", initAttack);
FrameUtils.addFrameLabelScript(this, "strike_2", initAttack);
FrameUtils.addFrameLabelScript(this, "bite", initAttack);
FrameUtils.addFrameLabelScript(this, "strike_4", initAttack);
FrameUtils.addFrameLabelScript(this, "throw", initThrow);
FrameUtils.addFrameLabelScript(this, "eat", initEat);
}
protected function chargeAttack():void{
if (((((((((attacking) || (_eatting))) || (hit))) || (dead))) || (disabled))){
return;
};
attack = attack5;
_chargeStartX = _xPos;
_held = 0;
_charging = true;
_speed = (CHARGE_SPEED + _speedBoost);
_chargeDirection = _direction;
gotoAndStop("charge");
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.RESET_CHARGE));
chargeReady = false;
SoundInterface.instance.playSound("pbp_bearcharge", "sfx");
}
protected function weaponAdded(_arg1:Event):void{
_weapon = (_arg1.target as Weapon);
}
override protected function moveCharacter(_arg1:Number):void{
_xLast = _xPos;
if (_charging){
super.moveCharacter(_arg1);
_xPos = ((_xPos)<_minX) ? _minX : _xPos;
_xPos = ((_xPos)>_maxX) ? _maxX : _xPos;
if (_xPos == _xLast){
endCharge();
};
return;
};
if (_directionKeys.indexOf(D_KEY) > -1){
_yPos = (_yPos + (_arg1 * _speed));
};
if (_directionKeys.indexOf(U_KEY) > -1){
_yPos = (_yPos - (_arg1 * _speed));
};
if (_directionKeys.indexOf(R_KEY) > -1){
_xPos = (_xPos + (_arg1 * _speed));
};
if (_directionKeys.indexOf(L_KEY) > -1){
_xPos = (_xPos - (_arg1 * _speed));
};
_yPos = ((_yPos)<_minY) ? _minY : _yPos;
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
_xPos = ((_xPos)<_minX) ? _minX : _xPos;
_xPos = ((_xPos)>_maxX) ? _maxX : _xPos;
this.x = _xPos;
this.y = _yPos;
}
protected function initEat():void{
anim.addFrameScript((anim.totalFrames - 1), eatComplete);
anim.play();
}
public function booze():void{
message.showMessage("invincible!");
makeInvuln();
}
override protected function charHit(_arg1:Number):void{
if (((((dead) || ((_invuln > 0)))) || (_charging))){
return;
};
super.charHit(_arg1);
if (health < ALERT_HEALTH){
message.showMessage("Yer' Dying!");
dispatchEvent(new UIEvent(UIEvent.FLASH_VIGNETTE));
};
_eatting = false;
if (weaponCount == 0){
dropItem();
};
}
public function addHealth(_arg1:int):void{
if (dead){
return;
};
health = (health + _arg1);
if (health > MAX_HEALTH){
health = MAX_HEALTH;
};
if (health > ALERT_HEALTH){
dispatchEvent(new UIEvent(UIEvent.VIGNETTE_RESET));
};
}
override public function die():void{
_deathTimer = DEATH_TIMEOUT;
dead = true;
disableControls();
if (dropWeapon){
gotoAndStop("die");
} else {
gotoAndStop("die");
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
}
protected function dropItem():void{
Game.weapon = undefined;
_weapon = undefined;
dispatchEvent(new UIEvent(UIEvent.UPDATE_WEAPON_COUNT));
weaponCount = -1;
}
override public function update(_arg1:Number):void{
if (disabled){
return;
};
_positionReset = 0;
super.update(_arg1);
if (_boostDuration > 0){
_boostDuration = (_boostDuration - _arg1);
if (_boostDuration <= 0){
_speed = (_speed - SPEED_BOOST);
_speedBoost = 0;
this.filters = _filters;
};
};
if (_comboReset > 0){
_comboReset = (_comboReset - _arg1);
if (_comboReset < 0){
_comboBonus = 0;
};
};
bonusIndicator.scaleX = (message.scaleX = scaleX);
if (_lastTap > 0){
_lastTap = (_lastTap - _arg1);
if (_lastTap < 0){
_lastTap = 0;
};
};
if (_invuln > 0){
_invuln = (_invuln - _arg1);
if (_invuln <= 0){
this.filters = _filters;
_invuln = 0;
};
};
if (_charging){
attackCheck();
if (Math.abs((_xPos - _chargeStartX)) > MAX_CHARGE){
endCharge();
};
};
if (!((((attacking) || (_charging))) || (dead))){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.PICKUP_OBJECT));
};
}
public function set config(_arg1:XML):void{
_password = _arg1.settings.password;
}
public function makeInvuln():void{
var _local1:Array;
_invuln = INVULN_DURATION;
_local1 = this.filters;
_local1.push(new GlowFilter(52479));
this.filters = _local1;
}
protected function throwAttack():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.BEAR_THROW));
}
protected function eatComplete():void{
_eatting = false;
if (this.currentLabel != "hit"){
anim.stop();
updateDirection();
};
}
public function updateBonus():void{
_comboReset = COMBO_TIME;
_comboBonus++;
if (_comboBonus > 1){
showBonus();
};
}
protected function keyReleased(_arg1:KeyboardEvent):void{
var _local2:int;
var _local3:int;
var _local4:int;
if (_controlsDisabled){
return;
};
_local2 = _attackKeys.indexOf(_arg1.keyCode);
if (_local2 != -1){
_attackKeys.splice(_local2, 1);
if (_arg1.keyCode == BITE){
if (dead){
return;
};
if (_eatting){
if (currentLabel != "eat"){
return;
};
_local3 = FrameUtils.labelToNumber(anim, "spit");
if (_local3 > anim.currentFrame){
anim.gotoAndPlay("spit");
};
return;
};
};
return;
};
_local2 = _directionKeys.indexOf(_arg1.keyCode);
if (_local2 != -1){
_directionKeys.splice(_local2, 1);
if ((((_arg1.keyCode == L_KEY)) || ((_arg1.keyCode == R_KEY)))){
if (_lastTap){
if (((chargeReady) && ((_tapKey === _arg1.keyCode)))){
chargeAttack();
};
};
_lastTap = TAP_TIME;
_tapKey = _arg1.keyCode;
} else {
_lastTap = 0;
};
if (_charging){
return;
};
if (_directionKeys.length > 0){
_local4 = _directionKeys[(_directionKeys.length - 1)];
switch (_local4){
case L_KEY:
_direction = LEFT;
break;
case R_KEY:
_direction = RIGHT;
break;
case U_KEY:
_direction = UP;
break;
case D_KEY:
_direction = DOWN;
break;
default:
return;
};
updateDirection();
} else {
switch (_arg1.keyCode){
case L_KEY:
_direction = ((_direction)==LEFT) ? IDLE : _direction;
break;
case R_KEY:
_direction = ((_direction)==RIGHT) ? IDLE : _direction;
break;
case U_KEY:
_direction = ((_direction)==UP) ? IDLE : _direction;
break;
case D_KEY:
_direction = ((_direction)==DOWN) ? IDLE : _direction;
break;
default:
break;
};
if (_direction == IDLE){
if (((((((attacking) || (hit))) || (dead))) || (_eatting))){
return;
};
idle();
};
};
};
if ((((_arg1.keyCode == PAUSE_KEY)) || ((_arg1.keyCode == Keyboard.ESCAPE)))){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.OPEN_MENU));
};
}
override public function unpause():void{
enableControls();
super.unpause();
}
override protected function removedFromStage(_arg1:Event):void{
super.removedFromStage(_arg1);
this.stage.removeEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
this.stage.removeEventListener(KeyboardEvent.KEY_UP, keyReleased);
removeEventListener(PolarBearGameEvent.WEAPON_ADDED, weaponAdded);
}
protected function keyPressed(_arg1:KeyboardEvent):void{
passwordCheck(_arg1.charCode);
if (_controlsDisabled){
return;
};
if (_directionKeys.indexOf(_arg1.keyCode) != -1){
return;
};
if (_attackKeys.indexOf(_arg1.keyCode) != -1){
return;
};
if (_charging){
return;
};
isBite = false;
switch (_arg1.keyCode){
case L_KEY:
_direction = LEFT;
updateDirection();
_directionKeys.push(_arg1.keyCode);
break;
case R_KEY:
_direction = RIGHT;
updateDirection();
_directionKeys.push(_arg1.keyCode);
break;
case U_KEY:
_direction = UP;
updateDirection();
_directionKeys.push(_arg1.keyCode);
break;
case D_KEY:
_direction = DOWN;
updateDirection();
_directionKeys.push(_arg1.keyCode);
break;
case BITE:
_attackKeys.push(_arg1.keyCode);
if (((((((attacking) || (hit))) || (_eatting))) || (dead))){
return;
};
attacking = true;
attack = bite;
isBite = true;
gotoAndStop("bite");
break;
case ATTACK_R:
_attackKeys.push(_arg1.keyCode);
if (((((((attacking) || (hit))) || (_eatting))) || (dead))){
return;
};
attacking = true;
if (Game.weapon){
attack = attack4_short;
weaponCount--;
dispatchEvent(new UIEvent(UIEvent.UPDATE_WEAPON_COUNT));
if (Game.weapon > 11){
projectileNum = Game.weapon;
gotoAndStop("throw");
} else {
gotoAndStop("strike_4");
};
} else {
if (_isLeftAttack){
attack = attack2;
gotoAndStop("strike_2");
} else {
attack = attack1;
gotoAndStop("strike_1");
};
_isLeftAttack = !(_isLeftAttack);
};
break;
case PICK_UP:
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.PICKUP_OBJECT));
break;
default:
return;
};
}
override protected function init():void{
this.stage.addEventListener(KeyboardEvent.KEY_DOWN, keyPressed);
this.stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
addEventListener(PolarBearGameEvent.WEAPON_ADDED, weaponAdded);
initFrameScripts();
hitTarget.x = -4;
hitTarget.y = -111;
hitTarget.d = 100;
health = MAX_HEALTH;
gameX = 0;
}
protected function showBonus():void{
bonusIndicator.bonus = _comboBonus;
}
public function get comboBonus():int{
return (_comboBonus);
}
public function reset():void{
health = MAX_HEALTH;
dead = (attacking = (hit = (_eatting = false)));
makeInvuln();
_invuln = 4;
disabled = false;
dropItem();
dispatchEvent(new UIEvent(UIEvent.UPDATE_WEAPON_COUNT));
dispatchEvent(new UIEvent(UIEvent.VIGNETTE_RESET));
enableControls();
_yPos = ((_yPos)<_minY) ? _minY : _yPos;
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
_xPos = ((_xPos)<_minX) ? _minX : _xPos;
_xPos = ((_xPos)>_maxX) ? _maxX : _xPos;
this.x = _xPos;
this.y = _yPos;
updateDirection();
}
public function eat():void{
(anim.bearHead as MovieClip).gotoAndStop(2);
_eatting = true;
}
public function get invuln():Boolean{
if (((_invuln) || (_charging))){
return (true);
};
return (false);
}
protected function passwordCheck(_arg1:uint):void{
if (_passwordUsed){
return;
};
_passwordEntryString = _passwordEntryString.concat(String.fromCharCode(_arg1));
if (_passwordEntryString.length > _password.length){
_passwordEntryString = _passwordEntryString.slice(1);
};
if (_passwordEntryString == _password){
_passwordUsed = true;
pickupItem(16);
SoundInterface.instance.playSound("pbp_weapon_pickup", "sfx");
};
}
public function enableControls():void{
_controlsDisabled = false;
}
public function resetCombo():void{
_comboReset = 0;
_comboBonus = 0;
}
public function endCharge():void{
_charging = false;
_speed = (NORMAL_SPEED + _speedBoost);
idle();
updateDirection();
}
public function speedBoost():void{
var _local1:Array;
message.showMessage("speed!");
_speedBoost = SPEED_BOOST;
_speed = (_speed + _speedBoost);
_boostDuration = BOOST_DURATION;
_local1 = this.filters;
_local1.push(new GlowFilter(0xFF00));
this.filters = _local1;
}
override protected function attackComplete():void{
super.attackComplete();
if (weaponCount == 0){
dropItem();
};
if (_eatting){
gotoAndStop("eat");
};
}
override protected function attackCheck():void{
var _local1:MovieClip;
if (isBite){
_local1 = (anim.bearHead as MovieClip);
if (_local1){
_local1.gotoAndStop(3);
};
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.BEAR_ATTACK));
}
public function disableControls():void{
_controlsDisabled = true;
_directionKeys = [];
_attackKeys = [];
}
protected function initThrow():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), attackComplete);
FrameUtils.addFrameLabelScript(anim, "hit", null);
FrameUtils.addFrameLabelScript(anim, "hit", throwAttack);
anim.play();
}
public function pickupItem(_arg1:int):void{
weaponCount = NUM_USES;
Game.weapon = _arg1;
if (_weapon){
_weapon.weapon = _arg1;
};
dispatchEvent(new UIEvent(UIEvent.UPDATE_WEAPON_COUNT));
}
override public function lastPosition():void{
if (_charging){
if (_held < HOLD_COUNT){
_held++;
} else {
endCharge();
};
};
_xPos = _xLast;
_yPos = _yLast;
this.x = _xPos;
this.y = _yPos;
}
override public function pause():void{
disableControls();
super.pause();
}
}
}//package adultswim.polarbearpayback.game
Section 9
//BearProjectile (adultswim.polarbearpayback.game.BearProjectile)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
public class BearProjectile extends Character {
protected var attack1:HitArea;
public var ySpeed:Number;// = 0
public function BearProjectile(){
attack1 = new HitArea(0, 0, 50, 10);
ySpeed = 0;
super();
health = 1000;
_speed = 800;
attack = attack1;
dead = true;
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
attacking = true;
attack = attack1;
gotoAndStop("strike");
}
override public function attackSuccess():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
}
override public function update(_arg1:Number):void{
_xPos = (_xPos + ((projectileDirection * _speed) * _arg1));
_yPos = (_yPos + (ySpeed * _arg1));
this.x = _xPos;
this.y = _yPos;
if (_xPos < (_minX - 200)){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
return;
};
if (_xPos > (_maxX + 200)){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
return;
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.BEAR_PROJECTILE_ATTACK));
}
override public function collisionCheck(_arg1:Array):Boolean{
return (false);
}
override protected function init():void{
_speed = 700;
moveLeft();
}
override public function hitCheck(_arg1:HitArea):Boolean{
return (false);
}
override protected function initAttack():void{
}
override protected function attackComplete():void{
attacking = false;
anim.stop();
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 10
//BloodStain (adultswim.polarbearpayback.game.BloodStain)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
public class BloodStain extends MovieClip {
public function BloodStain(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.BLOODSTAIN));
}
}
}//package adultswim.polarbearpayback.game
Section 11
//BonusIndicator (adultswim.polarbearpayback.game.BonusIndicator)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import smashing.utils.*;
import smashing.text.*;
public class BonusIndicator extends MovieClip {
public var bonusText:MovieClipTextField;
protected var _showing:Boolean;
protected var _introComplete:Boolean;
public function BonusIndicator(){
gotoAndStop("off");
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
FrameUtils.addFrameLabelScript(this, "off", animComplete);
FrameUtils.addFrameLabelScript(this, "static", introComplete);
}
public function set bonus(_arg1:int):void{
bonusText.text = String(_arg1);
if (_showing){
if (_introComplete){
gotoAndPlay("static");
};
} else {
_introComplete = false;
gotoAndPlay("intro");
};
_showing = true;
}
protected function animComplete():void{
stop();
_showing = false;
}
protected function introComplete():void{
_introComplete = true;
}
}
}//package adultswim.polarbearpayback.game
Section 12
//BossIntro (adultswim.polarbearpayback.game.BossIntro)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class BossIntro extends GenericObject {
protected var _introplayed:Boolean;
public function BossIntro(){
stop();
}
public function intro():void{
if (_introplayed){
return;
};
_introplayed = true;
FrameUtils.addFrameLabelScript(this, "intro", introComplete, true);
FrameUtils.addFrameLabelScript(this, "static", stop);
gotoAndPlay("intro");
}
protected function introComplete():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SHOW_BOSS));
}
}
}//package adultswim.polarbearpayback.game
Section 13
//Bully (adultswim.polarbearpayback.game.Bully)
package adultswim.polarbearpayback.game {
import smashing.utils.*;
public class Bully extends Character {
protected var ATTACK_FREQUENCY:Number;// = 2.5
protected var _attackNum:int;// = 0
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
protected var V_SPEED:Number;// = 80
protected var _pursue:Boolean;// = true
protected var H_SPEED:Number;// = 220
protected var _attackRepeat:int;// = 1
public function Bully(){
attack1 = new HitArea(-66, -36, 100, 5);
H_SPEED = 220;
V_SPEED = 80;
_attackNum = 0;
_attackRepeat = 1;
_pursue = true;
ATTACK_FREQUENCY = 2.5;
_nextAttack = 1.5;
super();
health = 10;
pickupArea = new HitArea(91, -5, 75);
pickupNum = 2;
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "strike", initAttack);
}
override public function moveDown():void{
_speed = V_SPEED;
super.moveDown();
}
private function walkAwayHorizontal():void{
if (_xPos < bear.x){
if (_xPos < _minX){
_pursue = true;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos > _maxX){
_pursue = true;
};
if (_direction == RIGHT){
return;
};
moveRight();
};
};
}
private function walkTowardsHorizontal():void{
if (_xPos > (bear.x + 50)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 50)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
private function walkAway():void{
if (Math.abs((_xPos - bear.x)) > Math.abs((_yPos - bear.y))){
if (_positionReset){
_pursue = true;
walkAwayVertical();
} else {
walkAwayHorizontal();
};
} else {
if (_positionReset){
_pursue = true;
walkAwayHorizontal();
} else {
walkAwayVertical();
};
};
}
private function walkTowardsVertical():void{
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
} else {
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
} else {
idle();
};
};
}
override public function moveUp():void{
_speed = V_SPEED;
super.moveUp();
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
attacking = true;
attack = attack1;
gotoAndStop("strike");
_pursue = false;
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
};
if (_xPos >= _maxX){
moveLeft();
};
if (_yPos <= _minY){
moveDown();
};
if (_yPos >= _maxY){
moveUp();
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if ((((((Math.abs((_xPos - bear.x)) < 150)) && ((Math.abs((_yPos - bear.y)) < 70)))) && (_pursue))){
if (_nextAttack <= 0){
playerAttack();
};
return;
};
if (!_pursue){
walkAway();
if (Math.abs((_xPos - bear.x)) > 600){
_pursue = true;
};
} else {
if (Math.abs((_xPos - bear.x)) > Math.abs((_yPos - bear.y))){
if (_positionReset){
walkTowardsVertical();
return;
};
walkTowardsHorizontal();
} else {
if (_positionReset){
walkTowardsHorizontal();
return;
};
walkTowardsVertical();
};
};
}
override public function moveRight():void{
_speed = H_SPEED;
super.moveRight();
}
private function walkAwayVertical():void{
if (_yPos < bear.y){
if (_yPos <= _minY){
_pursue = true;
};
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos > bear.y){
if (_yPos >= _maxY){
_pursue = true;
};
if (_direction == DOWN){
return;
};
moveDown();
};
}
override protected function init():void{
_speed = 100;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 85;
}
override protected function updatePosition():void{
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
this.x = _xPos;
this.y = _yPos;
}
override public function moveLeft():void{
_speed = H_SPEED;
super.moveLeft();
}
override protected function attackComplete():void{
_attackNum++;
if (_attackNum < _attackRepeat){
return;
};
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
anim.stop();
if (_attackRepeat == 1){
_attackRepeat = 3;
} else {
_attackRepeat = 1;
};
_attackNum = 0;
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 14
//Camera (adultswim.polarbearpayback.game.Camera)
package adultswim.polarbearpayback.game {
public class Camera {
protected const LEFT:String = "left";
protected const UP:String = "up";
protected const DOWN:String = "down";
public const WIDTH:int = 800;
public const HEIGHT:int = 600;
protected const RIGHT:String = "right";
protected var _direction:String;
protected var _autoScroll:Boolean;
public var newMinX:int;// = 0
protected var _newX:Number;
protected var _newY:Number;
protected var _bear:Bear;
private var _screenX:Number;// = 0
public var newMaxX:int;// = -800
public var minX:int;// = 0
protected var _speed:Number;// = 400
public var screenIndex:int;
protected var _game:Game;
protected var _scroll:Boolean;
protected var _gameEngine:GameEngine;
public var maxX:int;// = -800
protected var _x:Number;// = 0
protected var _y:Number;// = 0
public function Camera(_arg1:GameEngine){
_x = 0;
_y = 0;
_speed = 400;
minX = 0;
maxX = -800;
newMinX = 0;
newMaxX = -800;
_screenX = 0;
super();
_gameEngine = _arg1;
_game = _gameEngine.game;
_bear = _game.bear;
_direction = RIGHT;
_scroll = false;
}
public function get y():Number{
return (-(_y));
}
public function set y(_arg1:Number):void{
_y = _arg1;
render();
}
protected function render():void{
}
public function addScreens(_arg1:int):void{
newMinX = (maxX + WIDTH);
maxX = (maxX + (_arg1 * WIDTH));
}
public function nextScreen():void{
screenIndex++;
_newX = (screenIndex * WIDTH);
_scroll = true;
}
public function update(_arg1:Number):void{
_screenX = (_bear.x - (WIDTH / 2));
if (_screenX >= maxX){
_screenX = maxX;
};
if (_screenX < minX){
return;
};
if (_x < _screenX){
_x = (_x + (_arg1 * _speed));
if (_x > _screenX){
_x = _screenX;
};
};
if (_x > _screenX){
_x = (_x - (_arg1 * _speed));
if (_x < _screenX){
_x = _screenX;
};
};
if (_screenX < (newMinX - WIDTH)){
_gameEngine.hand.show();
} else {
_gameEngine.hand.hide();
};
_game.updatePosition(_x);
}
public function get x():Number{
return (_x);
}
}
}//package adultswim.polarbearpayback.game
Section 15
//CEO (adultswim.polarbearpayback.game.CEO)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
import flash.filters.*;
public class CEO extends Character {
private const END_X:Number = 6940.5;
protected const CHARGE_SPEED:int = 600;
public const MAX_HEALTH:int = 100;
private const END_Y:Number = 499.4;
protected var ATTACK_FREQUENCY:Number;// = 1.5
private var _attackNum:int;
protected var _nextAttack:Number;// = 1.5
protected var _chargeNum:int;
protected var attack1:HitArea;
protected var attack2:HitArea;
protected var attack3:HitArea;
protected var _runDirection:Array;
protected var _chargeDirection:String;
protected var _pursue:Boolean;// = true
protected var _deathReady:Boolean;
protected var _die:Boolean;
protected var _minHealth:int;// = 17
protected var _charge:Boolean;
public function CEO(){
attack1 = new HitArea(-38, -81, 90, 6);
attack2 = new HitArea(-78, -78, 70, 9);
attack3 = new HitArea(0, -60, 70, 5);
ATTACK_FREQUENCY = 1.5;
_nextAttack = 1.5;
_pursue = true;
_minHealth = 17;
super();
_speed = 140;
health = MAX_HEALTH;
_nextInvuln = (health - 15);
}
protected function pursuitBehavior():void{
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + 80)){
if (_xPos > (bear.x + 100)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 100)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
} else {
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
}
protected function chargeAttack():void{
_invuln = 30;
_chargeNum = 1;
attack = attack3;
disabled = true;
if (bear.x < this.x){
_chargeDirection = (_direction = LEFT);
this.scaleX = 1;
} else {
_chargeDirection = (_direction = RIGHT);
this.scaleX = -1;
};
_charge = true;
anim.stop();
attack = attack3;
gotoAndStop("blitz_forward");
}
private function walkAway():void{
if (_xPos < bear.x){
if (_xPos <= (_minX + 10)){
idle();
return;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos >= (_maxX - 10)){
idle();
return;
};
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
protected function closeAttack():void{
if (((((((attacking) || (hit))) || (dead))) || ((_invuln > 0)))){
return;
};
attacking = true;
_charge = false;
_attackNum = 0;
FrameUtils.addFrameLabelScript(this, "strike_2", null);
FrameUtils.addFrameLabelScript(this, "strike_2", initAttack);
anim.stop();
attack = attack2;
gotoAndStop("strike_2");
}
override protected function charHit(_arg1:Number):void{
var _local2:Array;
trace(((("health: " + health) + " - ") + _arg1));
if ((health - _arg1) > _minHealth){
super.charHit(_arg1);
} else {
die();
if (_deathReady){
realDeath();
};
};
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
if (health > 0){
if (health < _nextInvuln){
_invuln = 1;
_local2 = this.filters;
_local2.push(new GlowFilter(52479));
this.filters = _local2;
_nextInvuln = (_nextInvuln - 15);
return;
};
};
}
override public function die():void{
if (_die){
return;
};
_die = true;
_minHealth = 0;
disabled = true;
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (_die){
if (_xPos < END_X){
moveRight();
_xPos = (_xPos + (_speed * _arg1));
if (_xPos > END_X){
_xPos = END_X;
};
} else {
if (_xPos > END_X){
moveLeft();
_xPos = (_xPos - (_speed * _arg1));
if (_xPos < END_X){
_xPos = END_X;
};
};
};
if (_yPos < END_Y){
moveDown();
_yPos = (_yPos + (_speed * _arg1));
if (_yPos > END_Y){
_yPos = END_Y;
};
} else {
if (_yPos > END_Y){
moveUp();
_yPos = (_yPos - (_speed * _arg1));
if (_yPos < END_Y){
_yPos = END_Y;
};
};
};
if ((((_xPos == END_X)) && ((_yPos == END_Y)))){
_deathReady = true;
this.filters = _filters;
_invuln = 0;
disabled = false;
idle();
};
this.x = _xPos;
this.y = _yPos;
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
if (_charge){
if (_chargeDirection == RIGHT){
_xPos = (_xPos + (CHARGE_SPEED * _arg1));
if (_xPos > _maxX){
if (_chargeNum == 0){
_chargeNum = 1;
_chargeDirection = LEFT;
_direction = LEFT;
this.scaleX = 1;
} else {
moveLeft();
stopCharge();
};
};
} else {
_xPos = (_xPos - (CHARGE_SPEED * _arg1));
if (_xPos < _minX){
if (_chargeNum == 0){
_chargeNum = 1;
_chargeDirection = RIGHT;
_direction = RIGHT;
this.scaleX = -1;
} else {
moveRight();
stopCharge();
};
};
};
if (!bear.hit){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_ATTACK));
};
this.x = _xPos;
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
_pursue = false;
return;
};
if (_xPos >= _maxX){
moveLeft();
_pursue = false;
return;
};
if (_yPos <= _minY){
moveDown();
_pursue = false;
return;
};
if (_yPos >= _maxY){
moveUp();
_pursue = false;
return;
};
if (bear.x < this.x){
this.scaleX = _flip;
} else {
this.scaleX = -(_flip);
};
if (_invuln > 0){
_invuln = (_invuln - _arg1);
if (_invuln <= 0){
this.filters = _filters;
_invuln = 0;
};
};
if ((((Math.abs((_xPos - bear.x)) < 100)) && ((Math.abs(((_yPos - 30) - bear.y)) < 100)))){
if (_nextAttack < 0){
closeAttack();
};
return;
} else {
if (_nextAttack < -2){
chargeAttack();
return;
};
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if (_pursue){
pursuitBehavior();
} else {
evadeBehavior();
};
}
override public function moveRight():void{
_direction = RIGHT;
if (scaleX == -(_flip)){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function init():void{
_speed = 200;
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
_maxX = 6950;
_minX = 6000;
}
protected function stopCharge():void{
_nextAttack = ATTACK_FREQUENCY;
_charge = false;
_invuln = 0;
this.filters = _filters;
attacking = false;
disabled = false;
}
protected function realDeath():void{
dead = true;
disabled = true;
anim.stop();
this.scaleX = 1;
gotoAndStop("die");
}
override public function moveLeft():void{
_direction = LEFT;
if (scaleX == _flip){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function attackComplete():void{
if (_charge){
_attackNum++;
if (_attackNum > 2){
_attackNum = 0;
_pursue = true;
} else {
return;
};
} else {
_attackNum++;
if (_attackNum == 1){
return;
};
if (_attackNum == 2){
anim.stop();
FrameUtils.addFrameLabelScript(this, "strike_1", null);
FrameUtils.addFrameLabelScript(this, "strike_1", initAttack);
attack = attack1;
gotoAndStop("strike_1");
return;
};
_pursue = false;
_attackNum = 0;
};
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
anim.stop();
updateDirection();
}
override protected function attackCheck():void{
if (_charge){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.BOSS_THROW));
} else {
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_ATTACK));
};
}
protected function evadeBehavior():void{
if (Math.abs((_xPos - bear.x)) > 400){
walkTowards();
} else {
if (Math.abs((_xPos - bear.x)) < 200){
walkAway();
} else {
if (Math.abs((_yPos - bear.y)) < 30){
idle();
return;
};
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
};
}
override protected function deathComplete():void{
anim.stop();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
}
private function walkTowards():void{
if (_xPos > bear.x){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_direction == RIGHT){
return;
};
moveRight();
};
}
}
}//package adultswim.polarbearpayback.game
Section 16
//Character (adultswim.polarbearpayback.game.Character)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Character extends CollisionObject {
protected const LEFT:String = "left";
protected const MAX_X:Number = 750;
protected const MAX_Y:Number = 590;
protected const DEATH_TIMEOUT:Number = 6;
protected const UP:String = "up";
protected const DOWN:String = "down";
protected const MIN_X:Number = 50;
protected const MIN_Y:Number = 250;
protected const IDLE:String = "idle";
protected const RIGHT:String = "right";
protected var _direction:String;
public var anim:MovieClip;
protected var _xLast:Number;
protected var _persistent:Boolean;
public var attack:HitArea;
protected var _maxY:Number;
public var health:Number;// = 15
protected var _maxX:Number;
protected var _invuln:Number;
public var dead:Boolean;
protected var _directions:Array;
public var attacking:Boolean;
public var healthmeter:MovieClip;
protected var _filters:Array;
protected var _deathTimer:Number;
protected var _forceDirection:String;
public var hitTarget:HitArea;
protected var _eatting:Boolean;
public var pickupArea:HitArea;
protected var _minY:Number;
public var paused:Boolean;
public var camera:Camera;
protected var _speed:Number;// = 180
protected var _flip:int;// = 1
protected var _minX:Number;
public var pickupNum:int;
public var delay:Number;
protected var _nextInvuln:int;
public var hit:Boolean;
public var projectileDirection:int;
protected var _xPos:Number;
protected var _positionReset:Number;// = 0
protected var _yLast:Number;
public var bear:Bear;
public var hasPickup:Boolean;
public var dropWeapon:Boolean;
protected var _yPos:Number;
public function Character(){
health = 15;
hitTarget = new HitArea();
_speed = 180;
_flip = 1;
_positionReset = 0;
_directions = [LEFT, RIGHT, UP, DOWN];
super();
stop();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
_rect = new Rectangle();
_minY = MIN_Y;
_maxY = MAX_Y;
}
protected function updateHealthMeter(_arg1:int):void{
healthmeter.gotoAndStop(_arg1);
}
public function pause():void{
if (anim){
anim.stop();
};
paused = true;
}
public function moveDown():void{
_direction = DOWN;
if (((((((((attacking) || (hit))) || (dead))) || (_eatting))) || (disabled))){
return;
};
if (currentLabel != "walk"){
gotoAndStop("walk");
};
}
override protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
_arg1.stopPropagation();
super.addedToStage(_arg1);
_xPos = (_xLast = this.x);
_yPos = (_yLast = this.y);
init();
FrameUtils.addFrameLabelScript(this, "hit", initHit);
FrameUtils.addFrameLabelScript(this, "die", initDeath);
addEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
if (((!((this is Seal))) && (!((this is Bear))))){
};
}
public function shotCheck(_arg1:Point, _arg2:Number, _arg3:Number=92):Boolean{
var _local4:Point;
if (((disabled) || (_invuln))){
return (false);
};
_local4 = localToGlobal(new Point(hitTarget.x, hitTarget.y));
if ((((_arg1.y < (_local4.y - (hitTarget.d / 2)))) || ((_arg1.y > (_local4.y + (hitTarget.d / 2)))))){
return (false);
};
if (Math.abs((_arg1.x - _local4.x)) < _arg3){
};
charHit(_arg2);
return (true);
}
protected function moveCharacter(_arg1:Number):void{
if (paused){
return;
};
switch (_direction){
case UP:
_yPos = (_yPos - (_arg1 * _speed));
break;
case DOWN:
_yPos = (_yPos + (_arg1 * _speed));
break;
case LEFT:
_xPos = (_xPos - (_arg1 * _speed));
break;
case RIGHT:
_xPos = (_xPos + (_arg1 * _speed));
break;
default:
return;
};
updatePosition();
}
protected function initHit():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), hitComplete);
anim.play();
}
public function moveUp():void{
_direction = UP;
if (((((((((attacking) || (hit))) || (dead))) || (_eatting))) || (disabled))){
return;
};
if (currentLabel != "walk"){
gotoAndStop("walk");
};
}
protected function charHit(_arg1:Number):void{
if (((dead) || ((_invuln > 0)))){
return;
};
hit = true;
attacking = false;
health = (health - _arg1);
if (health > 0){
if (anim){
if (currentLabel != "hit"){
if (anim){
anim.stop();
};
};
};
gotoAndStop("hit");
} else {
die();
if (bear){
_rect.x = -100000;
if (bear.isBite){
bear.eat();
};
};
};
}
public function die():void{
_deathTimer = DEATH_TIMEOUT;
dead = true;
disabled = true;
if (anim){
if (currentLabel != "die"){
if (anim){
anim.stop();
};
};
};
if (dropWeapon){
gotoAndStop("die");
} else {
gotoAndStop("die");
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
}
public function attackSuccess():void{
}
protected function updateDirection():void{
if (((((((attacking) || (hit))) || (dead))) || (_eatting))){
return;
};
switch (_direction){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
default:
idle();
break;
};
}
public function update(_arg1:Number):void{
if (delay > 0){
delay = (delay - _arg1);
return;
};
if (_positionReset > 0){
_positionReset = (_positionReset - _arg1);
if (_positionReset < 0){
_positionReset = 0;
};
};
_xLast = _xPos;
_yLast = _yPos;
if (((((attacking) || (dead))) || (_eatting))){
if (dead){
if (!bear){
return;
};
_deathTimer = (_deathTimer - _arg1);
if (_deathTimer < 0.3){
anim.visible = !(anim.visible);
};
if (_deathTimer <= 0){
anim.visible = false;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
};
};
return;
};
moveCharacter(_arg1);
}
public function moveRight():void{
_direction = RIGHT;
if (((((((((attacking) || (hit))) || (dead))) || (_eatting))) || (disabled))){
return;
};
this.scaleX = -(_flip);
if (currentLabel != "walk"){
gotoAndStop("walk");
};
}
public function get xPos():Number{
return (_xPos);
}
public function unpause():void{
paused = false;
if (anim){
if (dead){
if (anim.currentFrame == anim.totalFrames){
return;
};
};
anim.play();
};
}
protected function init():void{
}
protected function updatePosition():void{
_yPos = ((_yPos)<_minY) ? _minY : _yPos;
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
this.x = _xPos;
this.y = _yPos;
}
public function get yPos():Number{
return (_yPos);
}
override public function hitCheck(_arg1:HitArea):Boolean{
var _local2:Point;
var _local3:Number;
if (((dead) || (_invuln))){
return (false);
};
_local2 = localToGlobal(new Point(hitTarget.x, hitTarget.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((hitTarget.d + _arg1.d) / 2)){
charHit(_arg1.strength);
return (true);
};
return (false);
}
protected function removedFromStage(_arg1:Event):void{
if (anim){
anim.stop();
};
removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
hit = false;
dead = false;
attacking = false;
}
public function set gameX(_arg1:Number):void{
_minX = (_arg1 + MIN_X);
_maxX = (_arg1 + MAX_X);
}
protected function initDeath():void{
trace((this + ".initDeath"));
if (anim){
anim.addFrameScript((anim.totalFrames - 1), deathComplete);
anim.play();
};
}
protected function initDeath2():void{
}
public function set xPos(_arg1:Number){
_xPos = _arg1;
this.x = _xPos;
}
public function moveLeft():void{
_direction = LEFT;
if (((((((((attacking) || (hit))) || (dead))) || (_eatting))) || (disabled))){
return;
};
this.scaleX = _flip;
if (currentLabel != "walk"){
gotoAndStop("walk");
};
}
protected function attackComplete():void{
if (anim){
anim.stop();
};
attacking = false;
updateDirection();
}
public function checkPickup(_arg1:Point):Boolean{
var _local2:Point;
var _local3:Number;
if (!hasPickup){
return (false);
};
_local2 = localToGlobal(new Point(pickupArea.x, pickupArea.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < (pickupArea.d / 2)){
if ((anim.pickup as MovieClip) == null){
} else {
(anim.pickup as MovieClip).visible = false;
};
hasPickup = false;
return (true);
};
return (false);
}
protected function initFade():void{
anim.addFrameScript((anim.totalFrames - 1), stop);
anim.play();
}
protected function attackCheck():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_ATTACK));
}
protected function initAttack():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), attackComplete);
FrameUtils.addFrameLabelScript(anim, "hit", null);
FrameUtils.addFrameLabelScript(anim, "hit", attackCheck);
anim.play();
}
protected function deathComplete():void{
if (anim){
anim.stop();
};
if (dropWeapon){
hasPickup = true;
};
}
public function idle():void{
_direction = IDLE;
if (((((((attacking) || (hit))) || (dead))) || (_eatting))){
return;
};
gotoAndStop("idle");
}
public function lastPosition():void{
if (!_positionReset){
_positionReset = 0.5;
_forceDirection = _directions[Math.floor((Math.random() * _directions.length))];
};
_xPos = _xLast;
_yPos = _yLast;
this.x = _xPos;
this.y = _yPos;
}
protected function hitComplete():void{
if (dead){
return;
};
if (anim){
anim.stop();
};
hit = false;
updateDirection();
}
public function randomY():void{
this.y = (_minY + (Math.random() * (_maxY - _minY)));
}
}
}//package adultswim.polarbearpayback.game
Section 17
//CityBoss (adultswim.polarbearpayback.game.CityBoss)
package adultswim.polarbearpayback.game {
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
import flash.filters.*;
public class CityBoss extends Character {
public const POOP_Y:Number = 4.4;
public const MAX_HEALTH:int = 175;
protected var ATTACK_FREQUENCY:Number;// = 2
private var _headShot:Boolean;
private var _attackNum:int;
protected var _crapping:Boolean;
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
protected var attack2:HitArea;
protected var attack3:HitArea;
protected var _runDirection:Array;
protected var _pursue:Boolean;// = true
private var POOP_X_1:Number;// = 81.4
private var POOP_X_3:Number;// = 183.4
protected var _intro:Boolean;
private var POOP_X_2:Number;// = 129.4
protected var _hit2:HitArea;
protected var _throw:Boolean;
public var POOP_X:Number;// = 93.5
public function CityBoss(){
POOP_X = 93.5;
attack1 = new HitArea(-140, -100, 90, 5);
attack2 = new HitArea(-58, -114, 137, 8);
attack3 = new HitArea(-58, -114, 137, 8);
ATTACK_FREQUENCY = 2;
_nextAttack = 1.5;
POOP_X_1 = 81.4;
POOP_X_2 = 129.4;
POOP_X_3 = 183.4;
_pursue = true;
super();
_intro = true;
_filters = this.filters;
}
protected function pursuitBehavior():void{
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + 80)){
if (_xPos > (bear.x + 100)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 100)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
} else {
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
}
protected function crapComplete():void{
trace((this + ".crapComplete()"));
if (anim){
anim.stop();
};
this.filters = _filters;
_crapping = false;
_invuln = 0;
hit = false;
}
private function walkAway():void{
if (_xPos < bear.x){
if (_xPos <= (_minX + 10)){
idle();
return;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos >= (_maxX - 10)){
idle();
return;
};
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
override protected function initHit():void{
if (_headShot){
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), hitComplete);
anim.play();
} else {
if (currentLabel != "hit2"){
if (anim){
anim.stop();
};
};
gotoAndStop("hit2");
};
}
protected function initHit2():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), hitComplete);
anim.play();
}
override protected function charHit(_arg1:Number):void{
super.charHit(_arg1);
if (((dead) || (_invuln))){
return;
};
if (health > 0){
if (health < _nextInvuln){
trace((this + "invuln started"));
_crapping = true;
_nextInvuln = (_nextInvuln - 50);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_SUITS));
crap();
};
};
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
}
override public function die():void{
trace((this + ".die()"));
super.die();
_deathTimer = (DEATH_TIMEOUT + 15);
}
protected function closeAttack():void{
if (((((((attacking) || (hit))) || (dead))) || ((_invuln > 0)))){
return;
};
attacking = true;
_throw = false;
_attackNum = 0;
FrameUtils.addFrameLabelScript(this, "strike_2", null);
FrameUtils.addFrameLabelScript(this, "strike_2", initAttack);
attack = attack2;
if (currentLabel != "strike_2"){
if (anim){
anim.stop();
};
};
gotoAndStop("strike_2");
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (_intro){
return;
};
if (_crapping){
return;
};
if (_invuln > 0){
_invuln = (_invuln - _arg1);
if (_invuln <= 0){
this.filters = _filters;
_invuln = 0;
trace((this + ".invuln end"));
};
_direction = _runDirection[Math.floor((Math.random() * _runDirection.length))];
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
_pursue = false;
return;
};
if (_xPos >= _maxX){
moveLeft();
_pursue = false;
return;
};
if (_yPos <= _minY){
moveDown();
_pursue = false;
return;
};
if (_yPos >= _maxY){
moveUp();
_pursue = false;
return;
};
if (bear.x < this.x){
this.scaleX = _flip;
} else {
this.scaleX = -(_flip);
};
if (_invuln){
return;
};
if ((((Math.abs((_xPos - bear.x)) < 140)) && ((Math.abs(((_yPos - 30) - bear.y)) < 100)))){
if (_nextAttack < 0){
closeAttack();
};
return;
} else {
if (_nextAttack < 0){
rangeAttack();
return;
};
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if (_pursue){
pursuitBehavior();
} else {
evadeBehavior();
};
}
override public function moveRight():void{
_direction = RIGHT;
if (scaleX == -(_flip)){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
protected function crap():void{
var _local1:Array;
var _local2:Number;
trace((this + ".crap()"));
_direction = IDLE;
_invuln = 1000;
if (currentLabel != "poop"){
if (anim){
anim.stop();
};
};
gotoAndStop("poop");
_local1 = this.filters;
_local1.push(new GlowFilter(52479));
this.filters = _local1;
_local2 = (_minX + ((_maxX - _minX) / 2));
if (this.x < _local2){
this.scaleX = 1;
} else {
this.scaleX = -1;
};
}
override protected function init():void{
_speed = 200;
health = MAX_HEALTH;
_nextInvuln = (health - 50);
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
moveRight();
hitTarget = new HitArea(0, -75, 70);
_hit2 = new HitArea(165, 165, 60);
disabled = true;
_intro = true;
this.scaleX = -1;
FrameUtils.addFrameLabelScript(this, "intro", initIntro);
FrameUtils.addFrameLabelScript(this, "poop", initPoop);
FrameUtils.addFrameLabelScript(this, "hit2", initHit2);
gotoAndStop("intro");
}
override public function hitCheck(_arg1:HitArea):Boolean{
var _local2:Point;
var _local3:Number;
if (((dead) || (_invuln))){
return (false);
};
_local2 = localToGlobal(new Point(hitTarget.x, hitTarget.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((hitTarget.d + _arg1.d) / 2)){
charHit(_arg1.strength);
_headShot = false;
return (true);
};
_local2 = localToGlobal(new Point(_hit2.x, _hit2.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((_hit2.d + _arg1.d) / 2)){
charHit(_arg1.strength);
_headShot = true;
return (true);
};
return (false);
}
protected function initIntro():void{
anim.addFrameScript((anim.totalFrames - 1), introComplete);
anim.play();
}
protected function initPoop():void{
trace((this + ".initPoopAnim"));
FrameUtils.addFrameLabelScript(anim, "UNCRAP", null);
FrameUtils.addFrameLabelScript(anim, "UNCRAP", showCrap);
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), crapComplete);
anim.play();
}
override public function moveLeft():void{
_direction = LEFT;
if (scaleX == _flip){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
protected function showCrap():void{
POOP_X = POOP_X_1;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_MINI_SUIT));
POOP_X = POOP_X_2;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_MINI_SUIT));
POOP_X = POOP_X_3;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_MINI_SUIT));
}
override protected function attackComplete():void{
if (_crapping){
trace((this + ".attackComplete: crap == true"));
if (this.currentLabel != "poop"){
anim.stop();
} else {
trace((this + ".anim not stopped! bug fixed?"));
};
attacking = false;
return;
};
trace((this + ".attackComplete()"));
if (_throw){
_attackNum++;
if (_attackNum > 2){
_attackNum = 0;
_pursue = true;
} else {
return;
};
} else {
_attackNum++;
if (_attackNum == 1){
return;
};
if (_attackNum == 2){
FrameUtils.addFrameLabelScript(this, "strike_1", null);
FrameUtils.addFrameLabelScript(this, "strike_1", initAttack);
attack = attack1;
if (currentLabel == "strike_2"){
if (anim){
anim.stop();
};
};
gotoAndStop("strike_1");
return;
} else {
_pursue = false;
_attackNum = 0;
};
};
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
if (anim){
anim.stop();
};
updateDirection();
}
override protected function attackCheck():void{
if (_throw){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.BOSS_THROW));
} else {
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_ATTACK));
};
}
protected function evadeBehavior():void{
if (Math.abs((_xPos - bear.x)) > 400){
walkTowards();
} else {
if (Math.abs((_xPos - bear.x)) < 200){
walkAway();
} else {
if (Math.abs((_yPos - bear.y)) < 30){
idle();
return;
};
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
};
}
protected function introComplete():void{
disabled = false;
_intro = false;
if (anim){
anim.stop();
};
}
private function walkTowards():void{
if (_xPos > bear.x){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_direction == RIGHT){
return;
};
moveRight();
};
}
protected function rangeAttack():void{
if (((((((attacking) || (hit))) || (dead))) || ((_invuln > 0)))){
return;
};
attacking = true;
_throw = true;
FrameUtils.addFrameLabelScript(this, "throw", null);
FrameUtils.addFrameLabelScript(this, "throw", initAttack);
attack = attack1;
if (currentLabel != "throw"){
if (anim){
anim.stop();
};
};
gotoAndStop("throw");
}
}
}//package adultswim.polarbearpayback.game
Section 18
//CityBully (adultswim.polarbearpayback.game.CityBully)
package adultswim.polarbearpayback.game {
import smashing.utils.*;
public class CityBully extends Character {
protected var ATTACK_FREQUENCY:Number;// = 2.5
protected var _lastAttack:int;// = 1
protected var _attackNum:int;// = 0
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
protected var attack2:HitArea;
protected var V_SPEED:Number;// = 80
protected var _pursue:Boolean;// = true
protected var H_SPEED:Number;// = 220
protected var _attackRepeat:int;// = 3
public function CityBully(){
attack1 = new HitArea(-78, -121, 100, 5);
attack2 = new HitArea(-80, -57, 150, 8);
H_SPEED = 220;
V_SPEED = 80;
_attackNum = 0;
_attackRepeat = 3;
_pursue = true;
_lastAttack = 1;
ATTACK_FREQUENCY = 2.5;
_nextAttack = 1.5;
super();
health = 14;
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "strike_1", initAttack);
FrameUtils.addFrameLabelScript(this, "strike_2", initAttack);
}
override public function moveDown():void{
_speed = V_SPEED;
super.moveDown();
}
private function walkAwayHorizontal():void{
if (_xPos < bear.x){
if (_xPos < _minX){
_pursue = true;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos > _maxX){
_pursue = true;
};
if (_direction == RIGHT){
return;
};
moveRight();
};
};
}
private function walkTowardsHorizontal():void{
if (_xPos > (bear.x + 50)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 50)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
private function walkAway():void{
if (Math.abs((_xPos - bear.x)) > Math.abs((_yPos - bear.y))){
if (_positionReset){
_pursue = true;
walkAwayVertical();
} else {
walkAwayHorizontal();
};
} else {
if (_positionReset){
_pursue = true;
walkAwayHorizontal();
} else {
walkAwayVertical();
};
};
}
private function walkTowardsVertical():void{
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
} else {
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
} else {
idle();
};
};
}
override public function moveUp():void{
_speed = V_SPEED;
super.moveUp();
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
attacking = true;
if (_lastAttack == 0){
anim.stop();
_lastAttack = 1;
attack = attack2;
_attackNum = _attackRepeat;
gotoAndStop("strike_2");
} else {
anim.stop();
_lastAttack = 0;
attack = attack1;
_attackNum = 0;
gotoAndStop("strike_1");
};
_pursue = false;
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
};
if (_xPos >= _maxX){
moveLeft();
};
if (_yPos <= _minY){
moveDown();
};
if (_yPos >= _maxY){
moveUp();
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if ((((((Math.abs((_xPos - bear.x)) < 150)) && ((Math.abs((_yPos - bear.y)) < 70)))) && (_pursue))){
if (_nextAttack <= 0){
playerAttack();
};
return;
};
if (!_pursue){
walkAway();
if (Math.abs((_xPos - bear.x)) > 600){
_pursue = true;
};
} else {
if (Math.abs((_xPos - bear.x)) > Math.abs((_yPos - bear.y))){
if (_positionReset){
walkTowardsVertical();
return;
};
walkTowardsHorizontal();
} else {
if (_positionReset){
walkTowardsHorizontal();
return;
};
walkTowardsVertical();
};
};
}
override public function moveRight():void{
_speed = H_SPEED;
super.moveRight();
}
private function walkAwayVertical():void{
if (_yPos < bear.y){
if (_yPos <= _minY){
_pursue = true;
};
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos > bear.y){
if (_yPos >= _maxY){
_pursue = true;
};
if (_direction == DOWN){
return;
};
moveDown();
};
}
override protected function init():void{
_speed = 100;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 85;
pickupArea = new HitArea(91, -5, 75);
pickupNum = 9;
}
override protected function updatePosition():void{
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
this.x = _xPos;
this.y = _yPos;
}
override public function moveLeft():void{
_speed = H_SPEED;
super.moveLeft();
}
override protected function attackComplete():void{
_attackNum++;
_invuln = 0;
if (_attackNum < _attackRepeat){
return;
};
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
anim.stop();
_attackNum = 0;
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 19
//CityShooter (adultswim.polarbearpayback.game.CityShooter)
package adultswim.polarbearpayback.game {
import smashing.soundcontroller.*;
public class CityShooter extends Shooter {
public function CityShooter(){
health = 10;
}
override protected function playSFX():void{
if (dead){
return;
};
SoundInterface.instance.playSound("rocket.wav", "sfx");
}
override protected function init():void{
super.init();
_speed = 120;
pickupArea = new HitArea(12, -28, 75);
pickupNum = 10;
}
}
}//package adultswim.polarbearpayback.game
Section 20
//CitySuit (adultswim.polarbearpayback.game.CitySuit)
package adultswim.polarbearpayback.game {
import smashing.utils.*;
public class CitySuit extends Character {
protected var ATTACK_FREQUENCY:Number;// = 1.5
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
protected var ATTACK_RANDOMNESS:int;// = 30
public function CitySuit(){
attack1 = new HitArea(-52, -94, 100, 4);
ATTACK_FREQUENCY = 1.5;
_nextAttack = 1.5;
ATTACK_RANDOMNESS = 30;
super();
health = 12;
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "strike", initAttack);
}
public function moveVertical():void{
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
}
protected function playerAttack():void{
if (((((((attacking) || (hit))) || (dead))) || (bear.disabled))){
return;
};
anim.stop();
attacking = true;
attack = attack1;
gotoAndStop("strike");
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
};
if (_xPos >= _maxX){
moveLeft();
};
if (_yPos <= _minY){
moveDown();
};
if (_yPos >= _maxY){
moveUp();
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if ((((Math.abs((_xPos - bear.x)) < 100)) && ((Math.abs(((_yPos - 30) - bear.y)) < 100)))){
if (_nextAttack <= 0){
playerAttack();
};
return;
};
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + 80)){
moveHorizontal();
} else {
moveVertical();
};
}
public function moveHorizontal():void{
if (_xPos > (bear.x + 100)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 100)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
override protected function init():void{
_speed = 100;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
pickupArea = new HitArea(81, -4, 75);
pickupNum = 8;
}
override protected function updatePosition():void{
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
this.x = _xPos;
this.y = _yPos;
}
override protected function attackComplete():void{
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
anim.stop();
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 21
//Clubber (adultswim.polarbearpayback.game.Clubber)
package adultswim.polarbearpayback.game {
import smashing.utils.*;
public class Clubber extends Character {
protected const ATTACK_RANDOMNESS:int = 50;
protected var ATTACK_FREQUENCY:Number;// = 1.5
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
public function Clubber(){
attack1 = new HitArea(-72, -100, 70, 3);
ATTACK_FREQUENCY = 1.5;
_nextAttack = 1.5;
super();
health = 8;
hitTarget = new HitArea(0, -75, 70);
pickupArea = new HitArea(81, -4, 75);
pickupNum = 1;
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "strike", initAttack);
}
public function moveVertical():void{
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
anim.stop();
attacking = true;
attack = attack1;
gotoAndStop("strike");
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
};
if (_xPos >= _maxX){
moveLeft();
};
if (_yPos <= _minY){
moveDown();
};
if (_yPos >= _maxY){
moveUp();
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if ((((Math.abs((_xPos - bear.x)) < 100)) && ((Math.abs(((_yPos - 30) - bear.y)) < 100)))){
if (_nextAttack <= 0){
playerAttack();
};
return;
};
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + 80)){
moveHorizontal();
} else {
moveVertical();
};
}
public function moveHorizontal():void{
if (_xPos > (bear.x + 100)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 100)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
override protected function init():void{
_speed = 100;
initFrameScripts();
moveLeft();
}
override protected function updatePosition():void{
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
this.x = _xPos;
this.y = _yPos;
}
override protected function attackComplete():void{
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
anim.stop();
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 22
//CollisionObject (adultswim.polarbearpayback.game.CollisionObject)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
public class CollisionObject extends MovieClip {
public var rect:MovieClip;
public var disabled:Boolean;
protected var _rect:Rectangle;
public function CollisionObject(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
_rect = new Rectangle(rect.x, rect.y, rect.width, rect.height);
rect.visible = false;
}
public function hitCheck(_arg1:HitArea):Boolean{
return (false);
}
public function get collisionRect():Rectangle{
if (rect){
return (new Rectangle((this.x + rect.x), (this.y + rect.y), rect.width, rect.height));
};
return (null);
}
protected function rectToRectCollision(_arg1:Rectangle, _arg2:Rectangle):Boolean{
if (_arg1.x > (_arg2.x + _arg2.width)){
return (false);
};
if ((_arg1.x + _arg1.width) < _arg2.left){
return (false);
};
if (_arg1.y > (_arg2.y + _arg2.height)){
return (false);
};
if ((_arg1.y + _arg1.height) < _arg2.y){
return (false);
};
return (true);
}
public function collisionCheck(_arg1:Array):Boolean{
var _local2:int;
var _local3:CollisionObject;
var _local4:int;
var _local5:Rectangle;
var _local6:Rectangle;
if (disabled){
return (false);
};
if (!_rect){
return (false);
};
_local4 = _arg1.length;
_local5 = this.collisionRect;
_local2 = 0;
while (_local2 < _local4) {
_local3 = (_arg1[_local2] as CollisionObject);
_local6 = _local3.collisionRect;
if (((_local3.disabled) || ((_local6 == null)))){
} else {
if (rectToRectCollision(_local5, _local6)){
return (true);
};
};
_local2++;
};
return (false);
}
}
}//package adultswim.polarbearpayback.game
Section 23
//Crate (adultswim.polarbearpayback.game.Crate)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Crate extends CollisionObject {
public var hitTarget:HitArea;
public var item:MovieClip;
public var anim:MovieClip;
public var pickupArea:HitArea;
public var pickupNum:int;
public var hit:Boolean;
public var hasPickup:Boolean;
public function Crate(){
stop();
hitTarget = new HitArea(11.4, -42.2, 87.4);
pickupArea = new HitArea(15, 27, 80);
}
override protected function addedToStage(_arg1:Event):void{
super.addedToStage(_arg1);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_OBJECT));
}
override public function hitCheck(_arg1:HitArea):Boolean{
var _local2:Point;
var _local3:Number;
if (disabled){
return (false);
};
_local2 = localToGlobal(new Point(hitTarget.x, hitTarget.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((hitTarget.d + _arg1.d) / 2)){
objectHit(_arg1.strength);
return (true);
};
return (false);
}
protected function initHit():void{
disabled = true;
if (!pickupNum){
hasPickup = false;
(anim.pickup as MovieClip).gotoAndStop("off");
} else {
(anim.pickup as MovieClip).gotoAndStop(pickupNum);
hasPickup = true;
};
}
protected function addObject(_arg1:Event):void{
}
public function checkPickup(_arg1:Point):Boolean{
var _local2:Point;
var _local3:Number;
var _local4:MovieClip;
if (!hasPickup){
return (false);
};
_local2 = localToGlobal(new Point(pickupArea.x, pickupArea.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < (pickupArea.d / 2)){
_local4 = (anim.pickup as MovieClip);
if (_local4.animatedPickup){
(_local4.animatedPickup as MovieClip).gotoAndStop("pickup");
} else {
_local4.visible = false;
};
hasPickup = false;
return (true);
};
return (false);
}
protected function objectHit(_arg1:int=0):void{
if (hit){
return;
};
hit = true;
FrameUtils.addFrameLabelScript(this, "hit", initHit);
gotoAndStop("hit");
}
}
}//package adultswim.polarbearpayback.game
Section 24
//CutScene (adultswim.polarbearpayback.game.CutScene)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
import smashing.ui.buttons.*;
public class CutScene extends MovieClip {
public var skipBtn:StandardButton;
protected var _skip:Boolean;
public var level:int;
public var playBtn:StandardButton;
public function CutScene(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function outro():void{
this.stage.removeEventListener(KeyboardEvent.KEY_UP, keyReleased);
removeEventListener(MouseEvent.CLICK, clickHandler);
gotoAndPlay("outro");
SoundInterface.instance.setGroupTargetFade("cutscene", 0);
}
protected function addedToStage(_arg1:Event):void{
FrameUtils.addFrameLabelScript(this, "intro", initIntro);
FrameUtils.addFrameLabelScript(this, "titlescreen", initTitleScreen);
FrameUtils.addFrameLabelScript(this, "titlescreen", animationComplete, true);
FrameUtils.addFrameLabelScript(this, "outro", outroComplete, true);
}
protected function initIntro():void{
SoundInterface.instance.stopGroup("cutscene");
SoundInterface.instance.playSound((("PBP_CUT_SCENES_music_" + level) + ".wav"), "cutscene");
this.stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
addEventListener(MouseEvent.CLICK, clickHandler);
}
protected function outroComplete():void{
stop();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CUTSCENE_COMPLETE));
}
protected function skip():void{
_skip = true;
skipBtn.disabled = true;
gotoAndPlay("titlescreen");
SoundInterface.instance.stopGroup("cutscene");
SoundInterface.instance.playSound("cutsceneSkipSting.wav");
}
protected function clickHandler(_arg1:MouseEvent):void{
switch (_arg1.target){
case playBtn:
outro();
break;
case skipBtn:
skip();
break;
};
}
protected function initTitleScreen():void{
}
protected function keyReleased(_arg1:Event):void{
if (this.currentLabel == "titlescreen"){
outro();
} else {
skip();
};
}
protected function animationComplete():void{
stop();
}
}
}//package adultswim.polarbearpayback.game
Section 25
//DeadSeal (adultswim.polarbearpayback.game.DeadSeal)
package adultswim.polarbearpayback.game {
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
public class DeadSeal extends GenericObject {
protected var _triggered:Boolean;
protected var _result:Boolean;
protected var _started:Boolean;
protected var _pt:Point;
protected var _x:Number;
public function DeadSeal(){
stop();
_pt = new Point(this.x, this.y);
hitTarget = new HitArea(23, -70, 90);
addEventListener(Event.ENTER_FRAME, update);
addEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
}
protected function removedFromStage(_arg1:Event):void{
removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
removeEventListener(Event.ENTER_FRAME, update);
}
override public function hitCheck(_arg1:HitArea):Boolean{
var _local2:Point;
var _local3:Number;
if (disabled){
return (false);
};
_local2 = localToGlobal(new Point(hitTarget.x, hitTarget.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((hitTarget.d + _arg1.d) / 2)){
objectHit(_arg1.strength);
disabled = true;
return (true);
};
return (false);
}
protected function update(_arg1:Event):void{
_x = parent.localToGlobal(_pt).x;
if (_x < 800){
if (_x < -50){
if (!_triggered){
objectHit();
};
return;
};
if (!_started){
_started = true;
gotoAndStop("hit");
this.disabled = false;
};
};
}
protected function objectHit(_arg1:int=0):void{
_triggered = true;
gotoAndStop("idle");
removeEventListener(Event.ENTER_FRAME, update);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_BULLY));
}
}
}//package adultswim.polarbearpayback.game
Section 26
//Eat (adultswim.polarbearpayback.game.Eat)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Eat extends MovieClip {
public function Eat(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function spitSkull():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPIT_SKULL));
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
FrameUtils.addFrameLabelScript(this, "eat1", smallHealth);
FrameUtils.addFrameLabelScript(this, "eat2", smallHealth);
FrameUtils.addFrameLabelScript(this, "eat3", smallHealth);
FrameUtils.addFrameLabelScript(this, "eat4", smallHealth);
FrameUtils.addFrameLabelScript(this, "eat5", bigHealth);
FrameUtils.addFrameLabelScript(this, "spit", spitSkull);
}
protected function smallHealth():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_HEALTH_SMALL));
}
protected function bigHealth():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_HEALTH_BIG));
}
}
}//package adultswim.polarbearpayback.game
Section 27
//Elevator (adultswim.polarbearpayback.game.Elevator)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
public class Elevator extends GenericObject {
public const TOP:Number = -1078.9;
protected const _speed:Number = 120;
public var walkway:MovieClip;
override protected function addedToStage(_arg1:Event):void{
super.addedToStage(_arg1);
walkway.visible = false;
}
public function bearCheck(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{
var _local4:Number;
var _local5:Number;
var _local6:Number;
_local4 = ((this.x - 194) - _arg1);
_local5 = ((this.y + 457) - _arg2);
_local6 = Math.sqrt(((_local4 * _local4) + (_local5 * _local5)));
if (_local6 < 36){
return (true);
};
return (false);
}
public function ascend(_arg1:Number):void{
this.y = (this.y - (_speed * _arg1));
if (this.y <= TOP){
this.y = TOP;
walkway.visible = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ELEVATOR_UPDATED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ELEVATOR_COMPLETE));
return;
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ELEVATOR_UPDATED));
}
}
}//package adultswim.polarbearpayback.game
Section 28
//ElevatorPost (adultswim.polarbearpayback.game.ElevatorPost)
package adultswim.polarbearpayback.game {
import flash.display.*;
public class ElevatorPost extends GenericObject {
public const OFFSET:Number = -446.6;
public var post:MovieClip;
public function elevatorUpdate(_arg1:Number):void{
post.y = (_arg1 + OFFSET);
}
}
}//package adultswim.polarbearpayback.game
Section 29
//Enemy (adultswim.polarbearpayback.game.Enemy)
package adultswim.polarbearpayback.game {
public class Enemy {
public var delay:Number;
public var dropWeapon:Boolean;
public var onscreen:Boolean;// = true
public var x:Number;
public var y:Number;
public var type:String;
public static const CITY_SUIT_2:String = "pbp_enemy_city_suit_alt";
public static const WHALER_BOSS:String = "pbp_whaler_boss";
public static const CITY_SUV_LEFT:String = "pbp_suv_left";
public static const WHALER_BULLY:String = "pbp_enemy_whale_bully";
public static const CITY_SUIT_1:String = "pbp_enemy_city_suit";
public static const WHALER_SHOOTER:String = "pbp_enemy_whale_shooter";
public static const CITY_SHOOTER:String = "pbp_enemy_city_shooter";
public static const CITY_BULLY:String = "pbp_enemy_city_bully";
public static const WHALER_1:String = "pbp_enemy_whaler";
public static const WHALER_2:String = "pbp_enemy_whaler_alt";
public static const CITY_SUV_RIGHT:String = "pbp_suv_right";
public static const CITY_MINI_SUIT:String = "pbp_enemy_city_suit_mini";
public static const SEAL_SHOOTER_1:String = "pbp_enemy_seal_shooter";
public static const SEAL_BULLY:String = "pbp_enemy_seal_bully";
public static const WHALER_BOSS_PROJECTILE:String = "pbp_whale_boss_projectile";
public static const CITY_BOSS_PROJECTILE:String = "pbp_city_boss_fireball";
public static const SEAL_CLUBBER_1:String = "pbp_enemy_clubber";
public static const SEAL_CLUBBER_2:String = "pbp_enemy_clubber_alt";
public static const CITY_BOSS:String = "pbp_enemy_city_boss";
public static const SEAL_BOSS:String = "pbp_enemy_seal_boss";
public static const CITY_CEO:String = "pbp_enemy_city_ceo";
public static const SEAL_BOSS_PROJECTILE:String = "pbp_cleaver";
public function Enemy(_arg1:String, _arg2:Number=900, _arg3:Number=300, _arg4:Number=0, _arg5:Boolean=false){
onscreen = true;
super();
type = _arg1;
x = _arg2;
y = _arg3;
delay = _arg4;
dropWeapon = _arg5;
}
}
}//package adultswim.polarbearpayback.game
Section 30
//Finale (adultswim.polarbearpayback.game.Finale)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import smashing.utils.*;
import smashing.ui.buttons.*;
public class Finale extends MovieClip {
public var skipBtn:StandardButton;
protected var _skip:Boolean;
public var level:int;
public function Finale(){
stop();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
FrameUtils.addFrameLabelScript(this, "intro", initIntro);
}
protected function initIntro():void{
SoundInterface.instance.stopGroup("cutscene");
SoundInterface.instance.playSound("PBP_CUT_SCENES_music_4.wav", "cutscene");
this.stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
addEventListener(MouseEvent.CLICK, clickHandler);
}
public function start():void{
gotoAndPlay("intro");
}
protected function skip():void{
_skip = true;
clearListeners();
gotoAndPlay("outro");
SoundInterface.instance.stopGroup("cutscene");
SoundInterface.instance.playSound("cutsceneSkipSting.wav");
}
public function clearListeners():void{
skipBtn.disabled = true;
this.stage.removeEventListener(KeyboardEvent.KEY_UP, keyReleased);
removeEventListener(MouseEvent.CLICK, clickHandler);
}
protected function clickHandler(_arg1:MouseEvent):void{
switch (_arg1.target){
case skipBtn:
skip();
break;
};
}
protected function keyReleased(_arg1:Event):void{
skip();
}
}
}//package adultswim.polarbearpayback.game
Section 31
//FireballProjectile (adultswim.polarbearpayback.game.FireballProjectile)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
public class FireballProjectile extends Character {
protected var attack1:HitArea;
public function FireballProjectile(){
attack1 = new HitArea(11, -145, 35, 7);
super();
health = 1000;
_speed = 800;
attack = attack1;
}
override protected function initHit():void{
}
override public function attackSuccess():void{
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
}
override public function update(_arg1:Number):void{
_xPos = (_xPos + ((projectileDirection * _speed) * _arg1));
this.x = _xPos;
if (_xPos < (_minX - 200)){
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
return;
};
if (_xPos > (_maxX + 200)){
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
return;
};
attackCheck();
}
override public function collisionCheck(_arg1:Array):Boolean{
return (false);
}
override protected function init():void{
_speed = 700;
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
}
override protected function initAttack():void{
}
override protected function attackComplete():void{
attacking = false;
anim.stop();
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 32
//Flamingo (adultswim.polarbearpayback.game.Flamingo)
package adultswim.polarbearpayback.game {
public class Flamingo extends Barrel {
public function Flamingo(){
_health = 7;
hitTarget = new HitArea(21, -60, 50);
attack = new HitArea(7, -50, 120, 20);
}
}
}//package adultswim.polarbearpayback.game
Section 33
//Game (adultswim.polarbearpayback.game.Game)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Game extends Wave {
private const HARPOON:int = 16;
private const DEATH_DECREMENT:int = 30000;
private const FISH:int = 21;
private const BRIEF:int = 7;
private const GOLF:int = 9;
private const NINJA:int = 13;
private const BOOZE:int = 20;
private const MOLOTOV:int = 17;
private const PICKUP_BONUS:int = 10000;
protected const health_big:int = 16;
private const SHOVEL:int = 1;
private const CLEAVER:int = 11;
private const HIT_DECREMENT:int = 300;
private const RIFLE:int = 3;
private const CLUB:int = 2;
private const BONUS_START_VALUE:int = 75000;
private const HATCHET:int = 5;
private const ROCKET:int = 10;
private const SPREADSHOT:int = 15;
private const AID:int = 19;
private const GRENADE:int = 14;
private const BRIEF2:int = 8;
private const THROWING:int = 12;
protected const health_small:int = 1;
private const PICKUP_HEALTH:int = 15;
protected const Y_RANGE:int = 80;
private const COFFEE:int = 18;
private const POKER:int = 4;
private const SHOTGUN:int = 6;
private const POINT_MULTIPLIER:int = 20;
protected var _timeOut:Number;// = 0
protected var _screenNum:int;// = 0
private var _currentBonus:int;// = 0
protected var _cratePickups:Array;
protected var _enemiesKilled:int;// = 0
public var bg:MovieClip;
protected var _screenLengths:Array;
protected var _boss:Character;
protected var _oneLeft:Boolean;
public var firstAidValue:Number;
protected var _spawnPoints:Array;
protected var _sortCount:int;
protected var _clubber2:String;
protected var _clubber1:String;
protected var _bully:String;
protected var _levelComplete:Boolean;
protected var _killsNeeded:int;
public var camera:Camera;
protected var _currentScreen:int;// = 0
protected var _numEnemies:Array;
public var level:int;// = 1
protected var NUM_SCREENS:int;// = 8
protected var _skullAnim:MovieClip;
public var musicVolume:Number;// = 1
public var bear:Bear;
protected var _shooter:String;
public var seal2:Seal;
public var seal3:Seal;
protected var _objects:Array;
public var seal:Seal;
public static var weapon:int;
public function Game(){
level = 1;
musicVolume = 1;
NUM_SCREENS = 8;
_timeOut = 0;
_screenNum = 0;
_enemiesKilled = 0;
_currentScreen = 0;
_cratePickups = [[CLUB, SHOVEL, COFFEE, CLEAVER, SHOVEL, BOOZE, RIFLE, CLUB, FISH, CLEAVER, AID], [POKER, SHOTGUN, FISH, MOLOTOV, COFFEE, HATCHET, HARPOON, FISH, AID, HARPOON], [BRIEF, GOLF, FISH, BRIEF2, NINJA, GOLF, COFFEE, FISH, AID, THROWING, BOOZE, GRENADE, GOLF, AID]];
_currentBonus = 0;
super();
stop();
_enemies = [];
_sortCount = 0;
initListeners();
_currentBonus = BONUS_START_VALUE;
Game.weapon = undefined;
}
protected function destroy(_arg1:Event):void{
removeEventListener(Event.REMOVED_FROM_STAGE, destroy);
removeEventListener(PolarBearGameEvent.ADD_SPAWN_POINT, addSpawnPoint);
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
removeEventListener(PolarBearGameEvent.ADD_OBJECT, addObject);
removeEventListener(PolarBearGameEvent.GATE_OPENED, gateOpened);
removeEventListener(PolarBearGameEvent.SPAWN_ENEMY, spawnNewEnemy);
removeEventListener(PolarBearGameEvent.BEAR_ATTACK, bearAttack);
removeEventListener(PolarBearGameEvent.BEAR_THROW, bearThrow);
removeEventListener(PolarBearGameEvent.BEAR_PROJECTILE_ATTACK, bearProjectileAttack);
removeEventListener(PolarBearGameEvent.EXPLOSION, explosion);
removeEventListener(PolarBearGameEvent.GRENADE, grenadeExplosion);
removeEventListener(PolarBearGameEvent.ADD_BULLY, addBully);
removeEventListener(PolarBearGameEvent.CHAR_ATTACK, charAttack);
removeEventListener(PolarBearGameEvent.CHAR_DIED, charDied);
removeEventListener(PolarBearGameEvent.ADD_HEALTH_SMALL, addHealth);
removeEventListener(PolarBearGameEvent.ADD_HEALTH_BIG, addHealth);
removeEventListener(PolarBearGameEvent.SPIT_SKULL, spitSkull);
removeEventListener(PolarBearGameEvent.WAVE_COMPLETE, waveCompleted);
removeEventListener(PolarBearGameEvent.BOSS_THROW, bossThrow);
removeEventListener(PolarBearGameEvent.WHALE_BOSS_THROW, whaleBossThrow);
removeEventListener(PolarBearGameEvent.REMOVE_PROJECTILE, removeProjectile);
removeEventListener(PolarBearGameEvent.REMOVE_OBJECT, removeObject);
removeEventListener(PolarBearGameEvent.PICKUP_OBJECT, pickupObject);
removeEventListener(PolarBearGameEvent.REMOVE_SPAWN_POINT, removeSpawnPoint);
}
private function updateTimer(_arg1:Number):void{
if (_timeOut == 0){
return;
};
_timeOut = (_timeOut - _arg1);
if (_timeOut <= 0){
_timeOut = 0;
bearDied();
};
}
protected function spitSkull(_arg1:Event):void{
if (_skullAnim){
return;
};
_skullAnim = (ClassUtils.create("skullspit_anim") as MovieClip);
_skullAnim.addFrameScript((_skullAnim.totalFrames - 1), skullAnimComplete);
_skullAnim.x = bear.x;
_skullAnim.y = bear.y;
_skullAnim.scaleX = bear.scaleX;
addChildAt(_skullAnim, getChildIndex(bear));
seal.skullPlay(_skullAnim);
_skullAnim.play();
}
public function pause():void{
var _local1:int;
var _local2:int;
var _local3:CollisionObject;
var _local4:Barrel;
_bear.pause();
seal.pause();
seal2.pause();
seal3.pause();
_local2 = _enemies.length;
_local1 = 0;
while (_local1 < _local2) {
(_enemies[_local1] as Character).pause();
_local1++;
};
if (_skullAnim){
_skullAnim.stop();
};
_local2 = _objects.length;
_local1 = 0;
while (_local1 < _local2) {
_local3 = _objects[_local1];
if ((_local3 is Barrel)){
(_local3 as Barrel).pause();
};
if ((_local3 is RopeSpawn)){
(_local3 as RopeSpawn).pause();
};
if ((_local3 is WhalerLift)){
(_local3 as WhalerLift).pause();
};
if ((_local3 is Grenade)){
(_local3 as Grenade).pause();
};
_local1++;
};
}
protected function generateWave():void{
clearWave();
getWave(_screenNum);
_screenNum++;
}
protected function addedToStage(_arg1:Event):void{
_arg1.stopPropagation();
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
addEventListener(Event.REMOVED_FROM_STAGE, destroy);
camera.addScreens(_screenLengths[_currentScreen]);
if (_arg1.target != _arg1.currentTarget){
return;
};
_spawnPoints = [];
init();
_bear = bear;
seal.bear = bear;
seal2.bear = bear;
seal3.bear = bear;
seal.speed = 160;
seal2.speed = 190;
seal3.speed = 130;
_objects = new Array();
addEventListener(Event.ENTER_FRAME, initObjects);
}
protected function showBoss(_arg1:Event):void{
var _local2:int;
var _local3:int;
var _local4:Character;
playBossLoop();
bear.enableControls();
bear.disabled = false;
_local2 = _enemies.length;
_local3 = 0;
while (_local3 < _local2) {
_local4 = (_enemies[_local3] as Character);
_local4.unpause();
_local3++;
};
}
protected function openGate():void{
}
public function get bonus():int{
return (_currentBonus);
}
protected function whaleBossThrow(_arg1:PolarBearGameEvent):void{
var _local2:Character;
var _local3:Number;
var _local4:Enemy;
var _local5:WhaleBossProjectile;
_local2 = (_arg1.target as Character);
_local3 = (_local2.x - (23.8 * _local2.scaleX));
_local4 = new Enemy(Enemy.WHALER_BOSS_PROJECTILE, _local3, _local2.y);
_local5 = (spawnEnemy(_local4) as WhaleBossProjectile);
_local5.scaleX = _local2.scaleX;
_local5.targetX = bear.x;
}
protected function skullAnimComplete():void{
seal.startPlaying();
_skullAnim.stop();
removeChild(_skullAnim);
_skullAnim = null;
}
protected function addStars(_arg1:BearProjectile, _arg2:int):void{
var _local3:BearProjectile;
var _local4:BearProjectile;
_local3 = ClassUtils.create("pbp_bear_projectiles");
_local4 = ClassUtils.create("pbp_bear_projectiles");
_local3.x = (_arg1.x - (_arg2 * 40));
_local4.x = (_arg1.x - (_arg2 * 80));
_local3.y = (_local4.y = _arg1.y);
_local3.gameX = (_local4.gameX = -(this.x));
_local3.projectileDirection = (_local4.projectileDirection = _arg2);
_local3.gotoAndStop("stars");
_local4.gotoAndStop("stars");
_local3.attack.strength = (_local3.attack.strength = _arg1.attack.strength);
addChild(_local3);
addChild(_local4);
_enemies.push(_local3);
_enemies.push(_local4);
}
protected function addHealth(_arg1:PolarBearGameEvent):void{
if (_arg1.type == PolarBearGameEvent.ADD_HEALTH_BIG){
bear.addHealth(health_big);
bear.message.showMessage("bonus!");
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SKULL_SUCKED));
} else {
bear.addHealth(health_small);
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.UPDATE_HEALTH));
}
protected function spawnNewEnemy(_arg1:Event):void{
var _local2:ISpawn;
var _local3:String;
var _local4:int;
_local2 = (_arg1.target as ISpawn);
switch (_local2.type){
case "BULLY":
_local3 = _bully;
break;
case "CLUBBER":
if (Math.floor((Math.random() * 2)) == 1){
_local3 = _clubber1;
} else {
_local3 = _clubber2;
};
break;
case "CLUBBER1":
_local3 = _clubber1;
break;
case "CLUBBER2":
_local3 = _clubber2;
break;
case "SHOOTER":
_local3 = _shooter;
break;
case "BOSS":
showBossIntro();
break;
case "SUV":
(this as GameLevel3).releaseSUV();
return;
default:
_local3 = _clubber1;
break;
};
if (_local3){
spawnEnemy(new Enemy(_local3, _local2.spawnX, _local2.spawnY));
};
_local4 = _spawnPoints.indexOf(_local2);
if (_local4 != -1){
_spawnPoints.splice(_local4, 1);
};
}
protected function removeSpawnPoint(_arg1:Event):void{
var _local2:Spawn;
var _local3:int;
_local2 = (_arg1.target as Spawn);
_local3 = _spawnPoints.indexOf(_local2);
if (_local3 != -1){
_spawnPoints.splice(_local3, 1);
};
checkSectionComplete();
}
protected function addSpawnPoint(_arg1:Event):void{
var _local2:Spawn;
_local2 = (_arg1.target as Spawn);
_spawnPoints.push(_local2);
_spawnPoints.sortOn("spawnPoint", Array.NUMERIC);
}
protected function charDied(_arg1:PolarBearGameEvent):void{
var _local2:int;
_arg1.stopPropagation();
if (_arg1.target == bear){
timeOut();
} else {
if (_arg1.target == _boss){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.PAYBACK));
killRemainingEnemies();
levelComplete();
} else {
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.PAYBACK));
_local2 = _enemies.indexOf(_arg1.target);
if (_local2 == -1){
trace(((this + "unable to remove enemy: ") + _arg1.target));
} else {
checkSectionComplete();
};
};
};
}
protected function showBossIntro():void{
var _local1:int;
var _local2:int;
var _local3:Character;
camera.minX = (camera.maxX - (0.5 * camera.WIDTH));
bear.endCharge();
bear.disableControls();
_local1 = _enemies.length;
_local2 = 0;
while (_local2 < _local1) {
_local3 = (_enemies[_local2] as Character);
_local3.pause();
_local2++;
};
SoundInterface.instance.playSound("oneHit_1.mp3", "sfx");
}
protected function updateChars(_arg1:Number):void{
var _local2:Array;
var _local3:int;
var _local4:int;
var _local5:Character;
var _local6:Boolean;
var _local7:Array;
_local2 = _enemies.slice();
_local2.push(bear);
_local3 = _local2.length;
_local4 = 0;
while (_local4 < _local3) {
_local5 = (_local2.splice(_local4, 1)[0] as Character);
_local5.update(_arg1);
_local7 = _local2.slice();
_local7 = _local2.concat(_objects);
_local6 = _local5.collisionCheck(_local7);
if (_local6){
_local5.lastPosition();
};
_local2.splice(_local4, 0, _local5);
_local4++;
};
seal.update(_arg1);
seal2.update(_arg1);
seal3.update(_arg1);
}
protected function addSpreadShot(_arg1:BearProjectile, _arg2:int):void{
var _local3:BearProjectile;
var _local4:BearProjectile;
_local3 = ClassUtils.create("pbp_bear_projectiles");
_local4 = ClassUtils.create("pbp_bear_projectiles");
_local3.x = (_local4.x = (_arg1.x = (_arg1.x - 20)));
_local3.y = (_local4.y = _arg1.y);
_local3.gameX = (_local4.gameX = -(this.x));
_local3.projectileDirection = (_local4.projectileDirection = _arg2);
_local3.ySpeed = -400;
_local3.rotation = -20;
_local4.ySpeed = 400;
_local4.rotation = 20;
_local3.gotoAndStop("spreadshot");
_local4.gotoAndStop("spreadshot");
if (_arg2 == -1){
_local3.rotation = 200;
_local4.rotation = 160;
};
_local3.attack.strength = (_local3.attack.strength = _arg1.attack.strength);
addChild(_local3);
addChild(_local4);
_enemies.push(_local3);
_enemies.push(_local4);
}
public function nextWave():void{
reload();
}
public function update(_arg1:Number):void{
updateChars(_arg1);
updateSpawnPoints(_arg1);
_sortCount++;
if (_sortCount == 3){
_sortCount = 0;
zsort();
};
updateTimer(_arg1);
}
protected function killRemainingEnemies():void{
var _local1:int;
var _local2:int;
_local2 = _enemies.length;
_local1 = 0;
while (_local1 < _local2) {
if (!(_enemies[_local1] as Character).dead){
(_enemies[_local1] as Character).die();
};
_local1++;
};
}
protected function levelComplete():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.LEVEL_COMPLETE));
bear.disableControls();
bear.endCharge();
bear.disabled = true;
}
protected function removeObject(_arg1:Event):void{
var _local2:*;
var _local3:int;
_local2 = (_arg1.target as CollisionObject);
_local3 = _objects.indexOf(_local2);
_objects.splice(_local3, 1);
}
public function unpause():void{
var _local1:int;
var _local2:int;
var _local3:CollisionObject;
var _local4:Barrel;
_bear.unpause();
seal.unpause();
seal2.unpause();
seal3.unpause();
_local2 = _enemies.length;
_local1 = 0;
while (_local1 < _local2) {
(_enemies[_local1] as Character).unpause();
_local1++;
};
if (_skullAnim){
_skullAnim.play();
};
_local2 = _objects.length;
_local1 = 0;
while (_local1 < _local2) {
_local3 = _objects[_local1];
if ((_local3 is Barrel)){
(_local3 as Barrel).unpause();
};
if ((_local3 is RopeSpawn)){
(_local3 as RopeSpawn).unpause();
};
if ((_local3 is WhalerLift)){
(_local3 as WhalerLift).unpause();
};
if ((_local3 is Grenade)){
(_local3 as Grenade).unpause();
};
_local1++;
};
}
protected function init():void{
}
public function updatePosition(_arg1:Number):void{
this.x = -(_arg1);
bear.gameX = _arg1;
seal.gameX = _arg1;
seal2.gameX = _arg1;
seal3.gameX = _arg1;
}
protected function gateOpened(_arg1:Event=null):void{
_enemiesKilled = 0;
_currentScreen++;
if (_currentScreen == _screenLengths.length){
levelComplete();
} else {
camera.addScreens(_screenLengths[_currentScreen]);
dispatchEvent(new UIEvent(UIEvent.SHOW_HAND));
};
}
protected function explosion(_arg1:Event):void{
var barrel:Barrel;
var isHit:Boolean;
var attack:HitArea;
var pt:Point;
var items:Array;
var otherObjects:Array;
var index:int;
var c:*;
var i:int;
var points:Number;
var sucess:Boolean;
var pEvent = _arg1;
barrel = (pEvent.target as Barrel);
attack = barrel.attack;
pt = barrel.localToGlobal(new Point(attack.x, attack.y));
attack = new HitArea(pt.x, pt.y, attack.d, attack.strength);
isHit = bear.hitCheck(attack);
if (isHit){
bearHit();
};
try {
items = _enemies.slice();
otherObjects = _objects.slice();
index = otherObjects.indexOf(barrel);
otherObjects.splice(index, 1);
items = items.concat(otherObjects);
c = items.length;
points = 0;
i = 0;
while (i < c) {
sucess = (items[i] as CollisionObject).hitCheck(attack);
if (sucess){
points = (points + (attack.strength * POINT_MULTIPLIER));
};
i = (i + 1);
};
dispatchEvent(new UIEvent(UIEvent.UPDATE_POINTS, true, false, points));
} catch(e:Error) {
trace(((this + "explosion.error: ") + e));
};
}
protected function pickupObject(_arg1:Event):void{
var _local2:int;
var _local3:int;
var _local4:MovieClip;
var _local5:Array;
var _local6:Boolean;
_local2 = _objects.length;
_local5 = _objects.slice();
_local3 = 0;
while (_local3 < _local2) {
_local4 = _local5[_local3];
if ((_local4 is Crate)){
if (_local4.hasPickup){
_local6 = _local4.checkPickup(localToGlobal(new Point(bear.x, bear.y)));
if (_local6){
switch (_local4.pickupNum){
case 18:
bear.speedBoost();
SoundInterface.instance.playSound("thwap_a.wav", "sfx");
break;
case 19:
bear.addHealth(firstAidValue);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.UPDATE_HEALTH));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.HEALTH_PICKUP));
SoundInterface.instance.playSound("thwap_a.wav", "sfx");
break;
case 20:
bear.booze();
SoundInterface.instance.playSound("thwap_a.wav", "sfx");
break;
case 21:
dispatchEvent(new UIEvent(UIEvent.UPDATE_POINTS, true, false, PICKUP_BONUS));
SoundInterface.instance.playSound("thwap_a.wav", "sfx");
break;
default:
bear.pickupItem((_local4.pickupNum + 1));
SoundInterface.instance.playSound("pbp_weapon_pickup", "sfx");
break;
};
};
};
};
_local3++;
};
}
protected function initListeners():void{
addEventListener(PolarBearGameEvent.ADD_SPAWN_POINT, addSpawnPoint);
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
addEventListener(PolarBearGameEvent.ADD_OBJECT, addObject);
addEventListener(PolarBearGameEvent.GATE_OPENED, gateOpened);
addEventListener(PolarBearGameEvent.SPAWN_ENEMY, spawnNewEnemy);
addEventListener(PolarBearGameEvent.BEAR_ATTACK, bearAttack);
addEventListener(PolarBearGameEvent.BEAR_THROW, bearThrow);
addEventListener(PolarBearGameEvent.BEAR_PROJECTILE_ATTACK, bearProjectileAttack);
addEventListener(PolarBearGameEvent.EXPLOSION, explosion);
addEventListener(PolarBearGameEvent.GRENADE, grenadeExplosion);
addEventListener(PolarBearGameEvent.ADD_BULLY, addBully);
addEventListener(PolarBearGameEvent.CHAR_ATTACK, charAttack);
addEventListener(PolarBearGameEvent.CHAR_DIED, charDied);
addEventListener(PolarBearGameEvent.ADD_HEALTH_SMALL, addHealth);
addEventListener(PolarBearGameEvent.ADD_HEALTH_BIG, addHealth);
addEventListener(PolarBearGameEvent.SPIT_SKULL, spitSkull);
addEventListener(PolarBearGameEvent.WAVE_COMPLETE, waveCompleted);
addEventListener(PolarBearGameEvent.BOSS_THROW, bossThrow);
addEventListener(PolarBearGameEvent.WHALE_BOSS_THROW, whaleBossThrow);
addEventListener(PolarBearGameEvent.REMOVE_PROJECTILE, removeProjectile);
addEventListener(PolarBearGameEvent.REMOVE_OBJECT, removeObject);
addEventListener(PolarBearGameEvent.PICKUP_OBJECT, pickupObject);
addEventListener(PolarBearGameEvent.REMOVE_SPAWN_POINT, removeSpawnPoint);
}
protected function playBossLoop():void{
SoundInterface.instance.stopGroup("music");
SoundInterface.instance.playSound("Close_Encounter_Loop_A.wav", "music", 0, int.MAX_VALUE);
musicVolume = 1;
SoundInterface.instance.setGroupTargetFade("music", musicVolume, 250);
}
protected function checkSectionComplete():void{
var _local1:int;
var _local2:int;
var _local3:Spawn;
_local2 = _enemies.length;
_local1 = 0;
while (_local1 < _local2) {
if (!(_enemies[_local1] as Character).dead){
return;
};
_local1++;
};
_local2 = _spawnPoints.length;
if (_spawnPoints.length > 0){
_local1 = 0;
while (_local1 < _local2) {
_local3 = (_spawnPoints[_local1] as Spawn);
if ((((_local3.spawnPoint < camera.maxX)) && (!(_local3.triggered)))){
return;
};
_local1++;
};
};
seal2.clap();
if (Math.floor((Math.random() * 2)) == 0){
seal3.clap();
};
openGate();
}
protected function charAttack(_arg1:PolarBearGameEvent):void{
var _local2:Character;
var _local3:Boolean;
var _local4:HitArea;
var _local5:Point;
var _local6:Array;
var _local7:Boolean;
_arg1.stopPropagation();
_local2 = (_arg1.target as Character);
_local4 = _local2.attack;
_local5 = _local2.localToGlobal(new Point(_local4.x, _local4.y));
if (_local4.d == 0){
if (_local2.scaleX == 1){
if (bear.x > _local2.x){
return;
};
} else {
if (bear.x < _local2.x){
return;
};
};
_local3 = bear.shotCheck(_local5, _local4.strength);
if (_local3){
if ((_local2 is WhaleBoss)){
if (!bear.dead){
if (bear.x < _local2.x){
bear.xPos = (bear.xPos - 100);
} else {
bear.xPos = (bear.xPos + 100);
};
_local6 = _enemies.slice();
_local6 = _local6.concat(_objects);
_local7 = bear.collisionCheck(_local6);
if (_local7){
bear.lastPosition();
};
};
};
};
} else {
_local4 = new HitArea(_local5.x, _local5.y, _local4.d, _local4.strength);
_local3 = bear.hitCheck(_local4);
};
if (_local3){
bearHit();
_local2.attackSuccess();
};
}
protected function addObject(_arg1:Event):void{
_objects.push(_arg1.target);
}
private function timeOut():void{
_timeOut = 5;
}
protected function bearAttack(_arg1:PolarBearGameEvent):void{
var items:Array;
var c:*;
var i:int;
var attack:HitArea;
var item:CollisionObject;
var pt:Point;
var points:Number;
var success:Boolean;
var gotAHit:Boolean;
var endCombo:Boolean;
var pEvent = _arg1;
try {
items = _enemies.slice();
items = items.concat(_objects);
c = items.length;
attack = (pEvent.target as Bear).attack;
pt = bear.localToGlobal(new Point(attack.x, attack.y));
attack = new HitArea(pt.x, pt.y, attack.d, attack.strength);
points = 0;
endCombo = true;
i = 0;
while (i < c) {
item = (items[i] as CollisionObject);
if (Math.abs((bear.y - item.y)) < Y_RANGE){
success = item.hitCheck(attack);
if (success){
gotAHit = true;
bear.updateBonus();
points = (points + ((attack.strength * POINT_MULTIPLIER) * (bear.comboBonus + 1)));
dispatchEvent(new UIEvent(UIEvent.UPDATE_POINTS, true, false, points));
endCombo = false;
};
};
i = (i + 1);
};
if (gotAHit){
if (bear.isBite){
SoundInterface.instance.playSound("pbp_head_eat", "sfx");
};
};
if (endCombo){
bear.resetCombo();
};
} catch(e:Error) {
trace(((this + "bearAttack.error: ") + e));
};
}
protected function waveCompleted(_arg1:Event):void{
if (_screenNum < NUM_SCREENS){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.NEXT_SCREEN));
} else {
levelComplete();
};
}
protected function bearHit():void{
if (bear.invuln){
return;
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.UPDATE_HEALTH));
_currentBonus = (_currentBonus - HIT_DECREMENT);
}
protected function bearProjectileAttack(_arg1:PolarBearGameEvent):void{
var items:Array;
var c:*;
var i:int;
var char:Character;
var isHit:Boolean;
var attack:HitArea;
var pt:Point;
var points:Number;
var pEvent = _arg1;
try {
items = _enemies.slice();
items = items.concat(_objects);
c = items.length;
char = (pEvent.target as Character);
attack = char.attack;
pt = char.localToGlobal(new Point(attack.x, attack.y));
attack = new HitArea(pt.x, pt.y, attack.d, attack.strength);
points = 0;
i = 0;
while (i < c) {
isHit = (items[i] as CollisionObject).hitCheck(attack);
if (isHit){
char.attackSuccess();
points = (points + (attack.strength * POINT_MULTIPLIER));
dispatchEvent(new UIEvent(UIEvent.UPDATE_POINTS, true, false, points));
return;
};
i = (i + 1);
};
} catch(e:Error) {
trace(((this + "bearProjectileAttack.error: ") + e));
};
}
protected function grenadeExplosion(_arg1:Event):void{
var grenade:Grenade;
var isHit:Boolean;
var attack:HitArea;
var pt:Point;
var items:Array;
var otherObjects:Array;
var index:int;
var c:*;
var i:int;
var points:Number;
var sucess:Boolean;
var pEvent = _arg1;
grenade = (pEvent.target as Grenade);
attack = grenade.attack;
pt = grenade.localToGlobal(new Point(attack.x, attack.y));
attack = new HitArea(pt.x, pt.y, attack.d, attack.strength);
try {
items = _enemies.slice();
otherObjects = _objects.slice();
index = otherObjects.indexOf(grenade);
otherObjects.splice(index, 1);
items = items.concat(otherObjects);
c = items.length;
points = 0;
i = 0;
while (i < c) {
sucess = (items[i] as CollisionObject).hitCheck(attack);
if (sucess){
points = (points + (attack.strength * POINT_MULTIPLIER));
};
i = (i + 1);
};
dispatchEvent(new UIEvent(UIEvent.UPDATE_POINTS, true, false, points));
} catch(e:Error) {
trace(((this + "grenade.error: ") + e));
};
}
protected function bossThrow(_arg1:PolarBearGameEvent):void{
var _local2:Enemy;
var _local3:Character;
var _local4:int;
_local3 = (_arg1.target as Character);
if ((_arg1.target as MovieClip).scaleX == 1){
_local2 = new Enemy(Enemy.SEAL_BOSS_PROJECTILE, (_local3.x - 146), _local3.y);
_local4 = -1;
} else {
_local2 = new Enemy(Enemy.SEAL_BOSS_PROJECTILE, (_local3.x + 146), _local3.y);
_local4 = 1;
};
addProjectile(_local2, _local4);
}
protected function zsort():void{
var _local1:Array;
var _local2:int;
var _local3:int;
_local1 = _enemies.slice();
_local1.push(bear);
_local1.push(seal);
_local1.push(seal2);
_local1.push(seal3);
if (_skullAnim){
_local1.push(_skullAnim);
};
_local1 = _local1.concat(_objects);
_local3 = _local1.length;
_local1.sortOn("y", Array.NUMERIC);
_local2 = 0;
while (_local2 < _local3) {
if (this.getChildIndex(_local1[_local2]) != _local2){
this.setChildIndex(_local1[_local2], _local2);
};
_local2++;
};
}
protected function bearThrow(_arg1:PolarBearGameEvent):void{
var _local2:BearProjectile;
var _local3:int;
if (bear.projectileNum == 15){
throwGrenade("pbp_grenade");
return;
};
if (bear.projectileNum == 18){
throwGrenade("pbp_moltov");
return;
};
if (bear.scaleX == -1){
_local2 = ClassUtils.create("pbp_bear_projectiles");
_local2.x = (bear.x - 114);
_local2.y = (bear.y - 116);
_local2.rotation = 180;
_local3 = -1;
} else {
_local2 = ClassUtils.create("pbp_bear_projectiles");
_local2.x = (bear.x + 114);
_local2.y = (bear.y - 116);
_local3 = 1;
};
_local2.gameX = -(this.x);
_local2.delay = 0;
_local2.projectileDirection = _local3;
SoundInterface.instance.playSound("pbp_throw_sfx", "sfx");
switch (bear.projectileNum){
case 12:
_local2.gotoAndStop("cleaver");
_local2.attack.strength = 8;
break;
case 13:
_local2.gotoAndStop("knife");
_local2.attack.strength = 10;
break;
case 14:
_local2.gotoAndStop("stars");
_local2.attack.strength = 8;
addStars(_local2, _local3);
break;
case 15:
break;
case 16:
_local2.gotoAndStop("spreadshot");
_local2.attack.strength = 12;
addSpreadShot(_local2, _local3);
break;
case 17:
_local2.gotoAndStop("harpoon");
_local2.attack.strength = 13;
break;
case 18:
break;
default:
trace((this + "invalid projectile"));
return;
};
addChild(_local2);
_enemies.push(_local2);
}
protected function throwGrenade(_arg1:String):void{
var _local2:Grenade;
_local2 = ClassUtils.create(_arg1);
_local2.y = bear.y;
if (bear.scaleX == -1){
_local2.x = (bear.x - 125.8);
_local2.scaleX = -1;
} else {
_local2.x = (bear.x + 125.8);
};
addChild(_local2);
}
public function reload():void{
if (bear.dead){
bear.reset();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.UPDATE_HEALTH));
return;
};
}
protected function removeProjectile(_arg1:Event):void{
var _local2:Character;
_local2 = (_arg1.target as Character);
removeEnemy(_local2);
}
protected function updateSpawnPoints(_arg1:Number):void{
var _local2:int;
var _local3:int;
var _local4:Spawn;
var _local5:Number;
_local3 = _spawnPoints.length;
_local5 = camera.x;
_local2 = 0;
while (_local2 < _local3) {
_local4 = (_spawnPoints[_local2] as Spawn);
if (_local4){
_local4.update(_local5, _arg1);
};
_local2++;
};
}
protected function addBully(_arg1:PolarBearGameEvent):void{
var _local2:DeadSeal;
var _local3:Enemy;
var _local4:Character;
_local2 = (_arg1.target as DeadSeal);
_local3 = new Enemy(Enemy.SEAL_BULLY, (_local2.x + 23.2), (_local2.y - 10.3));
_local4 = spawnEnemy(_local3);
trace(((this + "addBully: ") + _local4));
_local4.hitCheck(new HitArea(0, 0, 100000, 3));
}
private function bearDied():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.PLAYER_DIED));
_currentBonus = (_currentBonus - DEATH_DECREMENT);
}
protected function initObjects(_arg1:Event=null):void{
var l:int;
var i:int;
var numCrates:int;
var pEvent = _arg1;
removeEventListener(Event.ENTER_FRAME, initObjects);
_objects.sortOn("x", Array.NUMERIC);
l = _objects.length;
numCrates = 0;
i = 0;
while (i < l) {
if ((_objects[i] is Crate)){
try {
(_objects[i] as Crate).pickupNum = _cratePickups[(level - 1)][numCrates];
} catch(e:Error) {
trace(((((this + "initObjects::unable to set crate num: ") + numCrates) + " :") + e.message));
};
numCrates = (numCrates + 1);
};
i = (i + 1);
};
}
}
}//package adultswim.polarbearpayback.game
Section 34
//GameEngine (adultswim.polarbearpayback.game.GameEngine)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.interval.*;
import smashing.utils.*;
import adultswim.polarbearpayback.*;
import adultswim.polarbearpayback.ui.*;
import smashing.ui.buttons.*;
public class GameEngine extends MovieClip {
protected var _timeOut:Number;
protected var _interval:IntervalEngine;
protected var _camera:Camera;
public var weaponCounter:WeaponCount;
protected var _config:XML;
public var hand:Hand;
public var menuBtn:StandardButton;
protected var _paused:Boolean;
public var ui:UI;
public var menuPopUp:MenuPopUp;
public var continuePopUp:ContinuePopUp;
protected var _continues:int;
public var background:MovieClip;
public var vignette:Vignette;
public var help:PopUp;
public var transition:Transition;
private var _score:int;
private var _levelStartScore:int;
public var levelWin:LevelWinPopUp;
protected var _scrollRect:Rectangle;
public var gameDepth:MovieClip;
public var game:Game;
public function GameEngine(){
stop();
initListeners();
this.x = 0;
}
protected function addedToStage(_arg1:Event):void{
FrameUtils.addFrameLabelScript(this, "level_1", initLevel);
FrameUtils.addFrameLabelScript(this, "level_2", initLevel);
FrameUtils.addFrameLabelScript(this, "level_3", initLevel);
}
protected function skullSucked(_arg1:Event):void{
ui.throb(true);
}
protected function decreaseMusic():void{
SoundInterface.instance.setGroupTargetFade("music", 0.2, 250);
}
protected function showTransition(_arg1:Event):void{
transition.addEventListener(TransitionEvent.TRANSITION_OPENED, transitionOpen);
transition.open();
}
protected function lockHand(_arg1:Event):void{
hand.lock();
}
protected function showBloodStain(_arg1:Event):void{
var _local2:BloodStain;
_local2 = (_arg1.target as BloodStain);
_local2.x = (_local2.x + _local2.parent.x);
_local2.y = (_local2.y + _local2.parent.y);
background.addChild(_local2);
}
protected function initLevel():void{
background.cacheAsBitmap = true;
background.x = 0;
_scrollRect = new Rectangle(0, 0, 800, 600);
background.scrollRect = _scrollRect;
game.bear.config = _config;
startEngine();
}
protected function initLevel3():void{
startEngine();
}
protected function elevatorComplete(_arg1:Event):void{
}
protected function initLevel2():void{
startEngine();
}
public function showLevel(_arg1:int, _arg2:Boolean, _arg3:int, _arg4:XML):void{
FrameUtils.addFrameLabelScript(this, ("level_" + _arg1), initLevel);
game = ClassUtils.create(("pbp_game_level_" + _arg1));
game.level = _arg1;
game.firstAidValue = _arg4.settings.firstAidValue;
trace(((this + ": firstAidKit value: ") + game.firstAidValue));
_camera = (game.camera = new Camera(this));
_config = _arg4;
addChildAt(game, (getChildIndex(gameDepth) + 1));
gotoAndStop(("level_" + _arg1));
_levelStartScore = (_score = _arg3);
if (((_arg2) && ((_arg1 == 1)))){
openHelp();
};
}
protected function clearListeners():void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
removeEventListener(Event.REMOVED_FROM_STAGE, destroy);
removeEventListener(PolarBearGameEvent.UPDATE_HEALTH, updateHealth);
removeEventListener(PolarBearGameEvent.HEALTH_PICKUP, healthPickup);
removeEventListener(PolarBearGameEvent.SKULL_SUCKED, skullSucked);
removeEventListener(PolarBearGameEvent.SHOW_TRANSITION, showTransition);
removeEventListener(TransitionEvent.TRANSITION_OPENED, transitionOpen);
removeEventListener(PolarBearGameEvent.NEXT_SCREEN, nextScreen);
removeEventListener(PolarBearGameEvent.ELEVATOR_UPDATED, elevatorUpdate);
removeEventListener(PolarBearGameEvent.ELEVATOR_COMPLETE, elevatorComplete);
removeEventListener(PolarBearGameEvent.LEVEL_COMPLETE, levelComplete);
removeEventListener(PolarBearGameEvent.PLAYER_DIED, playerDied);
removeEventListener(PolarBearGameEvent.RESET_CHARGE, resetCharge);
removeEventListener(PolarBearGameEvent.BLOODSTAIN, showBloodStain);
removeEventListener(PolarBearGameEvent.OPEN_MENU, openMenu);
removeEventListener(UIEvent.CHARGE_READY, chargeReady);
removeEventListener(UIEvent.FLASH_VIGNETTE, flashVignette);
removeEventListener(UIEvent.VIGNETTE_RESET, resetVignette);
removeEventListener(UIEvent.UPDATE_WEAPON_COUNT, updateWeaponCount);
removeEventListener(UIEvent.SHOW_HAND, showHand);
removeEventListener(UIEvent.LOCK_HAND, lockHand);
removeEventListener(UIEvent.UNLOCK_HAND, unlockHand);
removeEventListener(MouseEvent.CLICK, clickHandler);
removeEventListener(UIEvent.PAUSE, pause);
removeEventListener(UIEvent.UNPAUSE, unpause);
removeEventListener(UIEvent.UPDATE_POINTS, updatePoints);
removeEventListener(UIEvent.SHOW_HELP, openHelp);
}
protected function updateHealth(_arg1:Event):void{
ui.updateHealth((game.bear.health / game.bear.MAX_HEALTH));
}
public function get score():int{
return (_score);
}
protected function clickHandler(_arg1:MouseEvent):void{
if (_arg1.target == menuBtn){
openMenu();
};
}
protected function openHelp(_arg1:Event=null):void{
help.open();
}
private function getRank(_arg1:int):String{
var _local2:XMLList;
var _local3:int;
var _local4:int;
var _local5:int;
_local2 = _config.settings.level_rankings.rank;
_local4 = _local2.length();
_local5 = 0;
_local3 = 0;
while (_local3 < _local4) {
if (_arg1 >= _local2[_local3].@points){
_local5 = _local3;
};
_local3++;
};
return (_local2[_local5]);
}
protected function update(_arg1:IntervalEvent):void{
_camera.update(_arg1.elapsedTime);
game.update(_arg1.elapsedTime);
ui.update(_arg1.elapsedTime);
_scrollRect.x = _camera.x;
if (_scrollRect.x == background.scrollRect.x){
return;
};
background.scrollRect = _scrollRect;
}
protected function openMenu(_arg1:Event=null):void{
menuPopUp.open();
}
protected function levelComplete(_arg1:Event):void{
if (game.level == 3){
_timeOut = 10;
} else {
_timeOut = 4;
};
_interval.addEventListener(IntervalEvent.INTERVAL, timeOut);
}
protected function playerDied(_arg1:Event):void{
if (_continues > 0){
continuePopUp.continues = _continues;
continuePopUp.open();
} else {
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.GAME_LOST));
SoundInterface.instance.setGroupTargetFade("music", 0);
};
}
private function resetCharge(_arg1:Event):void{
ui.resetCharge();
}
public function unpause(_arg1:Event=null):void{
increaseMusic();
_paused = false;
if (game){
game.unpause();
};
if (!_interval){
return;
};
_interval.start();
}
protected function increaseMusic():void{
SoundInterface.instance.setGroupTargetFade("music", game.musicVolume, 500);
}
protected function updatePoints(_arg1:UIEvent):void{
_score = (_score + _arg1.points);
ui.points(_score);
}
protected function showHand(_arg1:Event):void{
hand.show();
}
protected function initListeners():void{
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
addEventListener(Event.REMOVED_FROM_STAGE, destroy);
addEventListener(PolarBearGameEvent.UPDATE_HEALTH, updateHealth);
addEventListener(PolarBearGameEvent.HEALTH_PICKUP, healthPickup);
addEventListener(PolarBearGameEvent.SKULL_SUCKED, skullSucked);
addEventListener(PolarBearGameEvent.SHOW_TRANSITION, showTransition);
addEventListener(TransitionEvent.TRANSITION_OPENED, transitionOpen);
addEventListener(PolarBearGameEvent.NEXT_SCREEN, nextScreen);
addEventListener(PolarBearGameEvent.ELEVATOR_UPDATED, elevatorUpdate);
addEventListener(PolarBearGameEvent.ELEVATOR_COMPLETE, elevatorComplete);
addEventListener(PolarBearGameEvent.LEVEL_COMPLETE, levelComplete);
addEventListener(PolarBearGameEvent.PLAYER_DIED, playerDied);
addEventListener(PolarBearGameEvent.RESET_CHARGE, resetCharge);
addEventListener(PolarBearGameEvent.BLOODSTAIN, showBloodStain);
addEventListener(PolarBearGameEvent.OPEN_MENU, openMenu);
addEventListener(UIEvent.CHARGE_READY, chargeReady);
addEventListener(UIEvent.FLASH_VIGNETTE, flashVignette);
addEventListener(UIEvent.VIGNETTE_RESET, resetVignette);
addEventListener(UIEvent.UPDATE_WEAPON_COUNT, updateWeaponCount);
addEventListener(UIEvent.SHOW_HAND, showHand);
addEventListener(UIEvent.LOCK_HAND, lockHand);
addEventListener(UIEvent.UNLOCK_HAND, unlockHand);
addEventListener(MouseEvent.CLICK, clickHandler);
addEventListener(UIEvent.PAUSE, pause);
addEventListener(UIEvent.UNPAUSE, unpause);
addEventListener(UIEvent.UPDATE_POINTS, updatePoints);
addEventListener(UIEvent.SHOW_HELP, openHelp);
}
public function continueGame():void{
game.nextWave();
unpause();
}
protected function transitionOpen(_arg1:Event):void{
transition.removeEventListener(TransitionEvent.TRANSITION_OPENED, transitionOpen);
game.nextWave();
transition.close();
}
public function startEngine():void{
if (!_interval){
_interval = new IntervalEngine(20);
_interval.addEventListener(IntervalEvent.INTERVAL, update);
};
if (!_paused){
_interval.start();
};
}
protected function nextScreen(_arg1:Event):void{
_camera.nextScreen();
}
private function chargeReady(_arg1:Event):void{
game.bear.chargeReady = true;
}
protected function timeOut(_arg1:IntervalEvent):void{
var _local2:int;
_timeOut = (_timeOut - _arg1.elapsedTime);
if (_timeOut <= 0){
_interval.removeEventListener(IntervalEvent.INTERVAL, timeOut);
levelWin.score = (_score - _levelStartScore);
levelWin.skull = (ui.heartBonus * 4000);
levelWin.assKick = ((game.bonus)<0) ? 0 : game.bonus;
_local2 = ((levelWin.score + levelWin.skull) + levelWin.assKick);
levelWin.total = _local2;
levelWin.rank = getRank(_local2);
_score = (_score + (levelWin.skull + levelWin.assKick));
ui.points(_score);
SoundInterface.instance.stopGroup("music");
levelWin.open();
};
}
protected function elevatorUpdate(_arg1:Event):void{
var _local2:Elevator;
_local2 = (_arg1.target as Elevator);
game.y = -(_local2.y);
game.bear.y = (_local2.y + game.bear.yPos);
_scrollRect.y = _local2.y;
background.scrollRect = _scrollRect;
}
public function set continues(_arg1:int):void{
_continues = _arg1;
ui.livesText.text = String(_arg1);
}
protected function flashVignette(_arg1:Event):void{
vignette.open();
}
protected function resetVignette(_arg1:Event):void{
vignette.close();
}
protected function updateWeaponCount(_arg1:Event):void{
weaponCounter.count = (_arg1.target as Bear).weaponCount;
}
protected function unlockHand(_arg1:Event):void{
hand.unlock();
}
protected function healthPickup(_arg1:Event):void{
ui.throb(false);
}
protected function destroy(_arg1:Event):void{
_interval.stop();
_interval.removeEventListener(IntervalEvent.INTERVAL, update);
_interval.removeEventListener(IntervalEvent.INTERVAL, timeOut);
_interval = null;
clearListeners();
removeChild(game);
}
public function pause(_arg1:Event=null):void{
decreaseMusic();
_paused = true;
if (game){
game.pause();
};
if (!_interval){
return;
};
_interval.stop();
}
}
}//package adultswim.polarbearpayback.game
Section 35
//GameLevel1 (adultswim.polarbearpayback.game.GameLevel1)
package adultswim.polarbearpayback.game {
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import adultswim.polarbearpayback.game.levels.*;
public class GameLevel1 extends Game {
public var wackoShack:BossIntro;
public var barrier1:GenericObject;
public var barrier2:GenericObject;
public var barrier3:GenericObject;
public var barrier4:GenericObject;
public var bridge:Gate;
public var bridge2:Gate;
public function GameLevel1(){
NUM_SCREENS = 8;
SoundInterface.instance.stopGroup("music");
SoundInterface.instance.playSound("Broken_Bones_Full_loop.wav", "music", 0, int.MAX_VALUE);
musicVolume = 0.6;
SoundInterface.instance.setGroupTargetFade("music", musicVolume);
_screenLengths = [2, 3, 2, 1];
_numEnemies = [1, 1, 1, 1];
_bully = Enemy.SEAL_BULLY;
_clubber1 = Enemy.SEAL_CLUBBER_1;
_clubber2 = Enemy.SEAL_CLUBBER_2;
_shooter = Enemy.SEAL_SHOOTER_1;
}
override protected function showBoss(_arg1:Event):void{
var _local2:Enemy;
super.showBoss(_arg1);
removeEventListener(PolarBearGameEvent.SHOW_BOSS, showBoss);
_local2 = new Enemy(Enemy.SEAL_BOSS, 6053.9, 373.6);
_boss = spawnEnemy(_local2);
}
override protected function openGate():void{
switch (_currentScreen){
case 0:
bridge.open();
break;
case 1:
bridge2.open();
break;
case 2:
gateOpened();
break;
default:
break;
};
}
override protected function showBossIntro():void{
super.showBossIntro();
addEventListener(PolarBearGameEvent.SHOW_BOSS, showBoss);
bear.disabled = true;
bear.idle();
SoundInterface.instance.setGroupTargetFade("music", 0, 100);
wackoShack.intro();
}
override protected function init():void{
_waves = new Level_1();
}
override protected function gateOpened(_arg1:Event=null):void{
super.gateOpened();
switch (_currentScreen){
case 1:
barrier1.disabled = (barrier2.disabled = true);
break;
case 2:
barrier3.disabled = (barrier4.disabled = true);
break;
case 3:
break;
default:
break;
};
}
override public function reload():void{
if (bear.dead){
bear.reset();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.UPDATE_HEALTH));
return;
};
}
}
}//package adultswim.polarbearpayback.game
Section 36
//GameLevel2 (adultswim.polarbearpayback.game.GameLevel2)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import adultswim.polarbearpayback.game.levels.*;
public class GameLevel2 extends Game {
public var bulkHead:GenericObject;
public var lastMast:GenericObject;
public var elevatorPost:ElevatorPost;
protected var _bearStartY:Number;
public var invis0:GenericObject;
public var invis2:GenericObject;
public var invis4:GenericObject;
public var invis5:GenericObject;
public var invis6:GenericObject;
public var invis1:GenericObject;
public var invis3:GenericObject;
public var invis7:GenericObject;
public var invis8:GenericObject;
public var invis9:GenericObject;
public var gate:Gate;
public var elevator:Elevator;
public var whale:BossIntro;
public var barrier1:GenericObject;
public var foreground:MovieClip;
public var barrier2:GenericObject;
public var barrier3:GenericObject;
protected var _elevatorDescend:Boolean;
protected var _elevatorAscend:Boolean;
protected var _elevatorReady:Boolean;
public function GameLevel2(){
NUM_SCREENS = 6;
addEventListener(PolarBearGameEvent.ELEVATOR_COMPLETE, elevatorComplete);
SoundInterface.instance.stopGroup("music");
SoundInterface.instance.playSound("Amped_Violence_loop.wav", "music", 0, int.MAX_VALUE);
musicVolume = 0.6;
SoundInterface.instance.setGroupTargetFade("music", musicVolume);
_screenLengths = [3, 3, 2, 1];
_bully = Enemy.WHALER_BULLY;
_clubber1 = Enemy.WHALER_2;
_clubber2 = Enemy.WHALER_1;
_shooter = Enemy.WHALER_SHOOTER;
}
override protected function showBoss(_arg1:Event):void{
var _local2:Enemy;
super.showBoss(_arg1);
removeEventListener(PolarBearGameEvent.SHOW_BOSS, showBoss);
_local2 = new Enemy(Enemy.WHALER_BOSS, 6772, 467.5);
_boss = spawnEnemy(_local2);
}
override protected function addedToStage(_arg1:Event):void{
super.addedToStage(_arg1);
invisBoxesDisabled(true);
}
override protected function openGate():void{
switch (_currentScreen){
case 0:
gate.open();
break;
case 1:
startElevator();
dispatchEvent(new UIEvent(UIEvent.LOCK_HAND));
break;
case 2:
gateOpened();
break;
default:
break;
};
}
private function invisBoxesDisabled(_arg1:Boolean):void{
var _local2:int;
_local2 = 0;
_local2 = 0;
while (_local2 < 10) {
(this[("invis" + _local2)] as GenericObject).disabled = _arg1;
_local2++;
};
}
protected function elevatorComplete(_arg1:Event):void{
_elevatorAscend = false;
clearEnemies();
seal.visible = (seal2.visible = (seal3.visible = false));
trace(((this + ".elevatorComplete: ") + bear.y));
removeEventListener(PolarBearGameEvent.ELEVATOR_COMPLETE, elevatorComplete);
bear.y = (bear.y - elevator.TOP);
trace(((this + ".elevatorComplete2: ") + bear.y));
elevator.y = (elevator.y - elevator.TOP);
elevatorPost.elevatorUpdate(elevator.TOP);
elevatorPost.y = (elevatorPost.y - elevator.TOP);
lastMast.y = (lastMast.y - elevator.TOP);
this.y = (this.y + elevator.TOP);
bulkHead.visible = false;
bulkHead.rect.y = (bulkHead.rect.y - elevator.TOP);
foreground.y = (foreground.y - elevator.TOP);
invisBoxesDisabled(false);
NUM_SCREENS = 9;
bear.disabled = false;
bear.enableControls();
musicVolume = 0.6;
SoundInterface.instance.setGroupTargetFade("music", 1);
SoundInterface.instance.stopGroup("elevator");
gateOpened();
}
override protected function showBossIntro():void{
super.showBossIntro();
addEventListener(PolarBearGameEvent.SHOW_BOSS, showBoss);
bear.disabled = true;
bear.idle();
SoundInterface.instance.setGroupTargetFade("music", 0, 100);
whale.intro();
}
override public function nextWave():void{
super.nextWave();
if (_screenNum == 8){
seal.xPos = (seal2.xPos = (seal3.xPos = (-(x) - 100)));
(seal.y == 200);
(seal2.y == 300);
(seal3.y == 400);
seal.disabled = (seal2.disabled = (seal3.disabled = false));
seal.visible = (seal2.visible = (seal3.visible = true));
};
}
override public function update(_arg1:Number):void{
var _local2:Boolean;
if (_elevatorDescend){
if (elevator.y < 0){
elevator.y = (elevator.y + (200 * _arg1));
elevatorPost.elevatorUpdate(elevator.y);
};
if (elevator.y >= 0){
_elevatorReady = true;
trace("ELEVATOR READY");
_elevatorDescend = false;
elevator.y = 0;
elevatorPost.elevatorUpdate(elevator.y);
SoundInterface.instance.stopGroup("elevator");
};
};
if (_elevatorAscend){
elevator.ascend(_arg1);
if (_elevatorAscend){
elevatorPost.elevatorUpdate(elevator.y);
};
return;
};
if (_elevatorReady){
_local2 = elevator.bearCheck(bear.x, bear.y, bear.offset);
if (_local2){
_bearStartY = bear.y;
trace(((this + "elevator starting: ") + bear.y));
bear.endCharge();
bear.disabled = true;
bear.disableControls();
_elevatorReady = false;
_elevatorAscend = true;
seal.disabled = (seal2.disabled = (seal3.disabled = true));
elevatorPost.disabled = true;
SoundInterface.instance.playSound("elevatorMusic.wav", "elevator", 0, int.MAX_VALUE);
SoundInterface.instance.playSound("elevatorNoise.wav", "elevator", 0, int.MAX_VALUE);
musicVolume = 0;
SoundInterface.instance.setGroupTargetFade("music", 0);
SoundInterface.instance.setGroupTargetFade("elevator", 1);
dispatchEvent(new UIEvent(UIEvent.UNLOCK_HAND));
};
};
super.update(_arg1);
}
override protected function levelComplete():void{
trace(((("level complete: " + NUM_SCREENS) + ":") + _currentGroup));
if (NUM_SCREENS < 7){
startElevator();
} else {
super.levelComplete();
};
}
override public function unpause():void{
super.unpause();
if (SoundInterface.instance.getGroupIsPlaying("elevator")){
SoundInterface.instance.setGroupTargetFade("elevator", 1);
};
}
override protected function init():void{
_waves = new Level_2();
}
override protected function gateOpened(_arg1:Event=null):void{
super.gateOpened();
switch (_currentScreen){
case 1:
barrier1.disabled = (barrier2.disabled = (barrier3.disabled = true));
break;
case 2:
break;
case 3:
break;
default:
break;
};
}
protected function startElevator():void{
_elevatorDescend = true;
trace("START ELEVATOR");
SoundInterface.instance.playSound("elevatorNoise.wav", "elevator", 1, int.MAX_VALUE);
}
override protected function destroy(_arg1:Event):void{
super.destroy(_arg1);
if (SoundInterface.instance.getGroupIsPlaying("elevator")){
SoundInterface.instance.stopGroup("elevator");
};
}
override public function pause():void{
super.pause();
if (SoundInterface.instance.getGroupIsPlaying("elevator")){
SoundInterface.instance.setGroupTargetFade("elevator", 0.2);
};
}
}
}//package adultswim.polarbearpayback.game
Section 37
//GameLevel3 (adultswim.polarbearpayback.game.GameLevel3)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import adultswim.polarbearpayback.game.levels.*;
public class GameLevel3 extends Game {
protected const SUV_X_RIGHT:Number = 1000;
protected const SUV_FREQUENCY:Number = 8;
protected const SUV_Y:Number = 425;
protected const SUV_X_LEFT:Number = -200;
public var barrier10:InvisibleBox;
public var barrier11:InvisibleBox;
public var barrier12:InvisibleBox;
public var gate1:Gate;
public var gate2:Gate;
public var gate3:Gate;
public var bossIntro:BossIntro;
protected var _nextSUV:Number;
public var barrier1:InvisibleBox;
public var barrier2:InvisibleBox;
public var barrier9:InvisibleBox;
public var barrier3:InvisibleBox;
public var barrier6:InvisibleBox;
public var barrier5:InvisibleBox;
public var barrier8:InvisibleBox;
public var barrier4:InvisibleBox;
public var barrier7:InvisibleBox;
protected var _bossNum:int;// = 1
public function GameLevel3(){
_bossNum = 1;
super();
NUM_SCREENS = 9;
addEventListener(PolarBearGameEvent.ADD_MINI_SUIT, addMiniSuit);
addEventListener(PolarBearGameEvent.ADD_SUITS, addSuits);
_nextSUV = SUV_FREQUENCY;
SoundInterface.instance.stopGroup("music");
SoundInterface.instance.playSound("Final_Fly_Mast_Full_loop.wav", "music", 0, int.MAX_VALUE);
musicVolume = 0.5;
SoundInterface.instance.setGroupTargetFade("music", musicVolume);
_screenLengths = [2, 3, 2, 2];
_bully = Enemy.CITY_BULLY;
_clubber1 = Enemy.CITY_SUIT_1;
_clubber2 = Enemy.CITY_SUIT_2;
_shooter = Enemy.CITY_SHOOTER;
}
override protected function showBoss(_arg1:Event):void{
var _local2:Enemy;
super.showBoss(_arg1);
_local2 = new Enemy(Enemy.CITY_CEO, 6869.7, 519.5);
_boss = spawnEnemy(_local2);
}
override protected function openGate():void{
switch (_currentScreen){
case 0:
gate1.open();
break;
case 1:
gate2.open();
break;
case 2:
gate3.open();
break;
};
}
override protected function showBossIntro():void{
super.showBossIntro();
addEventListener(PolarBearGameEvent.SHOW_BOSS, showBoss);
bear.disabled = true;
bear.idle();
SoundInterface.instance.setGroupTargetFade("music", 0, 100);
bossIntro.intro();
}
public function releaseSUV():void{
var _local1:Number;
var _local2:Enemy;
var _local3:Number;
_local1 = 1;
if (Math.floor((Math.random() * 2)) == 1){
_local1 = -1;
_local3 = (-(x) + SUV_X_RIGHT);
_local2 = new Enemy(Enemy.CITY_SUV_LEFT, _local3, SUV_Y);
} else {
_local3 = (-(x) + SUV_X_LEFT);
_local2 = new Enemy(Enemy.CITY_SUV_RIGHT, _local3, SUV_Y);
};
addProjectile(_local2, _local1, -(_local1));
SoundInterface.instance.playSound("pbp_suv_driveby", "sfx");
}
override protected function levelComplete():void{
var _local1:Enemy;
if (_bossNum > 1){
super.levelComplete();
} else {
trace((this + " mutant time!"));
_bossNum++;
_local1 = new Enemy(Enemy.CITY_BOSS, 6530, 376);
_boss = spawnEnemy(_local1);
};
}
protected function addSuits(_arg1:Event):void{
var _local2:Enemy;
_local2 = new Enemy(Enemy.CITY_SHOOTER, (-(this.x) - 100), bear.y);
spawnEnemy(_local2);
}
override protected function init():void{
_waves = new Level_3();
}
override protected function gateOpened(_arg1:Event=null):void{
super.gateOpened();
switch (_currentScreen){
case 1:
barrier1.disabled = (barrier2.disabled = (barrier3.disabled = (barrier4.disabled = true)));
break;
case 2:
barrier5.disabled = (barrier6.disabled = (barrier7.disabled = (barrier8.disabled = true)));
gate2.y = (gate2.y - 500);
gate2.content.y = (gate2.content.y + 500);
break;
case 3:
barrier9.disabled = (barrier10.disabled = (barrier11.disabled = (barrier12.disabled = true)));
gate3.y = (gate3.y - 500);
gate3.content.y = (gate3.content.y + 500);
break;
default:
break;
};
}
override protected function bossThrow(_arg1:PolarBearGameEvent):void{
var _local2:Enemy;
var _local3:Character;
var _local4:int;
_arg1.stopPropagation();
_local3 = (_arg1.target as Character);
if ((_arg1.target as MovieClip).scaleX == 1){
_local2 = new Enemy(Enemy.CITY_BOSS_PROJECTILE, (_local3.x - 223), _local3.y);
_local4 = -1;
} else {
_local2 = new Enemy(Enemy.CITY_BOSS_PROJECTILE, (_local3.x + 223), _local3.y);
_local4 = 1;
};
addProjectile(_local2, _local4, -(_local4));
}
override public function reload():void{
if (bear.dead){
bear.reset();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.UPDATE_HEALTH));
return;
};
if (_screenNum == (NUM_SCREENS - 1)){
_nextSUV = int.MAX_VALUE;
};
if (_screenNum == NUM_SCREENS){
trace("this level complete should not be called...");
levelComplete();
return;
};
generateWave();
releaseGroup();
}
protected function addMiniSuit(_arg1:Event):void{
var _local2:CityBoss;
var _local3:Enemy;
var _local4:Character;
_local2 = (_arg1.target as CityBoss);
if (_local2.scaleX == 1){
_local3 = new Enemy(Enemy.CITY_MINI_SUIT, (_local2.x + _local2.POOP_X), (_local2.y - _local2.POOP_Y));
_local4 = spawnEnemy(_local3);
_local4.scaleX = -1;
} else {
_local3 = new Enemy(Enemy.CITY_MINI_SUIT, (_local2.x - _local2.POOP_X), (_local2.y - _local2.POOP_Y));
_local4 = spawnEnemy(_local3);
};
}
override protected function destroy(_arg1:Event):void{
super.destroy(_arg1);
removeEventListener(PolarBearGameEvent.ADD_MINI_SUIT, addMiniSuit);
removeEventListener(PolarBearGameEvent.ADD_SUITS, addSuits);
removeEventListener(PolarBearGameEvent.SHOW_BOSS, showBoss);
}
}
}//package adultswim.polarbearpayback.game
Section 38
//Gate (adultswim.polarbearpayback.game.Gate)
package adultswim.polarbearpayback.game {
import flash.display.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Gate extends GenericObject {
public var content:MovieClip;
public var isOpen:Boolean;
public function Gate(){
stop();
}
public function open():void{
isOpen = true;
FrameUtils.addFrameLabelScript(this, "static", introComplete);
gotoAndPlay("intro");
}
protected function introComplete():void{
stop();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.GATE_OPENED));
}
}
}//package adultswim.polarbearpayback.game
Section 39
//GenericObject (adultswim.polarbearpayback.game.GenericObject)
package adultswim.polarbearpayback.game {
import flash.events.*;
import adultswim.polarbearpayback.events.*;
public class GenericObject extends CollisionObject {
public var hitTarget:HitArea;
public function GenericObject(){
stop();
}
override protected function addedToStage(_arg1:Event):void{
super.addedToStage(_arg1);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_OBJECT));
}
protected function addObject(_arg1:Event):void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_OBJECT));
}
}
}//package adultswim.polarbearpayback.game
Section 40
//Grenade (adultswim.polarbearpayback.game.Grenade)
package adultswim.polarbearpayback.game {
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Grenade extends CollisionObject {
public var attack:HitArea;
protected var _sfx:String;// = "pbp_grenade_explosion"
public function Grenade(){
attack = new HitArea(165, -23, 175, 20);
_sfx = "pbp_grenade_explosion";
super();
}
public function unpause():void{
if (this.currentFrame > 1){
if (currentFrame < (this.totalFrames - 1)){
play();
};
};
}
public function pause():void{
if (this.currentFrame > 1){
if (currentFrame < (this.totalFrames - 1)){
stop();
};
};
}
override protected function addedToStage(_arg1:Event):void{
super.addedToStage(_arg1);
FrameUtils.addFrameLabelScript(this, "hit", attackCheck);
FrameUtils.addFrameLabelScript(this, "off", animComplete);
gotoAndPlay("intro");
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_OBJECT));
}
protected function animComplete():void{
stop();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_OBJECT));
}
protected function attackCheck():void{
disabled = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.GRENADE));
SoundInterface.instance.playSound(_sfx, "sfx");
}
public function Barrel(){
stop();
}
override public function collisionCheck(_arg1:Array):Boolean{
return (false);
}
}
}//package adultswim.polarbearpayback.game
Section 41
//HitArea (adultswim.polarbearpayback.game.HitArea)
package adultswim.polarbearpayback.game {
public class HitArea {
public var d:Number;
public var strength:Number;
public var x:Number;
public var y:Number;
public function HitArea(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0, _arg4=0){
x = _arg1;
y = _arg2;
d = _arg3;
strength = _arg4;
}
}
}//package adultswim.polarbearpayback.game
Section 42
//InvisibleBox (adultswim.polarbearpayback.game.InvisibleBox)
package adultswim.polarbearpayback.game {
import flash.geom.*;
public class InvisibleBox extends GenericObject {
public function InvisibleBox(){
stop();
}
override public function get collisionRect():Rectangle{
return (new Rectangle(this.x, this.y, this.width, this.height));
}
}
}//package adultswim.polarbearpayback.game
Section 43
//ISpawn (adultswim.polarbearpayback.game.ISpawn)
package adultswim.polarbearpayback.game {
public interface ISpawn {
function get spawnPoint():Number;
function get type():String;
function spawn():void;
function get spawnX():Number;
function get spawnY():Number;
}
}//package adultswim.polarbearpayback.game
Section 44
//Message (adultswim.polarbearpayback.game.Message)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import smashing.utils.*;
import smashing.text.*;
public class Message extends MovieClip {
public var message:MovieClipTextField;
protected var _message:String;
public function Message(){
stop();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
FrameUtils.addFrameLabelScript(this, "on", setMessage);
FrameUtils.addFrameLabelScript(this, "off", reset);
}
protected function setMessage():void{
message.text = _message;
}
protected function reset():void{
gotoAndStop("off");
_message = "";
}
public function showMessage(_arg1:String):void{
if (_message == _arg1){
return;
};
_message = _arg1;
gotoAndPlay("on");
}
}
}//package adultswim.polarbearpayback.game
Section 45
//MiniSuit (adultswim.polarbearpayback.game.MiniSuit)
package adultswim.polarbearpayback.game {
public class MiniSuit extends CitySuit {
public function MiniSuit(){
health = 7;
attack1 = new HitArea(-40, -72, 70, 1);
hitTarget = new HitArea(-1, -57, 52.5);
_speed = 150;
ATTACK_FREQUENCY = 2;
}
}
}//package adultswim.polarbearpayback.game
Section 46
//Molotov (adultswim.polarbearpayback.game.Molotov)
package adultswim.polarbearpayback.game {
public class Molotov extends Grenade {
public function Molotov(){
_sfx = "pbp_molotov_explosion";
}
}
}//package adultswim.polarbearpayback.game
Section 47
//RopeSpawn (adultswim.polarbearpayback.game.RopeSpawn)
package adultswim.polarbearpayback.game {
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class RopeSpawn extends GenericObject implements ISpawn {
protected var _triggered:Boolean;
protected var _type:String;
protected var _result:Boolean;
protected var _spawnY:Number;
protected var _spawnX:Number;
protected var _started:Boolean;
protected var _spawnPoint:Number;
protected var _pt:Point;
protected var _x:Number;
public function RopeSpawn(){
stop();
_pt = new Point((this.x - 200), this.y);
addEventListener(Event.ENTER_FRAME, update);
addEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
}
public function pause():void{
if (this.currentFrame > 1){
if (currentFrame < (this.totalFrames - 1)){
stop();
};
};
}
protected function removedFromStage(_arg1:Event):void{
removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
removeEventListener(Event.ENTER_FRAME, update);
}
public function get spawnY():Number{
return (_spawnY);
}
public function unpause():void{
if (this.currentFrame > 1){
if (currentFrame < (this.totalFrames - 1)){
play();
};
};
}
public function get spawnX():Number{
return (_spawnX);
}
public function spawn():void{
_type = "CLUBBER1";
_spawnX = x;
_spawnY = y;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPAWN_ENEMY));
}
public function get type():String{
return (_type);
}
protected function set type(_arg1:String):void{
_type = _arg1;
}
protected function set spawnPoint(_arg1:Number):void{
_spawnPoint = _arg1;
}
protected function introComplete():void{
_triggered = true;
stop();
spawn();
disabled = true;
}
protected function update(_arg1:Event):void{
_x = parent.localToGlobal(_pt).x;
if (_x < 400){
if (!_started){
_started = true;
removeEventListener(Event.ENTER_FRAME, update);
FrameUtils.addFrameLabelScript(this, "static", introComplete);
gotoAndPlay("intro");
};
};
}
public function get spawnPoint():Number{
return (_spawnPoint);
}
}
}//package adultswim.polarbearpayback.game
Section 48
//Seal (adultswim.polarbearpayback.game.Seal)
package adultswim.polarbearpayback.game {
import flash.display.*;
import smashing.utils.*;
public class Seal extends Character {
private var _readyToPlay:Boolean;
protected var DEFAULT_SPEED:int;// = 120
protected var _sealDist:int;// = 15
protected var _pursuing:Boolean;
protected var _cheering:Boolean;
protected var _playing:Boolean;
protected var PERSUIT_SPEED:int;// = 330
private var _skullX:Number;
private var _skullY:Number;
public function Seal(){
PERSUIT_SPEED = 330;
DEFAULT_SPEED = 120;
_sealDist = 15;
super();
_flip = -1;
_persistent = true;
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "cheer", initCheer);
FrameUtils.addFrameLabelScript(this, "play", initPlay);
}
protected function initCheer():void{
_cheering = true;
anim.addFrameScript((anim.totalFrames - 1), cheerComplete);
anim.play();
}
public function skullPlay(_arg1:MovieClip):void{
_pursuing = true;
_speed = PERSUIT_SPEED;
_skullX = (_arg1.x + (285 * _arg1.scaleX));
_skullY = _arg1.y;
}
public function clap():void{
if (((((_cheering) || (_playing))) || (disabled))){
return;
};
gotoAndStop("cheer");
}
protected function initPlay():void{
_playing = true;
anim.addFrameScript((anim.totalFrames - 1), playComplete);
anim.play();
}
protected function playComplete():void{
anim.stop();
anim.addFrameScript((anim.totalFrames - 1), null);
_playing = false;
_pursuing = false;
_readyToPlay = false;
}
public function set speed(_arg1:int):void{
DEFAULT_SPEED = _arg1;
_speed = DEFAULT_SPEED;
}
override public function update(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
var _local4:Number;
if (((((((_cheering) || (_playing))) || (_readyToPlay))) || (disabled))){
return;
};
super.update(_arg1);
if (_pursuing){
_local2 = (_xPos - _skullX);
_local3 = (_yPos - _skullY);
_local4 = Math.sqrt(((_local2 * _local2) + (_local3 * _local3)));
if (_local4 < _sealDist){
_readyToPlay = true;
_speed = DEFAULT_SPEED;
return;
};
if (Math.abs(_local2) > Math.abs(_local3)){
if (_local2 > 0){
moveLeft();
} else {
moveRight();
};
} else {
if (_local3 > 0){
moveUp();
} else {
moveDown();
};
};
return;
};
if (_yPos <= MIN_Y){
moveDown();
};
if (_yPos >= MAX_Y){
moveUp();
};
if ((((Math.abs((_xPos - bear.x)) < DEFAULT_SPEED)) && ((Math.abs(((_yPos - 30) - bear.y)) < (DEFAULT_SPEED / 2))))){
idle();
return;
};
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + (DEFAULT_SPEED / 2))){
if (_xPos > bear.x){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < bear.x){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
} else {
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
}
override protected function init():void{
_speed = DEFAULT_SPEED;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = 0;
hitTarget.d = 0;
}
public function startPlaying():void{
if (((_cheering) || (disabled))){
return;
};
if (_readyToPlay){
gotoAndStop("play");
} else {
_speed = DEFAULT_SPEED;
_pursuing = false;
};
}
protected function cheerComplete():void{
anim.stop();
anim.addFrameScript((anim.totalFrames - 1), null);
_cheering = false;
}
}
}//package adultswim.polarbearpayback.game
Section 49
//SealBoss (adultswim.polarbearpayback.game.SealBoss)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
import flash.filters.*;
public class SealBoss extends Character {
public const MAX_HEALTH:int = 130;
protected var ATTACK_FREQUENCY:Number;// = 1
private var _attackNum:int;
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
protected var attack2:HitArea;
protected var _runDirection:Array;
protected var _pursue:Boolean;// = true
protected var _throw:Boolean;
public function SealBoss(){
attack1 = new HitArea(-115, -90, 90, 10);
attack2 = new HitArea(-80, -103, 100, 10);
ATTACK_FREQUENCY = 1;
_nextAttack = 1.5;
_pursue = true;
super();
health = MAX_HEALTH;
_nextInvuln = (health - 15);
_filters = this.filters;
}
protected function initFrameScripts():void{
}
protected function pursuitBehavior():void{
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + 80)){
if (_xPos > (bear.x + 100)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 100)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
} else {
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
}
private function walkAway():void{
if (_xPos < bear.x){
if (_xPos <= (_minX + 10)){
idle();
return;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos >= (_maxX - 10)){
idle();
return;
};
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
protected function closeAttack():void{
if (((((((attacking) || (hit))) || (dead))) || ((_invuln > 0)))){
return;
};
attacking = true;
_throw = false;
_attackNum = 0;
FrameUtils.addFrameLabelScript(this, "strike_2", null);
FrameUtils.addFrameLabelScript(this, "strike_2", initAttack);
if (anim){
anim.stop();
};
attack = attack2;
gotoAndStop("strike_2");
}
override protected function charHit(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
var _local4:Array;
super.charHit(_arg1);
if (health > 0){
if (health < _nextInvuln){
_local2 = (_minX + ((_maxX - MIN_X) / 2));
_local3 = (_minY + ((_maxY - MIN_Y) / 2));
_runDirection = new Array();
if (_xPos < _local2){
_runDirection.push(RIGHT);
} else {
_runDirection.push(LEFT);
};
if (_yPos < _local3){
_runDirection.push(DOWN);
} else {
_runDirection.push(UP);
};
_local4 = this.filters;
_local4.push(new GlowFilter(52479));
this.filters = _local4;
_invuln = 2;
_nextInvuln = (_nextInvuln - 15);
_pursue = false;
};
};
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (_invuln > 0){
_invuln = (_invuln - _arg1);
if (_invuln <= 0){
this.filters = _filters;
_invuln = 0;
};
_direction = _runDirection[Math.floor((Math.random() * _runDirection.length))];
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
_pursue = false;
return;
};
if (_xPos >= _maxX){
moveLeft();
_pursue = false;
return;
};
if (_yPos <= _minY){
moveDown();
_pursue = false;
return;
};
if (_yPos >= _maxY){
moveUp();
_pursue = false;
return;
};
if (bear.x < this.x){
this.scaleX = _flip;
} else {
this.scaleX = -(_flip);
};
if (_invuln){
evadeBehavior();
return;
};
if ((((Math.abs((_xPos - bear.x)) < 140)) && ((Math.abs(((_yPos - 30) - bear.y)) < 100)))){
if (_nextAttack < 0){
closeAttack();
};
return;
} else {
if (_nextAttack < 0){
rangeAttack();
return;
};
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if (_pursue){
pursuitBehavior();
} else {
evadeBehavior();
};
}
override public function moveRight():void{
_direction = RIGHT;
if (scaleX == -(_flip)){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function init():void{
_speed = 200;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
}
override public function moveLeft():void{
_direction = LEFT;
if (scaleX == _flip){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function attackComplete():void{
if (_throw){
_attackNum++;
if (_attackNum > 2){
_attackNum = 0;
_pursue = true;
} else {
return;
};
} else {
_attackNum++;
if (_attackNum == 1){
return;
};
if (_attackNum == 2){
anim.stop();
FrameUtils.addFrameLabelScript(this, "strike_1", null);
FrameUtils.addFrameLabelScript(this, "strike_1", initAttack);
attack = attack1;
gotoAndStop("strike_1");
return;
};
_pursue = false;
_attackNum = 0;
};
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
anim.stop();
updateDirection();
}
override protected function attackCheck():void{
if (_throw){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.BOSS_THROW));
} else {
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_ATTACK));
};
}
protected function evadeBehavior():void{
if (Math.abs((_xPos - bear.x)) > 400){
walkTowards();
} else {
if (Math.abs((_xPos - bear.x)) < 200){
walkAway();
} else {
if (Math.abs((_yPos - bear.y)) < 30){
idle();
return;
};
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
};
}
private function walkTowards():void{
if (_xPos > bear.x){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_direction == RIGHT){
return;
};
moveRight();
};
}
protected function rangeAttack():void{
if (((((((attacking) || (hit))) || (dead))) || ((_invuln > 0)))){
return;
};
attacking = true;
_throw = true;
FrameUtils.addFrameLabelScript(this, "throw", null);
FrameUtils.addFrameLabelScript(this, "throw", initAttack);
if (anim){
anim.stop();
};
attack = attack1;
gotoAndStop("throw");
}
}
}//package adultswim.polarbearpayback.game
Section 50
//SealBossProjectile (adultswim.polarbearpayback.game.SealBossProjectile)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
public class SealBossProjectile extends Character {
protected var attack1:HitArea;
public function SealBossProjectile(){
attack1 = new HitArea(0, -105, 25, 5);
super();
health = 1000;
_speed = 800;
attack = attack1;
}
override protected function initHit():void{
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
attacking = true;
attack = attack1;
gotoAndStop("strike");
}
override public function attackSuccess():void{
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
}
override public function update(_arg1:Number):void{
if (paused){
return;
};
_xPos = (_xPos + ((projectileDirection * _speed) * _arg1));
this.x = _xPos;
if (_xPos < (_minX - 200)){
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
return;
};
if (_xPos > (_maxX + 200)){
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
return;
};
attackCheck();
}
override public function collisionCheck(_arg1:Array):Boolean{
return (false);
}
override protected function init():void{
_speed = 700;
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
}
override public function hitCheck(_arg1:HitArea):Boolean{
return (false);
}
override protected function initAttack():void{
}
override protected function attackComplete():void{
attacking = false;
anim.stop();
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 51
//Shooter (adultswim.polarbearpayback.game.Shooter)
package adultswim.polarbearpayback.game {
import smashing.soundcontroller.*;
import smashing.utils.*;
public class Shooter extends Character {
public const MAX_HEALTH:int = 100;
protected var ATTACK_FREQUENCY:Number;// = 2.5
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
public function Shooter(){
attack1 = new HitArea(0, -104.5, 0, 2);
ATTACK_FREQUENCY = 2.5;
_nextAttack = 1.5;
super();
health = 8;
pickupArea = new HitArea(12, -28, 75);
pickupNum = 3;
}
protected function initFrameScripts():void{
}
private function walkAway():void{
if (_xPos < bear.x){
if (_xPos <= (_minX + 10)){
idle();
return;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos >= (_maxX - 10)){
idle();
return;
};
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
attacking = true;
FrameUtils.addFrameLabelScript(this, "strike", null);
FrameUtils.addFrameLabelScript(this, "strike", initAttack);
anim.stop();
attack = attack1;
gotoAndStop("strike");
}
protected function playSFX():void{
if (dead){
return;
};
SoundInterface.instance.playSound("dart", "sfx");
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (bear.x < this.x){
this.scaleX = _flip;
} else {
this.scaleX = -(_flip);
};
if (_xPos <= _minX){
moveRight();
return;
};
if (_xPos >= _maxX){
moveLeft();
return;
};
if (_yPos <= _minY){
moveDown();
return;
};
if (_yPos >= _maxY){
moveUp();
return;
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if (_nextAttack <= 0){
playerAttack();
return;
};
if (Math.abs((_xPos - bear.x)) > 400){
walkTowards();
} else {
if (Math.abs((_xPos - bear.x)) < 200){
walkAway();
} else {
if (Math.abs((_yPos - bear.y)) < 30){
idle();
return;
};
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
};
}
override public function moveRight():void{
_direction = RIGHT;
if (scaleX == -(_flip)){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function init():void{
_speed = 100;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
}
override public function moveLeft():void{
_direction = LEFT;
if (scaleX == _flip){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function initAttack():void{
FrameUtils.addFrameLabelScript(this, "strike", null);
playSFX();
super.initAttack();
}
override protected function attackComplete():void{
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
anim.stop();
updateDirection();
}
private function walkTowards():void{
if (_xPos > bear.x){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_direction == RIGHT){
return;
};
moveRight();
};
}
}
}//package adultswim.polarbearpayback.game
Section 52
//Spawn (adultswim.polarbearpayback.game.Spawn)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
public class Spawn extends MovieClip implements ISpawn {
protected var _type:String;
public var triggered:Boolean;
protected var _spawnPoint:Number;
public function Spawn(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
this.visible = false;
}
protected function addedToStage(_arg1:Event):void{
_arg1.stopPropagation();
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.ADD_SPAWN_POINT));
}
public function get spawnY():Number{
return (this.y);
}
public function get spawnX():Number{
return (this.x);
}
protected function set type(_arg1:String):void{
_type = _arg1;
}
public function spawn():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPAWN_ENEMY));
}
public function get type():String{
return (_type);
}
protected function set spawnPoint(_arg1:Number):void{
_spawnPoint = _arg1;
}
public function update(_arg1:Number, _arg2:Number):void{
if (triggered == true){
return;
};
if (_arg1 >= _spawnPoint){
triggered = true;
spawn();
};
}
public function get spawnPoint():Number{
return (_spawnPoint);
}
}
}//package adultswim.polarbearpayback.game
Section 53
//SpawnBoss (adultswim.polarbearpayback.game.SpawnBoss)
package adultswim.polarbearpayback.game {
public class SpawnBoss extends SpawnRight {
public function SpawnBoss(){
_type = "BOSS";
}
}
}//package adultswim.polarbearpayback.game
Section 54
//SpawnClose (adultswim.polarbearpayback.game.SpawnClose)
package adultswim.polarbearpayback.game {
public class SpawnClose extends Spawn {
public function SpawnClose(){
_spawnPoint = (this.x - 400);
}
}
}//package adultswim.polarbearpayback.game
Section 55
//SpawnCloseBully (adultswim.polarbearpayback.game.SpawnCloseBully)
package adultswim.polarbearpayback.game {
public class SpawnCloseBully extends SpawnClose {
public function SpawnCloseBully(){
_type = "BULLY";
}
}
}//package adultswim.polarbearpayback.game
Section 56
//SpawnCloseClubber (adultswim.polarbearpayback.game.SpawnCloseClubber)
package adultswim.polarbearpayback.game {
public class SpawnCloseClubber extends SpawnClose {
public function SpawnCloseClubber(){
_type = "CLUBBER";
}
}
}//package adultswim.polarbearpayback.game
Section 57
//SpawnLeft (adultswim.polarbearpayback.game.SpawnLeft)
package adultswim.polarbearpayback.game {
public class SpawnLeft extends Spawn {
public function SpawnLeft(){
_spawnPoint = (this.x + 50);
}
}
}//package adultswim.polarbearpayback.game
Section 58
//SpawnLeftBully (adultswim.polarbearpayback.game.SpawnLeftBully)
package adultswim.polarbearpayback.game {
public class SpawnLeftBully extends SpawnLeft {
public function SpawnLeftBully(){
_type = "BULLY";
}
}
}//package adultswim.polarbearpayback.game
Section 59
//SpawnLeftClubber (adultswim.polarbearpayback.game.SpawnLeftClubber)
package adultswim.polarbearpayback.game {
public class SpawnLeftClubber extends SpawnLeft {
public function SpawnLeftClubber(){
_type = "CLUBBER";
}
}
}//package adultswim.polarbearpayback.game
Section 60
//SpawnLeftShooter (adultswim.polarbearpayback.game.SpawnLeftShooter)
package adultswim.polarbearpayback.game {
public class SpawnLeftShooter extends SpawnLeft {
public function SpawnLeftShooter(){
_type = "SHOOTER";
}
}
}//package adultswim.polarbearpayback.game
Section 61
//SpawnRight (adultswim.polarbearpayback.game.SpawnRight)
package adultswim.polarbearpayback.game {
public class SpawnRight extends Spawn {
public function SpawnRight(){
_spawnPoint = (this.x - 850);
}
}
}//package adultswim.polarbearpayback.game
Section 62
//SpawnRightBully (adultswim.polarbearpayback.game.SpawnRightBully)
package adultswim.polarbearpayback.game {
public class SpawnRightBully extends SpawnRight {
public function SpawnRightBully(){
_type = "BULLY";
}
}
}//package adultswim.polarbearpayback.game
Section 63
//SpawnRightClubber (adultswim.polarbearpayback.game.SpawnRightClubber)
package adultswim.polarbearpayback.game {
public class SpawnRightClubber extends SpawnRight {
public function SpawnRightClubber(){
_type = "CLUBBER";
}
}
}//package adultswim.polarbearpayback.game
Section 64
//SpawnRightShooter (adultswim.polarbearpayback.game.SpawnRightShooter)
package adultswim.polarbearpayback.game {
public class SpawnRightShooter extends SpawnRight {
public function SpawnRightShooter(){
_type = "SHOOTER";
}
}
}//package adultswim.polarbearpayback.game
Section 65
//SpawnSUV (adultswim.polarbearpayback.game.SpawnSUV)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
public class SpawnSUV extends Spawn {
protected const SPAWN_DELAY:Number = 6;
protected var _lastSpawned:Number;// = 0
public function SpawnSUV(){
_lastSpawned = 0;
super();
_spawnPoint = (this.x - 400);
_type = "SUV";
triggered = true;
}
override public function update(_arg1:Number, _arg2:Number):void{
_lastSpawned = (_lastSpawned + _arg2);
if (_lastSpawned < SPAWN_DELAY){
return;
};
if (_arg1 >= _spawnPoint){
if (_arg1 < (_spawnPoint + 400)){
_lastSpawned = 0;
spawn();
};
if (_arg1 > (_spawnPoint + 600)){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_SPAWN_POINT));
};
};
}
}
}//package adultswim.polarbearpayback.game
Section 66
//SUV (adultswim.polarbearpayback.game.SUV)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
public class SUV extends Character {
protected var attack1:HitArea;
public function SUV(){
attack1 = new HitArea(-47, -105, 500, 15);
super();
health = 1000;
_speed = 800;
attack = attack1;
}
override protected function initHit():void{
}
override public function attackSuccess():void{
dead = true;
}
override public function update(_arg1:Number):void{
_xPos = (_xPos + ((projectileDirection * _speed) * _arg1));
this.x = _xPos;
if (_xPos < (_minX - 800)){
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
return;
};
if (_xPos > (_maxX + 800)){
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
return;
};
}
override public function collisionCheck(_arg1:Array):Boolean{
var _local2:Array;
var _local3:Boolean;
if (dead){
return (false);
};
_local2 = [bear];
_local3 = super.collisionCheck(_local2);
if (_local3){
attackCheck();
};
return (false);
}
override protected function init():void{
_speed = 700;
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
}
override protected function initAttack():void{
}
override protected function attackComplete():void{
attacking = false;
anim.stop();
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 67
//SUV_Parked (adultswim.polarbearpayback.game.SUV_Parked)
package adultswim.polarbearpayback.game {
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class SUV_Parked extends Barrel {
protected var _triggered:Boolean;
protected var _frameLabel:String;
protected var _hitTarget2:HitArea;
protected var _attack1:HitArea;
protected var _attack2:HitArea;
public function SUV_Parked(){
_hitTarget2 = new HitArea(217, -117, 110);
_attack1 = new HitArea(-32, -115, 168, 25);
_attack2 = new HitArea(205, -150, 168, 25);
super();
stop();
hitTarget = new HitArea(-47, -84, 90);
}
override public function hitCheck(_arg1:HitArea):Boolean{
var _local2:Point;
var _local3:Number;
if (((disabled) || (_triggered))){
return (false);
};
_local2 = localToGlobal(new Point(hitTarget.x, hitTarget.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((hitTarget.d + _arg1.d) / 2)){
_frameLabel = "detonate_front";
objectHit(_arg1.strength);
attack = _attack1;
_triggered = true;
return (true);
};
_local2 = localToGlobal(new Point(_hitTarget2.x, _hitTarget2.y));
_local3 = Math.sqrt((((_local2.x - _arg1.x) * (_local2.x - _arg1.x)) + ((_local2.y - _arg1.y) * (_local2.y - _arg1.y))));
if (_local3 < ((hitTarget.d + _arg1.d) / 2)){
_triggered = true;
_frameLabel = "detonate_back";
objectHit(_arg1.strength);
attack = _attack2;
return (true);
};
return (false);
}
override protected function explosionComplete():void{
anim.stop();
}
protected function attackCheck2():void{
if (attack == _attack1){
attack = _attack2;
} else {
attack = _attack1;
};
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.EXPLOSION));
}
override protected function attackCheck():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.EXPLOSION));
}
override protected function objectHit(_arg1:int=0):void{
_health = (_health - _arg1);
if (_health > 0){
return;
};
FrameUtils.addFrameLabelScript(this, _frameLabel, initExplosion);
gotoAndStop(_frameLabel);
if (_arg1 >= 20){
_noTimer = true;
};
}
override protected function initExplosion():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), explosionComplete);
FrameUtils.addFrameLabelScript(anim, "hit", attackCheck);
FrameUtils.addFrameLabelScript(anim, "hit2", attackCheck2);
if (_noTimer){
anim.gotoAndPlay("explode");
};
}
}
}//package adultswim.polarbearpayback.game
Section 68
//Wave (adultswim.polarbearpayback.game.Wave)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import smashing.utils.*;
public class Wave extends MovieClip {
protected var _groups:Array;
public var isClear:Boolean;// = true
protected var _currentGroup:int;
protected var _bear:Bear;
protected var _waves:Waves;
protected var _enemies:Array;
public function Wave(){
isClear = true;
super();
_groups = [new Array()];
_currentGroup = 0;
}
protected function startCurrentGroup():void{
var _local1:int;
var _local2:int;
var _local3:Enemy;
var _local4:Character;
_local2 = _enemies.length;
_local1 = 0;
while (_local1 < _local2) {
_local3 = _enemies[_local1];
_local4 = ClassUtils.create(_local3.type);
_local4.x = _local3.x;
_local4.y = _local3.y;
_local4.delay = _local3.delay;
_local1++;
};
}
public function addOnScreenEnemy(_arg1:Enemy):void{
isClear = false;
addEnemyToGroup(_arg1, 0);
}
protected function clearEnemies():void{
var _local1:Array;
var _local2:Character;
_local1 = new Array();
while (_enemies.length) {
_local2 = _enemies.pop();
if (_local2.dead){
removeChild(_local2);
} else {
_local1.push(_local2);
};
};
_enemies = _local1.slice();
if (_enemies.length > 0){
isClear = false;
};
}
public function addEnemyToGroup(_arg1:Enemy, _arg2:int):void{
var _local3:Array;
if (_groups.length < (_arg2 + 1)){
_local3 = new Array();
_local3.push(_arg1);
_groups.push(_local3);
} else {
_local3 = (_groups[_arg2] as Array);
_local3.push(_arg1);
};
}
public function start():void{
if (isClear){
releaseGroup();
};
}
protected function addProjectile(_arg1:Enemy, _arg2:int, _arg3:int=1):void{
var _local4:Character;
_local4 = ClassUtils.create(_arg1.type);
_local4.x = _arg1.x;
_local4.y = _arg1.y;
_local4.delay = _arg1.delay;
_local4.bear = _bear;
_local4.gameX = -(this.x);
_local4.projectileDirection = _arg2;
addChild(_local4);
_enemies.push(_local4);
_local4.scaleX = _arg3;
}
protected function removeEnemy(_arg1:Character):void{
var _local2:int;
_local2 = _enemies.indexOf(_arg1);
_enemies.splice(_local2, 1);
removeChild(_arg1);
}
protected function getWave(_arg1:int):void{
_groups = _waves.getNewWave(_arg1, this.x);
}
public function spawnEnemy(_arg1:Enemy):Character{
var _local2:Character;
_local2 = ClassUtils.create(_arg1.type);
_local2.x = _arg1.x;
_local2.y = _arg1.y;
_local2.bear = _bear;
_local2.gameX = -(this.x);
addChild(_local2);
_enemies.push(_local2);
return (_local2);
}
protected function releaseGroup():void{
var _local1:Array;
var _local2:int;
var _local3:int;
var _local4:Enemy;
var _local5:Character;
return;
}
protected function removeEnemyFromArray(_arg1:Character):void{
var _local2:int;
_local2 = _enemies.indexOf(_arg1);
_enemies.splice(_local2, 1);
}
private function resetWave(_arg1:Event):void{
clearEnemies();
_currentGroup = 0;
releaseGroup();
}
protected function clearWave():void{
clearEnemies();
_groups = [new Array()];
_currentGroup = 0;
}
}
}//package adultswim.polarbearpayback.game
Section 69
//Waves (adultswim.polarbearpayback.game.Waves)
package adultswim.polarbearpayback.game {
public class Waves {
protected var _groups:Array;
protected var _x:Number;
protected function waveFunction(_arg1:int):void{
}
public function getNewWave(_arg1:int, _arg2:Number):Array{
_x = _arg2;
_groups = new Array();
waveFunction(_arg1);
return (_groups);
}
protected function addEnemyToGroup(_arg1:Enemy, _arg2:int):void{
var _local3:Array;
if (_groups.length < (_arg2 + 1)){
_local3 = new Array();
_local3.push(_arg1);
_groups.push(_local3);
} else {
_local3 = (_groups[_arg2] as Array);
_local3.push(_arg1);
};
}
}
}//package adultswim.polarbearpayback.game
Section 70
//Weapon (adultswim.polarbearpayback.game.Weapon)
package adultswim.polarbearpayback.game {
import flash.display.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
public class Weapon extends MovieClip {
public function Weapon(){
stop();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
gotoAndStop(Game.weapon);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.WEAPON_ADDED));
}
public function set weapon(_arg1:int):void{
gotoAndStop(_arg1);
}
}
}//package adultswim.polarbearpayback.game
Section 71
//WhaleBoss (adultswim.polarbearpayback.game.WhaleBoss)
package adultswim.polarbearpayback.game {
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
import flash.filters.*;
public class WhaleBoss extends Character {
public const MAX_HEALTH:int = 130;
protected var ATTACK_FREQUENCY:Number;// = 1
protected var _vomit:Boolean;
private var _attackNum:int;
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
protected var attack2:HitArea;
protected var _runDirection:Array;
protected var _pursue:Boolean;// = true
protected var _throw:Boolean;
public function WhaleBoss(){
attack1 = new HitArea(-126, -103, 80, 6);
attack2 = new HitArea(0, -110, 0, 3);
ATTACK_FREQUENCY = 1;
_nextAttack = 1.5;
_pursue = true;
super();
health = MAX_HEALTH;
_nextInvuln = (health - 15);
_filters = this.filters;
}
protected function initFrameScripts():void{
}
protected function pursuitBehavior():void{
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + 80)){
if (_xPos > (bear.x + 100)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 100)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
} else {
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
}
private function walkAway():void{
if (_xPos < bear.x){
if (_xPos <= (_minX + 10)){
idle();
return;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos >= (_maxX - 10)){
idle();
return;
};
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
protected function closeAttack():void{
if (((((((attacking) || (hit))) || (dead))) || ((_invuln > 0)))){
return;
};
attacking = true;
_throw = false;
_attackNum = 0;
FrameUtils.addFrameLabelScript(this, "strike_1", null);
FrameUtils.addFrameLabelScript(this, "strike_1", initAttack);
if (currentLabel != "strike_1"){
if (anim){
anim.stop();
};
};
attack = attack1;
gotoAndStop("strike_1");
}
override protected function charHit(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
var _local4:Array;
super.charHit(_arg1);
if (health > 0){
if (health < _nextInvuln){
vomit();
_local2 = (_minX + ((_maxX - MIN_X) / 2));
_local3 = (_minY + ((_maxY - MIN_Y) / 2));
_runDirection = new Array();
if (_xPos < _local2){
_runDirection.push(RIGHT);
} else {
_runDirection.push(LEFT);
};
if (_yPos < _local3){
_runDirection.push(DOWN);
} else {
_runDirection.push(UP);
};
_invuln = 30;
_local4 = this.filters;
_local4.push(new GlowFilter(52479));
this.filters = _local4;
_nextInvuln = (_nextInvuln - 15);
_pursue = false;
};
};
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
}
protected function showProjectile():void{
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (_invuln > 0){
_invuln = (_invuln - _arg1);
if (_invuln <= 0){
this.filters = _filters;
_invuln = 0;
};
_direction = _runDirection[Math.floor((Math.random() * _runDirection.length))];
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
_pursue = false;
return;
};
if (_xPos >= _maxX){
moveLeft();
_pursue = false;
return;
};
if (_yPos <= _minY){
moveDown();
_pursue = false;
return;
};
if (_yPos >= _maxY){
moveUp();
_pursue = false;
return;
};
if (bear.x < this.x){
this.scaleX = _flip;
} else {
this.scaleX = -(_flip);
};
if (_invuln){
return;
};
if ((Math.abs((_xPos - bear.x)) < 180)){
if (_nextAttack < 0){
closeAttack();
};
return;
} else {
if (_nextAttack < 0){
rangeAttack();
return;
};
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if (_pursue){
pursuitBehavior();
} else {
evadeBehavior();
};
}
override public function moveRight():void{
_direction = RIGHT;
if (scaleX == -(_flip)){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function init():void{
_speed = 200;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 70;
updateHealthMeter((Math.floor(((health / MAX_HEALTH) * 99)) + 1));
}
protected function vomit():void{
if (dead){
return;
};
_vomit = true;
_attackNum = 1;
attacking = true;
_throw = false;
hit = false;
FrameUtils.addFrameLabelScript(this, "vomit", null);
FrameUtils.addFrameLabelScript(this, "vomit", initAttack);
if (currentLabel != "vomit"){
if (anim){
anim.stop();
};
};
attack = attack2;
gotoAndStop("vomit");
}
override public function moveLeft():void{
_direction = LEFT;
if (scaleX == _flip){
if (currentLabel != "walk"){
gotoAndStop("walk");
};
} else {
if (currentLabel != "walk_backwards"){
gotoAndStop("walk_backwards");
};
};
}
override protected function initAttack():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), attackComplete);
FrameUtils.addFrameLabelScript(anim, "hit", null);
FrameUtils.addFrameLabelScript(anim, "hit", attackCheck);
if (_vomit){
FrameUtils.addFrameLabelScript(anim, "hit2", attackCheck);
FrameUtils.addFrameLabelScript(anim, "hit3", attackCheck);
FrameUtils.addFrameLabelScript(anim, "hit4", attackCheck);
};
anim.play();
}
override protected function attackComplete():void{
if (_throw){
_attackNum++;
if (_attackNum > 1){
_attackNum = 0;
_pursue = true;
} else {
return;
};
} else {
_attackNum++;
if (_attackNum == 1){
vomit();
return;
};
_pursue = false;
_attackNum = 0;
_vomit = false;
_invuln = 0;
this.filters = _filters;
hit = false;
};
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
if (currentLabel != "hit"){
if (anim){
anim.stop();
};
};
super.updateDirection();
}
override protected function attackCheck():void{
if (_throw){
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.WHALE_BOSS_THROW));
} else {
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_ATTACK));
};
}
protected function evadeBehavior():void{
if (Math.abs((_xPos - bear.x)) > 400){
walkTowards();
} else {
if (Math.abs((_xPos - bear.x)) < 200){
walkAway();
} else {
if (Math.abs((_yPos - bear.y)) < 30){
idle();
return;
};
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
};
}
private function walkTowards():void{
if (_xPos > bear.x){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_direction == RIGHT){
return;
};
moveRight();
};
}
protected function rangeAttack():void{
if (((((((attacking) || (hit))) || (dead))) || ((_invuln > 0)))){
return;
};
attacking = true;
_throw = true;
FrameUtils.addFrameLabelScript(this, "throw", null);
FrameUtils.addFrameLabelScript(this, "throw", initAttack);
if (currentLabel != "throw"){
if (anim){
anim.stop();
};
};
gotoAndStop("throw");
}
}
}//package adultswim.polarbearpayback.game
Section 72
//WhaleBossProjectile (adultswim.polarbearpayback.game.WhaleBossProjectile)
package adultswim.polarbearpayback.game {
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class WhaleBossProjectile extends Character {
protected var _elasped:Number;
public var targetX:Number;
protected var attack1:HitArea;
protected var _startX:Number;
protected var duration:Number;// = 0.2
public function WhaleBossProjectile(){
attack1 = new HitArea(0, -100, 30, 10);
duration = (6 / 30);
super();
health = 1000;
attack = attack1;
}
override protected function addedToStage(_arg1:Event):void{
_arg1.stopImmediatePropagation();
_xPos = (_xLast = this.x);
_yPos = (_yLast = this.y);
_elasped = 0;
_startX = _xPos;
init();
FrameUtils.addFrameLabelScript(this, "hit", initHit);
FrameUtils.addFrameLabelScript(this, "hit", attackComplete, true);
addEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
play();
}
override protected function initHit():void{
attackCheck();
SoundInterface.instance.playSound("pbp_molotov_explosion", "sfx");
}
override public function update(_arg1:Number):void{
if (paused){
return;
};
_elasped = (_elasped + _arg1);
if (_elasped < duration){
_xPos = (_startX + (((targetX - _startX) / duration) * _elasped));
} else {
_xPos = targetX;
};
this.x = _xPos;
}
override public function collisionCheck(_arg1:Array):Boolean{
return (false);
}
override public function unpause():void{
super.unpause();
if (this.currentFrame < (this.totalFrames - 1)){
this.play();
};
}
override public function hitCheck(_arg1:HitArea):Boolean{
return (false);
}
override protected function initAttack():void{
}
override protected function attackComplete():void{
attacking = false;
stop();
dead = true;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.CHAR_DIED));
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.REMOVE_PROJECTILE));
}
override public function pause():void{
super.pause();
stop();
}
}
}//package adultswim.polarbearpayback.game
Section 73
//WhaleBully (adultswim.polarbearpayback.game.WhaleBully)
package adultswim.polarbearpayback.game {
import smashing.utils.*;
public class WhaleBully extends Character {
protected var ATTACK_FREQUENCY:Number;// = 2.5
protected var _lastAttack:int;// = 0
protected var _attackNum:int;// = 0
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
protected var attack2:HitArea;
protected var V_SPEED:Number;// = 80
protected var _pursue:Boolean;// = true
protected var H_SPEED:Number;// = 220
protected var _attackRepeat:int;// = 0
public function WhaleBully(){
attack1 = new HitArea(-44, -97, 100, 3);
attack2 = new HitArea(-59, -84, 100, 4);
H_SPEED = 220;
V_SPEED = 80;
_attackNum = 0;
_attackRepeat = 0;
_pursue = true;
_lastAttack = 0;
ATTACK_FREQUENCY = 2.5;
_nextAttack = 1.5;
super();
health = 12;
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "strike_1", initAttack);
FrameUtils.addFrameLabelScript(this, "strike_2", initAttack);
FrameUtils.addFrameLabelScript(this, "strike_3", initComboAttack);
}
override public function moveDown():void{
_speed = V_SPEED;
super.moveDown();
}
private function walkAwayHorizontal():void{
if (_xPos < bear.x){
if (_xPos < _minX){
_pursue = true;
};
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos > bear.x){
if (_xPos > _maxX){
_pursue = true;
};
if (_direction == RIGHT){
return;
};
moveRight();
};
};
}
protected function initComboAttack():void{
anim.addFrameScript((anim.totalFrames - 1), null);
anim.addFrameScript((anim.totalFrames - 1), attackComplete);
FrameUtils.addFrameLabelScript(anim, "hit", null);
FrameUtils.addFrameLabelScript(anim, "hit", attackCheckSpecial);
FrameUtils.addFrameLabelScript(anim, "hit2", null);
FrameUtils.addFrameLabelScript(anim, "hit2", attackCheck);
FrameUtils.addFrameLabelScript(anim, "hit3", null);
FrameUtils.addFrameLabelScript(anim, "hit3", attackCheck);
FrameUtils.addFrameLabelScript(anim, "hit4", null);
FrameUtils.addFrameLabelScript(anim, "hit4", attackCheck);
anim.play();
}
private function walkTowardsHorizontal():void{
if (_xPos > (bear.x + 50)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 50)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
private function walkAway():void{
if (Math.abs((_xPos - bear.x)) > Math.abs((_yPos - bear.y))){
if (_positionReset){
_pursue = true;
walkAwayVertical();
} else {
walkAwayHorizontal();
};
} else {
if (_positionReset){
_pursue = true;
walkAwayHorizontal();
} else {
walkAwayVertical();
};
};
}
private function walkTowardsVertical():void{
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
} else {
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
} else {
idle();
};
};
}
override public function moveUp():void{
_speed = V_SPEED;
super.moveUp();
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
attacking = true;
if (_lastAttack == 0){
anim.stop();
_lastAttack = 1;
attack = attack1;
gotoAndStop("strike_1");
} else {
if (_lastAttack == 1){
anim.stop();
_lastAttack = 2;
attack = attack2;
gotoAndStop("strike_2");
} else {
anim.stop();
_lastAttack = 0;
attack = attack2;
gotoAndStop("strike_3");
};
};
_pursue = false;
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
};
if (_xPos >= _maxX){
moveLeft();
};
if (_yPos <= _minY){
moveDown();
};
if (_yPos >= _maxY){
moveUp();
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if ((((((Math.abs((_xPos - bear.x)) < 150)) && ((Math.abs((_yPos - bear.y)) < 70)))) && (_pursue))){
if (_nextAttack <= 0){
playerAttack();
};
return;
};
if (!_pursue){
walkAway();
if (Math.abs((_xPos - bear.x)) > 600){
_pursue = true;
};
} else {
if (Math.abs((_xPos - bear.x)) > Math.abs((_yPos - bear.y))){
if (_positionReset){
walkTowardsVertical();
return;
};
walkTowardsHorizontal();
} else {
if (_positionReset){
walkTowardsHorizontal();
return;
};
walkTowardsVertical();
};
};
}
override public function moveRight():void{
_speed = H_SPEED;
super.moveRight();
}
private function walkAwayVertical():void{
if (_yPos < bear.y){
if (_yPos <= _minY){
_pursue = true;
};
if (_direction == UP){
return;
};
moveUp();
};
if (_yPos > bear.y){
if (_yPos >= _maxY){
_pursue = true;
};
if (_direction == DOWN){
return;
};
moveDown();
};
}
protected function attackCheckSpecial():void{
attackCheck();
attack = attack1;
}
override protected function init():void{
_speed = 100;
initFrameScripts();
moveLeft();
hitTarget.x = 0;
hitTarget.y = -75;
hitTarget.d = 85;
pickupArea = new HitArea(91, -5, 75);
pickupNum = 9;
}
override protected function updatePosition():void{
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
this.x = _xPos;
this.y = _yPos;
}
override public function moveLeft():void{
_speed = H_SPEED;
super.moveLeft();
}
override protected function attackComplete():void{
_attackNum++;
_invuln = 0;
if (_attackNum < _attackRepeat){
return;
};
_nextAttack = ATTACK_FREQUENCY;
anim.stop();
attacking = false;
_attackNum = 0;
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 74
//Whaler (adultswim.polarbearpayback.game.Whaler)
package adultswim.polarbearpayback.game {
import smashing.utils.*;
public class Whaler extends Character {
protected const ATTACK_RANDOMNESS:int = 50;
protected var ATTACK_FREQUENCY:Number;// = 1.5
protected var _nextAttack:Number;// = 1.5
protected var attack1:HitArea;
public function Whaler(){
attack1 = new HitArea(-80, -63, 70, 4);
ATTACK_FREQUENCY = 1.5;
_nextAttack = 1.5;
super();
health = 10;
pickupArea = new HitArea(81, -4, 75);
pickupNum = 4;
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "strike", initAttack);
}
public function moveVertical():void{
if (_yPos > bear.y){
if (_direction == UP){
return;
};
moveUp();
} else {
if (_yPos < bear.y){
if (_direction == DOWN){
return;
};
moveDown();
};
};
}
protected function playerAttack():void{
if (((((attacking) || (hit))) || (dead))){
return;
};
anim.stop();
attacking = true;
attack = attack1;
gotoAndStop("strike");
}
override public function update(_arg1:Number):void{
super.update(_arg1);
if (delay > 0){
return;
};
if (((((hit) || (attacking))) || (dead))){
return;
};
_nextAttack = (_nextAttack - _arg1);
if (_xPos <= _minX){
moveRight();
};
if (_xPos >= _maxX){
moveLeft();
};
if (_yPos <= _minY){
moveDown();
};
if (_yPos >= _maxY){
moveUp();
};
if (_positionReset){
switch (_forceDirection){
case LEFT:
moveLeft();
break;
case RIGHT:
moveRight();
break;
case UP:
moveUp();
break;
case DOWN:
moveDown();
break;
};
return;
};
if ((((Math.abs((_xPos - bear.x)) < 100)) && ((Math.abs(((_yPos - 30) - bear.y)) < 100)))){
if (_nextAttack <= 0){
playerAttack();
};
return;
};
if (Math.abs((_xPos - bear.x)) > (Math.abs((_yPos - bear.y)) + 80)){
moveHorizontal();
} else {
moveVertical();
};
}
public function moveHorizontal():void{
if (_xPos > (bear.x + 100)){
if (_direction == LEFT){
return;
};
moveLeft();
} else {
if (_xPos < (bear.x - 100)){
if (_direction == RIGHT){
return;
};
moveRight();
} else {
idle();
};
};
}
override protected function init():void{
_speed = 100;
initFrameScripts();
moveLeft();
hitTarget = new HitArea(0, -79, 70);
}
override protected function updatePosition():void{
_yPos = ((_yPos)>_maxY) ? _maxY : _yPos;
this.x = _xPos;
this.y = _yPos;
}
override protected function attackComplete():void{
anim.stop();
_nextAttack = ATTACK_FREQUENCY;
attacking = false;
updateDirection();
}
}
}//package adultswim.polarbearpayback.game
Section 75
//WhalerLift (adultswim.polarbearpayback.game.WhalerLift)
package adultswim.polarbearpayback.game {
import flash.events.*;
import flash.geom.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class WhalerLift extends GenericObject implements ISpawn {
protected var _triggered:Boolean;
protected var _type:String;
protected var _result:Boolean;
protected var _spawnY:Number;
protected var _spawnX:Number;
protected var _started:Boolean;
protected var _spawnPoint:Number;
protected var _pt:Point;
protected var _x:Number;
public function WhalerLift(){
stop();
_pt = new Point((this.x - 27), this.y);
hitTarget = new HitArea(23, -70, 90);
addEventListener(Event.ENTER_FRAME, update);
addEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
}
public function pause():void{
if (this.currentFrame > 1){
if (currentFrame < (this.totalFrames - 1)){
stop();
};
};
}
protected function removedFromStage(_arg1:Event):void{
removeEventListener(Event.REMOVED_FROM_STAGE, removedFromStage);
removeEventListener(Event.ENTER_FRAME, update);
}
public function get spawnY():Number{
return (_spawnY);
}
public function unpause():void{
if (this.currentFrame > 1){
if (currentFrame < (this.totalFrames - 1)){
play();
};
};
}
public function get spawnX():Number{
return (_spawnX);
}
public function spawn():void{
_type = "CLUBBER1";
_spawnX = (x + 104);
_spawnY = (y + 17.4);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPAWN_ENEMY));
_type = "BULLY";
_spawnX = (x + 166);
_spawnY = (y + 41.4);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPAWN_ENEMY));
_type = "CLUBBER2";
_spawnX = (x + 214);
_spawnY = (y + 69.4);
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPAWN_ENEMY));
}
public function get type():String{
return (_type);
}
protected function set type(_arg1:String):void{
_type = _arg1;
}
protected function set spawnPoint(_arg1:Number):void{
_spawnPoint = _arg1;
}
protected function introComplete():void{
_triggered = true;
stop();
spawn();
}
protected function update(_arg1:Event):void{
_x = parent.localToGlobal(_pt).x;
if (_x < 400){
if (!_started){
_started = true;
removeEventListener(Event.ENTER_FRAME, update);
FrameUtils.addFrameLabelScript(this, "static", introComplete);
gotoAndPlay("intro");
};
};
}
public function get spawnPoint():Number{
return (_spawnPoint);
}
}
}//package adultswim.polarbearpayback.game
Section 76
//WhaleShooter (adultswim.polarbearpayback.game.WhaleShooter)
package adultswim.polarbearpayback.game {
import smashing.soundcontroller.*;
public class WhaleShooter extends Shooter {
public function WhaleShooter(){
health = 9;
}
override protected function playSFX():void{
if (dead){
return;
};
SoundInterface.instance.playSound("pbp_shotgun", "sfx");
}
}
}//package adultswim.polarbearpayback.game
Section 77
//AdultSwimGamesButton (adultswim.polarbearpayback.ui.AdultSwimGamesButton)
package adultswim.polarbearpayback.ui {
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.ui.buttons.*;
public class AdultSwimGamesButton extends StandardButton {
override protected function onMouseClickEvent(_arg1:MouseEvent):void{
super.onMouseClickEvent(_arg1);
dispatchEvent(new UIEvent(UIEvent.AS_LINK));
}
}
}//package adultswim.polarbearpayback.ui
Section 78
//ContinuePopUp (adultswim.polarbearpayback.ui.ContinuePopUp)
package adultswim.polarbearpayback.ui {
import flash.events.*;
import flash.utils.*;
import flash.text.*;
import adultswim.polarbearpayback.events.*;
import smashing.ui.buttons.*;
public class ContinuePopUp extends PopUp {
public var yesBtn:StandardButton;
protected var _continue:Boolean;
protected var _timer:Timer;
public var continues:int;
public var numContinues:TextField;
public var noBtn:StandardButton;
protected function timerEventHandler(_arg1:Event):void{
_timer.stop();
_timer.removeEventListener(TimerEvent.TIMER, timerEventHandler);
_timer = null;
_continue = true;
close();
}
override protected function outroComplete():void{
_open = false;
gotoAndStop("off");
if (_continue){
dispatchEvent(new UIEvent(UIEvent.GAME_CONTINUED));
} else {
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.GAME_LOST));
};
}
override protected function keyReleased(_arg1:KeyboardEvent):void{
this.stage.removeEventListener(KeyboardEvent.KEY_UP, keyReleased);
}
override protected function introComplete():void{
super.introComplete();
numContinues.text = String(continues);
_timer = new Timer(3000);
_timer.addEventListener(TimerEvent.TIMER, timerEventHandler);
_timer.start();
}
}
}//package adultswim.polarbearpayback.ui
Section 79
//EndScreen (adultswim.polarbearpayback.ui.EndScreen)
package adultswim.polarbearpayback.ui {
import flash.display.*;
import flash.events.*;
import flash.text.*;
import adultswim.polarbearpayback.events.*;
import smashing.formatters.*;
import smashing.ui.buttons.*;
public class EndScreen extends MovieClip {
public var cmpSetObj;
public var submit:StandardButton;
public var continueBtn:StandardButton;
public var rankText:TextField;
protected var _score:int;
public var playAgain:StandardButton;
public var scoreText:TextField;
public function EndScreen(){
addEventListener(MouseEvent.CLICK, clickHandler);
}
public function set score(_arg1:int):void{
_score = _arg1;
scoreText.text = NumberBase.formatThousands(_score);
}
public function set rank(_arg1:String):void{
rankText.text = _arg1;
}
protected function clickHandler(_arg1:MouseEvent):void{
switch (_arg1.target){
case playAgain:
dispatchEvent(new UIEvent(UIEvent.PLAY_AGAIN));
break;
case continueBtn:
dispatchEvent(new UIEvent(UIEvent.CONTINUE));
break;
case submit:
submit.disabled = true;
cmpSetObj.local2 = Number(_score);
cmpSetObj.local1 = 2852;
cmpSetObj.clearListeners();
break;
default:
break;
};
}
}
}//package adultswim.polarbearpayback.ui
Section 80
//Hand (adultswim.polarbearpayback.ui.Hand)
package adultswim.polarbearpayback.ui {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import smashing.utils.*;
public class Hand extends MovieClip {
protected var _locked:Boolean;
public var showing:Boolean;
public function Hand(){
stop();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "intro", initIntro);
FrameUtils.addFrameLabelScript(this, "loopEnd", loop);
FrameUtils.addFrameLabelScript(this, "outro", outroComplete, true);
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
_locked = false;
initFrameScripts();
}
public function lock():void{
_locked = true;
show();
}
protected function initIntro():void{
}
public function unlock():void{
_locked = false;
}
protected function outroComplete():void{
gotoAndStop("off");
}
public function hide():void{
if (((!(showing)) || (_locked))){
return;
};
showing = false;
gotoAndPlay("outro");
}
protected function loop():void{
if (showing){
gotoAndPlay("loopStart");
};
}
public function show():void{
if (showing){
return;
};
showing = true;
gotoAndPlay("intro");
SoundInterface.instance.playSound("pbp_arrow", "sfx");
}
}
}//package adultswim.polarbearpayback.ui
Section 81
//LevelWinPopUp (adultswim.polarbearpayback.ui.LevelWinPopUp)
package adultswim.polarbearpayback.ui {
import smashing.soundcontroller.*;
import flash.text.*;
import adultswim.polarbearpayback.events.*;
import smashing.formatters.*;
public class LevelWinPopUp extends PopUp {
public var rank:String;
public var skullText:TextField;
public var assKickText:TextField;
public var skull:int;
public var total:int;
public var assKick:int;
public var totalText:TextField;
public var multiplierText:TextField;
public var score:int;
public var rankText:TextField;
public var scoreText:TextField;
override protected function outroComplete():void{
super.outroComplete();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.NEXT_LEVEL));
}
override public function open():void{
super.open();
SoundInterface.instance.playSound("beatBossSting.wav", "sfx");
}
override protected function introComplete():void{
scoreText.text = NumberBase.formatThousands(score);
assKickText.text = NumberBase.formatThousands(assKick);
skullText.text = NumberBase.formatThousands(skull);
multiplierText.text = (("(" + String((skull / 4000))) + "x4,000)");
totalText.text = NumberBase.formatThousands(total);
rankText.htmlText = rank;
super.introComplete();
}
}
}//package adultswim.polarbearpayback.ui
Section 82
//MenuPopUp (adultswim.polarbearpayback.ui.MenuPopUp)
package adultswim.polarbearpayback.ui {
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.ui.buttons.*;
public class MenuPopUp extends PopUp {
public var yesBtn:StandardButton;
protected var _quit:Boolean;
protected var _showHelp:Boolean;
public var helpBtn:StandardButton;
public var quitBtn:StandardButton;
public var noBtn:StandardButton;
public var resumeBtn:StandardButton;
override protected function outroComplete():void{
gotoAndStop("off");
if (_showHelp){
_open = false;
dispatchEvent(new UIEvent(UIEvent.SHOW_HELP));
return;
};
if (_quit){
_open = false;
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.GAME_LOST));
return;
};
super.outroComplete();
}
override protected function clickHandler(_arg1:MouseEvent):void{
_arg1.stopPropagation();
switch (_arg1.target){
case helpBtn:
_showHelp = true;
close();
break;
case quitBtn:
gotoAndStop("quit");
break;
case resumeBtn:
close();
break;
case yesBtn:
_quit = true;
close();
break;
case noBtn:
gotoAndStop("static");
break;
default:
break;
};
}
override protected function introComplete():void{
_quit = false;
_showHelp = false;
super.introComplete();
}
}
}//package adultswim.polarbearpayback.ui
Section 83
//MusicToggle (adultswim.polarbearpayback.ui.MusicToggle)
package adultswim.polarbearpayback.ui {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.media.*;
import flash.events.*;
public class MusicToggle extends MovieClip {
public function MusicToggle(){
addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
addEventListener(MouseEvent.CLICK, clickHandler);
}
private function toggleMusic():void{
var _local1:Boolean;
var _local2:SoundTransform;
_local1 = !(SoundInterface.instance.getAllSoundsAreMuted());
_local2 = new SoundTransform();
SoundInterface.instance.muteAll(_local1);
if (_local1){
gotoAndStop("off");
_local2.volume = 0;
SoundMixer.soundTransform = _local2;
} else {
gotoAndStop("on");
_local2.volume = 1;
SoundMixer.soundTransform = _local2;
};
}
protected function addedToStageHandler(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
if (SoundInterface.instance.getAllSoundsAreMuted()){
gotoAndStop("off");
} else {
gotoAndStop("on");
};
}
protected function clickHandler(_arg1:MouseEvent):void{
_arg1.stopPropagation();
toggleMusic();
}
}
}//package adultswim.polarbearpayback.ui
Section 84
//PopUp (adultswim.polarbearpayback.ui.PopUp)
package adultswim.polarbearpayback.ui {
import flash.display.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
import smashing.ui.buttons.*;
public class PopUp extends MovieClip {
protected var _open:Boolean;
public var closeBtn:StandardButton;
public function PopUp(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function initFrameScripts():void{
FrameUtils.addFrameLabelScript(this, "static", introComplete);
FrameUtils.addFrameLabelScript(this, "outro", outroComplete, true);
}
protected function addedToStage(_arg1:Event):void{
initFrameScripts();
}
protected function outroComplete():void{
gotoAndStop("off");
_open = false;
dispatchEvent(new UIEvent(UIEvent.UNPAUSE));
}
public function open():void{
if (_open){
return;
};
_open = true;
gotoAndPlay("intro");
dispatchEvent(new UIEvent(UIEvent.PAUSE));
}
protected function clickHandler(_arg1:MouseEvent):void{
_arg1.stopPropagation();
if (_arg1.target == closeBtn){
close();
};
}
protected function keyReleased(_arg1:KeyboardEvent):void{
this.stage.removeEventListener(KeyboardEvent.KEY_UP, keyReleased);
close();
}
protected function introComplete():void{
stop();
addEventListener(MouseEvent.CLICK, clickHandler);
this.stage.addEventListener(KeyboardEvent.KEY_UP, keyReleased);
}
public function close():void{
gotoAndPlay("outro");
removeEventListener(MouseEvent.CLICK, clickHandler);
this.stage.removeEventListener(KeyboardEvent.KEY_UP, keyReleased);
}
}
}//package adultswim.polarbearpayback.ui
Section 85
//WeaponCount (adultswim.polarbearpayback.ui.WeaponCount)
package adultswim.polarbearpayback.ui {
import adultswim.polarbearpayback.game.*;
import flash.display.*;
import flash.events.*;
import smashing.text.*;
public class WeaponCount extends MovieClip {
public var countTextContainer:MovieClipTextField;
public var weapon:MovieClip;
public function WeaponCount(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
public function set count(_arg1:int):void{
if (_arg1 > 0){
weapon.gotoAndStop((Game.weapon - 1));
countTextContainer.text = String(_arg1);
this.visible = true;
} else {
this.visible = false;
};
}
protected function addedToStage(_arg1:Event):void{
this.visible = false;
}
}
}//package adultswim.polarbearpayback.ui
Section 86
//Vignette (adultswim.polarbearpayback.ui.Vignette)
package adultswim.polarbearpayback.ui {
import flash.display.*;
import flash.events.*;
import smashing.utils.*;
public class Vignette extends MovieClip {
protected var _open:Boolean;
public function Vignette(){
stop();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
FrameUtils.addFrameLabelScript(this, "off", offFrame);
FrameUtils.addFrameLabelScript(this, "static", stop);
}
protected function offFrame():void{
stop();
_open = false;
}
public function open():void{
if (_open){
return;
};
_open = true;
gotoAndPlay("intro");
}
public function close():void{
if (_open){
gotoAndPlay("outro");
_open = false;
};
}
}
}//package adultswim.polarbearpayback.ui
Section 87
//Document (adultswim.polarbearpayback.Document)
package adultswim.polarbearpayback {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import adultswim.polarbearpayback.events.*;
import com.adultswim.Preroll.*;
import smashing.utils.*;
import flash.net.*;
import prerollAssets.*;
public class Document extends MovieClip {
protected const CONFIG_FILE:String = "/data/pbp_config.xml";
public var loader:Loader;
protected var _loadComplete:Boolean;
private var re:RegExp;
private var _prerollAssets:Class;
protected var _config:XML;
protected var _lsoLoaded:Boolean;
protected var _xmlLoaded:Boolean;
protected var _xmlLoader:URLLoader;
protected var _level:int;
private var _gameID:String;// = "polar_bear_payback"
protected var _preRollPlayed:Boolean;
public var main:Main;
private var mcPlay;
public function Document(){
_gameID = "polar_bear_payback";
super();
addFrameScript(7, frame8);
stop();
loadLSOData();
setConfigXML();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function init():void{
addEventListener(PolarBearGameEvent.LOAD_COMPLETE, loadComplete);
addEventListener(PolarBearGameEvent.SAVE, saveLSOData);
FrameUtils.addFrameLabelScript(this, "loader", initLoader);
FrameUtils.addFrameLabelScript(this, "main", initMain);
gotoAndStop("loader");
}
private function onXMLLoadComplete(_arg1:Event):void{
_config = new XML(_arg1.target.data);
init();
}
protected function addedToStage(_arg1:Event):void{
removeEventListener(Event.ADDED_TO_STAGE, addedToStage);
initPreRoll();
}
private function errorHandler(_arg1:IOErrorEvent):void{
trace(Error(_arg1).message);
trace(this, "Could not load document.");
}
public function preRollComplete():void{
trace((getQualifiedClassName(this) + ":: preRollComplete"));
_preRollPlayed = true;
init();
}
public function loadConfigXML():void{
var _local1:String;
var _local2:String;
_xmlLoader = new URLLoader();
_xmlLoader.addEventListener(Event.COMPLETE, onXMLLoadComplete);
_xmlLoader.addEventListener(IOErrorEvent.IO_ERROR, errorHandler);
_local1 = this.stage.loaderInfo.loaderURL;
_local2 = (_local1.substr(0, _local1.lastIndexOf("/")) + CONFIG_FILE);
_xmlLoader.load(new URLRequest(_local2));
}
protected function loadComplete(_arg1:Event=null):void{
trace((this + ".loadComplete"));
_loadComplete = true;
checkGameReady();
}
protected function initLoader():void{
trace((this + ".initLoader"));
loader.intro();
}
function frame8(){
stop();
}
private function saveLSOData(_arg1:Event):void{
var _local2:SharedObject;
_local2 = SharedObject.getLocal(_gameID, "/");
_level = main.level;
_local2.data.level = _level;
_local2.flush();
}
private function initPreRoll():void{
var _local1:Preroller;
trace((getQualifiedClassName(this) + ".initPreRoll()"));
GlobalVarContainer.vars.stage = stage;
GlobalVarContainer.vars.root = root;
GlobalVarContainer.vars.gameName = "polarbearpayback";
mcPlay = new _mcPlay();
trace(((getQualifiedClassName(this) + ".mcPlay:") + mcPlay));
GlobalVarContainer.vars.mcPlay = mcPlay;
re = new RegExp("http://i.cdn.turner.com/adultswim/games2/tools/swf/preroll-asg-syndicated(-\\w+)?-(\\d+)x(\\d+).flv", "i");
GlobalVarContainer.vars.flvPath = "http://i.cdn.turner.com/adultswim/games2/tools/swf/preroll-asg-syndicated-noplay-728x500.flv";
GlobalVarContainer.vars.flvWidth = parseInt(GlobalVarContainer.vars.flvPath.replace(re, "$2"));
GlobalVarContainer.vars.flvHeight = parseInt(GlobalVarContainer.vars.flvPath.replace(re, "$3"));
GlobalVarContainer.vars.stageWidth = stage.stageWidth;
GlobalVarContainer.vars.stageHeight = stage.stageHeight;
_local1 = (ClassUtils.create("_pbpPreRoll") as Preroller);
addChild(_local1);
}
public function setConfigXML():void{
_config = <data>
<settings>
<level_rankings>
<rank points="0"><![CDATA[Cuddle Uprising]]></rank>
<rank points="75000"><![CDATA[<font size = "29">Arctic Insurrection</font>]]></rank>
<rank points="150000"><![CDATA[Shock and Paw]]></rank>
<rank points="200000"><![CDATA[Polar Apocalypse]]></rank>
</level_rankings>
<game_rankings>
<rank points="0"><![CDATA[Hippie Huggy Bear]]></rank>
<rank points="150000"><![CDATA[Endangering Species]]></rank>
<rank points="300000"><![CDATA[Eco-Bearrorist]]></rank>
<rank points="600000"><![CDATA[Earth Angel of Death]]></rank>
</game_rankings>
<password><![CDATA[hotdog]]></password>
<!-- number of hitpoints out of a possible 100 bear will recieve for a first aid kit pickup -->
<firstAidValue>75</firstAidValue>
</settings>
</data>
;
}
private function checkGameReady():void{
if (((_preRollPlayed) && (_loadComplete))){
gotoAndStop("main");
};
}
private function loadLSOData():void{
var _local1:SharedObject;
_local1 = SharedObject.getLocal(_gameID, "/");
if (StringUtils.isEmptyString(_local1.data.level)){
_local1.data.level = "1";
_local1.flush();
};
_level = Number(_local1.data.level);
}
protected function initMain():void{
trace((this + ".initMain"));
main.init(_level, _config);
}
}
}//package adultswim.polarbearpayback
Section 88
//Loader (adultswim.polarbearpayback.Loader)
package adultswim.polarbearpayback {
import flash.display.*;
import flash.events.*;
import flash.utils.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Loader extends MovieClip {
private const LOAD_CHECK_TIME:Number = 10;
private var _initialized:Boolean;
public var progress:MovieClip;
private var _timer:Timer;
public function outro():void{
log("Outro.");
gotoAndPlay("outro");
}
public function init():void{
if (_initialized){
return;
};
_initialized = true;
_timer = new Timer(LOAD_CHECK_TIME, 0);
_timer.addEventListener(TimerEvent.TIMER, timerListener);
_timer.start();
log("Inited.");
}
private function timerListener(_arg1:TimerEvent):void{
var _local2:Number;
var _local3:Number;
var _local4:Number;
_local2 = stage.loaderInfo.bytesTotal;
_local3 = stage.loaderInfo.bytesLoaded;
_local4 = Math.floor(((_local3 / _local2) * 100));
updatePercentage(_local4);
if (_local4 >= 100){
clearTimer();
outro();
};
}
private function initIntro():void{
init();
}
private function updatePercentage(_arg1:Number):void{
if (_arg1 < 0){
_arg1 = 1;
} else {
if (_arg1 >= 100){
_arg1 = 100;
};
};
progress.gotoAndStop(_arg1);
}
private function log(_arg1:Object):void{
Debug.log(((getQualifiedClassName(this) + ": ") + _arg1));
}
private function outroComplete():void{
log("Outro Complete.");
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.LOAD_COMPLETE));
stop();
}
public function intro():void{
var _local1:Number;
var _local2:Number;
var _local3:Number;
log("Intro.");
FrameUtils.addFrameLabelScript(this, "static", introComplete);
FrameUtils.addFrameLabelScript(this, "intro", initIntro);
FrameUtils.addFrameLabelScript(this, "outro", outroComplete, true);
_local1 = stage.loaderInfo.bytesTotal;
_local2 = stage.loaderInfo.bytesLoaded;
_local3 = Math.floor(((_local2 / _local1) * 100));
if (_local3 >= 100){
gotoAndStop("off");
outroComplete();
} else {
gotoAndPlay("intro");
};
}
public function GameLoader(){
log("Class created.");
}
private function introComplete():void{
log("Intro Complete.");
stop();
}
private function clearTimer():void{
_timer.stop();
_timer.removeEventListener(TimerEvent.TIMER, timerListener);
_timer = null;
}
}
}//package adultswim.polarbearpayback
Section 89
//Main (adultswim.polarbearpayback.Main)
package adultswim.polarbearpayback {
import adultswim.polarbearpayback.game.*;
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import com.adultswim.Preroll.*;
import smashing.utils.*;
import flash.net.*;
import adultswim.polarbearpayback.ui.*;
public class Main extends MovieClip {
public const NUM_CONTINUES:int = 2;
public const START_LEVEL:int = 1;
protected var _continues:int;
protected var _paidBack:int;// = 0
public var transition:Transition;
protected var _config:XML;
public var winScreen:EndScreen;
public var cutscene:CutScene;
public var localization:XMLList;
protected var _level:int;// = 1
protected var _forceHelp:Boolean;// = true
public var finale:MovieClip;
public var splashScreen:Splash;
protected var _score:int;// = 0
public var gameEngine:GameEngine;
public var loseScreen:EndScreen;
public function Main(){
_level = 1;
_forceHelp = true;
_score = 0;
_paidBack = 0;
super();
stop();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function initFinale():void{
finale.addFrameScript((finale.totalFrames - 1), finaleComplete);
finale.start();
}
protected function gotoGame(_arg1:Event):void{
removeEventListener(TransitionEvent.TRANSITION_OPENED, gotoGame);
gotoAndStop("game");
}
protected function finaleComplete():void{
finale.stop();
finale.clearListeners();
gameWon();
}
public function init(_arg1:int, _arg2:XML):void{
_level = _arg1;
_config = _arg2;
if (_level > 1){
splashScreen.continueBtn.disabled = false;
} else {
splashScreen.continueBtn.disabled = true;
};
addEventListener(PolarBearGameEvent.SPLASH_NEW_GAME, newGame);
addEventListener(PolarBearGameEvent.SPLASH_CONTINUE, continueGame);
addEventListener(PolarBearGameEvent.CUTSCENE_COMPLETE, cutSceneComplete);
addEventListener(PolarBearGameEvent.NEXT_LEVEL, nextLevel);
addEventListener(PolarBearGameEvent.GAME_LOST, gameLost);
addEventListener(PolarBearGameEvent.GAME_WON, gameWon);
addEventListener(PolarBearGameEvent.PAYBACK, payBack);
addEventListener(UIEvent.GAME_CONTINUED, gameContinued);
addEventListener(UIEvent.PLAY_AGAIN, playAgain);
addEventListener(UIEvent.CONTINUE, newContinue);
addEventListener(UIEvent.AS_LINK, linkClicked);
FrameUtils.addFrameLabelScript(this, "game", initGame);
FrameUtils.addFrameLabelScript(this, "cutscene_1", initCutScene);
FrameUtils.addFrameLabelScript(this, "cutscene_2", initCutScene);
FrameUtils.addFrameLabelScript(this, "cutscene_3", initCutScene);
FrameUtils.addFrameLabelScript(this, "cutscene_4", initFinale);
FrameUtils.addFrameLabelScript(this, "win", initWin);
FrameUtils.addFrameLabelScript(this, "lose", initLose);
_continues = NUM_CONTINUES;
}
protected function addedToStage(_arg1:Event):void{
}
protected function initGame():void{
transition.close();
gameEngine.transition = transition;
gameEngine.continues = _continues;
gameEngine.showLevel(_level, _forceHelp, _score, _config);
gameEngine.ui.points(_score);
gameEngine.ui.payBack(_paidBack);
_forceHelp = false;
}
protected function gotoLose(_arg1:Event):void{
removeEventListener(TransitionEvent.TRANSITION_OPENED, gotoLose);
gotoAndStop("lose");
}
protected function gameLost(_arg1:Event):void{
_score = gameEngine.score;
addEventListener(TransitionEvent.TRANSITION_OPENED, gotoLose);
transition.open();
}
protected function gameWon(_arg1:Event=null):void{
addEventListener(TransitionEvent.TRANSITION_OPENED, gotoWin);
transition.open();
}
protected function initLose():void{
saveData();
loseScreen.score = _score;
transition.close();
}
protected function continueGame(_arg1:Event):void{
gameTransition();
}
protected function newContinue(_arg1:Event):void{
_continues = NUM_CONTINUES;
_score = 0;
_paidBack = 0;
gameTransition();
}
public function get level():int{
return (_level);
}
protected function showCutScene(_arg1:Event):void{
transition.close();
removeEventListener(TransitionEvent.TRANSITION_OPENED, showCutScene);
gotoAndStop(("cutscene_" + _level));
}
protected function gotoWin(_arg1:Event):void{
removeEventListener(TransitionEvent.TRANSITION_OPENED, gotoWin);
gotoAndStop("win");
}
protected function nextLevel(_arg1:Event):void{
_level++;
saveData();
gameEngine.pause();
_score = gameEngine.score;
gotoAndStop(("cutscene_" + _level));
}
protected function initCutScene():void{
transition.forceClose();
cutscene.level = _level;
}
protected function initWin():void{
_level = START_LEVEL;
saveData();
winScreen.score = _score;
winScreen.rank = getRank(_score);
transition.close();
}
protected function newGame(_arg1:Event):void{
_level = START_LEVEL;
gameTransition();
}
private function getRank(_arg1:int):String{
var _local2:XMLList;
var _local3:int;
var _local4:int;
var _local5:int;
_local2 = _config.settings.game_rankings.rank;
_local4 = _local2.length();
_local5 = 0;
_local3 = 0;
while (_local3 < _local4) {
if (_arg1 >= _local2[_local3].@points){
_local5 = _local3;
};
_local3++;
};
return (_local2[_local5]);
}
protected function payBack(_arg1:Event):void{
_paidBack++;
gameEngine.ui.payBack(_paidBack);
}
protected function cutSceneComplete(_arg1:Event):void{
gotoAndStop("game");
}
protected function playAgain(_arg1:Event):void{
_continues = NUM_CONTINUES;
_level = START_LEVEL;
_score = 0;
_paidBack = 0;
gameTransition();
}
protected function linkClicked(_arg1:Event):void{
var _local2:LocalConnection;
var _local3:String;
var _local4:String;
var _local5:URLRequest;
_local2 = new LocalConnection();
_local3 = _local2.domain;
_local4 = (("http://games.adultswim.com/?cid=GAME_Ext_polarbearpayback_" + _local3) + "_game_more");
_local5 = new URLRequest(_local4);
navigateToURL(_local5, "_blank");
}
private function saveData():void{
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SAVE));
}
protected function gameContinued(_arg1:Event):void{
_continues--;
gameEngine.continues = _continues;
gameEngine.continueGame();
}
protected function gameTransition(_arg1:Event=null):void{
SoundInterface.instance.stopGroup("music");
addEventListener(TransitionEvent.TRANSITION_OPENED, showCutScene);
transition.open();
}
}
}//package adultswim.polarbearpayback
Section 90
//Splash (adultswim.polarbearpayback.Splash)
package adultswim.polarbearpayback {
import flash.display.*;
import flash.events.*;
import adultswim.polarbearpayback.events.*;
import adultswim.polarbearpayback.ui.*;
import smashing.ui.buttons.*;
public class Splash extends MovieClip {
public var continueBtn:StandardButton;
public var creditsBtn:StandardButton;
public var playBtn:StandardButton;
public var credits:PopUp;
public function Splash(){
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
protected function addedToStage(_arg1:Event):void{
addEventListener(MouseEvent.CLICK, clickHandler);
}
protected function clearListeners():void{
removeEventListener(MouseEvent.CLICK, clickHandler);
}
protected function clickHandler(_arg1:MouseEvent):void{
switch (_arg1.target){
case playBtn:
clearListeners();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPLASH_NEW_GAME));
break;
case continueBtn:
clearListeners();
dispatchEvent(new PolarBearGameEvent(PolarBearGameEvent.SPLASH_CONTINUE));
break;
case creditsBtn:
credits.open();
break;
default:
break;
};
}
}
}//package adultswim.polarbearpayback
Section 91
//Transition (adultswim.polarbearpayback.Transition)
package adultswim.polarbearpayback {
import flash.display.*;
import adultswim.polarbearpayback.events.*;
import smashing.utils.*;
public class Transition extends MovieClip {
private const STATIC_FRAME:String = "static";
private const OFF_FRAME:String = "off";
private const INTRO_FRAME:String = "intro";
private const OUTRO_COMPLETE_FRAME:String = "complete";
private const OUTRO_FRAME:String = "outro";
public function setStatic():void{
FrameUtils.addFrameLabelScript(this, STATIC_FRAME, staticFrameHandler);
this.gotoAndStop(STATIC_FRAME);
}
public function open():void{
if ((((this.currentLabel == INTRO_FRAME)) || ((this.currentLabel == STATIC_FRAME)))){
return;
};
FrameUtils.addFrameLabelScript(this, STATIC_FRAME, staticFrameHandler);
this.gotoAndPlay(INTRO_FRAME);
}
private function outroCompleteFrameHandler():void{
FrameUtils.addFrameLabelScript(this, OUTRO_COMPLETE_FRAME, null);
this.stop();
dispatchScreensEvent(TransitionEvent.TRANSITION_CLOSED);
}
private function staticFrameHandler():void{
FrameUtils.addFrameLabelScript(this, STATIC_FRAME, null);
this.stop();
dispatchScreensEvent(TransitionEvent.TRANSITION_OPENED);
}
public function forceClose():void{
gotoAndStop("off");
}
private function dispatchScreensEvent(_arg1:String):void{
var _local2:TransitionEvent;
_local2 = new TransitionEvent(_arg1);
dispatchEvent(_local2);
}
public function close():void{
if ((((this.currentLabel == OUTRO_FRAME)) || ((this.currentLabel == OUTRO_COMPLETE_FRAME)))){
return;
};
FrameUtils.addFrameLabelScript(this, OUTRO_COMPLETE_FRAME, outroCompleteFrameHandler);
this.gotoAndPlay(OUTRO_FRAME);
}
}
}//package adultswim.polarbearpayback
Section 92
//UI (adultswim.polarbearpayback.UI)
package adultswim.polarbearpayback {
import flash.display.*;
import smashing.soundcontroller.*;
import flash.events.*;
import flash.text.*;
import adultswim.polarbearpayback.events.*;
import smashing.formatters.*;
public class UI extends MovieClip {
protected const CHARGE_TIME:Number = 15;
protected const MAX_HEALTH:int = 172;
public var chargeMeter:MovieClip;
public var heartBonus:int;
public var heart:MovieClip;
public var healthMeter:MovieClip;
public var paidback:TextField;
public var charge:Number;// = 0
public var livesText:TextField;
public var scoreText:TextField;
public function UI(){
charge = 0;
super();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
}
public function points(_arg1:int):void{
scoreText.text = NumberBase.formatThousands(_arg1);
}
public function resetCharge():void{
charge = 0;
}
protected function addedToStage(_arg1:Event):void{
chargeMeter.stop();
healthMeter.width = MAX_HEALTH;
heartBonus = 0;
}
public function updateHealth(_arg1:Number):void{
healthMeter.width = (_arg1 * MAX_HEALTH);
}
public function update(_arg1:Number):void{
if (charge < CHARGE_TIME){
charge = (charge + _arg1);
if (charge >= CHARGE_TIME){
charge = CHARGE_TIME;
dispatchEvent(new UIEvent(UIEvent.CHARGE_READY));
SoundInterface.instance.playSound("chargedUp.mp3", "sfx", 2);
};
chargeMeter.gotoAndStop((Math.floor(((charge / CHARGE_TIME) * 99)) + 1));
};
}
public function throb(_arg1:Boolean):void{
heart.gotoAndPlay("on");
if (_arg1){
heartBonus++;
};
}
public function payBack(_arg1:int):void{
paidback.text = String(_arg1);
}
}
}//package adultswim.polarbearpayback
Section 93
//wav (Amped_Violence_loop.wav)
package Amped_Violence_loop {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package Amped_Violence_loop
Section 94
//wav (beatBossSting.wav)
package beatBossSting {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package beatBossSting
Section 95
//wav (Broken_Bones_Full_loop.wav)
package Broken_Bones_Full_loop {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package Broken_Bones_Full_loop
Section 96
//mp3 (chargedUp.mp3)
package chargedUp {
import flash.media.*;
public dynamic class mp3 extends Sound {
}
}//package chargedUp
Section 97
//wav (Close_Encounter_Loop_A.wav)
package Close_Encounter_Loop_A {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package Close_Encounter_Loop_A
Section 98
//IntUtil (com.adobe.utils.IntUtil)
package com.adobe.utils {
public class IntUtil {
private static var hexChars:String = "0123456789abcdef";
public static function toHex(_arg1:int, _arg2:Boolean=false):String{
var _local3:String;
var _local4:int;
var _local5:int;
_local3 = "";
if (_arg2){
_local4 = 0;
while (_local4 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> (((3 - _local4) * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> ((3 - _local4) * 8)) & 15))));
_local4++;
};
} else {
_local5 = 0;
while (_local5 < 4) {
_local3 = (_local3 + (hexChars.charAt(((_arg1 >> ((_local5 * 8) + 4)) & 15)) + hexChars.charAt(((_arg1 >> (_local5 * 8)) & 15))));
_local5++;
};
};
return (_local3);
}
public static function ror(_arg1:int, _arg2:int):uint{
var _local3:int;
_local3 = (32 - _arg2);
return (((_arg1 << _local3) | (_arg1 >>> (32 - _local3))));
}
public static function rol(_arg1:int, _arg2:int):int{
return (((_arg1 << _arg2) | (_arg1 >>> (32 - _arg2))));
}
}
}//package com.adobe.utils
Section 99
//ClickHandler (com.adultswim.Preroll.ClickHandler)
package com.adultswim.Preroll {
import flash.display.*;
import flash.events.*;
import flash.net.*;
public class ClickHandler extends Sprite {
private var oRoot:Object;
private var loadDebug:Function;
private var stageWidth:Number;
private var strDomain:String;
private var video:Object;
private var stream:Object;
private var gameName:String;
private var blackBg:Object;
private var stageHeight:Number;
private var oStage:Object;
private var mcPlay:Object;
public function ClickHandler(){
mcPlay = GlobalVarContainer.vars.mcPlay;
oStage = GlobalVarContainer.vars.stage;
oRoot = GlobalVarContainer.vars.root;
stageWidth = GlobalVarContainer.vars.stageWidth;
stageHeight = GlobalVarContainer.vars.stageHeight;
stream = GlobalVarContainer.vars.stream;
video = GlobalVarContainer.vars.video;
blackBg = GlobalVarContainer.vars.blackBg;
gameName = GlobalVarContainer.vars.gameName;
strDomain = GlobalVarContainer.vars.strDomain;
loadDebug = GlobalVarContainer.vars.loadDebug;
super();
trace("ClickHandler initiated");
oStage.addEventListener(MouseEvent.CLICK, clickHandler);
}
private function goToURL(_arg1:Boolean=false):void{
var _local2:String;
var _local3:String;
var _local4:URLVariables;
var _local5:URLRequest;
_local2 = "http://games.adultswim.com";
_local3 = "";
switch (_arg1){
case true:
_local3 = "_end";
break;
default:
break;
};
_local4 = new URLVariables();
_local4.cid = ((((("GAME_Ext_" + gameName) + "_") + strDomain) + "_preroll") + _local3);
trace("variables.cid", _local4.cid);
_local5 = new URLRequest(_local2);
_local5.data = _local4;
navigateToURL(_local5, "_blank");
}
private function clickHandler(_arg1:MouseEvent):void{
switch (true){
case mcPlay.hitTestPoint(oStage.mouseX, oStage.mouseY, true):
trace("mcPlay", this, this["parent"]);
oStage.removeChild(mcPlay);
oStage.removeChild(video);
oStage.removeChild(blackBg);
oStage.removeEventListener(MouseEvent.CLICK, clickHandler);
oRoot.preRollComplete();
break;
default:
goToURL(GlobalVarContainer.vars.bReady);
trace("clickHandler activated");
break;
};
GlobalVarContainer.vars.stream.resume();
}
}
}//package com.adultswim.Preroll
Section 100
//GetVars (com.adultswim.Preroll.GetVars)
package com.adultswim.Preroll {
import flash.display.*;
import flash.net.*;
public class GetVars extends Sprite {
private var oRoot:Object;
private var my_lc:LocalConnection;
public function GetVars(){
oRoot = GlobalVarContainer.vars.root;
my_lc = new LocalConnection();
super();
trace("~~~~", oRoot, GlobalVarContainer.vars.strBase);
switch (oRoot.loaderInfo.parameters.strBase){
case undefined:
case null:
case "":
GlobalVarContainer.vars.strBase = (("http://i.cdn.turner.com/adultswim/games/hs/" + GlobalVarContainer.vars.gameName) + "/");
break;
default:
try {
GlobalVarContainer.vars.strBase = oRoot.loaderInfo.parameters.strBase;
} catch(e:Error) {
};
break;
};
switch (oRoot.loaderInfo.parameters.strDomain){
case undefined:
case null:
case "":
GlobalVarContainer.vars.strDomain = my_lc.domain;
break;
default:
try {
GlobalVarContainer.vars.strDomain = oRoot.loaderInfo.parameters.strDomain;
} catch(e:Error) {
};
break;
};
}
}
}//package com.adultswim.Preroll
Section 101
//GlobalVarContainer (com.adultswim.Preroll.GlobalVarContainer)
package com.adultswim.Preroll {
public class GlobalVarContainer {
public static var vars:Object = [];
}
}//package com.adultswim.Preroll
Section 102
//Navigation (com.adultswim.Preroll.Navigation)
package com.adultswim.Preroll {
import flash.display.*;
import flash.events.*;
public class Navigation extends Sprite {
private var play:Object;
private var stageWidth:Number;
private var stream:Object;
private var stageHeight:Number;
private var oStage:Object;
public function Navigation(){
play = GlobalVarContainer.vars.mcPlay;
oStage = GlobalVarContainer.vars.stage;
stageWidth = GlobalVarContainer.vars.stageWidth;
stageHeight = GlobalVarContainer.vars.stageHeight;
stream = GlobalVarContainer.vars.stream;
super();
trace("Navigation initiated");
oStage.addChild(play);
play.mcPlayBtn.gotoAndPlay(2);
play.scaleX = (play.scaleY = 0.5);
play.x = ((stageWidth / 2) - (play.width / 2));
play.y = 289;
play.addEventListener(MouseEvent.MOUSE_OVER, clickMethod);
play.addEventListener(MouseEvent.MOUSE_OUT, clickMethod);
play.addEventListener(MouseEvent.MOUSE_DOWN, clickMethod);
}
public function clickMethod(_arg1:MouseEvent):void{
switch (_arg1.type){
case "mouseOver":
play.gotoAndStop("over");
break;
case "mouseOut":
play.gotoAndStop("off");
break;
case "click":
play.gotoAndStop("down");
break;
default:
break;
};
}
}
}//package com.adultswim.Preroll
Section 103
//NetStreamer (com.adultswim.Preroll.NetStreamer)
package com.adultswim.Preroll {
import flash.display.*;
import flash.media.*;
import flash.events.*;
import flash.net.*;
public class NetStreamer extends Sprite {
public var nav:Navigation;
private var videoURL:String;
private var flvWidth:Number;
private var oVideo:Object;
private var stageWidth:Number;
private var stream:NetStream;
private var flvHeight:Number;
private var stageHeight:Number;
private var oStage:Object;
private var connection:NetConnection;
public function NetStreamer(){
flvHeight = GlobalVarContainer.vars.flvHeight;
flvWidth = GlobalVarContainer.vars.flvWidth;
oStage = GlobalVarContainer.vars.stage;
stageHeight = GlobalVarContainer.vars.stageHeight;
stageWidth = GlobalVarContainer.vars.stageWidth;
videoURL = GlobalVarContainer.vars.flvPath;
super();
connection = new NetConnection();
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
connection.connect(null);
}
private function connectStream():void{
var _local1:Sprite;
var _local2:Video;
var _local3:MovieClip;
stream = new NetStream(connection);
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
stream.client = new CustomClient();
_local1 = new Sprite();
_local1.graphics.beginFill(0);
_local1.graphics.drawRect(0, 0, stageWidth, stageHeight);
oStage.addChild(_local1);
GlobalVarContainer.vars.blackBg = _local1;
_local2 = new Video();
GlobalVarContainer.vars.video = _local2;
trace(((("!!!!!!!! width: " + flvWidth) + " : ") + flvHeight));
_local2.x = ((stageWidth - flvWidth) / 2);
_local2.y = ((stageHeight - flvHeight) / 2);
_local2.width = flvWidth;
_local2.height = flvHeight;
_local2.attachNetStream(stream);
stream.play(videoURL);
GlobalVarContainer.vars.stream = stream;
oStage.addChild(_local2);
_local3 = new MovieClip();
}
private function netStatusHandler(_arg1:NetStatusEvent):void{
switch (_arg1.info.code){
case "NetConnection.Connect.Success":
connectStream();
break;
case "NetStream.Play.StreamNotFound":
trace(("Stream not found: " + videoURL));
break;
case "NetStream.Play.Stop":
trace("All Stop, Aye");
break;
default:
break;
};
}
private function securityErrorHandler(_arg1:SecurityErrorEvent):void{
trace(("securityErrorHandler: " + _arg1));
}
}
}//package com.adultswim.Preroll
class CustomClient {
public var nav:Navigation;
private function CustomClient(){
}
public function onCuePoint(_arg1:Object):void{
trace(((((("cuepoint: time=" + _arg1.time) + " name=") + _arg1.name) + " type=") + _arg1.type));
switch (_arg1.name){
case "enterPlay":
GlobalVarContainer.vars.bReady = true;
nav = new Navigation();
break;
default:
break;
};
}
public function onXMPData(_arg1:Object):void{
}
public function onMetaData(_arg1:Object):void{
trace(((((((("metadata: duration=" + _arg1.duration) + " width=") + _arg1.width) + " height=") + _arg1.height) + " framerate=") + _arg1.framerate));
}
}
Section 104
//Preroller (com.adultswim.Preroll.Preroller)
package com.adultswim.Preroll {
import flash.display.*;
import flash.net.*;
public class Preroller extends Sprite {
private var clickHandler:ClickHandler;
private var getVars:GetVars;
private var myVid:NetStreamer;
private var oStage:Object;
private var oRoot:Object;
private var my_lc:LocalConnection;
public function Preroller(){
my_lc = new LocalConnection();
super();
trace("!@", my_lc.domain);
switch (stage){
case null:
case undefined:
case "":
oStage = GlobalVarContainer.vars.stage;
trace("@@@@stage is null. Now set to object: ", oStage);
break;
default:
oStage = stage;
trace("@@@@stage is available!");
break;
};
switch (root){
case null:
case undefined:
case "":
oRoot = GlobalVarContainer.vars.root;
trace("####root is null. Now set to object: ", oStage);
break;
default:
oRoot = root;
trace("####root is available!");
break;
};
trace("$$$$jumbotron", oStage, oRoot, "::", GlobalVarContainer.vars.root);
getVars = new GetVars();
myVid = new NetStreamer();
clickHandler = new ClickHandler();
}
}
}//package com.adultswim.Preroll
Section 105
//wav (cutsceneSkipSting.wav)
package cutsceneSkipSting {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package cutsceneSkipSting
Section 106
//wav (elevatorMusic.wav)
package elevatorMusic {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package elevatorMusic
Section 107
//wav (elevatorNoise.wav)
package elevatorNoise {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package elevatorNoise
Section 108
//wav (Final_Fly_Mast_Full_loop.wav)
package Final_Fly_Mast_Full_loop {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package Final_Fly_Mast_Full_loop
Section 109
//mp3 (oneHit_1.mp3)
package oneHit_1 {
import flash.media.*;
public dynamic class mp3 extends Sound {
}
}//package oneHit_1
Section 110
//wav (PBP_CUT_SCENES_music_1.wav)
package PBP_CUT_SCENES_music_1 {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package PBP_CUT_SCENES_music_1
Section 111
//wav (PBP_CUT_SCENES_music_2.wav)
package PBP_CUT_SCENES_music_2 {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package PBP_CUT_SCENES_music_2
Section 112
//wav (PBP_CUT_SCENES_music_3.wav)
package PBP_CUT_SCENES_music_3 {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package PBP_CUT_SCENES_music_3
Section 113
//wav (PBP_CUT_SCENES_music_4.wav)
package PBP_CUT_SCENES_music_4 {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package PBP_CUT_SCENES_music_4
Section 114
//_assets_973 (pbp_fla._assets_973)
package pbp_fla {
import flash.display.*;
public dynamic class _assets_973 extends MovieClip {
public var bear:pbp_bear;
}
}//package pbp_fla
Section 115
//_weapons_632 (pbp_fla._weapons_632)
package pbp_fla {
import flash.display.*;
public dynamic class _weapons_632 extends MovieClip {
public var animatedPickup:MovieClip;
}
}//package pbp_fla
Section 116
//bear_head_1_244 (pbp_fla.bear_head_1_244)
package pbp_fla {
import flash.display.*;
public dynamic class bear_head_1_244 extends MovieClip {
public function bear_head_1_244(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 117
//bigboss_arm_strike__1399 (pbp_fla.bigboss_arm_strike__1399)
package pbp_fla {
import flash.display.*;
public dynamic class bigboss_arm_strike__1399 extends MovieClip {
public function bigboss_arm_strike__1399(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 118
//bigboss_bite_1385 (pbp_fla.bigboss_bite_1385)
package pbp_fla {
import flash.display.*;
public dynamic class bigboss_bite_1385 extends MovieClip {
public function bigboss_bite_1385(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 119
//bigboss_bitecopy_1425 (pbp_fla.bigboss_bitecopy_1425)
package pbp_fla {
import flash.display.*;
public dynamic class bigboss_bitecopy_1425 extends MovieClip {
public function bigboss_bitecopy_1425(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 120
//bigboss_fire_ani_1395 (pbp_fla.bigboss_fire_ani_1395)
package pbp_fla {
import flash.display.*;
public dynamic class bigboss_fire_ani_1395 extends MovieClip {
public function bigboss_fire_ani_1395(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 121
//cleavercopy2_749 (pbp_fla.cleavercopy2_749)
package pbp_fla {
import flash.display.*;
public dynamic class cleavercopy2_749 extends MovieClip {
public function cleavercopy2_749(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 122
//crate_destruct_ani2_623 (pbp_fla.crate_destruct_ani2_623)
package pbp_fla {
import flash.display.*;
public dynamic class crate_destruct_ani2_623 extends MovieClip {
public var pickup:MovieClip;
public function crate_destruct_ani2_623(){
addFrameScript(19, frame20);
}
function frame20(){
stop();
}
}
}//package pbp_fla
Section 123
//enemy_seal_boss_head_703 (pbp_fla.enemy_seal_boss_head_703)
package pbp_fla {
import flash.display.*;
public dynamic class enemy_seal_boss_head_703 extends MovieClip {
public function enemy_seal_boss_head_703(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 124
//enemy_seal_shooter_die_1066 (pbp_fla.enemy_seal_shooter_die_1066)
package pbp_fla {
import flash.display.*;
public dynamic class enemy_seal_shooter_die_1066 extends MovieClip {
public var pickup:MovieClip;
}
}//package pbp_fla
Section 125
//enemy_seal_shooter_rifle_fire_1035 (pbp_fla.enemy_seal_shooter_rifle_fire_1035)
package pbp_fla {
import flash.display.*;
public dynamic class enemy_seal_shooter_rifle_fire_1035 extends MovieClip {
public function enemy_seal_shooter_rifle_fire_1035(){
addFrameScript(6, frame7);
}
function frame7(){
stop();
}
}
}//package pbp_fla
Section 126
//enemy_whale_bully_headcopy_848 (pbp_fla.enemy_whale_bully_headcopy_848)
package pbp_fla {
import flash.display.*;
public dynamic class enemy_whale_bully_headcopy_848 extends MovieClip {
public function enemy_whale_bully_headcopy_848(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 127
//enemy_whale_harp_die_1139 (pbp_fla.enemy_whale_harp_die_1139)
package pbp_fla {
import flash.display.*;
public dynamic class enemy_whale_harp_die_1139 extends MovieClip {
public var pickup:MovieClip;
}
}//package pbp_fla
Section 128
//enemy_whale_shooter_die_1201 (pbp_fla.enemy_whale_shooter_die_1201)
package pbp_fla {
import flash.display.*;
public dynamic class enemy_whale_shooter_die_1201 extends MovieClip {
public var pickup:MovieClip;
}
}//package pbp_fla
Section 129
//gfx_blood_spray_aniRO_17 (pbp_fla.gfx_blood_spray_aniRO_17)
package pbp_fla {
import flash.display.*;
public dynamic class gfx_blood_spray_aniRO_17 extends MovieClip {
public function gfx_blood_spray_aniRO_17(){
addFrameScript(16, frame17);
}
function frame17(){
stop();
}
}
}//package pbp_fla
Section 130
//gfx_bossMeter_1088 (pbp_fla.gfx_bossMeter_1088)
package pbp_fla {
import flash.display.*;
public dynamic class gfx_bossMeter_1088 extends MovieClip {
public function gfx_bossMeter_1088(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 131
//gfx_chargePowerUp_449 (pbp_fla.gfx_chargePowerUp_449)
package pbp_fla {
import flash.display.*;
public dynamic class gfx_chargePowerUp_449 extends MovieClip {
public function gfx_chargePowerUp_449(){
addFrameScript(0, frame1, 4, frame5);
}
function frame1(){
stop();
}
function frame5(){
stop();
}
}
}//package pbp_fla
Section 132
//gfx_heartPowerUp_454 (pbp_fla.gfx_heartPowerUp_454)
package pbp_fla {
import flash.display.*;
public dynamic class gfx_heartPowerUp_454 extends MovieClip {
public function gfx_heartPowerUp_454(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 133
//gfx_help_chargePowerUp_495 (pbp_fla.gfx_help_chargePowerUp_495)
package pbp_fla {
import flash.display.*;
public dynamic class gfx_help_chargePowerUp_495 extends MovieClip {
public function gfx_help_chargePowerUp_495(){
addFrameScript(0, frame1, 4, frame5);
}
function frame1(){
stop();
}
function frame5(){
stop();
}
}
}//package pbp_fla
Section 134
//PB_idle_718 (pbp_fla.PB_idle_718)
package pbp_fla {
import flash.display.*;
public dynamic class PB_idle_718 extends MovieClip {
public function PB_idle_718(){
addFrameScript(19, frame20);
}
function frame20(){
gotoAndPlay(1);
}
}
}//package pbp_fla
Section 135
//PB_strike_3_738 (pbp_fla.PB_strike_3_738)
package pbp_fla {
import flash.display.*;
public dynamic class PB_strike_3_738 extends MovieClip {
public var bearHead:MovieClip;
}
}//package pbp_fla
Section 136
//pickup_health_636 (pbp_fla.pickup_health_636)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_health_636 extends MovieClip {
public function pickup_health_636(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 137
//pickup_health_ani_638 (pbp_fla.pickup_health_ani_638)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_health_ani_638 extends MovieClip {
public function pickup_health_ani_638(){
addFrameScript(10, frame11);
}
function frame11(){
stop();
}
}
}//package pbp_fla
Section 138
//pickup_inv_ani_641 (pbp_fla.pickup_inv_ani_641)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_inv_ani_641 extends MovieClip {
public function pickup_inv_ani_641(){
addFrameScript(10, frame11);
}
function frame11(){
stop();
}
}
}//package pbp_fla
Section 139
//pickup_invulnerability_639 (pbp_fla.pickup_invulnerability_639)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_invulnerability_639 extends MovieClip {
public function pickup_invulnerability_639(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 140
//pickup_points_642 (pbp_fla.pickup_points_642)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_points_642 extends MovieClip {
public function pickup_points_642(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 141
//pickup_points_ani_644 (pbp_fla.pickup_points_ani_644)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_points_ani_644 extends MovieClip {
public function pickup_points_ani_644(){
addFrameScript(37, frame38);
}
function frame38(){
stop();
}
}
}//package pbp_fla
Section 142
//pickup_speed_633 (pbp_fla.pickup_speed_633)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_speed_633 extends MovieClip {
public function pickup_speed_633(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 143
//pickup_speed_ani_635 (pbp_fla.pickup_speed_ani_635)
package pbp_fla {
import flash.display.*;
public dynamic class pickup_speed_ani_635 extends MovieClip {
public function pickup_speed_ani_635(){
addFrameScript(11, frame12);
}
function frame12(){
stop();
}
}
}//package pbp_fla
Section 144
//sfx_assets_1485 (pbp_fla.sfx_assets_1485)
package pbp_fla {
import flash.display.*;
public dynamic class sfx_assets_1485 extends MovieClip {
public function sfx_assets_1485(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package pbp_fla
Section 145
//sfx_btn_16 (pbp_fla.sfx_btn_16)
package pbp_fla {
import flash.display.*;
import flash.utils.*;
public dynamic class sfx_btn_16 extends MovieClip {
public var __setPropDict:Dictionary;
public var __id0_:PlaySound;
public function sfx_btn_16(){
__setPropDict = new Dictionary(true);
super();
addFrameScript(0, frame1, 1, frame2, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26, 26, frame27, 27, frame28, 28, frame29, 29, frame30, 30, frame31, 31, frame32, 32, frame33, 33, frame34, 34, frame35, 35, frame36, 36, frame37, 37, frame38, 38, frame39, 39, frame40);
}
function frame1(){
stop();
}
function frame22(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame25(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame26(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame23(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame24(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame21(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame29(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function __setProp___id0__sfx_btn_Layer3_21(){
try {
__id0_["componentInspectorSetting"] = true;
} catch(e:Error) {
};
__id0_.soundID = "clawmark";
__id0_.loops = 0;
__id0_.soundPan = 0;
__id0_.startTime = 0;
__id0_.soundVolume = 1;
try {
__id0_["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
function frame2(){
stop();
}
function frame27(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame36(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame30(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame28(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 21)) && ((int(__setPropDict[__id0_]) <= 30))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_21();
};
}
function frame37(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame38(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame31(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame34(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame35(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame40(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame33(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame39(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function frame32(){
if ((((__setPropDict[__id0_] == undefined)) || (!((((int(__setPropDict[__id0_]) >= 31)) && ((int(__setPropDict[__id0_]) <= 40))))))){
__setPropDict[__id0_] = currentFrame;
__setProp___id0__sfx_btn_Layer3_31();
};
}
function __setProp___id0__sfx_btn_Layer3_31(){
try {
__id0_["componentInspectorSetting"] = true;
} catch(e:Error) {
};
__id0_.soundID = "";
__id0_.loops = 0;
__id0_.soundPan = 0;
__id0_.startTime = 0;
__id0_.soundVolume = 1;
try {
__id0_["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
}
}//package pbp_fla
Section 146
//suv_detonate_anicopy_922 (pbp_fla.suv_detonate_anicopy_922)
package pbp_fla {
import flash.display.*;
public dynamic class suv_detonate_anicopy_922 extends MovieClip {
public function suv_detonate_anicopy_922(){
addFrameScript(71, frame72);
}
function frame72(){
stop();
}
}
}//package pbp_fla
Section 147
//_mcPlay (prerollAssets._mcPlay)
package prerollAssets {
import flash.display.*;
public dynamic class _mcPlay extends MovieClip {
public var mcPlayBtn:MovieClip;
public var over:MovieClip;
public function _mcPlay(){
addFrameScript(0, this.frame1);
}
function frame1(){
stop();
}
}
}//package prerollAssets
Section 148
//AOver_21 (prerollAssets_fla.AOver_21)
package prerollAssets_fla {
import flash.display.*;
public dynamic class AOver_21 extends MovieClip {
public function AOver_21(){
addFrameScript(3, this.frame4);
}
function frame4(){
stop();
}
}
}//package prerollAssets_fla
Section 149
//LOver_22 (prerollAssets_fla.LOver_22)
package prerollAssets_fla {
import flash.display.*;
public dynamic class LOver_22 extends MovieClip {
public function LOver_22(){
addFrameScript(3, this.frame4);
}
function frame4(){
stop();
}
}
}//package prerollAssets_fla
Section 150
//PLAYbuttonDOWN_19 (prerollAssets_fla.PLAYbuttonDOWN_19)
package prerollAssets_fla {
import flash.display.*;
public dynamic class PLAYbuttonDOWN_19 extends MovieClip {
public function PLAYbuttonDOWN_19(){
addFrameScript(4, this.frame5);
}
function frame5(){
stop();
}
}
}//package prerollAssets_fla
Section 151
//PLAYhit_2 (prerollAssets_fla.PLAYhit_2)
package prerollAssets_fla {
import flash.display.*;
public dynamic class PLAYhit_2 extends MovieClip {
public function PLAYhit_2(){
addFrameScript(0, this.frame1, 20, this.frame21);
}
function frame21(){
stop();
}
function frame1(){
stop();
}
}
}//package prerollAssets_fla
Section 152
//Pover_23 (prerollAssets_fla.Pover_23)
package prerollAssets_fla {
import flash.display.*;
public dynamic class Pover_23 extends MovieClip {
public function Pover_23(){
addFrameScript(3, this.frame4);
}
function frame4(){
stop();
}
}
}//package prerollAssets_fla
Section 153
//YOver_20 (prerollAssets_fla.YOver_20)
package prerollAssets_fla {
import flash.display.*;
public dynamic class YOver_20 extends MovieClip {
public function YOver_20(){
addFrameScript(3, this.frame4);
}
function frame4(){
stop();
}
}
}//package prerollAssets_fla
Section 154
//wav (rocket.wav)
package rocket {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package rocket
Section 155
//NumberBase (smashing.formatters.NumberBase)
package smashing.formatters {
public class NumberBase {
public static function formatThousands(_arg1:Number):String{
var _local2:Number;
var _local3:Array;
var _local4:int;
var _local5:int;
_local2 = Math.round(_arg1);
_local3 = String(_local2).split("");
_local4 = 0;
_local5 = (_local3.length - 1);
while (_local5 >= 1) {
_local4++;
if (_local4 == 3){
_local4 = 0;
_local3.splice(_local5, 0, ",");
};
_local5--;
};
return (_local3.join(""));
}
}
}//package smashing.formatters
Section 156
//IntervalEngine (smashing.interval.IntervalEngine)
package smashing.interval {
import flash.events.*;
import flash.utils.*;
public class IntervalEngine extends EventDispatcher {
private var __elapsedTime:Number;
private var __cancelableEvent:Boolean;// = false
private var __lastUpdate:Number;
public var elapsedTimeModifier:Number;// = 0.001
private var __timer:Timer;
private var __bubblingEvent:Boolean;// = false
public var isRunning:Boolean;// = false
public function IntervalEngine(_arg1:Number=10, _arg2:Boolean=false, _arg3:Boolean=false){
elapsedTimeModifier = 0.001;
isRunning = false;
__cancelableEvent = false;
__bubblingEvent = false;
super();
__cancelableEvent = _arg2;
__bubblingEvent = _arg3;
__timer = new Timer(_arg1);
__timer.addEventListener(TimerEvent.TIMER, timerHandler);
}
final public function stop(_arg1:Boolean=false):void{
__timer.stop();
if (_arg1 == true){
timerHandler();
};
this.dispatchEvent(new IntervalEvent(IntervalEvent.INTERVAL_STOPPED, __cancelableEvent, __bubblingEvent, __elapsedTime));
}
private function timerHandler(_arg1:TimerEvent=null):void{
__elapsedTime = ((-(__lastUpdate) + (__lastUpdate = getTimer())) * elapsedTimeModifier);
this.dispatchEvent(new IntervalEvent(IntervalEvent.INTERVAL, __cancelableEvent, __bubblingEvent, __elapsedTime));
if (_arg1 != null){
_arg1.updateAfterEvent();
};
}
final public function destroy():void{
stop();
__timer.removeEventListener(TimerEvent.TIMER, timerHandler);
__timer = null;
}
final public function start(_arg1:Boolean=false):void{
__lastUpdate = getTimer();
if (_arg1 == true){
timerHandler();
};
__timer.start();
this.dispatchEvent(new IntervalEvent(IntervalEvent.INTERVAL_STARTED, __cancelableEvent, __bubblingEvent, __elapsedTime));
}
}
}//package smashing.interval
Section 157
//IntervalEvent (smashing.interval.IntervalEvent)
package smashing.interval {
import flash.events.*;
public class IntervalEvent extends Event {
public var elapsedTime:Number;// = 0
public static const INTERVAL_STOPPED:String = "intervalStopped";
public static const INTERVAL:String = "interval";
public static const INTERVAL_STARTED:String = "intervalStarted";
public function IntervalEvent(_arg1:String, _arg2:Boolean=false, _arg3:Boolean=false, _arg4:Number=0){
elapsedTime = 0;
super(_arg1, _arg2, _arg3);
elapsedTime = _arg4;
}
override public function clone():Event{
return (new IntervalEvent(super.type, super.cancelable, super.bubbles, elapsedTime));
}
}
}//package smashing.interval
Section 158
//PlaySound (smashing.sound.PlaySound)
package smashing.sound {
import flash.display.*;
import flash.system.*;
import flash.media.*;
import flash.events.*;
import flash.utils.*;
public class PlaySound extends MovieClip {
private var __soundVolume:Number;// = 1
private var __sound:Sound;
private var __applicationDomain:ApplicationDomain;
private var __soundID:String;
private var __class:Class;
private var __soundLoops:Number;// = 0
private var __componentInspectorSetting:Boolean;
private var __soundStartTime:Number;// = 0
private var __soundPan:Number;// = 0
private var __soundTransform:SoundTransform;
public function PlaySound():void{
__applicationDomain = ApplicationDomain.currentDomain;
__soundVolume = 1;
__soundPan = 0;
__soundStartTime = 0;
__soundLoops = 0;
super();
addEventListener(Event.ADDED_TO_STAGE, addedToStage);
visible = false;
stop();
}
public function set componentInspectorSetting(_arg1:Boolean):void{
__componentInspectorSetting = _arg1;
if (_arg1 == false){
playSound();
};
}
public function set soundVolume(_arg1:Number):void{
__soundVolume = (Math.round((_arg1 * 10)) / 10);
}
public function set soundPan(_arg1:Number):void{
__soundPan = _arg1;
}
private function addedToStage(_arg1:Event):void{
visible = false;
}
private function playSound(_arg1:Event=null):void{
if (Capabilities.playerType == "PlugIn"){
};
if (__applicationDomain.hasDefinition(__soundID)){
__class = (__applicationDomain.getDefinition(__soundID) as Class);
__sound = new __class();
__soundTransform = new SoundTransform(__soundVolume, __soundPan);
__sound.play(__soundStartTime, __soundLoops, __soundTransform);
} else {
if (Capabilities.playerType == "PlugIn"){
trace(((((getQualifiedClassName(this) + " playSound():: Cannot create a sound with the id: ") + __soundID) + " in ") + getQualifiedClassName(this.parent)));
};
};
}
public function set startTime(_arg1:Number):void{
__soundStartTime = _arg1;
}
public function set soundID(_arg1:String):void{
__soundID = _arg1;
}
public function set loops(_arg1:Number):void{
__soundLoops = _arg1;
}
}
}//package smashing.sound
Section 159
//CustomSoundObject (smashing.soundcontroller.core.CustomSoundObject)
package smashing.soundcontroller.core {
import flash.media.*;
public class CustomSoundObject {
private var _group:String;
public var channel:SoundChannel;
private var _position:Number;
private var _repeat:Number;
public var isFading:Boolean;
public var targetVolume:Number;// = 1
public var targetPan:Number;// = 0
public var isPanning:Boolean;
public var volume:Number;// = 1
public var pan:Number;// = 0
public var isMuted:Boolean;
public var panSpeed:Number;// = 100
public var fadeSpeed:Number;// = 100
public var stopOnPanComplete:Boolean;// = false
public var stopOnFadeComplete:Boolean;// = false
public var isPaused:Boolean;
private var _name:String;
public function CustomSoundObject(){
volume = 1;
targetVolume = 1;
fadeSpeed = 100;
stopOnFadeComplete = false;
panSpeed = 100;
pan = 0;
stopOnPanComplete = false;
targetPan = 0;
super();
}
public function get name():String{
return (_name);
}
public function init(_arg1:SoundChannel, _arg2:String, _arg3:String, _arg4:Number, _arg5:Number):void{
channel = _arg1;
_name = _arg2;
_group = _arg3;
_repeat = _arg5;
isPaused = false;
isFading = false;
isPanning = false;
isMuted = false;
volume = _arg4;
targetVolume = _arg4;
pan = 0;
targetPan = 0;
}
public function set position(_arg1:Number):void{
_position = _arg1;
}
public function get position():Number{
return (_position);
}
public function get repeat():Number{
return (_repeat);
}
public function get group():String{
return (_group);
}
}
}//package smashing.soundcontroller.core
Section 160
//SequencingController (smashing.soundcontroller.core.SequencingController)
package smashing.soundcontroller.core {
import flash.utils.*;
public class SequencingController {
private var _sequence:Array;
private var _soundLibrary:SoundLibrary;
private var _currentPlaying:Array;
private var _soundData:SoundData;
private var _sequenceDictionary:Dictionary;
public function SequencingController(_arg1:SoundData){
_soundData = _arg1;
_soundLibrary = _soundData.soundLibrary;
_currentPlaying = _soundData.currentPlaying;
_sequenceDictionary = new Dictionary();
trace((getQualifiedClassName(this) + ": Class created."));
}
public function stopSequence(_arg1:String):void{
}
public function destroy():void{
_sequenceDictionary = null;
}
public function quickSequence(_arg1:String, ... _args):void{
}
public function queueDelay(_arg1:String, _arg2:Number):void{
}
public function playSequence(_arg1:String):void{
}
public function queueSound(_arg1:String, ... _args):void{
}
}
}//package smashing.soundcontroller.core
Section 161
//SoundController (smashing.soundcontroller.core.SoundController)
package smashing.soundcontroller.core {
import flash.media.*;
import flash.events.*;
import flash.utils.*;
public class SoundController extends EventDispatcher {
private const SOUNDS_PLAYING_CAP:Number = 32;
private var _soundLibrary:SoundLibrary;
private var _currentPlaying:Array;
private var _isMuteAll:Boolean;
private var _mutedSounds:Array;
private var _soundData:SoundData;
private var _mutedGroups:Array;
public function SoundController(_arg1:SoundData):void{
_soundData = _arg1;
_soundLibrary = _soundData.soundLibrary;
_currentPlaying = _soundData.currentPlaying;
_mutedGroups = _soundData.mutedGroups;
_mutedSounds = _soundData.mutedSounds;
trace((getQualifiedClassName(this) + ": SoundController Class created."));
}
private function removeMutedSound(_arg1:String):void{
var _local2:Number;
_local2 = _mutedSounds.length;
while (_local2--) {
if (_mutedSounds[_local2] == _arg1){
_mutedSounds.splice(_local2, 1);
return;
};
};
}
public function toggleGroup(_arg1:String, _arg2:Boolean):void{
var _local3:int;
_local3 = 0;
while (_local3 < _currentPlaying.length) {
if (_currentPlaying[_local3].group == _arg1){
if (((_arg2) && (!(_currentPlaying[_local3].isPaused)))){
if (_currentPlaying[_local3].repeat > 0){
_currentPlaying[_local3].position = 0;
} else {
_currentPlaying[_local3].position = _currentPlaying[_local3].channel.position;
};
_currentPlaying[_local3].channel.stop();
_currentPlaying[_local3].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying[_local3].isPaused = true;
} else {
if (((!(_arg2)) && (_currentPlaying[_local3].isPaused))){
_currentPlaying[_local3].channel = _soundLibrary.soundDict[_currentPlaying[_local3].name].sound.play(_currentPlaying[_local3].position, _currentPlaying[_local3].repeat);
if (_currentPlaying[_local3].isMuted == false){
setChannelVolume(_currentPlaying[_local3].channel, _currentPlaying[_local3].volume);
};
setChannelPan(_currentPlaying[_local3].channel, _currentPlaying[_local3].pan);
_currentPlaying[_local3].channel.addEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying[_local3].isPaused = false;
};
};
};
_local3++;
};
}
public function toggleSound(_arg1, _arg2:Boolean):void{
var _local3:String;
var _local4:int;
var _local5:int;
_local3 = retrieveClassName(_arg1);
switch (_local3){
case "String":
if (_soundLibrary.soundDict[_arg1] == null){
return;
};
_local4 = 0;
while (_local4 < _currentPlaying.length) {
if (_currentPlaying[_local4].name == _arg1){
if (((_arg2) && (!(_currentPlaying[_local4].isPaused)))){
if (_currentPlaying[_local4].repeat > 0){
_currentPlaying[_local4].position = 0;
} else {
_currentPlaying[_local4].position = _currentPlaying[_local4].channel.position;
};
_currentPlaying[_local4].channel.stop();
_currentPlaying[_local4].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying[_local4].isPaused = true;
} else {
if (((!(_arg2)) && (_currentPlaying[_local4].isPaused))){
_currentPlaying[_local4].channel = _soundLibrary.soundDict[_arg1].sound.play(_currentPlaying[_local4].position, _currentPlaying[_local4].repeat);
if (_currentPlaying[_local4].isMuted == false){
setChannelVolume(_currentPlaying[_local4].channel, _currentPlaying[_local4].volume);
};
setChannelPan(_currentPlaying[_local4].channel, _currentPlaying[_local4].pan);
_currentPlaying[_local4].channel.addEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying[_local4].isPaused = false;
};
};
};
_local4++;
};
break;
case "SoundChannel":
_local5 = 0;
while (_local5 < _currentPlaying.length) {
if (_currentPlaying[_local5].channel == _arg1){
if (((_arg2) && (!(_currentPlaying[_local5].isPaused)))){
if (_currentPlaying[_local5].repeat > 0){
_currentPlaying[_local5].position = 0;
} else {
_currentPlaying[_local5].position = _currentPlaying[_local5].channel.position;
};
_currentPlaying[_local5].channel.stop();
_currentPlaying[_local5].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying[_local5].isPaused = true;
break;
} else {
if (((!(_arg2)) && (_currentPlaying[_local5].isPaused))){
_currentPlaying[_local5].channel = _soundLibrary.soundDict[_currentPlaying[_local5].name].sound.play(_currentPlaying[_local5].position, _currentPlaying[_local5].repeat);
if (_currentPlaying[_local5].isMuted == false){
setChannelVolume(_currentPlaying[_local5].channel, _currentPlaying[_local5].volume);
};
setChannelPan(_currentPlaying[_local5].channel, _currentPlaying[_local5].pan);
_currentPlaying[_local5].channel.addEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying[_local5].isPaused = true;
break;
};
};
};
_local5++;
};
break;
default:
trace((getQualifiedClassName(this) + ": Invalid sound identifier."));
break;
};
}
public function setVolume(_arg1, _arg2:Number):void{
var _local3:String;
var _local4:int;
var _local5:int;
_local3 = retrieveClassName(_arg1);
switch (_local3){
case "String":
if (_soundLibrary.soundDict[_arg1] == null){
return;
};
_local4 = 0;
while (_local4 < _currentPlaying.length) {
if (_currentPlaying[_local4].name == _arg1){
_currentPlaying[_local4].volume = _arg2;
if (_currentPlaying[_local4].isMuted == false){
setChannelVolume(_currentPlaying[_local4].channel, _currentPlaying[_local4].volume);
};
};
_local4++;
};
break;
case "SoundChannel":
_local5 = 0;
while (_local5 < _currentPlaying.length) {
if (_currentPlaying[_local5].channel == _arg1){
_currentPlaying[_local5].volume = _arg2;
if (_currentPlaying[_local4].isMuted == false){
setChannelVolume(_currentPlaying[_local5].channel, _currentPlaying[_local5].volume);
};
break;
};
_local5++;
};
break;
default:
trace((getQualifiedClassName(this) + ": Invalid sound identifier."));
break;
};
}
public function stopGroup(_arg1:String):void{
var _local2:Number;
_local2 = _currentPlaying.length;
while (_local2--) {
if (_currentPlaying[_local2].group == _arg1){
_currentPlaying[_local2].channel.stop();
_currentPlaying[_local2].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying.splice(_local2, 1);
};
};
}
private function internalSoundCompleteHandler(_arg1:Event):void{
var _local2:Number;
_local2 = _currentPlaying.length;
while (_local2--) {
if (_arg1.target == _currentPlaying[_local2].channel){
if (_currentPlaying[_local2].repeat == 0){
_currentPlaying[_local2].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying.splice(_local2, 1);
};
break;
};
};
}
private function setChannelPan(_arg1:SoundChannel, _arg2:Number):void{
var _local3:SoundTransform;
_local3 = _arg1.soundTransform;
_local3.pan = _arg2;
_arg1.soundTransform = _local3;
}
public function getAllSoundsAreMuted():Boolean{
return (_isMuteAll);
}
public function stopSound(_arg1):void{
var _local2:String;
var _local3:Number;
var _local4:Number;
_local2 = retrieveClassName(_arg1);
switch (_local2){
case "String":
if (_soundLibrary.soundDict[_arg1] == null){
return;
};
_local3 = _currentPlaying.length;
while (_local3--) {
if (_currentPlaying[_local3].name == _arg1){
_currentPlaying[_local3].channel.stop();
_currentPlaying[_local3].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying.splice(_local3, 1);
};
};
break;
case "SoundChannel":
_local4 = _currentPlaying.length;
while (_local4--) {
if (_currentPlaying[_local4].channel == _arg1){
_currentPlaying[_local4].channel.stop();
_currentPlaying[_local4].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying.splice(_local4, 1);
};
};
break;
default:
trace((getQualifiedClassName(this) + ": Invalid sound identifier."));
break;
};
}
public function setGroupVolume(_arg1:String, _arg2:Number):void{
var _local3:int;
_local3 = 0;
while (_local3 < _currentPlaying.length) {
if (_currentPlaying[_local3].group == _arg1){
_currentPlaying[_local3].volume = _arg2;
if (_currentPlaying[_local3].isMuted == false){
setChannelVolume(_currentPlaying[_local3].channel, _currentPlaying[_local3].volume);
};
};
_local3++;
};
}
public function playSound(_arg1:String, _arg2:String="default", _arg3:Number=1, _arg4:int=0):SoundChannel{
var soundLibraryObj:Object;
var custSoundObj:CustomSoundObject;
var pName = _arg1;
var pGroup = _arg2;
var pVolume = _arg3;
var pRepeat = _arg4;
if (_soundLibrary.soundDict[pName] == null){
try {
_soundLibrary.addInternalSound(pName);
} catch(e:Error) {
trace((((getQualifiedClassName(this) + ": could not create sound '") + pName) + "'"));
return (null);
};
};
if (_soundLibrary.soundDict[pName].sound.length <= 0){
trace((((getQualifiedClassName(this) + ": following sound is not loaded - '") + pName) + "'"));
return (null);
};
if (_currentPlaying.length >= SOUNDS_PLAYING_CAP){
trace((getQualifiedClassName(this) + ": Sound cap reached."));
return (null);
};
soundLibraryObj = _soundLibrary.soundDict[pName];
custSoundObj = new CustomSoundObject();
custSoundObj.init(soundLibraryObj.sound.play(0, pRepeat), pName, pGroup, pVolume, pRepeat);
try {
if ((((((checkGroupsMuted(pGroup) == false)) && ((checkSoundsMuted(pName) == false)))) && (!(_isMuteAll)))){
setChannelVolume(custSoundObj.channel, pVolume);
} else {
custSoundObj.isMuted = true;
if (_isMuteAll){
addMutedGroup(pGroup);
addMutedSound(pName);
};
setChannelVolume(custSoundObj.channel, 0);
};
} catch(e) {
trace((((getQualifiedClassName(this) + ": could not create sound '") + pName) + "'"));
return (null);
};
custSoundObj.channel.addEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying.push(custSoundObj);
return (custSoundObj.channel);
}
public function stopAll():void{
var _local1:Number;
_local1 = _currentPlaying.length;
while (_local1--) {
_currentPlaying[_local1].channel.stop();
_currentPlaying[_local1].channel.removeEventListener(Event.SOUND_COMPLETE, internalSoundCompleteHandler);
_currentPlaying.splice(_local1, 1);
};
}
private function setChannelVolume(_arg1:SoundChannel, _arg2:Number):void{
var _local3:SoundTransform;
_local3 = _arg1.soundTransform;
_local3.volume = _arg2;
_arg1.soundTransform = _local3;
}
public function getSoundIsMuted(_arg1):Boolean{
var _local2:String;
var _local3:int;
_local2 = retrieveClassName(_arg1);
switch (_local2){
case "String":
return (checkSoundsMuted(_arg1));
case "SoundChannel":
_local3 = 0;
while (_local3 < _currentPlaying.length) {
if (_currentPlaying[_local3].channel == _arg1){
return (_currentPlaying[_local3].isMuted);
};
_local3++;
};
break;
default:
trace((getQualifiedClassName(this) + ": Invalid sound identifier."));
break;
};
return (false);
}
public function getSoundIsPlaying(_arg1):Boolean{
var _local2:Boolean;
var _local3:String;
var _local4:int;
var _local5:int;
_local2 = false;
_local3 = retrieveClassName(_arg1);
switch (_local3){
case "String":
if (_soundLibrary.soundDict[_arg1] == null){
break;
};
_local4 = 0;
while (_local4 < _currentPlaying.length) {
if ((((_currentPlaying[_local4].name == _arg1)) && (!(_currentPlaying[_local4].isPaused)))){
_local2 = true;
break;
};
_local4++;
};
break;
case "SoundChannel":
_local5 = 0;
while (_local5 < _currentPlaying.length) {
if ((((_currentPlaying[_local5].channel == _arg1)) && (!(_currentPlaying[_local4].isPaused)))){
_local2 = true;
break;
};
_local5++;
};
break;
default:
trace((getQualifiedClassName(this) + ": Invalid sound identifier."));
break;
};
return (_local2);
}
private function retrieveClassName(_arg1):String{
var _local2:String;
var _local3:String;
_local2 = getQualifiedClassName(_arg1);
_local3 = _local2.substring((_local2.lastIndexOf(":") + 1), _local2.length);
return (_local3);
}
public function muteAll(_arg1:Boolean):void{
var _local2:int;
_local2 = 0;
while (_local2 < _currentPlaying.length) {
if (_arg1){
setChannelVolume(_currentPlaying[_local2].channel, 0);
_currentPlaying[_local2].isMuted = true;
addMutedGroup(_currentPlaying[_local2].group);
addMutedSound(_currentPlaying[_local2].name);
} else {
if (_currentPlaying[_local2].isMuted == false){
} else {
setChannelVolume(_currentPlaying[_local2].channel, _currentPlaying[_local2].volume);
_currentPlaying[_local2].isMuted = false;
removeMutedGroup(_currentPlaying[_local2].group);
removeMutedSound(_currentPlaying[_local2].name);
};
};
_local2++;
};
if (_arg1){
_isMuteAll = true;
} else {
_mutedGroups = [];
_mutedSounds = [];
_isMuteAll = false;
};
}
private function addMutedGroup(_arg1:String):void{
var _local2:int;
_local2 = 0;
while (_local2 < _mutedGroups.length) {
if (_mutedGroups[_local2] == _arg1){
return;
};
_local2++;
};
_mutedGroups.push(_arg1);
}
private function checkGroupsMuted(_arg1:String):Boolean{
var _local2:int;
_local2 = 0;
while (_local2 < _mutedGroups.length) {
if (_mutedGroups[_local2] == _arg1){
return (true);
};
_local2++;
};
return (false);
}
public function getGroupIsMuted(_arg1:String):Boolean{
return (checkGroupsMuted(_arg1));
}
public function getGroupIsPlaying(_arg1:String):Boolean{
var _local2:Boolean;
var _local3:int;
_local2 = false;
_local3 = 0;
while (_local3 < _currentPlaying.length) {
if ((((_currentPlaying[_local3].group == _arg1)) && (!(_currentPlaying[_local3].isPaused)))){
_local2 = true;
break;
};
_local3++;
};
return (_local2);
}
private function checkSoundsMuted(_arg1:String):Boolean{
var _local2:int;
_local2 = 0;
while (_local2 < _mutedSounds.length) {
if (_mutedSounds[_local2] == _arg1){
return (true);
};
_local2++;
};
return (false);
}
private function addMutedSound(_arg1:String):void{
var _local2:int;
_local2 = 0;
while (_local2 < _mutedSounds.length) {
if (_mutedSounds[_local2] == _arg1){
return;
};
_local2++;
};
_mutedSounds.push(_arg1);
}
public function muteGroup(_arg1:String, _arg2:Boolean):void{
var _local3:int;
_local3 = 0;
while (_local3 < _currentPlaying.length) {
if (_currentPlaying[_local3].group == _arg1){
if (_arg2){
setChannelVolume(_currentPlaying[_local3].channel, 0);
_currentPlaying[_local3].isMuted = true;
} else {
setChannelVolume(_currentPlaying[_local3].channel, _currentPlaying[_local3].volume);
_currentPlaying[_local3].isMuted = false;
};
};
_local3++;
};
if (_arg2){
addMutedGroup(_arg1);
} else {
removeMutedGroup(_arg1);
};
}
public function muteSound(_arg1, _arg2:Boolean):void{
var _local3:String;
var _local4:int;
var _local5:int;
_local3 = retrieveClassName(_arg1);
switch (_local3){
case "String":
if (_soundLibrary.soundDict[_arg1] == null){
return;
};
_local4 = 0;
while (_local4 < _currentPlaying.length) {
if (_currentPlaying[_local4].name == _arg1){
if (_arg2){
setChannelVolume(_currentPlaying[_local4].channel, 0);
_currentPlaying[_local4].isMuted = true;
addMutedSound(_arg1);
} else {
setChannelVolume(_currentPlaying[_local4].channel, _currentPlaying[_local4].volume);
_currentPlaying[_local4].isMuted = false;
removeMutedSound(_arg1);
};
};
_local4++;
};
if (_arg2){
addMutedSound(_arg1);
} else {
removeMutedSound(_arg1);
};
break;
case "SoundChannel":
_local5 = 0;
while (_local5 < _currentPlaying.length) {
if (_currentPlaying[_local5].channel == _arg1){
if (_arg2){
setChannelVolume(_currentPlaying[_local5].channel, 0);
_currentPlaying[_local5].isMuted = true;
} else {
setChannelVolume(_currentPlaying[_local5].channel, _currentPlaying[_local5].volume);
_currentPlaying[_local5].isMuted = false;
};
};
_local5++;
};
break;
default:
trace((getQualifiedClassName(this) + ": Invalid sound identifier."));
break;
};
}
private function removeMutedGroup(_arg1:String):void{
var _local2:Number;
_local2 = _mutedGroups.length;
while (_local2--) {
if (_mutedGroups[_local2] == _arg1){
_mutedGroups.splice(_local2, 1);
return;
};
};
}
public function destroy():void{
_soundData = null;
_soundLibrary = null;
_currentPlaying = null;
_mutedGroups = null;
_mutedSounds = null;
}
}
}//package smashing.soundcontroller.core
Section 162
//SoundData (smashing.soundcontroller.core.SoundData)
package smashing.soundcontroller.core {
public class SoundData {
private var _soundLibrary:SoundLibrary;
public var currentPlaying:Array;
public var mutedSounds:Array;
public var mutedGroups:Array;
public function SoundData(){
_soundLibrary = new SoundLibrary();
currentPlaying = new Array();
mutedGroups = new Array();
mutedSounds = new Array();
}
public function get soundLibrary():SoundLibrary{
return (_soundLibrary);
}
public function destroy():void{
currentPlaying = null;
_soundLibrary.destroy();
_soundLibrary = null;
mutedGroups = null;
mutedSounds = null;
}
}
}//package smashing.soundcontroller.core
Section 163
//SoundLibrary (smashing.soundcontroller.core.SoundLibrary)
package smashing.soundcontroller.core {
import flash.media.*;
import flash.utils.*;
import flash.net.*;
public class SoundLibrary {
private var _soundDict:Dictionary;
private var _linkageIDPrefix:String;// = ""
public function SoundLibrary():void{
_linkageIDPrefix = "";
super();
_soundDict = new Dictionary(true);
trace((getQualifiedClassName(this) + ": Sound library created."));
}
private function addExternalSound(_arg1:String, _arg2:String, _arg3:String):void{
var _local4:Sound;
var _local5:Object;
_local4 = new Sound(new URLRequest(_arg3));
_local5 = new Object();
_local5.name = _arg2;
_local5.sound = _local4;
_soundDict[_arg2] = _local5;
}
public function set linkageIDPrefix(_arg1:String):void{
_linkageIDPrefix = _arg1;
}
public function get soundDict():Dictionary{
return (_soundDict);
}
public function init(_arg1:XML):void{
var len:Number;
var asset:XML;
var pExternalSoundData = _arg1;
trace((getQualifiedClassName(this) + ": loading external sounds"));
len = pExternalSoundData.sounds.asset.length();
while ((len = (len - 1)), len) {
asset = pExternalSoundData.sounds.asset[len];
try {
addExternalSound(String(asset.@id), String(asset.@name), String(asset.@url));
} catch(e) {
trace((getQualifiedClassName(this) + ": could not load external sound."));
};
};
}
public function addInternalSound(_arg1:String):void{
var _local2:String;
var _local3:Class;
var _local4:Sound;
var _local5:Object;
_local2 = (_linkageIDPrefix + _arg1);
_local3 = (getDefinitionByName(_local2) as Class);
_local4 = new (_local3);
_local5 = new Object();
_local5.name = _arg1;
_local5.sound = _local4;
_soundDict[_arg1] = _local5;
}
public function destroy():void{
_soundDict = null;
}
public function createInternalSounds():void{
}
}
}//package smashing.soundcontroller.core
Section 164
//TransformController (smashing.soundcontroller.core.TransformController)
package smashing.soundcontroller.core {
import smashing.soundcontroller.*;
import flash.media.*;
import flash.events.*;
import flash.utils.*;
public class TransformController {
private var _soundLibrary:SoundLibrary;
private var _currentPlaying:Array;
private var _internalTransformInterval:Number;// = 0.03
private var _transformTimer:Timer;
private var _soundData:SoundData;
private var _useInternalTransformInterval:Boolean;// = true
public function TransformController(_arg1:SoundData){
_useInternalTransformInterval = true;
_internalTransformInterval = 0.03;
super();
_soundData = _arg1;
_soundLibrary = _soundData.soundLibrary;
_currentPlaying = _soundData.currentPlaying;
_transformTimer = new Timer((_internalTransformInterval * 1000));
_transformTimer.addEventListener(TimerEvent.TIMER, transformTimerHandler);
}
private function startTimer():void{
var _local1:int;
if (_transformTimer.running){
return;
};
_local1 = 0;
while (_local1 < _currentPlaying.length) {
if (((_currentPlaying[_local1].isFading) || (_currentPlaying[_local1].isPanning))){
_transformTimer.start();
return;
};
_local1++;
};
}
public function panUpdate(_arg1:Number):void{
var _local2:int;
_local2 = 0;
while (_local2 < _currentPlaying.length) {
if (((!(_currentPlaying[_local2].isPaused)) && (_currentPlaying[_local2].isPanning))){
if (_currentPlaying[_local2].pan < _currentPlaying[_local2].targetPan){
if ((_currentPlaying[_local2].pan + (_currentPlaying[_local2].panSpeed * _arg1)) <= _currentPlaying[_local2].targetPan){
_currentPlaying[_local2].pan = (_currentPlaying[_local2].pan + (_currentPlaying[_local2].panSpeed * _arg1));
} else {
_currentPlaying[_local2].pan = _currentPlaying[_local2].targetPan;
};
setChannelPan(_currentPlaying[_local2].channel, _currentPlaying[_local2].pan);
} else {
if (_currentPlaying[_local2].pan > _currentPlaying[_local2].targetPan){
if ((_currentPlaying[_local2].pan - (_currentPlaying[_local2].panSpeed * _arg1)) >= _currentPlaying[_local2].targetPan){
_currentPlaying[_local2].pan = (_currentPlaying[_local2].pan - (_currentPlaying[_local2].panSpeed * _arg1));
} else {
_currentPlaying[_local2].pan = _currentPlaying[_local2].targetPan;
};
setChannelPan(_currentPlaying[_local2].channel, _currentPlaying[_local2].pan);
} else {
_currentPlaying[_local2].isPanning = false;
if (_currentPlaying[_local2].stopOnPanComplete){
SoundInterface.instance.stopSound(_currentPlaying[_local2].channel);
};
stopTimer();
};
};
};
_local2++;
};
}
public function setGroupTargetFade(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean):void{
var _local5:int;
_local5 = 0;
while (_local5 < _currentPlaying.length) {
if (_currentPlaying[_local5].group == _arg1){
_currentPlaying[_local5].targetVolume = _arg2;
if (_arg3 == 0){
_arg3 = 0.001;
};
_currentPlaying[_local5].fadeSpeed = (Math.abs((_currentPlaying[_local5].volume - _arg2)) / (_arg3 / 1000));
_currentPlaying[_local5].stopOnFadeComplete = _arg4;
_currentPlaying[_local5].isFading = true;
};
_local5++;
};
if (_useInternalTransformInterval){
startTimer();
};
}
public function get useInternalTransformInterval():Boolean{
return (_useInternalTransformInterval);
}
private function retrieveClassName(_arg1):String{
var _local2:String;
var _local3:String;
_local2 = getQualifiedClassName(_arg1);
_local3 = _local2.substring((_local2.lastIndexOf(":") + 1), _local2.length);
return (_local3);
}
private function transformTimerHandler(_arg1:TimerEvent):void{
if (_useInternalTransformInterval){
fadeUpdate(_internalTransformInterval);
panUpdate(_internalTransformInterval);
};
}
public function set useInternalTransformInterval(_arg1:Boolean):void{
_useInternalTransformInterval = _arg1;
if (_transformTimer){
_transformTimer.stop();
};
}
private function setChannelPan(_arg1:SoundChannel, _arg2:Number):void{
var _local3:SoundTransform;
_local3 = _arg1.soundTransform;
_local3.pan = _arg2;
_arg1.soundTransform = _local3;
}
public function setGroupTargetPan(_arg1:String, _arg2:Number, _arg3:Number, _arg4:Boolean):void{
var _local5:int;
_local5 = 0;
while (_local5 < _currentPlaying.length) {
if (_currentPlaying[_local5].group == _arg1){
_currentPlaying[_local5].targetPan = _arg2;
if (_arg3 == 0){
_arg3 = 0.001;
};
_currentPlaying[_local5].panSpeed = (Math.abs((_currentPlaying[_local5].pan - _arg2)) / (_arg3 / 1000));
_currentPlaying[_local5].stopOnPanComplete = _arg4;
_currentPlaying[_local5].isPanning = true;
};
_local5++;
};
if (_useInternalTransformInterval){
startTimer();
};
}
private function stopTimer():void{
var _local1:int;
_local1 = 0;
while (_local1 < _currentPlaying.length) {
if (((_currentPlaying[_local1].isFading) || (_currentPlaying[_local1].isPanning))){
return;
};
_local1++;
};
_transformTimer.stop();
}
public function fadeUpdate(_arg1:Number):void{
var _local2:int;
_local2 = 0;
while (_local2 < _currentPlaying.length) {
if (((!(_currentPlaying[_local2].isPaused)) && (_currentPlaying[_local2].isFading))){
if (_currentPlaying[_local2].volume < _currentPlaying[_local2].targetVolume){
if ((_currentPlaying[_local2].volume + (_currentPlaying[_local2].fadeSpeed * _arg1)) <= _currentPlaying[_local2].targetVolume){
_currentPlaying[_local2].volume = (_currentPlaying[_local2].volume + (_currentPlaying[_local2].fadeSpeed * _arg1));
if (_currentPlaying[_local2].isMuted == false){
setChannelVolume(_currentPlaying[_local2].channel, _currentPlaying[_local2].volume);
};
} else {
_currentPlaying[_local2].volume = _currentPlaying[_local2].targetVolume;
if (_currentPlaying[_local2].isMuted == false){
setChannelVolume(_currentPlaying[_local2].channel, _currentPlaying[_local2].volume);
};
};
} else {
if (_currentPlaying[_local2].volume > _currentPlaying[_local2].targetVolume){
if ((_currentPlaying[_local2].volume - (_currentPlaying[_local2].fadeSpeed * _arg1)) >= _currentPlaying[_local2].targetVolume){
_currentPlaying[_local2].volume = (_currentPlaying[_local2].volume - (_currentPlaying[_local2].fadeSpeed * _arg1));
if (_currentPlaying[_local2].isMuted == false){
setChannelVolume(_currentPlaying[_local2].channel, _currentPlaying[_local2].volume);
};
} else {
_currentPlaying[_local2].volume = _currentPlaying[_local2].targetVolume;
if (_currentPlaying[_local2].isMuted == false){
setChannelVolume(_currentPlaying[_local2].channel, _currentPlaying[_local2].volume);
};
};
} else {
_currentPlaying[_local2].isFading = false;
if (_currentPlaying[_local2].stopOnFadeComplete){
SoundInterface.instance.stopSound(_currentPlaying[_local2].channel);
};
stopTimer();
};
};
};
_local2++;
};
}
public function setSoundTargetFade(_arg1, _arg2:Number, _arg3:Number, _arg4:Boolean):void{
var _local5:String;
var _local6:int;
var _local7:int;
_local5 = retrieveClassName(_arg1);
switch (_local5){
case "String":
if (_soundLibrary.soundDict[_arg1] == null){
return;
};
_local6 = 0;
while (_local6 < _currentPlaying.length) {
if (_currentPlaying[_local6].name == _arg1){
_currentPlaying[_local6].targetVolume = _arg2;
if (_arg3 == 0){
_arg3 = 0.001;
};
_currentPlaying[_local6].fadeSpeed = (Math.abs((_currentPlaying[_local6].volume - _arg2)) / (_arg3 / 1000));
_currentPlaying[_local6].stopOnFadeComplete = _arg4;
_currentPlaying[_local6].isFading = true;
};
_local6++;
};
break;
case "SoundChannel":
_local7 = 0;
while (_local7 < _currentPlaying.length) {
if (_currentPlaying[_local7].channel == _arg1){
_currentPlaying[_local7].targetVolume = _arg2;
if (_arg3 == 0){
_arg3 = 0.001;
};
_currentPlaying[_local7].fadeSpeed = (Math.abs((_currentPlaying[_local7].volume - _arg2)) / (_arg3 / 1000));
_currentPlaying[_local7].stopOnFadeComplete = _arg4;
_currentPlaying[_local7].isFading = true;
break;
};
_local7++;
};
break;
default:
trace((getQualifiedClassName(this) + ": Invalid sound identifier."));
break;
};
if (_useInternalTransformInterval){
startTimer();
};
}
public function set internalTransformInterval(_arg1:Number):void{
_internalTransformInterval = _arg1;
if (_transformTimer){
_transformTimer.delay = _internalTransformInterval;
};
}
public function destroy():void{
_transformTimer.removeEventListener(TimerEvent.TIMER, transformTimerHandler);
_transformTimer = null;
}
private function setChannelVolume(_arg1:SoundChannel, _arg2:Number):void{
var _local3:SoundTransform;
_local3 = _arg1.soundTransform;
_local3.volume = _arg2;
_arg1.soundTransform = _local3;
}
public function setSoundTargetPan(_arg1, _arg2:Number, _arg3:Number, _arg4:Boolean):void{
var _local5:String;
var _local6:int;
var _local7:int;
_local5 = retrieveClassName(_arg1);
switch (_local5){
case "String":
if (_soundLibrary.soundDict[_arg1] == null){
return;
};
_local6 = 0;
while (_local6 < _currentPlaying.length) {
if (_currentPlaying[_local6].name == _arg1){
_currentPlaying[_local6].targetPan = _arg2;
if (_arg3 == 0){
_arg3 = 0.001;
};
_currentPlaying[_local6].panSpeed = (Math.abs((_currentPlaying[_local6].pan - _arg2)) / (_arg3 / 1000));
_currentPlaying[_local6].stopOnPanComplete = _arg4;
_currentPlaying[_local6].isPanning = true;
};
_local6++;
};
break;
case "SoundChannel":
_local7 = 0;
while (_local7 < _currentPlaying.length) {
if (_currentPlaying[_local7].channel == _arg1){
_currentPlaying[_local7].targetPan = _arg2;
if (_arg3 == 0){
_arg3 = 0.001;
};
_currentPlaying[_local7].panSpeed = (Math.abs((_currentPlaying[_local7].pan - _arg2)) / (_arg3 / 1000));
_currentPlaying[_local7].stopOnPanComplete = _arg4;
_currentPlaying[_local7].isPanning = true;
break;
};
_local7++;
};
break;
default:
trace((getQualifiedClassName(this) + "Invalid sound identifier."));
break;
};
if (_useInternalTransformInterval){
startTimer();
};
}
}
}//package smashing.soundcontroller.core
Section 165
//SoundInterface (smashing.soundcontroller.SoundInterface)
package smashing.soundcontroller {
import flash.media.*;
import smashing.soundcontroller.core.*;
import flash.utils.*;
public class SoundInterface {
private const DEFAULT_FADE_TIME:Number = 1000;
private const DEFAULT_PAN_TIME:Number = 1000;
private var _soundController:SoundController;
private var _soundData:SoundData;
private var _sequencingController:SequencingController;
private var _transformController:TransformController;
private static var _instance:SoundInterface;
private static var _instanceGetter:Function = _instanceGetterCheckForNull;
public function SoundInterface():void{
_soundData = new SoundData();
_soundController = new SoundController(_soundData);
_transformController = new TransformController(_soundData);
_sequencingController = new SequencingController(_soundData);
trace((getQualifiedClassName(this) + ": Class created."));
}
public function playSequence(_arg1:String):void{
trace((getQualifiedClassName(this) + ": method not implemented."));
}
public function setSoundTargetPan(_arg1, _arg2:Number=0, _arg3:Number=1000, _arg4:Boolean=false):void{
_transformController.setSoundTargetPan(_arg1, _arg2, _arg3, _arg4);
}
public function getSoundIsMuted(_arg1):Boolean{
var _local2:Boolean;
_local2 = _soundController.getSoundIsMuted(_arg1);
return (_local2);
}
public function setGroupTargetFade(_arg1:String, _arg2:Number, _arg3:Number=1000, _arg4:Boolean=false):void{
_transformController.setGroupTargetFade(_arg1, _arg2, _arg3, _arg4);
}
public function getSoundIsPlaying(_arg1):Boolean{
var _local2:Boolean;
_local2 = _soundController.getSoundIsPlaying(_arg1);
return (_local2);
}
public function useInternalTransformInterval(_arg1:Boolean):void{
_transformController.useInternalTransformInterval = _arg1;
}
public function quickSequence(_arg1:String, ... _args):void{
trace((getQualifiedClassName(this) + ": method not implemented."));
}
public function setSoundTargetFade(_arg1, _arg2:Number, _arg3:Number=1000, _arg4:Boolean=false):void{
_transformController.setSoundTargetFade(_arg1, _arg2, _arg3, _arg4);
}
public function queueDelay(_arg1:String, _arg2:Number):void{
trace((getQualifiedClassName(this) + ": method not implemented."));
}
public function panUpdate(_arg1:Number):void{
if (_transformController.useInternalTransformInterval){
trace((getQualifiedClassName(this) + ": panUpdate Cancelled. Timer in use."));
return;
};
_transformController.panUpdate(_arg1);
}
public function setGroupTargetPan(_arg1:String, _arg2:Number=0, _arg3:Number=1000, _arg4:Boolean=false):void{
_transformController.setGroupTargetPan(_arg1, _arg2, _arg3, _arg4);
}
public function muteAll(_arg1:Boolean=true):void{
_soundController.muteAll(_arg1);
}
public function setLibraryLinkageIDPrefix(_arg1:String):void{
_soundData.soundLibrary.linkageIDPrefix = _arg1;
}
public function getGroupIsPlaying(_arg1:String):Boolean{
var _local2:Boolean;
_local2 = _soundController.getGroupIsPlaying(_arg1);
return (_local2);
}
public function initSoundLibrary(_arg1:XML):void{
_soundData.soundLibrary.init(_arg1);
}
public function stopGroup(_arg1:String):void{
_soundController.stopGroup(_arg1);
}
public function getGroupIsMuted(_arg1:String):Boolean{
var _local2:Boolean;
_local2 = _soundController.getGroupIsMuted(_arg1);
return (_local2);
}
public function toggleSound(_arg1, _arg2:Boolean):void{
_soundController.toggleSound(_arg1, _arg2);
}
public function setVolume(_arg1, _arg2:Number):void{
_soundController.setVolume(_arg1, _arg2);
}
public function fadeUpdate(_arg1:Number):void{
if (_transformController.useInternalTransformInterval){
trace((getQualifiedClassName(this) + ": fadeUpdate Cancelled. Timer in use."));
return;
};
_transformController.fadeUpdate(_arg1);
}
public function getAllSoundsAreMuted():Boolean{
var _local1:Boolean;
_local1 = _soundController.getAllSoundsAreMuted();
return (_local1);
}
public function stopSequence(_arg1:String):void{
trace((getQualifiedClassName(this) + ": method not implemented."));
}
public function stopAllSequences():void{
trace((getQualifiedClassName(this) + ": method not implemented."));
}
private function destroyInstance():void{
stopAll();
_transformController.destroy();
_sequencingController.destroy();
_soundController.destroy();
_soundData.destroy();
}
public function muteGroup(_arg1:String, _arg2:Boolean=true):void{
_soundController.muteGroup(_arg1, _arg2);
}
public function muteSound(_arg1, _arg2:Boolean=true):void{
_soundController.muteSound(_arg1, _arg2);
}
public function setGroupVolume(_arg1:String, _arg2:Number):void{
_soundController.setGroupVolume(_arg1, _arg2);
}
public function toggleGroup(_arg1:String, _arg2:Boolean):void{
_soundController.toggleGroup(_arg1, _arg2);
}
public function playSound(_arg1:String, _arg2:String="default", _arg3:Number=1, _arg4:Number=0):SoundChannel{
var _local5:SoundChannel;
_local5 = _soundController.playSound(_arg1, _arg2, _arg3, _arg4);
return (_local5);
}
public function stopSound(_arg1):void{
_soundController.stopSound(_arg1);
}
public function queueSound(_arg1:String, ... _args):void{
trace((getQualifiedClassName(this) + ": method not implemented."));
}
public function stopAll():void{
_soundController.stopAll();
}
private static function _instanceGetterNoCheckForNull():SoundInterface{
return (_instance);
}
public static function get instance():SoundInterface{
return (_instanceGetter());
}
private static function _instanceGetterCheckForNull():SoundInterface{
if (_instance == null){
_instance = new (SoundInterface);
_instanceGetter = _instanceGetterNoCheckForNull;
};
return (_instance);
}
public static function destroy():void{
_instance.destroyInstance();
_instance = null;
}
}
}//package smashing.soundcontroller
Section 166
//MovieClipTextField (smashing.text.MovieClipTextField)
package smashing.text {
import flash.display.*;
import flash.text.*;
import flash.geom.*;
public class MovieClipTextField extends MovieClip {
public var txt:TextField;
private static var __styleSheet:StyleSheet = null;
public function replaceText(_arg1:int, _arg2:int, _arg3:String):void{
txt.replaceText(_arg1, _arg2, _arg3);
}
public function get border():Boolean{
return (txt.border);
}
public function get styleSheet():StyleSheet{
return (txt.styleSheet);
}
public function set scrollH(_arg1:int):void{
txt.scrollH = _arg1;
}
public function get textColor():uint{
return (txt.textColor);
}
public function getFirstCharInParagraph(_arg1:int):int{
return (txt.getFirstCharInParagraph(_arg1));
}
public function get autoSize():String{
return (txt.autoSize);
}
public function set scrollV(_arg1:int):void{
txt.scrollV = _arg1;
}
public function set border(_arg1:Boolean):void{
txt.border = _arg1;
}
public function set background(_arg1:Boolean):void{
txt.background = _arg1;
}
public function get selectable():Boolean{
return (txt.selectable);
}
public function set text(_arg1:String):void{
txt.text = _arg1;
}
public function set styleSheet(_arg1:StyleSheet):void{
txt.styleSheet = _arg1;
}
public function get antiAliasType():String{
return (txt.antiAliasType);
}
public function get selectionEndIndex():int{
return (txt.selectionEndIndex);
}
public function get selectionBeginIndex():int{
return (txt.selectionBeginIndex);
}
public function set textColor(_arg1:uint):void{
txt.textColor = _arg1;
}
public function get wordWrap():Boolean{
return (txt.wordWrap);
}
public function getLineIndexOfChar(_arg1:int):int{
return (txt.getLineIndexOfChar(_arg1));
}
public function set type(_arg1:String):void{
txt.type = _arg1;
}
public function get bottomScrollV():int{
return (txt.bottomScrollV);
}
public function set alwaysShowSelection(_arg1:Boolean):void{
txt.alwaysShowSelection = _arg1;
}
public function set sharpness(_arg1:Number):void{
txt.sharpness = _arg1;
}
public function get borderColor():uint{
return (txt.borderColor);
}
public function set condenseWhite(_arg1:Boolean):void{
txt.condenseWhite = _arg1;
}
public function get textWidth():Number{
return (txt.textWidth);
}
public function get defaultTextFormat():TextFormat{
return (txt.defaultTextFormat);
}
public function get useRichTextClipboard():Boolean{
return (txt.useRichTextClipboard);
}
public function set autoSize(_arg1:String):void{
txt.autoSize = _arg1;
}
public function get embedFonts():Boolean{
return (txt.embedFonts);
}
public function set selectable(_arg1:Boolean):void{
txt.selectable = _arg1;
}
public function set displayAsPassword(_arg1:Boolean):void{
txt.displayAsPassword = _arg1;
}
public function getLineText(_arg1:int):String{
return (getLineText(_arg1));
}
public function get mouseWheelEnabled():Boolean{
return (txt.mouseWheelEnabled);
}
public function get textHeight():Number{
return (txt.textHeight);
}
public function get restrict():String{
return (txt.restrict);
}
public function get gridFitType():String{
return (txt.gridFitType);
}
public function get multiline():Boolean{
return (txt.multiline);
}
public function set antiAliasType(_arg1:String):void{
txt.antiAliasType = _arg1;
}
public function get backgroundColor():uint{
return (txt.backgroundColor);
}
public function get maxChars():int{
return (txt.maxChars);
}
public function get length():int{
return (txt.length);
}
public function set thickness(_arg1:Number):void{
txt.thickness = _arg1;
}
public function set wordWrap(_arg1:Boolean):void{
txt.wordWrap = _arg1;
}
public function set htmlText(_arg1:String):void{
if (((!((__styleSheet == null))) && ((txt.styleSheet == null)))){
txt.styleSheet = __styleSheet;
txt.embedFonts = true;
};
txt.htmlText = _arg1;
}
public function getLineMetrics(_arg1:int):TextLineMetrics{
return (txt.getLineMetrics(_arg1));
}
public function get maxScrollH():int{
return (txt.maxScrollH);
}
public function get numLines():int{
return (txt.numLines);
}
public function get scrollH():int{
return (txt.scrollH);
}
public function get caretIndex():int{
return (txt.caretIndex);
}
public function get maxScrollV():int{
return (txt.maxScrollV);
}
public function getImageReference(_arg1:String):DisplayObject{
return (txt.getImageReference(_arg1));
}
public function get scrollV():int{
return (txt.scrollV);
}
public function get text():String{
return (txt.text);
}
public function get background():Boolean{
return (txt.background);
}
public function set borderColor(_arg1:uint):void{
txt.borderColor = _arg1;
}
public function get type():String{
return (txt.type);
}
public function getCharBoundaries(_arg1:int):Rectangle{
return (txt.getCharBoundaries(_arg1));
}
public function replaceSelectedText(_arg1:String):void{
txt.replaceSelectedText(_arg1);
}
public function get alwaysShowSelection():Boolean{
return (txt.alwaysShowSelection);
}
public function get sharpness():Number{
return (txt.sharpness);
}
public function get condenseWhite():Boolean{
return (txt.condenseWhite);
}
public function get displayAsPassword():Boolean{
return (txt.displayAsPassword);
}
public function set useRichTextClipboard(_arg1:Boolean):void{
txt.useRichTextClipboard = _arg1;
}
public function set embedFonts(_arg1:Boolean):void{
txt.embedFonts = _arg1;
}
public function set multiline(_arg1:Boolean):void{
txt.multiline = _arg1;
}
public function set mouseWheelEnabled(_arg1:Boolean):void{
txt.mouseWheelEnabled = _arg1;
}
public function set defaultTextFormat(_arg1:TextFormat):void{
txt.defaultTextFormat = _arg1;
}
public function appendText(_arg1:String):void{
txt.appendText(_arg1);
}
public function getLineIndexAtPoint(_arg1:Number, _arg2:Number):int{
return (txt.getLineIndexAtPoint(_arg1, _arg2));
}
public function setSelection(_arg1:int, _arg2:int):void{
txt.setSelection(_arg1, _arg2);
}
public function get htmlText():String{
return (txt.htmlText);
}
public function getTextFormat(_arg1:int=-1, _arg2:int=-1):TextFormat{
return (txt.getTextFormat(_arg1, _arg2));
}
public function get thickness():Number{
return (txt.thickness);
}
public function set restrict(_arg1:String):void{
txt.restrict = _arg1;
}
public function set gridFitType(_arg1:String):void{
txt.gridFitType = _arg1;
}
public function setTextFormat(_arg1:TextFormat, _arg2:int=-1, _arg3:int=-1):void{
txt.setTextFormat(_arg1, _arg2, _arg3);
}
public function getLineOffset(_arg1:int):int{
return (getLineOffset(_arg1));
}
public function set backgroundColor(_arg1:uint):void{
txt.backgroundColor = _arg1;
}
public function set maxChars(_arg1:int):void{
txt.maxChars = _arg1;
}
public function getParagraphLength(_arg1:int):int{
return (getParagraphLength(_arg1));
}
public function getCharIndexAtPoint(_arg1:Number, _arg2:Number):int{
return (txt.getCharIndexAtPoint(_arg1, _arg2));
}
public function getLineLength(_arg1:int):int{
return (txt.getLineLength(_arg1));
}
public static function set styleSheet(_arg1:StyleSheet):void{
__styleSheet = _arg1;
}
}
}//package smashing.text
Section 167
//AbstractButton (smashing.ui.buttons.AbstractButton)
package smashing.ui.buttons {
import flash.display.*;
import flash.events.*;
import smashing.text.*;
public class AbstractButton extends MovieClip {
public var label:MovieClipTextField;// = null
protected var __id:String;// = null
public var hit:MovieClip;// = null
public var sfx:MovieClip;// = null
protected var __index:uint;// = 0
public function AbstractButton(){
hit = null;
sfx = null;
label = null;
__id = null;
__index = 0;
super();
if (hit != null){
this.hitArea = hit;
};
this.buttonMode = true;
this.mouseEnabled = true;
this.mouseChildren = false;
this.focusRect = false;
}
public function destroy():void{
}
public function get id():String{
return (__id);
}
protected function delegateEvent(_arg1:Event, _arg2:Boolean=false):void{
if (_arg2){
this.dispatchEvent(_arg1.clone());
} else {
this.dispatchEvent(_arg1);
};
}
public function set id(_arg1:String):void{
__id = _arg1;
}
public function set selected(_arg1:Boolean):void{
}
public function get disabled():Boolean{
return (false);
}
protected function playSFX(_arg1:String):void{
if (sfx != null){
sfx.gotoAndStop("off");
sfx.gotoAndStop(_arg1);
};
}
public function set index(_arg1:int):void{
__index = _arg1;
}
public function get selected():Boolean{
return (false);
}
protected function stopEvent(_arg1:Event):void{
_arg1.stopImmediatePropagation();
_arg1.stopPropagation();
}
public function get index():int{
return (__index);
}
public function set disabled(_arg1:Boolean):void{
}
}
}//package smashing.ui.buttons
Section 168
//StandardButton (smashing.ui.buttons.StandardButton)
package smashing.ui.buttons {
import flash.events.*;
import flash.ui.*;
public class StandardButton extends AbstractButton {
protected var __disabled:Boolean;// = false
protected var __selected:Boolean;// = false
protected var __focused:Boolean;// = false
public function StandardButton(){
__disabled = false;
__selected = false;
__focused = false;
super();
this.stop();
this.addEventListener(MouseEvent.MOUSE_OVER, onMouseOverEvent);
this.addEventListener(MouseEvent.MOUSE_OUT, onMouseOutEvent);
this.addEventListener(MouseEvent.MOUSE_DOWN, onMouseDownEvent);
this.addEventListener(MouseEvent.CLICK, onMouseClickEvent);
this.addEventListener(MouseEvent.DOUBLE_CLICK, onMouseDoubleClickEvent);
this.addEventListener(FocusEvent.FOCUS_IN, onFocusInEvent);
this.addEventListener(FocusEvent.FOCUS_OUT, onFocusOutEvent);
this.addEventListener(KeyboardEvent.KEY_UP, onKeyUpEvent);
}
protected function onFocusInEvent(_arg1:FocusEvent):void{
if (((__disabled) || (__selected))){
super.stopEvent(_arg1);
return;
};
if (_arg1.target == this){
__focused = true;
this.gotoAndStop("over");
};
}
protected function onMouseOutEvent(_arg1:MouseEvent):void{
if (((__disabled) || (__selected))){
super.stopEvent(_arg1);
return;
};
this.gotoAndStop("up");
if (_arg1.buttonDown){
this.stage.addEventListener(MouseEvent.MOUSE_UP, onMouseUpEvent);
};
}
override public function set selected(_arg1:Boolean):void{
__disabled = false;
if (((__selected) && (!(_arg1)))){
this.mouseEnabled = true;
this.gotoAndStop("up");
__selected = false;
} else {
if (((!(__selected)) && (_arg1))){
this.mouseEnabled = false;
this.gotoAndStop("selected");
__selected = true;
};
};
}
protected function onFocusOutEvent(_arg1:FocusEvent):void{
if (((__disabled) || (__selected))){
super.stopEvent(_arg1);
return;
};
if (_arg1.target == this){
__focused = false;
if (!this.hitTestPoint(this.mouseX, this.mouseY)){
this.gotoAndStop("up");
};
};
}
override public function get disabled():Boolean{
return (__disabled);
}
protected function onMouseClickEvent(_arg1:MouseEvent):void{
super.playSFX("click");
this.gotoAndStop("over");
}
protected function onKeyUpEvent(_arg1:KeyboardEvent):void{
if (((__disabled) || (__selected))){
super.stopEvent(_arg1);
return;
};
if (((__focused) && ((_arg1.keyCode == Keyboard.ENTER)))){
this.dispatchEvent(new MouseEvent(MouseEvent.CLICK));
};
}
override public function get selected():Boolean{
return (__selected);
}
protected function onMouseDownEvent(_arg1:MouseEvent):void{
super.playSFX("down");
this.gotoAndStop("down");
}
protected function onMouseDoubleClickEvent(_arg1:MouseEvent):void{
super.playSFX("doubleclick");
}
protected function onMouseOverEvent(_arg1:MouseEvent):void{
super.playSFX("over");
this.gotoAndStop("over");
if (_arg1.buttonDown){
this.stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUpEvent);
};
}
protected function onMouseUpEvent(_arg1:MouseEvent):void{
super.stopEvent(_arg1);
if (_arg1.target == this){
this.gotoAndStop("over");
};
this.stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUpEvent);
super.delegateEvent(_arg1);
}
override public function destroy():void{
this.stage.removeEventListener(MouseEvent.MOUSE_UP, onMouseUpEvent);
this.removeEventListener(MouseEvent.MOUSE_OVER, onMouseOverEvent);
this.removeEventListener(MouseEvent.MOUSE_OUT, onMouseOutEvent);
this.removeEventListener(MouseEvent.MOUSE_DOWN, onMouseDownEvent);
this.removeEventListener(MouseEvent.CLICK, onMouseClickEvent);
this.removeEventListener(MouseEvent.DOUBLE_CLICK, onMouseDoubleClickEvent);
this.removeEventListener(FocusEvent.FOCUS_IN, onFocusInEvent);
this.removeEventListener(FocusEvent.FOCUS_OUT, onFocusOutEvent);
this.removeEventListener(KeyboardEvent.KEY_UP, onKeyUpEvent);
}
override public function set disabled(_arg1:Boolean):void{
__selected = false;
if (((__disabled) && (!(_arg1)))){
this.mouseEnabled = true;
this.gotoAndStop("up");
__disabled = false;
} else {
if (((!(__disabled)) && (_arg1))){
this.mouseEnabled = false;
this.gotoAndStop("disabled");
__disabled = true;
};
};
}
}
}//package smashing.ui.buttons
Section 169
//ClassUtils (smashing.utils.ClassUtils)
package smashing.utils {
import flash.system.*;
public class ClassUtils {
public static function getClass(_arg1:String, _arg2:ApplicationDomain=null):Class{
var _local3:ApplicationDomain;
var _local4:Class;
_local3 = ((_arg2)==null) ? ApplicationDomain.currentDomain : _arg2;
if (_local3.hasDefinition(_arg1)){
_local4 = (_local3.getDefinition(_arg1) as Class);
return (_local4);
};
trace(("Cannot find class with qualified class name: " + _arg1));
return (null);
}
public static function create(_arg1:String, _arg2:ApplicationDomain=null){
var _local3:ApplicationDomain;
var _local4:Class;
_local3 = ((_arg2)==null) ? ApplicationDomain.currentDomain : _arg2;
if (_local3.hasDefinition(_arg1)){
_local4 = (_local3.getDefinition(_arg1) as Class);
return (new (_local4));
};
trace(("Cannot create class with qualified class name: " + _arg1));
return (null);
}
}
}//package smashing.utils
Section 170
//Debug (smashing.utils.Debug)
package smashing.utils {
import flash.events.*;
import flash.net.*;
public class Debug {
private static function localConnectionSecurityHandler(_arg1:SecurityErrorEvent):void{
}
public static function log(_arg1:Object):void{
addLogItem(_arg1.toString(), "log");
}
public static function get connections():Array{
return ([{id:"_SILCtrace", method:"trace"}, {id:"_SIDebugger", method:"addLogItem"}]);
}
private static function addLogItem(_arg1:String, _arg2:String="log"):void{
var _local3:LocalConnection;
var _local4:uint;
_local3 = new LocalConnection();
_local3.allowDomain("*");
_local3.allowInsecureDomain("*");
_local3.addEventListener(StatusEvent.STATUS, localConnectionStatusHandler);
_local3.addEventListener(SecurityErrorEvent.SECURITY_ERROR, localConnectionSecurityHandler);
_local4 = 0;
while (_local4 < connections.length) {
_local3.send(connections[_local4].id, connections[_local4].method, _arg1, _arg2);
_local4++;
};
trace(_arg1);
}
public static function error(_arg1:Object):void{
addLogItem(_arg1.toString(), "error");
}
public static function warning(_arg1:Object):void{
addLogItem(_arg1.toString(), "warning");
}
private static function localConnectionStatusHandler(_arg1:StatusEvent):void{
}
}
}//package smashing.utils
Section 171
//FrameUtils (smashing.utils.FrameUtils)
package smashing.utils {
import flash.display.*;
public class FrameUtils {
public static function labelToNumber(_arg1:MovieClip, _arg2:String, _arg3:Boolean=false):int{
var _local4:Array;
var _local5:Number;
var _local6:FrameLabel;
_local4 = _arg1.currentLabels;
if (_arg2 == "target.min"){
return (((_arg3)==true) ? 0 : 1);
} else {
if (_arg2 == "target.max"){
return (((_arg3)==true) ? (_arg1.totalFrames - 1) : _arg1.totalFrames);
};
};
_local5 = 0;
while (_local5 < _local4.length) {
_local6 = _local4[_local5];
if (_local6.name == _arg2){
return (((_arg3)==true) ? (_local6.frame - 1) : _local6.frame);
};
_local5++;
};
return (((_arg3)==true) ? 0 : 1);
}
public static function addFrameLabelScript(_arg1:MovieClip, _arg2:String, _arg3:Function, _arg4:Boolean=false):void{
var _local5:Number;
_local5 = 0;
if (_arg4 == true){
_local5 = FrameUtils.lastFrameInLabel(_arg1, _arg2, true);
} else {
_local5 = FrameUtils.labelToNumber(_arg1, _arg2, true);
};
_arg1.addFrameScript(_local5, _arg3);
}
public static function lastFrameInLabel(_arg1:MovieClip, _arg2:String, _arg3:Boolean=false):int{
var _local4:Array;
var _local5:Boolean;
var _local6:Number;
var _local7:Number;
var _local8:FrameLabel;
_local4 = _arg1.currentLabels;
_local5 = false;
_local6 = 1;
_local7 = 0;
while (_local7 < _local4.length) {
_local8 = _local4[_local7];
if ((((_local5 == true)) && (!((_local8.name == _arg2))))){
_local6 = (_local8.frame - 1);
break;
} else {
if (_local8.name == _arg2){
_local5 = true;
_local6 = _arg1.totalFrames;
};
};
_local7++;
};
_local6 = ((_arg3)==true) ? (_local6 - 1) : _local6;
return (_local6);
}
}
}//package smashing.utils
Section 172
//StringUtils (smashing.utils.StringUtils)
package smashing.utils {
public class StringUtils {
public static function isValidString(_arg1:String):Boolean{
return (!(isEmptyString(_arg1)));
}
public static function isEmptyString(_arg1:String):Boolean{
if ((((((_arg1 == null)) || (!((_arg1 is String))))) || ((_arg1.search(/.+/i) == -1)))){
return (true);
};
return (false);
}
public static function stripWhiteSpace(_arg1:String):String{
return (_arg1.replace(/\s/ig, ""));
}
}
}//package smashing.utils
Section 173
//wav (thwap_a.wav)
package thwap_a {
import flash.media.*;
public dynamic class wav extends Sound {
}
}//package thwap_a
Section 174
//_invisibleBox (_invisibleBox)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _invisibleBox extends InvisibleBox {
}
}//package
Section 175
//_loaderAni (_loaderAni)
package {
import adultswim.polarbearpayback.*;
public dynamic class _loaderAni extends Loader {
public function _loaderAni(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 176
//_pbpPreRoll (_pbpPreRoll)
package {
import com.adultswim.Preroll.*;
public dynamic class _pbpPreRoll extends Preroller {
}
}//package
Section 177
//_spawnBoss (_spawnBoss)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnBoss extends SpawnBoss {
}
}//package
Section 178
//_spawnCloseClubber (_spawnCloseClubber)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnCloseClubber extends SpawnCloseClubber {
}
}//package
Section 179
//_spawnClubberRight (_spawnClubberRight)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnClubberRight extends SpawnRightClubber {
}
}//package
Section 180
//_spawnLeftBully (_spawnLeftBully)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnLeftBully extends SpawnLeftBully {
}
}//package
Section 181
//_spawnLeftClubber (_spawnLeftClubber)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnLeftClubber extends SpawnLeftClubber {
}
}//package
Section 182
//_spawnLeftShooter (_spawnLeftShooter)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnLeftShooter extends SpawnLeftShooter {
}
}//package
Section 183
//_spawnRightBully (_spawnRightBully)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnRightBully extends SpawnRightBully {
}
}//package
Section 184
//_spawnRightShooter (_spawnRightShooter)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class _spawnRightShooter extends SpawnRightShooter {
}
}//package
Section 185
//_UI_Upper (_UI_Upper)
package {
import adultswim.polarbearpayback.*;
public dynamic class _UI_Upper extends UI {
}
}//package
Section 186
//arctic_whackoShack (arctic_whackoShack)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class arctic_whackoShack extends BossIntro {
}
}//package
Section 187
//bloodpool_appear (bloodpool_appear)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class bloodpool_appear extends BloodStain {
public function bloodpool_appear(){
addFrameScript(31, frame32);
}
function frame32(){
stop();
}
}
}//package
Section 188
//boat_mast (boat_mast)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class boat_mast extends GenericObject {
}
}//package
Section 189
//bonus_text_base (bonus_text_base)
package {
import smashing.text.*;
public dynamic class bonus_text_base extends MovieClipTextField {
}
}//package
Section 190
//bridgepost (bridgepost)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class bridgepost extends GenericObject {
}
}//package
Section 191
//btn_continue_skip (btn_continue_skip)
package {
import smashing.ui.buttons.*;
public dynamic class btn_continue_skip extends StandardButton {
public function btn_continue_skip(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 192
//btn_more_games_endscreen (btn_more_games_endscreen)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class btn_more_games_endscreen extends AdultSwimGamesButton {
public function btn_more_games_endscreen(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 193
//cabinbase_container (cabinbase_container)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class cabinbase_container extends GenericObject {
}
}//package
Section 194
//clawmark (clawmark)
package {
import flash.media.*;
public dynamic class clawmark extends Sound {
}
}//package
Section 195
//dart (dart)
package {
import flash.media.*;
public dynamic class dart extends Sound {
}
}//package
Section 196
//deadSeal_white (deadSeal_white)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class deadSeal_white extends DeadSeal {
public function deadSeal_white(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 197
//gfx_arcticBarrle (gfx_arcticBarrle)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_arcticBarrle extends Barrel {
}
}//package
Section 198
//gfx_arcticBridgeWhole (gfx_arcticBridgeWhole)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_arcticBridgeWhole extends Gate {
public function gfx_arcticBridgeWhole(){
addFrameScript(0, frame1, 6, frame7, 35, frame36);
}
function frame7(){
play();
}
function frame1(){
stop();
}
function frame36(){
stop();
}
}
}//package
Section 199
//gfx_arcticStalactite_1 (gfx_arcticStalactite_1)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_arcticStalactite_1 extends GenericObject {
}
}//package
Section 200
//gfx_arcticStalactite_2 (gfx_arcticStalactite_2)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_arcticStalactite_2 extends GenericObject {
}
}//package
Section 201
//gfx_bigDeadWhale (gfx_bigDeadWhale)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_bigDeadWhale extends GenericObject {
}
}//package
Section 202
//gfx_boat_platform (gfx_boat_platform)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_boat_platform extends GenericObject {
}
}//package
Section 203
//gfx_cityibeam (gfx_cityibeam)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_cityibeam extends Gate {
}
}//package
Section 204
//gfx_elevator (gfx_elevator)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_elevator extends Elevator {
}
}//package
Section 205
//gfx_elevator_post (gfx_elevator_post)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class gfx_elevator_post extends ElevatorPost {
}
}//package
Section 206
//gfx_roadBlock (gfx_roadBlock)
package {
import adultswim.polarbearpayback.game.*;
import flash.utils.*;
public dynamic class gfx_roadBlock extends Gate {
public var __setPropDict:Dictionary;
public var __id3_:PlaySound;
public function gfx_roadBlock(){
__setPropDict = new Dictionary(true);
super();
addFrameScript(4, frame5, 5, frame6, 6, frame7, 7, frame8, 8, frame9, 9, frame10, 10, frame11, 11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24, 24, frame25, 25, frame26);
}
function frame10(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame14(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame12(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame18(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame6(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame7(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame8(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame25(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame13(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame17(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame9(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame20(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame21(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame24(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame5(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame23(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame15(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame16(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame22(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame11(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame19(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function frame26(){
if ((((__setPropDict[__id3_] == undefined)) || (!((((int(__setPropDict[__id3_]) >= 5)) && ((int(__setPropDict[__id3_]) <= 26))))))){
__setPropDict[__id3_] = currentFrame;
__setProp___id3__gfx_roadBlock_sfx_5();
};
}
function __setProp___id3__gfx_roadBlock_sfx_5(){
try {
__id3_["componentInspectorSetting"] = true;
} catch(e:Error) {
};
__id3_.soundID = "MechanicalSound";
__id3_.loops = 0;
__id3_.soundPan = 0;
__id3_.startTime = 0;
__id3_.soundVolume = 1;
try {
__id3_["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
}
}//package
Section 207
//hullFront (hullFront)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class hullFront extends GenericObject {
}
}//package
Section 208
//iceHole (iceHole)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class iceHole extends GenericObject {
}
}//package
Section 209
//mcClip (mcClip)
package {
import flash.display.*;
import flash.system.*;
import flash.media.*;
import flash.events.*;
import flash.utils.*;
import flash.text.*;
import flash.geom.*;
import flash.net.*;
import flash.external.*;
import adobe.utils.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.filters.*;
import flash.printing.*;
import flash.ui.*;
import flash.xml.*;
public dynamic class mcClip extends MovieClip {
public function mcClip(){
addFrameScript(0, frame1);
}
function frame1(){
}
public function clearListeners(){
var strURI:String;
var local3:String;
var local1:Number;
var var5:Number;
var var1:String;
var strN1:String;
var strN2:String;
var n1:Number;
var n2:Number;
var var2:Number;
var strToPass:String;
var md5:MD5;
var variables:URLVariables;
var request:URLRequest;
strURI = ExternalInterface.call("getLittleServer");
local3 = this.local1;
local1 = this.local2;
var5 = ExternalInterface.call("getSrvrTime");
var1 = var5.toString();
strN1 = var1.substr(-3, 3);
strN2 = var1.substr(-4, 3);
n1 = parseInt(strN1);
n2 = parseInt(strN2);
var2 = (((n1 * n2) * local1) + local1);
strToPass = ((((((local3 + ",") + local1) + ",") + var5) + ",") + var2);
md5 = new MD5(strToPass);
variables = new URLVariables();
variables.attr1 = ((((((("score=" + local1) + "|gameId=") + local3) + "|timestamp=") + var5) + "|key=") + md5._hash);
trace(((((((("score=" + local1) + "|gameId=") + local3) + "|timestamp=") + var5) + "|key=") + md5._hash));
request = new URLRequest(strURI);
request.data = variables;
try {
navigateToURL(request, "_self");
} catch(e:Error) {
};
}
}
}//package
Section 210
//MD5 (MD5)
package {
import com.adobe.utils.*;
public class MD5 {
public var _hash:String;
public function MD5(_arg1:String){
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
var _local7:int;
var _local8:int;
var _local9:int;
var _local10:Array;
var _local11:int;
var _local12:int;
super();
_local2 = 1732584193;
_local3 = -271733879;
_local4 = -1732584194;
_local5 = 271733878;
_local10 = createBlocks(_arg1);
_local11 = _local10.length;
_local12 = 0;
while (_local12 < _local11) {
_local6 = _local2;
_local7 = _local3;
_local8 = _local4;
_local9 = _local5;
_local2 = ff(_local2, _local3, _local4, _local5, _local10[(_local12 + 0)], 7, -680876936);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[(_local12 + 1)], 12, -389564586);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[(_local12 + 2)], 17, 606105819);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[(_local12 + 3)], 22, -1044525330);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[(_local12 + 4)], 7, -176418897);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[(_local12 + 5)], 12, 1200080426);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[(_local12 + 6)], 17, -1473231341);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[(_local12 + 7)], 22, -45705983);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[(_local12 + 8)], 7, 1770035416);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[(_local12 + 9)], 12, -1958414417);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[(_local12 + 10)], 17, -42063);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[(_local12 + 11)], 22, -1990404162);
_local2 = ff(_local2, _local3, _local4, _local5, _local10[(_local12 + 12)], 7, 1804603682);
_local5 = ff(_local5, _local2, _local3, _local4, _local10[(_local12 + 13)], 12, -40341101);
_local4 = ff(_local4, _local5, _local2, _local3, _local10[(_local12 + 14)], 17, -1502002290);
_local3 = ff(_local3, _local4, _local5, _local2, _local10[(_local12 + 15)], 22, 1236535329);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[(_local12 + 1)], 5, -165796510);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[(_local12 + 6)], 9, -1069501632);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[(_local12 + 11)], 14, 643717713);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[(_local12 + 0)], 20, -373897302);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[(_local12 + 5)], 5, -701558691);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[(_local12 + 10)], 9, 38016083);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[(_local12 + 15)], 14, -660478335);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[(_local12 + 4)], 20, -405537848);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[(_local12 + 9)], 5, 568446438);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[(_local12 + 14)], 9, -1019803690);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[(_local12 + 3)], 14, -187363961);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[(_local12 + 8)], 20, 1163531501);
_local2 = gg(_local2, _local3, _local4, _local5, _local10[(_local12 + 13)], 5, -1444681467);
_local5 = gg(_local5, _local2, _local3, _local4, _local10[(_local12 + 2)], 9, -51403784);
_local4 = gg(_local4, _local5, _local2, _local3, _local10[(_local12 + 7)], 14, 1735328473);
_local3 = gg(_local3, _local4, _local5, _local2, _local10[(_local12 + 12)], 20, -1926607734);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[(_local12 + 5)], 4, -378558);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[(_local12 + 8)], 11, -2022574463);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[(_local12 + 11)], 16, 1839030562);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[(_local12 + 14)], 23, -35309556);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[(_local12 + 1)], 4, -1530992060);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[(_local12 + 4)], 11, 1272893353);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[(_local12 + 7)], 16, -155497632);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[(_local12 + 10)], 23, -1094730640);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[(_local12 + 13)], 4, 681279174);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[(_local12 + 0)], 11, -358537222);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[(_local12 + 3)], 16, -722521979);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[(_local12 + 6)], 23, 76029189);
_local2 = hh(_local2, _local3, _local4, _local5, _local10[(_local12 + 9)], 4, -640364487);
_local5 = hh(_local5, _local2, _local3, _local4, _local10[(_local12 + 12)], 11, -421815835);
_local4 = hh(_local4, _local5, _local2, _local3, _local10[(_local12 + 15)], 16, 530742520);
_local3 = hh(_local3, _local4, _local5, _local2, _local10[(_local12 + 2)], 23, -995338651);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[(_local12 + 0)], 6, -198630844);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[(_local12 + 7)], 10, 1126891415);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[(_local12 + 14)], 15, -1416354905);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[(_local12 + 5)], 21, -57434055);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[(_local12 + 12)], 6, 1700485571);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[(_local12 + 3)], 10, -1894986606);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[(_local12 + 10)], 15, -1051523);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[(_local12 + 1)], 21, -2054922799);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[(_local12 + 8)], 6, 1873313359);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[(_local12 + 15)], 10, -30611744);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[(_local12 + 6)], 15, -1560198380);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[(_local12 + 13)], 21, 1309151649);
_local2 = ii(_local2, _local3, _local4, _local5, _local10[(_local12 + 4)], 6, -145523070);
_local5 = ii(_local5, _local2, _local3, _local4, _local10[(_local12 + 11)], 10, -1120210379);
_local4 = ii(_local4, _local5, _local2, _local3, _local10[(_local12 + 2)], 15, 718787259);
_local3 = ii(_local3, _local4, _local5, _local2, _local10[(_local12 + 9)], 21, -343485551);
_local2 = (_local2 + _local6);
_local3 = (_local3 + _local7);
_local4 = (_local4 + _local8);
_local5 = (_local5 + _local9);
_local12 = (_local12 + 16);
};
_hash = (((IntUtil.toHex(_local2) + IntUtil.toHex(_local3)) + IntUtil.toHex(_local4)) + IntUtil.toHex(_local5));
trace(("_hash: " + _hash));
}
public function init():String{
return (_hash);
}
private static function ff(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(f, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function createBlocks(_arg1:String):Array{
var _local2:Array;
var _local3:int;
var _local4:int;
var _local5:int;
_local2 = new Array();
_local3 = (_arg1.length * 8);
_local4 = 0xFF;
_local5 = 0;
while (_local5 < _local3) {
_local2[(_local5 >> 5)] = (_local2[(_local5 >> 5)] | ((_arg1.charCodeAt((_local5 / 8)) & _local4) << (_local5 % 32)));
_local5 = (_local5 + 8);
};
_local2[(_local3 >> 5)] = (_local2[(_local3 >> 5)] | (128 << (_local3 % 32)));
_local2[((((_local3 + 64) >>> 9) << 4) + 14)] = _local3;
return (_local2);
}
private static function ii(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(i, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function f(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg2) | (~(_arg1) & _arg3)));
}
private static function g(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 & _arg3) | (_arg2 & ~(_arg3))));
}
private static function h(_arg1:int, _arg2:int, _arg3:int):int{
return (((_arg1 ^ _arg2) ^ _arg3));
}
private static function i(_arg1:int, _arg2:int, _arg3:int):int{
return ((_arg2 ^ (_arg1 | ~(_arg3))));
}
private static function transform(_arg1:Function, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int, _arg8:int):int{
var _local9:int;
_local9 = (((_arg2 + int(_arg1(_arg3, _arg4, _arg5))) + _arg6) + _arg8);
return ((IntUtil.rol(_local9, _arg7) + _arg3));
}
private static function hh(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(h, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
private static function gg(_arg1:int, _arg2:int, _arg3:int, _arg4:int, _arg5:int, _arg6:int, _arg7:int):int{
return (transform(g, _arg1, _arg2, _arg3, _arg4, _arg5, _arg6, _arg7));
}
}
}//package
Section 211
//MechanicalSound (MechanicalSound)
package {
import flash.media.*;
public dynamic class MechanicalSound extends Sound {
}
}//package
Section 212
//object_suv_parked (object_suv_parked)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class object_suv_parked extends SUV_Parked {
}
}//package
Section 213
//pbp_arrow (pbp_arrow)
package {
import flash.media.*;
public dynamic class pbp_arrow extends Sound {
}
}//package
Section 214
//pbp_bear (pbp_bear)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_bear extends Bear {
}
}//package
Section 215
//pbp_bear_eat (pbp_bear_eat)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_bear_eat extends Eat {
}
}//package
Section 216
//pbp_bear_projectiles (pbp_bear_projectiles)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_bear_projectiles extends BearProjectile {
}
}//package
Section 217
//pbp_bearcharge (pbp_bearcharge)
package {
import flash.media.*;
public dynamic class pbp_bearcharge extends Sound {
}
}//package
Section 218
//pbp_bearMessage (pbp_bearMessage)
package {
import adultswim.polarbearpayback.game.*;
import flash.utils.*;
public dynamic class pbp_bearMessage extends Message {
public var __setPropDict:Dictionary;
public var __id2_:PlaySound;
public function pbp_bearMessage(){
__setPropDict = new Dictionary(true);
super();
addFrameScript(0, frame1, 34, frame35, 4, frame5);
}
function __setProp___id2___bearMessage_sfx_5(){
try {
__id2_["componentInspectorSetting"] = true;
} catch(e:Error) {
};
__id2_.soundID = "dying";
__id2_.loops = 0;
__id2_.soundPan = 0;
__id2_.startTime = 0;
__id2_.soundVolume = 1;
try {
__id2_["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
function frame1(){
stop();
}
function frame5(){
if ((((__setPropDict[__id2_] == undefined)) || (!((int(__setPropDict[__id2_]) == 5))))){
__setPropDict[__id2_] = currentFrame;
__setProp___id2___bearMessage_sfx_5();
};
}
function frame35(){
this.gotoAndStop("off");
}
}
}//package
Section 219
//pbp_boatHatch (pbp_boatHatch)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_boatHatch extends WhalerLift {
}
}//package
Section 220
//pbp_boatSluiceGrateWhole (pbp_boatSluiceGrateWhole)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_boatSluiceGrateWhole extends Gate {
}
}//package
Section 221
//pbp_bonusIndicator (pbp_bonusIndicator)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_bonusIndicator extends BonusIndicator {
}
}//package
Section 222
//pbp_boss_2_entrance (pbp_boss_2_entrance)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_boss_2_entrance extends BossIntro {
}
}//package
Section 223
//pbp_btn_close (pbp_btn_close)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_close extends StandardButton {
public function pbp_btn_close(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 224
//pbp_btn_continueLevel (pbp_btn_continueLevel)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_continueLevel extends StandardButton {
public function pbp_btn_continueLevel(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 225
//pbp_btn_endscreen_continue (pbp_btn_endscreen_continue)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_endscreen_continue extends StandardButton {
public function pbp_btn_endscreen_continue(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 226
//pbp_btn_help (pbp_btn_help)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_help extends StandardButton {
public function pbp_btn_help(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 227
//pbp_btn_instructions (pbp_btn_instructions)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_instructions extends StandardButton {
public function pbp_btn_instructions(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 228
//pbp_btn_kill (pbp_btn_kill)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_kill extends StandardButton {
public function pbp_btn_kill(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 229
//pbp_btn_logo (pbp_btn_logo)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_btn_logo extends AdultSwimGamesButton {
public function pbp_btn_logo(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 230
//pbp_btn_more_games (pbp_btn_more_games)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_btn_more_games extends AdultSwimGamesButton {
public function pbp_btn_more_games(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 231
//pbp_btn_music_on_off (pbp_btn_music_on_off)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_btn_music_on_off extends MusicToggle {
public function pbp_btn_music_on_off(){
addFrameScript(0, frame1, 4, frame5);
}
function frame1(){
stop();
}
function frame5(){
stop();
}
}
}//package
Section 232
//pbp_btn_new_game (pbp_btn_new_game)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_new_game extends StandardButton {
public function pbp_btn_new_game(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 233
//pbp_btn_newContinueSplash (pbp_btn_newContinueSplash)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_newContinueSplash extends StandardButton {
public function pbp_btn_newContinueSplash(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 234
//pbp_btn_newCredits (pbp_btn_newCredits)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_newCredits extends StandardButton {
public function pbp_btn_newCredits(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 235
//pbp_btn_newGameSplash (pbp_btn_newGameSplash)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_newGameSplash extends StandardButton {
public function pbp_btn_newGameSplash(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 236
//pbp_btn_no (pbp_btn_no)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_no extends StandardButton {
public function pbp_btn_no(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 237
//pbp_btn_quit (pbp_btn_quit)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_quit extends StandardButton {
public function pbp_btn_quit(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 238
//pbp_btn_resume (pbp_btn_resume)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_resume extends StandardButton {
public function pbp_btn_resume(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 239
//pbp_btn_submitScore (pbp_btn_submitScore)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_submitScore extends StandardButton {
public function pbp_btn_submitScore(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 240
//pbp_btn_yes (pbp_btn_yes)
package {
import smashing.ui.buttons.*;
public dynamic class pbp_btn_yes extends StandardButton {
public function pbp_btn_yes(){
addFrameScript(0, frame1, 10, frame11, 17, frame18);
}
function frame1(){
stop();
}
function frame11(){
this.play();
}
function frame18(){
this.stop();
}
}
}//package
Section 241
//pbp_city_boss_fireball (pbp_city_boss_fireball)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_city_boss_fireball extends FireballProjectile {
}
}//package
Section 242
//pbp_cleaver (pbp_cleaver)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_cleaver extends SealBossProjectile {
public function pbp_cleaver(){
addFrameScript(0, frame1);
}
function frame1(){
gotoAndPlay(1);
}
}
}//package
Section 243
//pbp_Cone (pbp_Cone)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_Cone extends GenericObject {
}
}//package
Section 244
//pbp_continuePopUp (pbp_continuePopUp)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_continuePopUp extends ContinuePopUp {
public function pbp_continuePopUp(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 245
//pbp_crate (pbp_crate)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_crate extends Crate {
}
}//package
Section 246
//pbp_creditsPage (pbp_creditsPage)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_creditsPage extends PopUp {
public function pbp_creditsPage(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 247
//pbp_cutscene_1 (pbp_cutscene_1)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_cutscene_1 extends CutScene {
}
}//package
Section 248
//pbp_cutscene_2 (pbp_cutscene_2)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_cutscene_2 extends CutScene {
}
}//package
Section 249
//pbp_cutscene_3 (pbp_cutscene_3)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_cutscene_3 extends CutScene {
}
}//package
Section 250
//pbp_cutscene_4 (pbp_cutscene_4)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_cutscene_4 extends Finale {
}
}//package
Section 251
//pbp_enemy_city_boss (pbp_enemy_city_boss)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_boss extends CityBoss {
}
}//package
Section 252
//pbp_enemy_city_bully (pbp_enemy_city_bully)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_bully extends CityBully {
}
}//package
Section 253
//pbp_enemy_city_ceo (pbp_enemy_city_ceo)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_ceo extends CEO {
}
}//package
Section 254
//pbp_enemy_city_ceo_enter (pbp_enemy_city_ceo_enter)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_ceo_enter extends BossIntro {
}
}//package
Section 255
//pbp_enemy_city_rapel (pbp_enemy_city_rapel)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_rapel extends RopeSpawn {
}
}//package
Section 256
//pbp_enemy_city_shooter (pbp_enemy_city_shooter)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_shooter extends CityShooter {
}
}//package
Section 257
//pbp_enemy_city_suit (pbp_enemy_city_suit)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_suit extends CitySuit {
}
}//package
Section 258
//pbp_enemy_city_suit_alt (pbp_enemy_city_suit_alt)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_suit_alt extends CitySuit {
}
}//package
Section 259
//pbp_enemy_city_suit_mini (pbp_enemy_city_suit_mini)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_city_suit_mini extends MiniSuit {
}
}//package
Section 260
//pbp_enemy_clubber (pbp_enemy_clubber)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_clubber extends Clubber {
}
}//package
Section 261
//pbp_enemy_clubber_alt (pbp_enemy_clubber_alt)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_clubber_alt extends Clubber {
}
}//package
Section 262
//pbp_enemy_seal_boss (pbp_enemy_seal_boss)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_seal_boss extends SealBoss {
}
}//package
Section 263
//pbp_enemy_seal_bully (pbp_enemy_seal_bully)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_seal_bully extends Bully {
}
}//package
Section 264
//pbp_enemy_seal_shooter (pbp_enemy_seal_shooter)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_seal_shooter extends Shooter {
}
}//package
Section 265
//pbp_enemy_whale_bully (pbp_enemy_whale_bully)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_whale_bully extends WhaleBully {
}
}//package
Section 266
//pbp_enemy_whale_shooter (pbp_enemy_whale_shooter)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_whale_shooter extends WhaleShooter {
}
}//package
Section 267
//pbp_enemy_whaler (pbp_enemy_whaler)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_whaler extends Whaler {
}
}//package
Section 268
//pbp_enemy_whaler_alt (pbp_enemy_whaler_alt)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_enemy_whaler_alt extends Whaler {
}
}//package
Section 269
//pbp_flamingo (pbp_flamingo)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_flamingo extends Flamingo {
}
}//package
Section 270
//pbp_game_level_1 (pbp_game_level_1)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_game_level_1 extends GameLevel1 {
}
}//package
Section 271
//pbp_game_level_2 (pbp_game_level_2)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_game_level_2 extends GameLevel2 {
}
}//package
Section 272
//pbp_game_level_3 (pbp_game_level_3)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_game_level_3 extends GameLevel3 {
}
}//package
Section 273
//pbp_gameEngine (pbp_gameEngine)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_gameEngine extends GameEngine {
}
}//package
Section 274
//pbp_gfx_weaponscounter (pbp_gfx_weaponscounter)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_gfx_weaponscounter extends WeaponCount {
}
}//package
Section 275
//pbp_grenade (pbp_grenade)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_grenade extends Grenade {
}
}//package
Section 276
//pbp_grenade_explosion (pbp_grenade_explosion)
package {
import flash.media.*;
public dynamic class pbp_grenade_explosion extends Sound {
}
}//package
Section 277
//pbp_head_eat (pbp_head_eat)
package {
import flash.media.*;
public dynamic class pbp_head_eat extends Sound {
}
}//package
Section 278
//pbp_help (pbp_help)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_help extends PopUp {
public function pbp_help(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 279
//pbp_levelWINScoreSummary (pbp_levelWINScoreSummary)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_levelWINScoreSummary extends LevelWinPopUp {
public function pbp_levelWINScoreSummary(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 280
//pbp_loseScreen (pbp_loseScreen)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_loseScreen extends EndScreen {
public function pbp_loseScreen(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 281
//pbp_main (pbp_main)
package {
import adultswim.polarbearpayback.*;
public dynamic class pbp_main extends Main {
}
}//package
Section 282
//pbp_menuPopUp (pbp_menuPopUp)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_menuPopUp extends MenuPopUp {
public function pbp_menuPopUp(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 283
//pbp_messageText (pbp_messageText)
package {
import smashing.text.*;
public dynamic class pbp_messageText extends MovieClipTextField {
}
}//package
Section 284
//pbp_molotov_explosion (pbp_molotov_explosion)
package {
import flash.media.*;
public dynamic class pbp_molotov_explosion extends Sound {
}
}//package
Section 285
//pbp_moltov (pbp_moltov)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_moltov extends Molotov {
}
}//package
Section 286
//pbp_rope_spawn (pbp_rope_spawn)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_rope_spawn extends RopeSpawn {
}
}//package
Section 287
//pbp_seal (pbp_seal)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_seal extends Seal {
}
}//package
Section 288
//pbp_shotgun (pbp_shotgun)
package {
import flash.media.*;
public dynamic class pbp_shotgun extends Sound {
}
}//package
Section 289
//pbp_spawnCloseBully (pbp_spawnCloseBully)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_spawnCloseBully extends SpawnCloseBully {
}
}//package
Section 290
//pbp_spawnSUV (pbp_spawnSUV)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_spawnSUV extends SpawnSUV {
}
}//package
Section 291
//pbp_splashscreen (pbp_splashscreen)
package {
import adultswim.polarbearpayback.*;
public dynamic class pbp_splashscreen extends Splash {
}
}//package
Section 292
//pbp_suv_driveby (pbp_suv_driveby)
package {
import flash.media.*;
public dynamic class pbp_suv_driveby extends Sound {
}
}//package
Section 293
//pbp_suv_left (pbp_suv_left)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_suv_left extends SUV {
}
}//package
Section 294
//pbp_suv_right (pbp_suv_right)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_suv_right extends SUV {
}
}//package
Section 295
//pbp_throw_sfx (pbp_throw_sfx)
package {
import flash.media.*;
public dynamic class pbp_throw_sfx extends Sound {
}
}//package
Section 296
//pbp_transition (pbp_transition)
package {
import adultswim.polarbearpayback.*;
public dynamic class pbp_transition extends Transition {
public function pbp_transition(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 297
//pbp_waveCompletePrompt (pbp_waveCompletePrompt)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_waveCompletePrompt extends Hand {
public function pbp_waveCompletePrompt(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 298
//pbp_weapon_pickup (pbp_weapon_pickup)
package {
import flash.media.*;
public dynamic class pbp_weapon_pickup extends Sound {
}
}//package
Section 299
//pbp_weapons_all (pbp_weapons_all)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_weapons_all extends Weapon {
public function pbp_weapons_all(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 300
//pbp_whale_boss_projectile (pbp_whale_boss_projectile)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_whale_boss_projectile extends WhaleBossProjectile {
}
}//package
Section 301
//pbp_whaler_boss (pbp_whaler_boss)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class pbp_whaler_boss extends WhaleBoss {
}
}//package
Section 302
//pbp_Vignette (pbp_Vignette)
package {
import flash.utils.*;
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_Vignette extends Vignette {
public var __setPropDict:Dictionary;
public var __id1_:PlaySound;
public function pbp_Vignette(){
__setPropDict = new Dictionary(true);
super();
addFrameScript(11, frame12, 12, frame13, 13, frame14, 14, frame15, 15, frame16, 16, frame17, 17, frame18, 18, frame19, 19, frame20, 20, frame21, 21, frame22, 22, frame23, 23, frame24);
}
function frame14(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function __setProp___id1__gfx_UI_vignette_sfx_12(){
try {
__id1_["componentInspectorSetting"] = true;
} catch(e:Error) {
};
__id1_.soundID = "Heartbeat_Dying";
__id1_.loops = 100;
__id1_.soundPan = 0;
__id1_.startTime = 0;
__id1_.soundVolume = 1;
try {
__id1_["componentInspectorSetting"] = false;
} catch(e:Error) {
};
}
function frame12(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame18(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame15(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame16(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame17(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame19(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame13(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame23(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame24(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame21(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame22(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
function frame20(){
if ((((__setPropDict[__id1_] == undefined)) || (!((((int(__setPropDict[__id1_]) >= 12)) && ((int(__setPropDict[__id1_]) <= 24))))))){
__setPropDict[__id1_] = currentFrame;
__setProp___id1__gfx_UI_vignette_sfx_12();
};
}
}
}//package
Section 303
//pbp_winScreen (pbp_winScreen)
package {
import adultswim.polarbearpayback.ui.*;
public dynamic class pbp_winScreen extends EndScreen {
public function pbp_winScreen(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 304
//PlaySound (PlaySound)
package {
import smashing.sound.*;
public dynamic class PlaySound extends PlaySound {
}
}//package
Section 305
//skullspit_anim (skullspit_anim)
package {
import flash.display.*;
public dynamic class skullspit_anim extends MovieClip {
}
}//package
Section 306
//txt_weaponCount (txt_weaponCount)
package {
import smashing.text.*;
public dynamic class txt_weaponCount extends MovieClipTextField {
}
}//package
Section 307
//weapons_allcopy (weapons_allcopy)
package {
import adultswim.polarbearpayback.game.*;
public dynamic class weapons_allcopy extends Weapon {
public function weapons_allcopy(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package