Frame 1
_global.UJROOT = this;
_focusrect = false;
Stage.showMenu = false;
stop();
Instance of Symbol 38 MovieClip in Frame 1
onClipEvent (enterFrame) {
if (this._parent.getBytesLoaded() == this._parent.getBytesTotal()) {
this._parent.gotoAndStop("Game");
} else {
this._parent.mcPourcentage.txtPourcentage.text = Math.ceil((this._parent.getBytesLoaded() / this._parent.getBytesTotal()) * 100);
}
}
Instance of Symbol 41 MovieClip in Frame 1
onClipEvent (load) {
_global.oPreloader = new Preloader(this);
}
Frame 12
if (_global.objSounds == undefined) {
_global.objSounds = new sarbakan.utils.SoundController(this);
}
if (_global.objHS == undefined) {
_global.objHS = new objHSNick();
}
stop();
Symbol 10 MovieClip [VFetcherTail] Frame 1
#initclip 2
Object.registerClass("VFetcherTail", fighter.specialmoves.FetcherMC);
#endinitclip
Symbol 13 MovieClip Frame 1
this._visible = false;
_global.C.addToPauseList(this._parent);
_parent.onUnload = function () {
_global.C.removeFromPauseList(this._parent);
};
Symbol 28 MovieClip [VFetcher] Frame 1
#initclip 1
Object.registerClass("VFetcher", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 45 Button
on (keyPress "<Left>") {
return(undefined);
}
on (keyPress "<Right>") {
return(undefined);
}
on (keyPress "<Up>") {
return(undefined);
}
on (keyPress "<Down>") {
return(undefined);
}
on (keyPress "<Space>") {
return(undefined);
}
on (keyPress "c") {
return(undefined);
}
on (keyPress "C") {
return(undefined);
}
on (keyPress "p") {
return(undefined);
}
on (keyPress "P") {
return(undefined);
}
on (keyPress "d") {
return(undefined);
}
on (keyPress "D") {
return(undefined);
}
on (keyPress "f") {
return(undefined);
}
on (keyPress "F") {
return(undefined);
}
on (keyPress "s") {
return(undefined);
}
on (keyPress "S") {
return(undefined);
}
on (keyPress "u") {
return(undefined);
}
on (keyPress "U") {
return(undefined);
}
Symbol 1670 MovieClip [__Packages.Preloader] Frame 0
class Preloader
{
var mcPreloader;
function Preloader (l_mcPreloader) {
mcPreloader = l_mcPreloader;
setPreloader();
}
function setPreloader() {
mcPreloader.onEnterFrame = function () {
_global.oPreloader.checkLoaded();
};
}
function checkLoaded() {
if (_global.UJROOT.getBytesLoaded() == _global.UJROOT.getBytesTotal()) {
_global.UJROOT.gotoAndStop("Game");
} else {
_global.UJROOT.mcPourcentage.txtPourcentage.text = Math.ceil((_global.UJROOT.getBytesLoaded() / _global.UJROOT.getBytesTotal()) * 100);
}
}
}
Symbol 1671 MovieClip [__Packages.fighter.specialmoves.ProjectileMC] Frame 0
class fighter.specialmoves.ProjectileMC extends MovieClip
{
var nDistance, sState, bContinue, onEnterFrame, nSpeed, nTotalDistance, bVertical, oMove, _xscale, _x, _y, mcClip, gotoAndStop, _parent, mcSource, removeMovieClip, __get__source;
function ProjectileMC () {
super();
nDistance = 0;
sState = "Moving";
bContinue = false;
onEnterFrame = function () {
this.update();
};
}
function setProjectile(l_oMove) {
nSpeed = l_oMove.nSpeed;
nTotalDistance = l_oMove.nDistance;
bVertical = l_oMove.bVertical;
oMove = l_oMove;
}
function update() {
if (!_global.C.pause) {
if (sState == "Moving") {
if (bVertical === true) {
moveY();
} else {
moveX();
}
collision();
endOfTheLine();
} else {
if (bVertical === true) {
moveY();
} else {
moveX();
}
endOfAnimation();
}
}
}
function moveX() {
if (_xscale == 100) {
_x = _x + nSpeed;
} else {
_x = _x - nSpeed;
}
}
function moveY() {
_y = _y + nSpeed;
}
function collision() {
var _local3 = hitElement();
if (_local3 != undefined) {
if (_global.C.ProjectileCollision(_local3, oMove)) {
if (!oMove.bFinishAnim) {
var _local4 = 1;
if (oMove.bContinue) {
_local4 = mcClip._currentframe;
}
gotoAndStop("Hit");
mcClip.gotoAndPlay(_local4);
}
if (!oMove.bGrab) {
sState = "Hit";
}
}
}
}
function hitElement() {
var _local3 = _parent;
var _local2;
var _local4;
for (_local2 in _local3) {
if ((((_local2.substring(0, 6) != "mcItem") && (this != _local3[_local2])) && (mcSource != _local3[_local2])) && (_local3[_local2].hitTest(this))) {
_local4 = _local3[_local2];
break;
}
}
return(_local4);
}
function endOfTheLine() {
nDistance = nDistance + nSpeed;
if (nDistance >= nTotalDistance) {
removeMovieClip();
}
}
function endOfAnimation() {
if (mcClip._currentframe == mcClip._totalframes) {
removeMovieClip();
}
}
function set source(l_mcSource) {
mcSource = l_mcSource;
//return(__get__source());
}
}
Symbol 1672 MovieClip [__Packages.fighter.specialmoves.FetcherMC] Frame 0
class fighter.specialmoves.FetcherMC extends fighter.specialmoves.ProjectileMC
{
var nDistance, sState, bContinue, onEnterFrame, bVertical, nSpeed, mcTail, hitElement, oMove, mcClip, gotoAndStop, removeMovieClip, __get__tail;
function FetcherMC () {
super();
nDistance = 0;
sState = "Moving";
bContinue = false;
onEnterFrame = function () {
this.update();
};
}
function update() {
if (!_global.C.pause) {
if (sState == "Moving") {
if (bVertical === true) {
moveY();
} else {
moveX();
}
collision();
endOfTheLine();
} else {
endOfAnimation();
}
}
}
function moveX() {
super();
mcTail._width = mcTail._width + nSpeed;
}
function moveY() {
super();
mcTail._height = mcTail._height + nSpeed;
}
function collision() {
var _local3 = hitElement();
if (_local3 != undefined) {
if (_global.C.ProjectileCollision(_local3, oMove)) {
if (!oMove.bFinishAnim) {
var _local4 = 1;
if (oMove.bContinue) {
_local4 = mcClip._currentframe;
}
gotoAndStop("Hit");
mcClip.gotoAndPlay(_local4);
}
if (!oMove.bGrab) {
sState = "Hit";
}
}
}
}
function endOfTheLine() {
super();
}
function endOfAnimation() {
if (mcClip._currentframe == mcClip._totalframes) {
removeMovieClip();
mcTail.removeMovieClip();
}
}
function set tail(l_mcTail) {
mcTail = l_mcTail;
//return(__get__tail());
}
}
Symbol 1673 MovieClip [__Packages.highscores.HighScoresMC] Frame 0
class highscores.HighScoresMC extends MovieClip
{
var nXLimit, _x, nYHsStartPos, _parent, bDragging, onPress, onRelease, onReleaseOutside, onMouseMove;
function HighScoresMC () {
super();
nXLimit = _x;
nYHsStartPos = _parent.mcHighScore._y;
bDragging = false;
setCommands();
}
function setCommands() {
onPress = function () {
this.startDrag(true, this.nXLimit, this.NUMBER_TOP_LIMIT, this.nXLimit, this.NUMBER_BOTTOM_LIMIT);
this.bDragging = true;
};
onRelease = (onReleaseOutside = function () {
this.stopDrag();
this.bDragging = false;
});
onMouseMove = function () {
this._parent.mcHighScore._y = this.nYHsStartPos - ((this._parent.mcHighScore._height - this.NUMBER_VIEW_LIMIT) * ((this._y - this.NUMBER_TOP_LIMIT) / (this.NUMBER_BOTTOM_LIMIT - this.NUMBER_TOP_LIMIT)));
};
}
function reset() {
_parent.mcHighScore._y = nYHsStartPos;
onMouseMove();
}
var NUMBER_TOP_LIMIT = -76.5;
var NUMBER_BOTTOM_LIMIT = 123.5;
var NUMBER_VIEW_LIMIT = 200;
}
Symbol 1674 MovieClip [__Packages.level.items.ItemMC] Frame 0
class level.items.ItemMC extends MovieClip
{
var sState, gotoAndStop, bCollided, nLifeRemaining, onEnterFrame, Behavior, gotoAndPlay, play, _totalframes, _currentframe, removeMovieClip, stop, _x, _y, _parent, hitTest, mcTarget, __get__state, __get__target;
function ItemMC () {
super();
sState = "Idle";
gotoAndStop(sState);
bCollided = false;
nLifeRemaining = NUMBER_LIFE_SPAN;
onEnterFrame = function () {
this.update();
};
}
function update() {
if ((!_global.C.pause) && (!_global.C.battlewon)) {
if (sState == "Idle") {
if (Collide()) {
Behavior();
bCollided = true;
gotoAndPlay("Taken");
}
TryToDie();
} else if (sState == "Dying") {
play();
if (_currentframe == _totalframes) {
removeMovieClip();
}
} else if (sState == "Dead") {
removeMovieClip();
}
} else {
stop();
}
}
function setPos(l_nX, l_nY) {
_x = l_nX;
_y = l_nY;
}
function Collide() {
var _local2 = _parent;
var _local3;
if (hitTest(mcTarget)) {
sState = "Dying";
return(true);
}
return(false);
}
function TryToDie() {
nLifeRemaining--;
if (nLifeRemaining <= 0) {
bCollided = true;
gotoAndPlay("Dissapears");
sState = "Dying";
}
}
function set state(l_sState) {
sState = l_sState;
//return(__get__state());
}
function set target(l_mcTarget) {
mcTarget = l_mcTarget;
//return(__get__target());
}
var NUMBER_LIFE_SPAN = 75;
}
Symbol 1675 MovieClip [__Packages.level.items.HealthItemMC] Frame 0
class level.items.HealthItemMC extends level.items.ItemMC
{
function HealthItemMC () {
super();
}
function Behavior() {
_global.C.addHealth(NUMBER_HEALTH_VALUE);
}
var NUMBER_HEALTH_VALUE = 15;
}
Symbol 1676 MovieClip [__Packages.level.items.TimeItemMC] Frame 0
class level.items.TimeItemMC extends level.items.ItemMC
{
function TimeItemMC () {
super();
}
function Behavior() {
_global.C.addTime(NUMBER_TIME_VALUE);
}
var NUMBER_TIME_VALUE = 15;
}
Symbol 1677 MovieClip [__Packages.MCMusic] Frame 0
class MCMusic extends MovieClip
{
var stop, onPress, gotoAndStop;
function MCMusic () {
super();
stop();
setButton();
onPress = setSound;
}
function setSound() {
_global.objSounds.muted = !_global.objSounds.muted;
setButton();
}
function setButton() {
if (_global.objSounds.muted) {
_global.objSounds.muteAllSounds();
gotoAndStop("Off");
_global.objSounds.clearSound();
} else {
_global.objSounds.unmuteAllSounds();
gotoAndStop("On");
_global.objSounds.playSound("BattleMusic", 50, 99999, true);
}
}
}
Symbol 1678 MovieClip [__Packages.sarbakan.utils.SoundController] Frame 0
class sarbakan.utils.SoundController
{
var mcSoundFX, SOUND_FADE_SPEED, bMute, oTriggerSounds, oRootSound;
function SoundController (l_mcContainer) {
l_mcContainer.createEmptyMovieClip("soundFX", 2);
l_mcContainer.createEmptyMovieClip("music", 3);
mcSoundFX = l_mcContainer.soundFX;
SOUND_FADE_SPEED = 5;
bMute = false;
oTriggerSounds = new Object();
oRootSound = new Sound(_root);
}
function clearSound() {
for (var _local2 in mcSoundFX) {
mcSoundFX[_local2].oSound.stop();
mcSoundFX[_local2].removeMovieClip();
delete mcSoundFX[_local2];
}
}
function fadeOutSound(l_sLinkage) {
mcSoundFX["oClip" + l_sLinkage].onEnterFrame = function () {
this.oSound.setVolume(this.oSound.getVolume() - this.oSound.SOUND_FADE_SPEED);
if (this.oSound.getVolume() <= 0) {
this.oSound.stop();
this.removeMovieClip();
}
};
}
function stopSound(l_sID) {
mcSoundFX["oClip" + l_sID].oSound.stop(l_sID);
mcSoundFX["oClip" + l_sID].removeMovieClip();
}
function muteAllSounds() {
bMute = true;
for (var _local2 in mcSoundFX) {
mcSoundFX[_local2].initVolume = mcSoundFX[_local2].oSound.getVolume();
mcSoundFX[_local2].onEnterFrame = function () {
this.oSound.setVolume(this.oSound.getVolume() - this.oSound.SOUND_FADE_SPEED);
if (this.oSound.getVolume() <= 0) {
delete this.onEnterFrame;
}
};
}
oRootSound.setVolume(0);
}
function unmuteAllSounds() {
bMute = false;
for (var _local2 in mcSoundFX) {
mcSoundFX[_local2].onEnterFrame = function () {
this.oSound.setVolume(this.oSound.getVolume() + this.oSound.SOUND_FADE_SPEED);
if (this.oSound.getVolume() >= this.initVolume) {
delete this.onEnterFrame;
}
};
}
oRootSound.setVolume(100);
}
function playSound(l_sLinkage, l_nVolume, l_nLoop, l_bUnique) {
nNextDepth++;
if (l_nLoop == undefined) {
l_nLoop = 0;
}
if (mcSoundFX["oClip" + l_sLinkage] == undefined) {
mcSoundFX.createEmptyMovieClip("oClip" + l_sLinkage, nNextDepth);
var l_oClip = mcSoundFX["oClip" + l_sLinkage];
} else if (!l_bUnique) {
mcSoundFX.createEmptyMovieClip("oClip" + nNextDepth, nNextDepth);
var l_oClip = mcSoundFX["oClip" + nNextDepth];
}
l_oClip.oSound = new Sound(l_oClip);
var _local2 = l_oClip.oSound;
_local2.attachSound(l_sLinkage);
_local2.onSoundComplete = function () {
l_oClip.removeMovieClip();
delete l_oClip;
};
_local2.maxVolume = l_nVolume;
_local2.SOUND_FADE_SPEED = SOUND_FADE_SPEED;
if (bMute) {
l_oClip.initVolume = l_nVolume;
_local2.setVolume(0);
} else {
_local2.setVolume(l_nVolume);
}
_local2.start(0, l_nLoop);
return(_local2);
}
function triggerSound(l_sFrom, l_sTo) {
if (mcSoundFX["oClip" + l_sFrom].oSound) {
mcSoundFX["oClip" + l_sFrom].onEnterFrame = function () {
if (this.oSound.position == this.oSound.duration) {
_global.objSounds.endSound(this);
this.removeMovieClip();
delete this.onEnterFrame;
}
};
delete mcSoundFX["oClip" + l_sFrom].oSound.onSoundComplete;
oTriggerSounds[l_sFrom] = l_sTo;
}
}
function endSound(l_mcSound) {
_global.objSounds.playSound(oTriggerSounds[l_mcSound._name.substring(5)], 50, 99999, true);
}
function get muted() {
return(bMute);
}
function set muted(l_bMute) {
bMute = l_bMute;
//return(muted);
}
static var nNextDepth = 0;
}
Symbol 1679 MovieClip [__Packages.objHSNick] Frame 0
class objHSNick
{
var bHSAvailable, G_TestHighScore, bSubmitHS, bGetHS, G_GameID, mcHSZone, oFight, __get__fight;
function objHSNick () {
bHSAvailable = true;
G_TestHighScore = false;
bSubmitHS = false;
bGetHS = false;
G_GameID = "dp_jungle";
mcHSZone = undefined;
if (G_TestHighScore == true) {
_global.gProxyObj.setServer("www.nick.com");
_global.gProxyObj.setScreenName("cc_programmer");
_global.gProxyObj.setIsLoggedIn(true);
}
}
function getScores() {
if (_global.gProxyObj == undefined) {
listScores();
} else {
_global.gProxyObj.getScores(cbFunc2);
}
}
function submitScore(theScore) {
addMessage("The high score list is updating!");
_global.gProxyObj.submitScore(theScore, cbFunc);
}
function initHiScores() {
_global.gProxyObj.setGame_Id(G_GameID);
}
function getScoreString() {
var _local8 = "Oops! The high score list is not available right now!";
if (_global.gProxyObj != undefined) {
var _local7 = _global.gProxyObj.getScoreCount();
if (_local7 > 0) {
var _local3;
var _local4;
var _local5;
var _local6;
_local3 = 0;
while (_local3 < _local7) {
_local8 = "";
_local4 = _global.gProxyObj.getScoreItem(_local3);
_local5 = _local4[0];
_local6 = _local4[1];
_global.C.addHighScore(_local5, _local6);
_local3++;
}
if (mcHSZone.mcHighScore.mcHSMessage != undefined) {
mcHSZone.mcHighScore.mcHSMessage.removeMovieClip();
}
} else {
addMessage("Oops! The high score list is not available right now!");
}
} else {
addMessage("Oops! The high score list is not available right now!");
}
return(_local8);
}
function listScores() {
getScoreString();
}
function cbFunc(thisBool) {
if (thisBool) {
_global.objHS.listScores();
} else {
addMessage("Oops! The high score list is not available right now!");
}
}
function cbFunc2(thisBool) {
if (thisBool) {
_global.objHS.listScores();
} else {
addMessage("Oops! The high score list is not available right now!");
}
}
function fDoHSInit() {
initHiScores();
if (_global.gProxyObj.getIsLoggedIn()) {
mcHSZone.btnSubmitHS._visible = true;
} else {
mcHSZone.btnSubmitHS._visible = false;
}
}
function fDoSubmitHS(l_mcStage) {
bSubmitHS = true;
_global.C.startGenericPage(l_mcStage, "HighScores");
}
function fDoViewHS(l_mcStage) {
bGetHS = true;
_global.C.startGenericPage(l_mcStage, "HighScores");
}
function fSetHSBoard(P_mcRef) {
mcHSZone = P_mcRef;
if (_global.gProxyObj.getIsLoggedIn()) {
mcHSZone.btnSubmitHS._visible = true;
} else {
mcHSZone.btnSubmitHS._visible = false;
}
}
function set fight(l_oFight) {
oFight = l_oFight;
//return(__get__fight());
}
function addMessage(l_sMsg) {
if (mcHSZone.mcHSMessage == undefined) {
mcHSZone.mcHighScore.attachMovie("OneMessage", "mcHSMessage", mcHSZone.mcHighScore.getNextHighestDepth());
}
mcHSZone.mcHighScore.mcHSMessage.txtMsg.text = l_sMsg;
}
function removeMessage() {
if (mcHSZone.mcHighScore.mcHSMessage != undefined) {
mcHSZone.mcHighScore.mcHSMessage.removeMovieClip();
}
}
}
Symbol 1680 MovieClip [__Packages.Controller] Frame 0
class Controller
{
var bPerformance, mcCont, oData, oUnlock, sState, oFight, oCharSelect, oPage, nFPS, __get__setPauseMenu;
function Controller (l_mcCont) {
_global.C = this;
bPerformance = false;
mcCont = l_mcCont;
oData = new Data();
oUnlock = new fight.unlock.Unlock();
sState = "Preload";
_global.objSounds.playSound("MenuMusic", 33, 99999, true);
mcCont.onEnterFrame = function () {
if (!(_global.C.state === "Fight")) {
} else {
_global.C.FightUpdate();
}
};
startGenericPage(mcCont._parent, "Title");
}
function FightUpdate() {
oFight.update();
}
function getFighterProfile(l_sName) {
return(oData.getFighterProfile(l_sName));
}
function changePause() {
oFight.changePause();
}
function setAnticipation(l_mcFighter) {
oFight.setAnticipation(l_mcFighter);
}
function activateSpecial(l_mcFighter) {
oFight.activateSpecial(l_mcFighter);
}
function addToPauseList(l_mClip) {
oFight.addToPauseList(l_mClip);
}
function removeFromPauseList(l_mClip) {
oFight.removeFromPauseList(l_mClip);
}
function ProjectileCollision(l_mcElem, oMove) {
return(oFight.ProjectileCollision(l_mcElem, oMove));
}
function addScore(l_nScore, l_bIsSpecial) {
return(oFight.addScore(l_nScore, l_bIsSpecial));
}
function removeScore(l_nScore) {
return(oFight.removeScore(l_nScore));
}
function resetCombo() {
oFight.resetCombo();
}
function addTime(l_nTime) {
oFight.addTime(l_nTime);
}
function addHealth(l_nHealth) {
oFight.addHealth(l_nHealth);
}
function setMenu(l_sState) {
oFight.setMenu(l_sState);
}
function chosenCharacter(l_sChar, l_sGoodBad) {
oCharSelect.chosenCharacter(l_sChar, l_sGoodBad);
}
function selectDifficulty() {
oCharSelect.selectDifficulty();
}
function chosenDifficulty(l_sDiff) {
oCharSelect.chosenDifficulty(l_sDiff);
}
function startGenericPage(l_mcStage, l_sPage) {
l_mcStage.gotoAndStop(l_sPage);
switch (l_sPage) {
case "Title" :
oPage = new steps.Title(l_mcStage);
break;
case "Instructions1" :
oPage = new steps.Instructions1(l_mcStage, sState);
break;
case "Instructions2" :
oPage = new steps.Instructions2(l_mcStage, oPage.origin);
break;
case "SpecialMoves" :
oPage = new steps.SpecialMoves(l_mcStage, sState);
break;
case "HighScores" :
oPage = new steps.HighScores(l_mcStage, sState, oFight);
break;
case "GoodEnd" :
_quality = "HIGH";
_global.objSounds.stopSound("BattleMusic");
_global.objSounds.playSound("GoodEndMusic", 33, 1, true);
_global.objSounds.triggerSound("GoodEndMusic", "MenuMusic");
oPage = new steps.End(l_mcStage, oFight, l_sPage, oCharSelect.goodbad);
break;
case "BadEnd" :
_quality = "HIGH";
_global.objSounds.stopSound("BattleMusic");
_global.objSounds.playSound("BadEndMusic", 33, 1, true);
_global.objSounds.triggerSound("BadEndMusic", "MenuMusic");
oPage = new steps.End(l_mcStage, oFight, l_sPage, oCharSelect.goodbad);
}
sState = l_sPage;
}
function playGame() {
startCharSelect(mcCont._parent);
}
function startFight(l_mcStage) {
if (bPerformance) {
delete l_mcStage.onEnterFrame;
_global.objSounds.clearSound();
_global.objSounds.playSound("BattleMusic", 33, 99999, true);
l_mcStage.gotoAndStop("Fight");
oFight = new steps.Fight(oCharSelect.playerCharacter, oCharSelect.goodbad, oCharSelect.difficulty);
oFight.setLevel(l_mcStage.mcLevel);
sState = "Fight";
} else {
l_mcStage.onEnterFrame = function () {
_global.C.startFight(this);
};
}
}
function returnToFight(l_mcStage) {
l_mcStage.gotoAndStop("Fight");
oFight.returnFromInstructions();
sState = "Fight";
}
function startCharSelect(l_mcStage) {
l_mcStage.gotoAndPlay("Select");
oCharSelect = new steps.CharSelect(l_mcStage);
sState = "CharSelect";
}
function setCharacterNames() {
oCharSelect.setCharacterNames();
}
function addCombos() {
oFight.addCombos();
}
function setVictoryScreen(l_sFighter) {
oFight.setVictory(l_sFighter);
}
function nextFight() {
oFight.nextFight();
}
function unlockMove(l_sFighter, l_nScore) {
return(oUnlock.unlockMove(l_sFighter, l_nScore));
}
function unlockAllMoves(l_sFighter) {
var _local2 = oUnlock.unlockMove(l_sFighter, 100000);
if (_local2) {
oFight.unlockMove();
}
return(_local2);
}
function moveIsLocked(l_sFighter, l_nMoves) {
return(oUnlock.moveIsLocked(l_sFighter, l_nMoves));
}
function unlockCharacter(l_sDifficulty) {
oUnlock.unlockCharacter(l_sDifficulty);
}
function unlockDifficulty(l_sFighter) {
oUnlock.unlockDifficulty(l_sFighter);
}
function characterIsLocked(l_sFighter) {
return(oUnlock.characterIsLocked(l_sFighter));
}
function difficultyIsLocked(l_sDifficulty) {
return(oUnlock.difficultyIsLocked(l_sDifficulty));
}
function addHighScore(l_sName, l_nScore) {
oPage.addHighScore(l_sName, l_nScore);
}
function startPerformanceWatcher() {
bPerformance = false;
PerformanceWatcher.start(35);
PerformanceWatcher.addListener(mx.utils.Delegate.create(this, endPerformanceWatcher), 40, false);
}
function endPerformanceWatcher(l_nFPS) {
nFPS = l_nFPS;
bPerformance = true;
setQuality();
PerformanceWatcher.stop();
}
function setQuality() {
if (nFPS <= 16) {
_quality = "LOW";
} else if (nFPS <= 21) {
_quality = "MEDIUM";
} else {
_quality = "HIGH";
}
}
function updateHud() {
oFight.updateHud();
}
function get currentLevel() {
return(oFight.currentLevel);
}
function get player() {
return(oFight.player);
}
function get opponent() {
return(oFight.opponent);
}
function get pause() {
return(oFight.pause);
}
function get difficulty() {
return(oFight.difficulty);
}
function get yLevel() {
return(oFight.yLevel);
}
function get state() {
return(sState);
}
function set setPauseMenu(l_mcMenu) {
oFight.setPauseMenu = l_mcMenu;
//return(__get__setPauseMenu());
}
function get battlewon() {
return(oFight.battlewon);
}
function set battlewon(l_bBattleWon) {
oFight.battlewon = l_bBattleWon;
//return(battlewon);
}
function get cameraRightPosition() {
return(oFight.cameraRightPosition);
}
function set canPause(l_bCanPause) {
oFight.canPause = l_bCanPause;
//return(canPause);
}
function get canPause() {
return(oFight.canPause);
}
}
Symbol 1681 MovieClip [__Packages.Data] Frame 0
class Data
{
function Data () {
createDanny();
createFrostbite();
createSam();
createUndergrowth();
}
function getFighterProfile(l_sName) {
return(oFighters[l_sName]);
}
function createDanny() {
var _local2 = createFighter();
_local2.Attack1.nDamage = 8;
_local2.Attack1.nAnticipation = 13;
_local2.Attack1 = addRecoil(_local2.Attack1, 50, 100, 0, 0);
_local2.Attack1.hitSound = "Punch7";
_local2.Attack2.nDamage = 12;
_local2.Attack2.nAnticipation = 17;
_local2.Attack2 = addRecoil(_local2.Attack2, 70, 150, 0, 0);
_local2.Attack2.hitSound = "Kick";
_local2.CrouchAttack.nDamage = 16;
_local2.CrouchAttack.nAnticipation = 20;
_local2.CrouchAttack = addRecoil(_local2.CrouchAttack, 90, 125, 80, 150);
_local2.AirAttack.nDamage = 4;
_local2.SpecialMoves = createDannyMoves();
oFighters.Danny = _local2;
}
function createFrostbite() {
var _local2 = createFighter();
_local2.lockedLevel = "Scary";
_local2.Attack1.nDamage = 8;
_local2.Attack1.nAnticipation = 13;
_local2.Attack1 = addRecoil(_local2.Attack1, 50, 100, 0, 0);
_local2.Attack1.hitSound = "Punch7";
_local2.Attack2.nDamage = 12;
_local2.Attack2.nAnticipation = 17;
_local2.Attack2 = addRecoil(_local2.Attack2, 70, 150, 0, 0);
_local2.Attack2.hitSound = "Kick";
_local2.Attack2.moveStartSound = "Whip5";
_local2.CrouchAttack.nDamage = 16;
_local2.CrouchAttack.nAnticipation = 20;
_local2.CrouchAttack = addRecoil(_local2.CrouchAttack, 90, 125, 80, 150);
_local2.AirAttack.nDamage = 4;
_local2.SpecialMoves = createFrostbiteMoves();
oFighters.Frostbite = _local2;
}
function createSam() {
var _local2 = createFighter();
_local2.lockedLevel = "Frightening";
_local2.Attack1.nDamage = 8;
_local2.Attack1.nAnticipation = 13;
_local2.Attack1 = addRecoil(_local2.Attack1, 50, 100, 0, 0);
_local2.Attack1.hitSound = "Punch7";
_local2.Attack2.nDamage = 12;
_local2.Attack2.nAnticipation = 17;
_local2.Attack2 = addRecoil(_local2.Attack2, 70, 150, 0, 0);
_local2.Attack2.hitSound = "Kick";
_local2.CrouchAttack.nDamage = 16;
_local2.CrouchAttack.nAnticipation = 20;
_local2.CrouchAttack = addRecoil(_local2.CrouchAttack, 90, 125, 80, 150);
_local2.AirAttack.nDamage = 4;
_local2.SpecialMoves = createSamMoves();
oFighters.Sam = _local2;
}
function createUndergrowth() {
var _local2 = createFighter();
_local2.lockedLevel = "SpineChilling";
_local2.Attack1.nDamage = 8;
_local2.Attack1.nAnticipation = 13;
_local2.Attack1 = addRecoil(_local2.Attack1, 50, 100, 0, 0);
_local2.Attack1.hitSound = "Punch7";
_local2.Attack1.moveStartSound = "Whip5";
_local2.Attack2.nDamage = 12;
_local2.Attack2.nAnticipation = 17;
_local2.Attack2 = addRecoil(_local2.Attack2, 70, 150, 0, 0);
_local2.Attack2.hitSound = "Kick";
_local2.CrouchAttack.nDamage = 16;
_local2.CrouchAttack.nAnticipation = 20;
_local2.CrouchAttack = addRecoil(_local2.CrouchAttack, 90, 125, 80, 150);
_local2.AirAttack.nDamage = 4;
_local2.SpecialMoves = createUndergrowthMoves();
oFighters.Undergrowth = _local2;
}
function createFighter() {
var _local2 = new Object();
_local2.nMoveXSpeedOffence = 7;
_local2.nMoveXSpeedDefence = 6;
_local2.nMoveXSpeedOffenceAir = 14;
_local2.nMoveXSpeedDefenceAir = 11;
_local2.nFallSpeed = 5;
_local2.nFallSpeedTotal = 30;
_local2.nJumpDecrease = 5;
_local2.nJumpTotal = 50;
_local2.nTotalHP = 50;
_local2.nFallDamage = 15;
_local2.Attack1 = createSpecialMove("Strike");
_local2.Attack1 = addPoints(_local2.Attack1, 100, 100, 50);
_local2.Attack1.bSpecial = false;
_local2.AirAttack = createSpecialMove("Strike");
_local2.AirAttack = addPoints(_local2.AirAttack, 100, 100, 50);
_local2.AirAttack.bSpecial = false;
_local2.CrouchAttack = createSpecialMove("Strike");
_local2.CrouchAttack = addPoints(_local2.CrouchAttack, 100, 100, 50);
_local2.CrouchAttack.nDamage = 15;
_local2.CrouchAttack.nRecoilX = 125;
_local2.CrouchAttack.nRecoilY = 150;
_local2.CrouchAttack.nRecoilDelay = 18;
_local2.CrouchAttack.nAnticipation = 3;
_local2.CrouchAttack.bSpecial = false;
_local2.CrouchAttack.moveStartSound = "Whip6";
_local2.Attack2 = createSpecialMove("Strike");
_local2.Attack2 = addPoints(_local2.Attack2, 100, 100, 50);
_local2.Attack2.bSpecial = false;
_local2.AI = createGeneticAI();
return(_local2);
}
function createGeneticAI() {
var _local1 = new Object();
_local1 = new Object();
_local1.Long = new Array("MoveTowards", "MoveTowards");
_local1.Medium = new Array("MoveTowards", "MoveTowards", "JumpTowards", "MoveAway", "MoveAway", "JumpAway");
_local1.Short = new Array("MoveAway", "JumpAway", "Wait");
_local1.AttackShort = new Array("Attack1");
_local1.nShortMoveRange = 250;
_local1.nMediumMoveRange = 500;
_local1.nLongMoveRange = 700;
_local1.nShortActRange = 0;
_local1.nMediumActRange = 200;
_local1.nLongActRange = 600;
_local1.nFearEdgeMove = 150;
_local1.nFearEdgeJump = 300;
_local1.nBlock = 5;
return(_local1);
}
function createDannyMoves() {
var _local3 = new Array();
var _local2 = createSpecialMove("Possession");
_local2.lockedScore = 15000;
_local2.sAnim = "gPossession";
_local2.sName = "Ghost Possession";
_local2.moveStartSound = "SnowballSnd";
_local2.nAnticipation = 19;
_local2.nDamage = 17;
_local2.nRecoilMinX = 20;
_local2.nRecoilMinX = 30;
_local2.nRecoilX = 100;
_local2.nRecoilDelay = 15;
_local2.aCommands = new Array("B", "D", "B", "2");
_local2.nDifficulty = 3;
_local3.push(_local2);
_local2 = createSpecialMove("Teleport");
_local2.sAnim = "TeleportExploder";
_local2.sName = "Teleport Exploder";
_local2.moveStartSound = "SnowballSnd";
_local2.lockedScore = 10000;
_local2.nDamage = 9;
_local2.nAnticipation = 15;
_local2.aCommands = new Array("B", "D", "F", "2");
_local2.nDifficulty = 2;
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.nDamage = 14;
_local2.nAnticipation = 10;
_local2.sAnim = "bkFlipKick";
_local2.sName = "Back Flip Kick";
_local2.moveStartSound = "Whip6";
_local2.aCommands = new Array("B", "2");
_local2.nDifficulty = 0;
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.nDamage = 14;
_local2.nAnticipation = 10;
_local2.sAnim = "bkFlipKick";
_local2.sName = "Back Flip Kick";
_local2.moveStartSound = "Whip6";
_local2.aCommands = new Array("BH", "2");
_local2.nDifficulty = 0;
_local3.push(_local2);
_local2 = createSpecialMove("Projectile");
_local2.nDamage = 10;
_local2.nAnticipation = 12;
_local2.sAnim = "SpectralBlast";
_local2.sName = "Spectral Blast";
_local2.sProjId = "SpectralBlast";
_local2.moveStartSound = "SpectralBlastSnd";
_local2.lockedScore = 2000;
_local2.aCommands = new Array("F", "F", "1");
_local2.nDifficulty = 1;
_local3.push(_local2);
_local2 = createSpecialMove("Projectile");
_local2.nDamage = 14;
_local2.nAnticipation = 14;
_local2.sAnim = "PhantomFreeze";
_local2.sName = "Phantom Freeze";
_local2.sProjId = "Snowball";
_local2.moveStartSound = "SpectralBlastSnd";
_local2.lockedScore = 5000;
_local2.aCommands = new Array("B", "B", "1");
_local2.nDifficulty = 2;
_local3.push(_local2);
return(_local3);
}
function createFrostbiteMoves() {
var _local3 = new Array();
var _local2 = createSpecialMove("MoveStrike");
_local2.nDamage = 13;
_local2.nAnticipation = 16;
_local2.sAnim = "IceSlide";
_local2.sName = "Ice Slide";
_local2.moveStartSound = "IceSlideSnd";
_local2.lockedScore = 3000;
_local2.bThrough = true;
_local2.aCommands = new Array("D", "F", "2");
_local2.nDifficulty = 1;
_local3.push(_local2);
_local2 = createSpecialMove("Projectile");
_local2.nDamage = 13;
_local2.nWidth = 220;
_local2.nAnticipation = 13;
_local2.sAnim = "Snowball";
_local2.sName = "Snowball";
_local2.sProjId = "Snowball";
_local2.moveStartSound = "SnowballSnd";
_local2.lockedScore = 0;
_local2.aCommands = new Array("F", "F", "1");
_local2.nDifficulty = 0;
_local3.push(_local2);
_local2 = createSpecialMove("Projectile");
_local2.nDamage = 15;
_local2.nAnticipation = 15;
_local2.nWidth = 75;
_local2.nHeight = -20;
_local2.nSpeed = 12;
_local2.sAnim = "Permafrost";
_local2.sName = "Permafrost";
_local2.sProjId = "Permafrost";
_local2.moveStartSound = "Saw";
_local2.lockedScore = 7500;
_local2.aCommands = new Array("BHHHHHHH", "1");
_local2.nDifficulty = 2;
_local3.push(_local2);
_local2 = createSpecialMove("VProjectile");
_local2.nDamage = 10;
_local2.nAnticipation = 12;
_local2.nRecoilMinX = 0;
_local2.nRecoilX = 0;
_local2.bVertical = true;
_local2.bContinue = true;
_local2.bGround = true;
_local2.sAnim = "Stalactyce";
_local2.sName = "Stalactyce";
_local2.sProjId = "Stalactyce";
_local2.moveStartSound = "StalactyceSnd";
_local2.lockedScore = 15000;
_local2.aCommands = new Array("D", "B", "B", "1");
_local2.nDifficulty = 2;
_local3.push(_local2);
_local2 = createSpecialMove("Screen");
_local2.lockedScore = 20000;
_local2.nDifficulty = 3;
_local2.nAnticipation = 17;
_local2.nDamage = 12;
_local2.sAnim = "Blizzard";
_local2.sName = "Blizzard";
_local2.sProjId = "Blizzard";
_local2.moveStartSound = "blizzardsnd";
_local2.bContinue = true;
_local2.aCommands = new Array("F", "B", "B", "2");
_local3.push(_local2);
return(_local3);
}
function createSamMoves() {
var _local3 = new Array();
var _local2 = createSpecialMove("Projectile");
_local2.nWidth = 140;
_local2.nAnticipation = 8;
_local2.nDamage = 8;
_local2.sAnim = "SpikeThrow";
_local2.sName = "Spike Throw";
_local2.sProjId = "Spike";
_local2.moveStartSound = "SpikeSnd";
_local2.aCommands = new Array("B", "B", "1");
_local2.nDifficulty = 0;
_local2.lockedScore = 0;
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.nDamage = 9;
_local2.nAnticipation = 8;
_local2.sAnim = "SpinAttack";
_local2.sName = "Spin Attack";
_local2.lockedScore = 5000;
_local2.aCommands = new Array("B", "2");
_local2.nDifficulty = 1;
_local3.push(_local2);
_local2 = createSpecialMove("VProjectile");
_local2.nRecoilX = 0;
_local2.nRecoilMinX = 0;
_local2.nDamage = 6;
_local2.nAnticipation = 10;
_local2.nHeight = 9;
_local2.sAnim = "TightRoots";
_local2.sName = "Tied Root";
_local2.sProjId = "Roots";
_local2.moveStartSound = "TiedRootsSnd";
_local2.lockedScore = 25000;
_local2.bVertical = true;
_local2.bFinishAnim = false;
_local2.bGround = true;
_local2.bGrab = true;
_local2.nRecoilDelay = 30;
_local2.aCommands = new Array("B", "D", "F", "1");
_local2.nDifficulty = 2;
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.nDifficulty = 2;
_local2.lockedScore = 12000;
_local2.nDamage = 15;
_local2.nAnticipation = 11;
_local2.nRecoilX = 150;
_local2.nRecoilY = 0;
_local2.sAnim = "VineWhip";
_local2.sName = "VineWhip";
_local2.moveStartSound = "Whip";
_local2.aCommands = new Array("D", "D", "2");
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.sAnim = "FloraFury";
_local2.sName = "Flora Fury";
_local2.moveStartSound = "Whip";
_local2.lockedScore = 40000;
_local2.nDamage = 18;
_local2.nAnticipation = 16;
_local2.nRecoilX = 200;
_local2.nRecoilY = 60;
_local2.aCommands = new Array("B", "B", "F", "2");
_local3.push(_local2);
_local2.nDifficulty = 3;
return(_local3);
}
function createUndergrowthMoves() {
var _local3 = new Array();
var _local2 = createSpecialMove("VProjectile");
_local2.nRecoilMinX = 0;
_local2.nRecoilX = 0;
_local2.nDamage = 4;
_local2.nAnticipation = 13;
_local2.bVertical = true;
_local2.bFinishAnim = true;
_local2.bGrab = true;
_local2.bGround = true;
_local2.nHeight = 9;
_local2.sAnim = "GrassGrasp";
_local2.sName = "Grass Grasp";
_local2.sProjId = "GrassGrasp";
_local2.moveStartSound = "grassgraspSnd";
_local2.lockedScore = 35000;
_local2.aCommands = new Array("D", "D", "D", "2");
_local2.nDifficulty = 2;
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.nDamage = 12;
_local2.nAnticipation = 9;
_local2.nWidth = 140;
_local2.sAnim = "InsectRepellent";
_local2.sName = "Insect Repellent";
_local2.moveStartSound = "InsectRepellentSnd";
_local2.aCommands = new Array("D", "B", "1");
_local2.nDifficulty = 0;
_local2.lockedScore = 0;
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.lockedScore = 7500;
_local2.nDifficulty = 1;
_local2.nAnticipation = 13;
_local2.sAnim = "vFetcher";
_local2.sName = "V-Fetcher";
_local2.moveStartSound = "Whip";
_local2.nWidth = 140;
_local2.aCommands = new Array("F", "F", "1");
_local3.push(_local2);
_local2 = createSpecialMove("Teleport");
_local2.nDistance = 150;
_local2.nAnticipation = 12;
_local2.nDamage = 15;
_local2.nRecoilMinY = 120;
_local2.nRecoilY = 180;
_local2.sAnim = "SunkenWarp";
_local2.sName = "Sunken Warp";
_local2.moveStartSound = "TiedRoots";
_local2.lockedScore = 15000;
_local2.aCommands = new Array("B", "D", "F", "1");
_local2.nDifficulty = 2;
_local3.push(_local2);
_local2 = createSpecialMove("Strike");
_local2.sAnim = "Zoophagious";
_local2.sName = "Zoophagious Bite";
_local2.moveStartSound = "Chomp";
_local2.lockedScore = 50000;
_local2.nDamage = 30;
_local2.nAnticipation = 23;
_local2.nRecoilX = 200;
_local2.nRecoilY = 60;
_local2.aCommands = new Array("B", "F", "B", "F", "2");
_local2.nDifficulty = 3;
_local3.push(_local2);
return(_local3);
}
function createSpecialMove(l_sType) {
var _local1 = new Object();
_local1.sType = l_sType;
_local1.bSpecial = true;
_local1.nDamage = 10;
_local1.lockedScore = 0;
_local1.nRecoilMinX = 40;
_local1.nRecoilX = 100;
_local1.nRecoilMinY = 0;
_local1.nRecoilY = 0;
_local1.nRecoilDelay = 12;
_local1.nAnticipation = 8;
_local1.nPointsWin = 100;
_local1.nPointsLose = 150;
_local1.nPointsBlock = 20;
switch (l_sType) {
case "Strike" :
_local1.hitSound = "hit3";
break;
case "Projectile" :
_local1.nSpeed = 30;
_local1.nHeight = -70;
_local1.nWidth = 100;
_local1.nDistance = 2500;
_local1.bVertical = false;
_local1.bFinishAnim = false;
_local1.bGrab = false;
_local1.hitSound = "Kick";
break;
case "VProjectile" :
_local1.nSpeed = 0.1;
_local1.nHeight = -330;
_local1.nWidth = 0;
_local1.nDistance = 2.5;
_local1.bVertical = true;
_local1.bFinishAnim = true;
_local1.bGrab = false;
_local1.hitSound = "Kick";
break;
case "Fetcher" :
_local1.nSpeed = 1;
_local1.nHeight = -115;
_local1.nWidth = 248;
_local1.nDistance = 2500;
_local1.bVertical = false;
_local1.bGrab = false;
_local1.hitSound = "Kick";
break;
case "Possession" :
_local1.nDistance = 100;
_local1.moveStartSound = "possession";
_local1.hitSound = "Hit3";
break;
case "Teleport" :
_local1.nDistance = 200;
_local1.moveStartSound = "Teleport";
_local1.hitSound = "Kick";
break;
case "MoveStrike" :
_local1.nSpeed = 50;
_local1.nDistance = 600;
_local1.nRecoilX = 200;
_local1.nRecoilY = 40;
_local1.bThrough = false;
break;
case "Screen" :
_local1.bVertical = true;
_local1.nHeight = -400;
_local1.nWidth = -1000;
_local1.nSpeed = 0.1;
_local1.nDistance = 1.2;
_local1.nRecoilX = 60;
_local1.nRecoilMinX = 20;
_local1.nRecoilDelay = 12;
_local1.bGrab = true;
_local1.moveSound = "blizzardsnd";
}
_local1.nDifficulty = 0;
return(_local1);
}
function addRecoil(l_oMove, l_nRecoilMinX, l_nRecoilX, l_nRecoilMinY, l_nRecoilY) {
l_oMove.nRecoilMinX = l_nRecoilMinX;
l_oMove.nRecoilX = l_nRecoilX;
l_oMove.nRecoilMinY = l_nRecoilMinY;
l_oMove.nRecoilY = l_nRecoilY;
return(l_oMove);
}
function addPoints(l_oMove, l_nWin, l_nLose, l_nBlock) {
l_oMove.nPointsWin = l_nWin;
l_oMove.nPointsLose = l_nLose;
l_oMove.nPointsBlock = l_nBlock;
return(l_oMove);
}
var oFighters = new Object();
}
Symbol 1682 MovieClip [__Packages.fight.unlock.Unlock] Frame 0
class fight.unlock.Unlock
{
var oMoves, oCharacters, oDifficulty, sharedObject;
function Unlock () {
Load();
}
function unlockMove(l_sFighter, l_nScore) {
var _local2 = oMoves.unlock(l_sFighter, l_nScore);
if (_local2) {
Save();
}
return(_local2);
}
function unlockAllMoves(l_sFighter) {
var _local2 = oMoves.unlockAll(l_sFighter);
Save();
return(_local2);
}
function moveIsLocked(l_sFighter, l_nMoves) {
return(oMoves.isLocked(l_sFighter, l_nMoves));
}
function unlockCharacter(l_sDifficulty) {
oCharacters.unlock(l_sDifficulty);
Save();
}
function characterIsLocked(l_sFighter) {
return(oCharacters.isLocked(l_sFighter));
}
function unlockDifficulty(l_sFighter) {
oDifficulty.unlock(l_sFighter);
Save();
}
function difficultyIsLocked(l_sDifficulty) {
return(oDifficulty.isLocked(l_sDifficulty));
}
function Save() {
sharedObject.data.oMoves = oMoves.lockedObject;
sharedObject.data.oCharacters = oCharacters.lockedObject;
sharedObject.data.oDifficulty = oDifficulty.lockedObject;
sharedObject.flush();
}
function Load() {
sharedObject = SharedObject.getLocal("DPUrbanJungle");
oMoves = new fight.unlock.UnlockMoves();
if (sharedObject.data.oMoves != undefined) {
oMoves.lockedObject = sharedObject.data.oMoves;
}
oCharacters = new fight.unlock.UnlockCharacters();
if (sharedObject.data.oCharacters != undefined) {
oCharacters.lockedObject = sharedObject.data.oCharacters;
}
oDifficulty = new fight.unlock.UnlockDifficulty();
if (sharedObject.data.oDifficulty != undefined) {
oDifficulty.lockedObject = sharedObject.data.oDifficulty;
}
}
}
Symbol 1683 MovieClip [__Packages.fight.unlock.UnlockMoves] Frame 0
class fight.unlock.UnlockMoves
{
function UnlockMoves () {
Init();
}
function isLocked(l_sFighter, l_nMoves) {
return(oLocked[l_sFighter][l_nMoves]);
}
function Init() {
var _local4;
var _local3;
var _local5;
var _local6;
var _local7;
_local4 = 0;
while (_local4 < ARRAY_CHARACTERS.length) {
_local7 = _global.C.getFighterProfile([ARRAY_CHARACTERS[_local4]]);
_local5 = _local7.SpecialMoves;
_local6 = new Array();
oLocked[ARRAY_CHARACTERS[_local4]] = new Array();
_local3 = 0;
while (_local3 < _local5.length) {
if (_local5[_local3].lockedScore > 0) {
_local6[_local3] = _local5[_local3].lockedScore;
oLocked[ARRAY_CHARACTERS[_local4]][_local3] = true;
} else {
oLocked[ARRAY_CHARACTERS[_local4]][_local3] = false;
}
_local3++;
}
oLockedRequirements[ARRAY_CHARACTERS[_local4]] = _local6;
_local4++;
}
}
function unlock(l_sFighter, l_nScore) {
var _local4 = false;
var _local2;
_local2 = 0;
while (_local2 < oLocked[l_sFighter].length) {
if ((l_nScore >= oLockedRequirements[l_sFighter][_local2]) && (oLocked[l_sFighter][_local2])) {
oLocked[l_sFighter][_local2] = false;
_local4 = true;
}
_local2++;
}
return(_local4);
}
function unlockAll(l_sFighter) {
var _local4 = false;
var _local2;
_local2 = 0;
while (_local2 < oLocked[l_sFighter].length) {
if (oLocked[l_sFighter][_local2]) {
oLocked[l_sFighter][_local2] = false;
_local4 = true;
}
_local2++;
}
return(_local4);
}
function get lockedObject() {
return(oLocked);
}
function set lockedObject(l_oLocked) {
oLocked = l_oLocked;
//return(lockedObject);
}
var ARRAY_CHARACTERS = new Array("Danny", "Frostbite", "Sam", "Undergrowth");
var oLockedRequirements = new Object();
var oLocked = new Object();
}
Symbol 1684 MovieClip [__Packages.fight.unlock.UnlockCharacters] Frame 0
class fight.unlock.UnlockCharacters
{
function UnlockCharacters () {
Init();
}
function Init() {
var _local3;
var _local4;
_local3 = 0;
while (_local3 < ARRAY_CHARACTERS.length) {
_local4 = _global.C.getFighterProfile([ARRAY_CHARACTERS[_local3]]);
oLockedRequirements[ARRAY_CHARACTERS[_local3]] = _local4.lockedLevel;
if (_local3 > 0) {
oLocked[ARRAY_CHARACTERS[_local3]] = true;
} else {
oLocked[ARRAY_CHARACTERS[_local3]] = false;
}
_local3++;
}
}
function unlock(l_sDifficulty) {
var _local2;
_local2 = 0;
while (_local2 < ARRAY_CHARACTERS.length) {
if (l_sDifficulty == oLockedRequirements[ARRAY_CHARACTERS[_local2]]) {
oLocked[ARRAY_CHARACTERS[_local2]] = false;
}
_local2++;
}
}
function isLocked(l_sFighter) {
return(oLocked[l_sFighter]);
}
function get lockedObject() {
return(oLocked);
}
function set lockedObject(l_oLocked) {
oLocked = l_oLocked;
//return(lockedObject);
}
var ARRAY_CHARACTERS = new Array("Danny", "Frostbite", "Sam", "Undergrowth");
var oLockedRequirements = new Object();
var oLocked = new Object();
}
Symbol 1685 MovieClip [__Packages.fight.unlock.UnlockDifficulty] Frame 0
class fight.unlock.UnlockDifficulty
{
var oLockedRequirements;
function UnlockDifficulty () {
Init();
}
function Init() {
oLockedRequirements = new Object({Apocalyptic:Array("Danny", "Frostbite", "Sam", "Undergrowth")});
var _local2;
_local2 = 0;
while (_local2 < ARRAY_DIFFICULTY.length) {
oLocked[ARRAY_DIFFICULTY[_local2]] = true;
_local2++;
}
}
function unlock(l_sFighter) {
var _local2;
var _local3;
_local2 = 0;
while (_local2 < ARRAY_DIFFICULTY.length) {
_local3 = 0;
while (_local3 < oLockedRequirements[ARRAY_DIFFICULTY[_local2]].length) {
if (l_sFighter == oLockedRequirements[ARRAY_DIFFICULTY[_local2]][_local3]) {
oLockedRequirements[ARRAY_DIFFICULTY[_local2]].splice(_local3, 1);
if (oLockedRequirements[ARRAY_DIFFICULTY[_local2]].length == 0) {
oLocked[ARRAY_DIFFICULTY[_local2]] = false;
}
}
_local3++;
}
_local2++;
}
}
function isLocked(l_sDifficulty) {
return(oLocked[l_sDifficulty]);
}
function get lockedObject() {
return(oLockedRequirements);
}
function set lockedObject(l_oLocked) {
oLockedRequirements = l_oLocked;
for (var _local2 in oLockedRequirements) {
oLocked[_local2] = oLockedRequirements[_local2].length != 0;
}
//return(lockedObject);
}
var ARRAY_DIFFICULTY = new Array("Apocalyptic");
var oLocked = new Object();
}
Symbol 1686 MovieClip [__Packages.steps.GenericPage] Frame 0
class steps.GenericPage
{
var mcStage, sOrigin;
function GenericPage (l_mcStage, l_sOrigin, l_aButtons) {
mcStage = l_mcStage;
sOrigin = l_sOrigin;
setButtons(l_aButtons);
}
function setButtons(l_aButtons) {
var _local3;
_local3 = 0;
while (_local3 < l_aButtons.length) {
if (l_aButtons[_local3] == "btnPlay") {
mcStage[l_aButtons[_local3]].onPress = function () {
_global.C.playGame();
};
} else if (l_aButtons[_local3] == "btnViewHS") {
mcStage[l_aButtons[_local3]].onPress = function () {
_global.objHS.fDoViewHS(this._parent);
};
} else {
mcStage[l_aButtons[_local3]].onPress = function () {
_global.C.startGenericPage(this._parent, this._name.substring(3));
};
}
_local3++;
}
}
}
Symbol 1687 MovieClip [__Packages.steps.Title] Frame 0
class steps.Title extends steps.GenericPage
{
function Title (l_mcStage) {
super(l_mcStage, undefined, ARRAY_BUTTONS);
if (_global.objHS.bHSAvailable) {
_global.objHS.fDoHSInit();
}
}
var ARRAY_BUTTONS = new Array("btnInstructions1", "btnViewHS", "btnPlay");
}
Symbol 1688 MovieClip [__Packages.steps.Instructions1] Frame 0
class steps.Instructions1 extends steps.GenericPage
{
var mcStage, oMenu, __get__setmenu;
function Instructions1 (l_mcStage, l_sOrigin) {
super(l_mcStage, l_sOrigin, ARRAY_BUTTONS);
setElements();
}
function setElements() {
if (_global.C.state == "Fight") {
mcStage.btnTitle.onPress = (mcStage.btnPlay.onPress = mx.utils.Delegate.create(this, returnToPage));
mcStage.btnSpecialMoves.onPress = mx.utils.Delegate.create(this, gotoSpecialMoves);
mcStage.btnInstructions2.onPress = mx.utils.Delegate.create(this, gotoInstructions2);
}
mcStage.mcHUDInst.mcLifeBar.mcPlayerHead.gotoAndStop(1);
mcStage.mcHUDInst.mcLifeBar.mcOpponentHead.gotoAndStop(4);
mcStage.mcHUDInst.mcCursor.onEnterFrame = mx.utils.Delegate.create(this, moveCursor);
}
function gotoSpecialMoves() {
mcStage.gotoAndStop(1);
mcStage._parent.mcBackInst._visible = false;
oMenu.showSpecialMoves();
}
function gotoInstructions2() {
mcStage.gotoAndStop(1);
oMenu.showInstructions2();
}
function returnToPage() {
mcStage.gotoAndStop(1);
mcStage._parent.mcBackInst._visible = false;
_global.C.setQuality();
}
function moveCursor() {
mcStage.mcHUDInst.mcCursor._x = mcStage.mcHUDInst.mcCursor._x + nCursorX;
if (mcStage.mcHUDInst.mcCursor._x >= 80) {
nCursorX = -5;
} else if (mcStage.mcHUDInst.mcCursor._x <= -80) {
nCursorX = 5;
}
var _local2 = (mcStage.mcHUDInst.mcCursor._x + NUMBER_RIGHT_X_HP) / (NUMBER_LIFEBAR_SIZE * 2);
mcStage.mcHUDInst.mcHP._x = NUMBER_LEFT_X_HP + (_local2 * (NUMBER_RIGHT_X_HP - NUMBER_LEFT_X_HP));
mcStage.mcHUDInst.mcLifeBar.mcPlayer._width = (NUMBER_LIFEBAR_SIZE * 2) * _local2;
mcStage.mcHUDInst.mcLifeBar.mcPlayer.gotoAndStop(Math.max(Math.round(mcStage.mcHUDInst.mcLifeBar.mcPlayer._totalframes * (1 - _local2)), 1));
mcStage.mcHUDInst.mcLifeBar.mcLifePlayer.gotoAndStop(Math.max(Math.round(mcStage.mcHUDInst.mcLifeBar.mcPlayer._totalframes * (1 - _local2)), 1));
mcStage.mcHUDInst.mcLifeBar.mcOpponent._width = (NUMBER_LIFEBAR_SIZE * 2) * (1 - _local2);
mcStage.mcHUDInst.mcLifeBar.mcOpponent.gotoAndStop(Math.max(Math.round(mcStage.mcHUDInst.mcLifeBar.mcOpponent._totalframes * _local2), 1));
mcStage.mcHUDInst.mcLifeBar.mcLifeOpponent.gotoAndStop(Math.max(Math.round(mcStage.mcHUDInst.mcLifeBar.mcOpponent._totalframes * _local2), 1));
}
function set setmenu(l_oMenu) {
oMenu = l_oMenu;
//return(__get__setmenu());
}
var ARRAY_BUTTONS = new Array("btnInstructions2", "btnTitle", "btnSpecialMoves", "btnPlay");
var NUMBER_LEFT_X_HP = -212.2;
var NUMBER_RIGHT_X_HP = 212.2;
var NUMBER_LIFEBAR_SIZE = 212.2;
var nCursorX = -10;
}
Symbol 1689 MovieClip [__Packages.mx.utils.Delegate] Frame 0
class mx.utils.Delegate extends Object
{
var func;
function Delegate (f) {
super();
func = f;
}
static function create(obj, func) {
var _local2 = function () {
var _local2 = arguments.callee.target;
var _local3 = arguments.callee.func;
return(_local3.apply(_local2, arguments));
};
_local2.target = obj;
_local2.func = func;
return(_local2);
}
function createDelegate(obj) {
return(create(obj, func));
}
}
Symbol 1690 MovieClip [__Packages.steps.Instructions2] Frame 0
class steps.Instructions2 extends steps.GenericPage
{
var mcStage, oMenu, __get__setmenu;
function Instructions2 (l_mcStage, l_sOrigin) {
super(l_mcStage, l_sOrigin, ARRAY_BUTTONS);
setCommands();
}
function setCommands() {
if (_global.C.state == "Fight") {
mcStage.btnPlay.onPress = mx.utils.Delegate.create(this, returnToPage);
mcStage.btnInstructions1.onPress = mx.utils.Delegate.create(this, gotoInstructions1);
mcStage.btnSpecialMoves.onPress = mx.utils.Delegate.create(this, gotoSpecialMoves);
}
}
function gotoSpecialMoves() {
mcStage.gotoAndStop(1);
mcStage._parent.mcBackInst._visible = false;
oMenu.showSpecialMoves();
}
function returnToPage() {
mcStage.gotoAndStop(1);
mcStage._parent.mcBackInst._visible = false;
_global.C.setQuality();
}
function gotoInstructions1() {
mcStage.gotoAndStop(1);
oMenu.showInstructions1();
}
function set setmenu(l_oMenu) {
oMenu = l_oMenu;
//return(__get__setmenu());
}
var ARRAY_BUTTONS = new Array("btnInstructions1", "btnSpecialMoves", "btnPlay");
}
Symbol 1691 MovieClip [__Packages.steps.SpecialMoves] Frame 0
class steps.SpecialMoves extends steps.GenericPage
{
var mcStage, sOrigin;
function SpecialMoves (l_mcStage, l_sOrigin) {
super(l_mcStage, l_sOrigin);
setCommands();
}
function setCommands() {
mcStage.mcSpecialMoves.gotoAndStop(2);
mcStage.mcSpecialMoves.mcClose.onRelease = mx.utils.Delegate.create(this, returnToPage);
var _local2 = 0;
while (_local2 < ARRAY_CHARACTER_NAMES.length) {
mcStage.mcSpecialMoves["mc" + ARRAY_CHARACTER_NAMES[_local2]].setLockedMoves();
_local2++;
}
}
function returnToPage() {
if (_global.C.state == "Fight") {
mcStage.mcSpecialMoves.gotoAndStop(1);
_global.C.setQuality();
} else {
_global.C.startGenericPage(mcStage, sOrigin);
}
}
var ARRAY_CHARACTER_NAMES = new Array("Danny", "Frostbite", "Sam", "Undergrowth");
}
Symbol 1692 MovieClip [__Packages.steps.HighScores] Frame 0
class steps.HighScores extends steps.GenericPage
{
var nY, oFight, mcStage, nScoreHeight;
function HighScores (l_mcStage, l_sOrigin, l_oFight) {
super(l_mcStage, l_sOrigin, ARRAY_BUTTONS);
nY = NUMBER_TOP_Y;
oFight = l_oFight;
_global.objHS.fight = oFight;
getHighScores(oFight);
if (l_sOrigin == "Title") {
mcStage.btnSubmitHS._visible = false;
}
l_mcStage.btnSubmitHS.onPress = mx.utils.Delegate.create(this, saveNGetHighScores);
}
function addHighScore(l_sName, l_nScore) {
var _local3 = "mcHigh" + mcStage.mcHighScore.getNextHighestDepth();
var _local2 = mcStage.mcHighScore.attachMovie("OneScoringPlayer", _local3, mcStage.mcHighScore.getNextHighestDepth());
_local2._y = nY;
nY = nY + (_local2._height - 5);
_local2.txtName.text = l_sName.toUpperCase();
_local2.txtScore.text = formatNumber(l_nScore, 9);
nScoreHeight = mcStage.mcHighScore._height;
}
function getHighScores() {
_global.objHS.fSetHSBoard(mcStage);
_global.objHS.bGetHS = true;
if ((_global.objHS.bGetHS == true) && (_global.objHS.bSubmitHS != true)) {
_global.objHS.addMessage("The high score list is updating!");
_global.objHS.bGetHS = false;
_global.objHS.getScores();
} else if (_global.objHS.bSubmitHS == true) {
_global.objHS.bSubmitHS = false;
mcStage.btnSubmitHS._visible = false;
_global.objHS.submitScore(oFight.totalScore);
}
}
function saveNGetHighScores() {
for (var _local3 in mcStage.mcHighScore) {
if (_local3.substring(0, 6) == "mcHigh") {
mcStage.mcHighScore[_local3].removeMovieClip();
}
}
nY = NUMBER_TOP_Y;
mcStage.mcCursor.reset();
_global.objHS.bSubmitHS = true;
getHighScores();
}
function formatNumber(l_nNumber, l_nSize) {
var _local2 = "";
var _local1;
var _local3 = l_nSize - l_nNumber.toString().length;
_local1 = 0;
while (_local1 < _local3) {
_local2 = _local2 + "0";
_local1++;
}
return(_local2 + l_nNumber.toString());
}
var NUMBER_TOP_Y = -95;
var ARRAY_BUTTONS = new Array("btnSubmit", "btnTitle");
}
Symbol 1693 MovieClip [__Packages.steps.End] Frame 0
class steps.End extends steps.GenericPage
{
var mcStage;
function End (l_mcStage, l_oFight, l_sPage, l_sGoodBad) {
super(l_mcStage, undefined, ARRAY_BUTTONS);
setScore(l_mcStage, l_oFight);
if (l_sPage == (l_sGoodBad + "End")) {
_global.C.unlockCharacter(_global.C.difficulty);
_global.C.unlockDifficulty(_global.C.player);
l_mcStage.btnTitle.gotoAndStop(2);
} else {
l_mcStage.btnTitle.gotoAndStop(1);
}
l_mcStage.btnSubmitHS.onPress = mx.utils.Delegate.create(this, sendHighScore);
if (_global.objHS.bHSAvailable) {
mcStage.btnViewHS._visible = true;
if (_global.gProxyObj.getIsLoggedIn()) {
_global.objHS.fDoHSInit();
} else {
mcStage.btnSubmitHS._visible = false;
}
} else {
mcStage.btnSubmitHS._visible = false;
mcStage.btnViewHS._visible = false;
}
}
function sendHighScore() {
_global.objHS.fDoSubmitHS(mcStage);
}
function setScore(l_mcStage, l_oFight) {
l_mcStage.txtScore.text = formatNumber(l_oFight.totalScore, 10);
}
function formatNumber(l_nNumber, l_nSize) {
var _local2 = "";
var _local1;
var _local3 = l_nSize - l_nNumber.toString().length;
_local1 = 0;
while (_local1 < _local3) {
_local2 = _local2 + "0";
_local1++;
}
return(_local2 + l_nNumber.toString());
}
var ARRAY_BUTTONS = new Array("btnSubmitHS", "btnViewHS", "btnTitle");
}
Symbol 1694 MovieClip [__Packages.steps.Fight] Frame 0
class steps.Fight
{
var sPlayer, sGoodBad, oRoaster, sOpponent, sDifficulty, sCurrentLevel, bBattleWon, oLevel, oPlayer, mcLevel, oPause, oVictory, __get__setPauseMenu;
function Fight (l_sPlayer, l_sGoodBad, l_sDifficulty) {
sPlayer = l_sPlayer;
sGoodBad = l_sGoodBad;
oRoaster = new fight.Roaster(l_sPlayer, l_sGoodBad);
sOpponent = oRoaster.nextFighter;
sDifficulty = l_sDifficulty;
sCurrentLevel = oRoaster.fighterLevel;
bBattleWon = false;
}
function update() {
oLevel.update();
if (!bBattleWon) {
updateHud();
}
}
function updateHud() {
oHud.update();
HudHPUpdate(oLevel.getHPPourc());
}
function nextFight() {
if (oLevel.player.state != "Dead") {
oRoaster.shiftFighter;
sOpponent = oRoaster.nextFighter;
oPlayer = oLevel.player;
if (sOpponent == undefined) {
_global.C.startGenericPage(oLevel.levelMC._parent, goodBad + "End");
} else {
sCurrentLevel = oRoaster.fighterLevel;
bBattleWon = false;
oLevel.clear();
setLevel(mcLevel);
}
} else {
var _local3;
if (goodBad == "Good") {
_local3 = "Bad";
} else {
_local3 = "Good";
}
_global.C.startGenericPage(oLevel.levelMC._parent, _local3 + "End");
}
}
function beforeFight() {
mcLevel._parent.mcFight.gotoAndPlay(1);
mcLevel._parent.mcFight.onEnterFrame = mx.utils.Delegate.create(this, beginFight);
oPause.paused = true;
oPause.canPause = false;
}
function beginFight() {
if (mcLevel._parent.mcFight._currentframe == mcLevel._parent.mcFight._totalframes) {
mcLevel._parent.mcFight.stop();
oPause.paused = false;
oPause.canPause = true;
delete mcLevel._parent.mcFight.onEnterFrame;
}
}
function changePause() {
oPause.changePause();
}
function setLevel(l_mcLevel) {
mcLevel = l_mcLevel;
oLevel = new level.Level(l_mcLevel);
if (oPlayer) {
oLevel.acquirePlayer(oPlayer);
}
oPause = new Pause(oLevel);
oHud = new hud.Hud(l_mcLevel, oLevel.player.numberTotalScore);
beforeFight();
}
function setAnticipation(l_mcFighter) {
oLevel.setAnticipation(l_mcFighter);
}
function activateSpecial(l_mcFighter) {
oLevel.activateSpecial(l_mcFighter);
}
function addToPauseList(l_mClip) {
oPause.addToPauseList(l_mClip);
}
function removeFromPauseList(l_mClip) {
oPause.removeFromPauseList(l_mClip);
}
function setVictory(l_sFighter) {
_global.C.battlewon = true;
oPlayer = oLevel.player;
if (sPlayer == l_sFighter) {
oPlayer.addFalls();
oPlayer.addScore(addScore(1000, false));
oVictory = new steps.Victory(oLevel.levelMC._parent, l_sFighter, oPlayer);
} else {
oLevel.player.numberAddTotalScore();
oLevel.player.state = "Dead";
_global.C.nextFight();
}
}
function unlockMove() {
oHud.unlockMove();
}
function ProjectileCollision(l_mcElem, oMove) {
return(oLevel.ProjectileCollision(l_mcElem, oMove));
}
function addScore(l_nScore, l_bIsSpecial) {
return(oHud.addScore(l_nScore, l_bIsSpecial));
}
function removeScore(l_nScore) {
l_nScore = oHud.removeScore(l_nScore);
oLevel.removeScore(l_nScore);
return(l_nScore);
}
function resetCombo() {
oHud.resetCombo();
}
function HudHPUpdate(l_nHPPourc) {
oHud.changeHealth(l_nHPPourc);
}
function setMenu(l_sState) {
oHud.setMenu(l_sState);
}
function addTime(l_nTime) {
oHud.addTime(l_nTime);
}
function addHealth(l_nHealth) {
oLevel.addHealth(l_nHealth);
}
function addCombos() {
oLevel.addCombos();
}
function get currentLevel() {
return(sCurrentLevel);
}
function get player() {
return(sPlayer);
}
function get opponent() {
return(sOpponent);
}
function get pause() {
return(oPause.paused);
}
function get difficulty() {
return(sDifficulty);
}
function get yLevel() {
return(oLevel.yLevel);
}
function set setPauseMenu(l_mcMenu) {
oPause.setMenu = l_mcMenu;
//return(__get__setPauseMenu());
}
function set battlewon(l_bBattleWon) {
bBattleWon = l_bBattleWon;
//return(battlewon);
}
function get battlewon() {
return(bBattleWon);
}
function get cameraRightPosition() {
return(oLevel.cameraRightPosition);
}
function get goodBad() {
return(sGoodBad);
}
function get totalScore() {
return(oPlayer.numberTotalScore);
}
function set canPause(l_bCanPause) {
oPause.canPause = l_bCanPause;
//return(canPause);
}
function get canPause() {
return(oPause.canPause);
}
var oHud = new Object();
}
Symbol 1695 MovieClip [__Packages.fight.Roaster] Frame 0
class fight.Roaster
{
function Roaster (l_sCharacter, l_sGoodBad) {
l_aRoaster = new Array();
var _local2;
if (l_sGoodBad == "Good") {
_local2 = 0;
while (_local2 < ARRAY_GOOD_GUYS.length) {
if (ARRAY_GOOD_GUYS[_local2] != l_sCharacter) {
l_aRoaster.push(ARRAY_GOOD_GUYS[_local2]);
break;
}
_local2++;
}
l_aRoaster = l_aRoaster.concat(ARRAY_BAD_GUYS);
} else {
_local2 = 0;
while (_local2 < ARRAY_BAD_GUYS.length) {
if (ARRAY_BAD_GUYS[_local2] != l_sCharacter) {
l_aRoaster.push(ARRAY_BAD_GUYS[_local2]);
break;
}
_local2++;
}
l_aRoaster = l_aRoaster.concat(ARRAY_GOOD_GUYS);
}
if (l_sCharacter != "Danny") {
OBJECT_LEVELS.Danny = OBJECT_LEVELS[l_sCharacter];
}
}
function get nextFighter() {
return(l_aRoaster[0]);
}
function get fighterLevel() {
return(OBJECT_LEVELS[l_aRoaster[0]]);
}
function get shiftFighter() {
l_aRoaster.shift();
}
var ARRAY_GOOD_GUYS = new Array("Frostbite", "Danny");
var ARRAY_BAD_GUYS = new Array("Sam", "Undergrowth");
var OBJECT_LEVELS = new Object({Frostbite:"Frost", Sam:"Amity", Undergrowth:"Evil"});
var l_aRoaster = new Array();
}
Symbol 1696 MovieClip [__Packages.level.Level] Frame 0
class level.Level
{
var bLockCamera, mcLevel, mcGround, mcBack, mcFore, mcSky, oPlayer, oOpponent, oCamera, oItemGenerator, nLeftEdge, nRightEdge, __get__lockCamera;
function Level (l_mc) {
bLockCamera = false;
mcLevel = l_mc;
mcGround = mcLevel.mcGround.attachMovie(_global.C.currentLevel, "mcGround", mcLevel.mcGround.getNextHighestDepth());
mcBack = mcLevel.mcBack.attachMovie(_global.C.currentLevel + "Parallax", "mcBack", mcLevel.mcBack.getNextHighestDepth());
mcFore = mcLevel.mcFore.attachMovie(_global.C.currentLevel + "Foreground", "mcFore", mcLevel.mcFore.getNextHighestDepth());
mcSky = mcLevel.mcSky.attachMovie(_global.C.currentLevel + "Sky", "mcSky", mcLevel.mcSky.getNextHighestDepth());
oPlayer = new fighter.Player(_global.C.player, this);
oOpponent = new fighter.Opponent(_global.C.opponent, this);
oPlayer.setPos(0, NUMBER_Y_LEVEL);
oOpponent.setPos(200, NUMBER_Y_LEVEL);
var _local4 = oOpponent.__get__movieClip();
var _local3 = oPlayer.__get__movieClip();
oPlayer.__set__opponent(oOpponent);
oOpponent.__set__opponent(oPlayer);
oOpponent.setAI(oPlayer);
oCamera = new level.camera.CameraManager(mcLevel, mcBack, mcFore, mcSky, _local3, _local4);
oItemGenerator = new level.items.ItemGenerator(this, _local3);
getColliders();
}
function update() {
var _local2 = new Benchmark();
flipFighters();
oPlayer.update();
oOpponent.update();
oCamera.update();
oItemGenerator.update();
}
function addFighter(l_sName, l_sSprite) {
l_sSprite = l_sName + mcLevel.mcFighter.getNextHighestDepth();
if (mcLevel.mcFighter[l_sSprite] == undefined) {
mcLevel.mcFighter.attachMovie(l_sName, l_sSprite, mcLevel.mcFighter.getNextHighestDepth());
}
mcLevel.mcFighter.cacheAsBitmap = true;
return(mcLevel.mcFighter[l_sSprite]);
}
function onLevel(l_mcFighter) {
var _local4 = false;
var _local2;
var _local3 = new Object({x:l_mcFighter._x, y:l_mcFighter._y});
mcLevel.mcGround.localToGlobal(_local3);
for (_local2 in aColliders) {
if (aColliders[_local2].hitTest(_local3.x, _local3.y + 1)) {
l_mcFighter._y = aColliders[_local2]._y;
_local4 = true;
}
}
return(_local4);
}
function setPause(bPause) {
oPlayer.setPause(bPause);
oOpponent.setPause(bPause);
}
function setAnticipation(l_mcFighter) {
if (oPlayer.__get__movieClip().mcFighter == l_mcFighter) {
oPlayer.setAnticipation();
} else if (oOpponent.__get__movieClip().mcFighter == l_mcFighter) {
oOpponent.setAnticipation();
}
}
function activateSpecial(l_mcFighter) {
if (oPlayer.__get__movieClip().mcFighter == l_mcFighter) {
oPlayer.activateSpecial();
} else if (oOpponent.__get__movieClip().mcFighter == l_mcFighter) {
oOpponent.activateSpecial();
}
}
function moveCamera(l_nX, l_nY) {
}
function ProjectileCollision(l_mcElem, oMove) {
var _local2 = false;
if (oPlayer.__get__movieClip() == l_mcElem) {
if ((!oPlayer.__get__hurting()) && ((!oPlayer.__get__justHit()) || (oMove.bGrab))) {
if (!oPlayer.__get__blocking()) {
oOpponent.hitResults(oMove, oPlayer.__get__justHit());
}
_local2 = true;
}
} else if (oOpponent.__get__movieClip() == l_mcElem) {
if ((!oOpponent.__get__hurting()) && ((!oOpponent.__get__justHit()) || (oMove.bGrab))) {
if (!oOpponent.__get__blocking()) {
oPlayer.hitResults(oMove, oOpponent.__get__justHit());
}
_local2 = true;
}
}
return(_local2);
}
function getHPPourc() {
return(oPlayer.getHPPourc());
}
function addHealth(l_nHealth) {
oPlayer.changeHP(l_nHealth);
oOpponent.changeHP(-l_nHealth);
}
function Victory(l_bPlayer) {
if (!l_bPlayer) {
oCamera.victoryCam(oOpponent.__get__movieClip()._x, oOpponent.__get__movieClip()._y);
oOpponent.__set__lockState(true);
} else {
oCamera.victoryCam(oPlayer.__get__movieClip()._x, oPlayer.__get__movieClip()._y);
oPlayer.__set__lockState(true);
}
_global.C.battlewon = true;
oCamera.__set__state("Victory");
}
function addCombos() {
oPlayer.addCombos();
}
function clear() {
oCamera.reset();
mcGround.removeMovieClip();
mcBack.removeMovieClip();
mcFore.removeMovieClip();
mcSky.removeMovieClip();
oItemGenerator.clear();
oOpponent.__get__movieClip().removeMovieClip();
oPlayer.__get__movieClip()._visible = false;
}
function acquirePlayer(l_oPlayer) {
oPlayer.acquirePlayer(l_oPlayer);
}
function getColliders() {
var _local3;
var _local2;
var _local4;
for (_local3 in mcLevel.mcGround.mcGround) {
if (_local3 == "hitArea") {
_local2 = mcLevel.mcGround.mcGround[_local3];
aColliders.push(_local2);
_local4 = _local2._width;
if ((nLeftEdge == undefined) || (nLeftEdge > _local2._x)) {
nLeftEdge = _local2._x;
}
if ((nRightEdge == undefined) || (nRightEdge < (_local2._x + _local4))) {
nRightEdge = _local2._x + _local4;
}
}
}
}
function flipFighters(l_bForced) {
var _local4 = oPlayer.__get__movieClip();
var _local3 = oOpponent.__get__movieClip();
if (_local4._x > _local3._x) {
oPlayer.lookDir("Left", l_bForced);
oOpponent.lookDir("Right", l_bForced);
} else {
oPlayer.lookDir("Right", l_bForced);
oOpponent.lookDir("Left", l_bForced);
}
}
function removeScore(l_nScore) {
oPlayer.removeScore(l_nScore);
}
function get leftEdge() {
return(nLeftEdge);
}
function get rightEdge() {
return(nRightEdge);
}
function get yLevel() {
return(NUMBER_Y_LEVEL);
}
function set lockCamera(l_bLockCamera) {
bLockCamera = l_bLockCamera;
//return(__get__lockCamera());
}
function get camera() {
return(oCamera);
}
function get levelMC() {
return(mcLevel);
}
function get player() {
return(oPlayer);
}
function set player(l_oPlayer) {
oPlayer = l_oPlayer;
oPlayer.__set__opponent(oOpponent);
oOpponent.__set__opponent(oPlayer);
oOpponent.setAI(oPlayer);
//return(player);
}
function get cameraRightPosition() {
return(oCamera.__get__rightPosition());
}
var NUMBER_Y_LEVEL = 290.2;
var aColliders = new Array();
}
Symbol 1697 MovieClip [__Packages.level.camera.CameraManager] Frame 0
class level.camera.CameraManager
{
var bLocked, sState, oCamera, mcPlayer, mcOpponent, mcLevel, nFirstDistanceX, nFirstEquiDistanceX, nFirstDistanceY, nFirstEquiDistanceY, nPlayerX, nPlayerY, nRemainingFrames, __get__state, __get__totalFrames;
function CameraManager (l_mcLevel, l_mcBack, l_mcFore, l_mcSky, l_mcPlayer, l_mcOpponent) {
bLocked = false;
sState = "Start";
oCamera = new level.camera.GameCamera(l_mcLevel, l_mcBack, l_mcFore, l_mcSky);
mcPlayer = l_mcPlayer;
mcOpponent = l_mcOpponent;
mcLevel = l_mcLevel;
nFirstDistanceX = Math.abs(mcPlayer._x - mcOpponent._x);
nFirstEquiDistanceX = (mcPlayer._x + mcOpponent._x) / 2;
nFirstDistanceY = Math.abs(mcPlayer._y - mcOpponent._y);
nFirstEquiDistanceY = (mcPlayer._y + mcOpponent._y) / 2;
nPlayerX = mcPlayer._x;
nPlayerY = mcPlayer._y;
update();
}
function update() {
if (!bLocked) {
switch (sState) {
case "Battle" :
var _local4 = Math.abs(mcPlayer._x - mcOpponent._x);
var _local3 = (mcPlayer._x + mcOpponent._x) / 2;
var _local6 = BattleCamX(_local4, _local3, mcPlayer._x);
_local4 = Math.abs(mcPlayer._y - mcOpponent._y);
_local3 = (mcPlayer._y + mcOpponent._y) / 2;
var _local5 = BattleCamY(_local4, _local3, mcPlayer._y);
oCamera.moveTo(_local6, _local5);
oCamera.update(false);
break;
case "Wait" :
break;
case "HoleReturn" :
_local4 = Math.abs(mcPlayer._x - mcOpponent._x);
_local3 = (mcPlayer._x + mcOpponent._x) / 2;
_local6 = BattleCamX(_local4, _local3, mcPlayer._x);
_local4 = Math.abs(mcPlayer._y - mcOpponent._y);
_local3 = (mcPlayer._y + mcOpponent._y) / 2;
_local5 = BattleCamY(_local4, _local3, _global.C.yLevel);
oCamera.moveTo(_local6, _local5);
oCamera.update(false);
break;
case "Teleport" :
_local4 = Math.abs(mcPlayer._x - mcOpponent._x);
_local3 = (mcPlayer._x + mcOpponent._x) / 2;
_local6 = BattleCamX(_local4, _local3, mcPlayer._x);
_local4 = Math.abs(mcPlayer._y - mcOpponent._y);
_local3 = (mcPlayer._y + mcOpponent._y) / 2;
_local5 = BattleCamY(_local4, _local3, mcPlayer._y);
oCamera.moveFastTo(_local6, _local5, nRemainingFrames);
oCamera.update(true);
nRemainingFrames--;
if (nRemainingFrames == 0) {
sState = "Battle";
}
break;
case "Start" :
_local4 = Math.abs(mcPlayer._x - mcOpponent._x);
_local3 = (mcPlayer._x + mcOpponent._x) / 2;
_local6 = BattleCamX(_local4, _local3, mcPlayer._x);
_local4 = Math.abs(mcPlayer._y - mcOpponent._y);
_local3 = (mcPlayer._y + mcOpponent._y) / 2;
_local5 = BattleCamY(_local4, _local3, mcPlayer._y);
oCamera.moveFastTo(_local6, _local5, 1);
oCamera.update(true);
sState = "Battle";
break;
case "Victory" :
oCamera.update(false);
}
}
}
function victoryCam(l_nX, l_nY) {
oCamera.moveTo(BattleCamX(0, l_nX, l_nX), BattleCamY(0, l_nY, l_nY));
}
function reset() {
oCamera.moveFastTo(BattleCamX(nFirstDistanceX, nFirstEquiDistanceX, nPlayerX), BattleCamY(nFirstDistanceY, nFirstEquiDistanceY, nPlayerY), 1);
oCamera.update(true);
}
function BattleCamX(l_nDistance, l_nEquiDistance, l_nX) {
var _local3;
if (l_nDistance < NUMBER_X_EQUI_CAMERA) {
_local3 = NUMBER_X_CENTER - l_nEquiDistance;
} else if (l_nDistance < NUMBER_X_RECENTER_CAMERA) {
var _local7;
var _local4;
if (l_nX < mcOpponent._x) {
_local7 = NUMBER_X_SCROLL_LEFT - l_nX;
_local4 = NUMBER_X_CENTER - l_nEquiDistance;
} else {
_local7 = NUMBER_X_SCROLL_RIGHT - l_nX;
_local4 = NUMBER_X_CENTER - l_nEquiDistance;
}
var _local6 = 1 - ((l_nDistance - NUMBER_X_EQUI_CAMERA) / (NUMBER_X_RECENTER_CAMERA - NUMBER_X_EQUI_CAMERA));
var _local8 = 1 - _local6;
_local3 = (((_local7 + _local4) / 2) * _local8) + ((NUMBER_X_CENTER - l_nEquiDistance) * _local6);
} else if (l_nX < mcOpponent._x) {
_local3 = NUMBER_X_SCROLL_LEFT - l_nX;
} else {
_local3 = NUMBER_X_SCROLL_RIGHT - l_nX;
}
return(_local3);
}
function BattleCamY(l_nDistance, l_nEquiDistance, l_nY) {
var _local3;
if (l_nDistance < NUMBER_Y_OPPONENT_TOO_FAR) {
if (l_nY < NUMBER_Y_SCROLL_GROUND) {
_local3 = NUMBER_Y_CENTER - l_nY;
}
if (NUMBER_Y_STOP_CAMERA_DOWN < (l_nY + mcLevel._y)) {
_local3 = _local3 - (l_nY - NUMBER_Y_STOP_CAMERA_DOWN);
}
} else if (l_nDistance < NUMBER_Y_RECENTER_CAMERA) {
var _local6;
var _local4;
if (l_nY > mcOpponent._y) {
_local6 = NUMBER_Y_SCROLL_BOTTOM - l_nY;
_local4 = NUMBER_Y_CENTER - l_nY;
} else {
_local6 = NUMBER_Y_SCROLL_TOP - l_nY;
_local4 = NUMBER_Y_CENTER - l_nY;
}
var _local5 = 1 - ((l_nDistance - NUMBER_Y_OPPONENT_TOO_FAR) / (NUMBER_X_RECENTER_CAMERA - NUMBER_Y_OPPONENT_TOO_FAR));
var _local7 = 1 - _local5;
_local3 = (((_local6 + _local4) / 2) * _local7) + ((NUMBER_Y_CENTER - l_nEquiDistance) * _local5);
} else if (l_nY > mcOpponent._y) {
_local3 = NUMBER_Y_SCROLL_BOTTOM - l_nY;
} else {
_local3 = NUMBER_Y_SCROLL_TOP - l_nY;
}
_local3 = Math.max(_local3, NUMBER_Y_LIMIT_BOTTOM);
return(_local3);
}
function getCenterX(l_nX) {
return(NUMBER_X_CENTER - l_nX);
}
function getCenterY(l_nY) {
var _local3;
if (l_nY < NUMBER_Y_SCROLL_GROUND) {
_local3 = NUMBER_Y_CENTER - l_nY;
}
if (NUMBER_Y_STOP_CAMERA_DOWN < (l_nY + mcLevel._y)) {
_local3 = _local3 - (l_nY - NUMBER_Y_STOP_CAMERA_DOWN);
}
return(_local3);
}
function set state(l_sState) {
sState = l_sState;
//return(__get__state());
}
function set totalFrames(l_nTotalFrames) {
nRemainingFrames = l_nTotalFrames;
//return(__get__totalFrames());
}
function get rightPosition() {
return(oCamera.__get__rightPosition());
}
var NUMBER_X_SCROLL_LEFT = -200;
var NUMBER_X_SCROLL_RIGHT = 170;
var NUMBER_X_CENTER = -15;
var NUMBER_X_EQUI_CAMERA = 250;
var NUMBER_X_RECENTER_CAMERA = 370;
var NUMBER_Y_CENTER = 0;
var NUMBER_Y_OPPONENT_TOO_FAR = 0;
var NUMBER_Y_SCROLL_GROUND = 250;
var NUMBER_Y_SCROLL_TOP = 0;
var NUMBER_Y_SCROLL_BOTTOM = 0;
var NUMBER_Y_LIMIT_BOTTOM = -150;
var NUMBER_Y_RECENTER_CAMERA = 0;
var NUMBER_Y_STOP_CAMERA_DOWN = 140;
}
Symbol 1698 MovieClip [__Packages.level.camera.GameCamera] Frame 0
class level.camera.GameCamera
{
var mcLevel, mcBack, mcFore, mcSky, nDestX, nDestY, nXSpeed, nYSpeed, nOldX, nOldY;
function GameCamera (l_mcLevel, l_mcBack, l_mcFore, l_mcSky) {
mcLevel = l_mcLevel;
mcBack = l_mcBack;
mcFore = l_mcFore;
mcSky = l_mcSky;
}
function update(bFast) {
if ((mcLevel._x != nDestX) || (mcLevel._y != nDestY)) {
if (!bFast) {
moveCamera();
} else {
moveCameraFast();
}
updateParallax();
}
}
function moveTo(l_nX, l_nY) {
nDestX = l_nX;
nDestY = l_nY;
}
function moveFastTo(l_nX, l_nY, l_nTotalFrames) {
nDestX = l_nX;
nDestY = l_nY;
nXSpeed = Math.abs(nDestX - mcLevel._x) / l_nTotalFrames;
nYSpeed = Math.abs(nDestY - mcLevel._y) / l_nTotalFrames;
}
function moveCamera() {
nOldX = mcLevel._x;
nOldY = mcLevel._y;
var _local2 = movementDivider();
if (mcLevel._x < nDestX) {
mcLevel._x = mcLevel._x + Math.min(nDestX - mcLevel._x, NUMBER_MOVE_SPEED * _local2.nPourcX);
} else if (mcLevel._x > nDestX) {
mcLevel._x = mcLevel._x - Math.min(mcLevel._x - nDestX, NUMBER_MOVE_SPEED * _local2.nPourcX);
}
if (mcLevel._y < nDestY) {
mcLevel._y = mcLevel._y + Math.min(nDestY - mcLevel._y, NUMBER_MOVE_SPEED * _local2.nPourcY);
} else if (mcLevel._y > nDestY) {
mcLevel._y = mcLevel._y - Math.min(mcLevel._y - nDestY, NUMBER_MOVE_SPEED * _local2.nPourcY);
}
}
function moveCameraFast() {
nOldX = mcLevel._x;
nOldY = mcLevel._y;
if (mcLevel._x < nDestX) {
mcLevel._x = mcLevel._x + Math.min(nDestX - mcLevel._x, nXSpeed);
} else if (mcLevel._x > nDestX) {
mcLevel._x = mcLevel._x - Math.min(mcLevel._x - nDestX, nXSpeed);
}
if (mcLevel._y < nDestY) {
mcLevel._y = mcLevel._y + Math.min(nDestY - mcLevel._y, nYSpeed);
} else if (mcLevel._y > nDestY) {
mcLevel._y = mcLevel._y - Math.min(mcLevel._y - nDestY, nYSpeed);
}
}
function movementDivider() {
var _local3 = Math.abs(nDestX - mcLevel._x);
var _local2 = Math.abs(nDestY - mcLevel._y);
var _local4 = new Object({nPourcX:_local3 / (_local3 + _local2), nPourcY:_local2 / (_local3 + _local2)});
return(_local4);
}
function updateParallax() {
parallaxScrollX();
foreScrollX();
skyScrollX();
parallaxScrollY();
foreScrollY();
skyScrollY();
}
function parallaxScrollX() {
mcBack._x = mcBack._x - ((mcLevel._x - nOldX) * 0.8);
}
function foreScrollX() {
mcFore._x = mcFore._x + ((mcLevel._x - nOldX) * 2);
}
function skyScrollX() {
mcSky._x = mcSky._x - ((mcLevel._x - nOldX) * 0.95);
}
function parallaxScrollY() {
mcBack._y = mcBack._y - ((mcLevel._y - nOldY) * 0.9);
}
function foreScrollY() {
mcFore._y = mcFore._y + ((mcLevel._y - nOldY) * 1);
}
function skyScrollY() {
mcSky._y = mcSky._y - ((mcLevel._y - nOldY) * 0.95);
}
function get rightPosition() {
return((Math.floor(Math.abs(mcLevel._x - nDestX)) == 0) && (Math.floor(Math.abs(mcLevel._y - nDestY)) == 0));
}
var NUMBER_MOVE_SPEED = 30;
}
Symbol 1699 MovieClip [__Packages.fighter.Fighter] Frame 0
class fighter.Fighter
{
var oLevel, sFighter, mcFighter, sState, oProfile, nJumpRemaining, nHP, oHoleManager, bLockState, bIsStopped, bAttacking, bBlocking, bHurting, bJustHit, bSpecialActivated, nTrueFrame, nTotalTrueFrame, nSpecialMove, nFallSpeed, nLateralMoveAir, oOpponent, nDistanceTravelled, bCrouch, nLateralMove, oRecoil, dispatchEvent, bPlayer, removeScore, __get__lockState;
function Fighter (l_sFighter, l_oLevel) {
mx.events.EventDispatcher.initialize(this);
oLevel = l_oLevel;
sFighter = l_sFighter;
mcFighter = oLevel.addFighter(l_sFighter);
mcFighter.gotoAndStop("Idle");
sState = "Idle";
oProfile = _global.C.getFighterProfile(l_sFighter);
nJumpRemaining = 0;
nHP = NUMBER_TOTAL_HP / 2;
oHoleManager = new level.HoleManagement(this);
oHoleManager.levelObj = oLevel;
bLockState = false;
bIsStopped = false;
bAttacking = false;
bBlocking = false;
bHurting = false;
bJustHit = false;
}
function setPos(l_nX, l_nY) {
mcFighter._x = l_nX;
mcFighter._y = l_nY;
}
function changeHP(l_nHP) {
nHP = nHP + l_nHP;
nHP = Math.max(nHP, 0);
nHP = Math.min(nHP, NUMBER_TOTAL_HP);
}
function lookDir(l_sDir, l_bForced) {
if (l_bForced == undefined) {
l_bForced = false;
}
if ((((oLevel.onLevel(mcFighter) && (!bSpecialActivated)) && (!bHurting)) && (!bAttacking)) || (l_bForced)) {
if (l_sDir == "Left") {
mcFighter._xscale = -100;
} else {
mcFighter._xscale = 100;
}
}
}
function setAnticipation() {
nTrueFrame = mcFighter.mcFighter._currentframe;
if (nTotalTrueFrame) {
}
if (nTrueFrame < nTotalTrueFrame) {
bIsStopped = true;
mcFighter.mcFighter.stop();
} else {
moveStopSound();
}
}
function checkAnticipation() {
nTrueFrame++;
if (isNaN(nTotalTrueFrame)) {
nTotalTrueFrame = 20;
}
if (isNaN(nTrueFrame)) {
nTrueFrame = 10;
}
if ((nTrueFrame >= nTotalTrueFrame) && (bIsStopped)) {
mcFighter.mcFighter.play();
bIsStopped = false;
moveStopSound();
}
}
function moveStopSound() {
var _local3;
switch (sState) {
case "Attack1" :
case "Attack2" :
case "CrouchAttack" :
case "AirAttack" :
_local3 = oProfile[sState];
break;
default :
_local3 = oProfile.SpecialMoves[nSpecialMove];
}
if (_local3.moveStartSound) {
_global.objSounds.playSound(_local3.moveStartSound, 100, 1, false);
}
}
function resetFall() {
nFallSpeed = Math.min(oProfile.nFallSpeed * 3, oProfile.nFallSpeedTotal);
nLateralMoveAir = 0;
}
function activateSpecial() {
var _local3 = oProfile.SpecialMoves[nSpecialMove];
switch (_local3.sType) {
case "Projectile" :
var _local4 = fighter.specialmoves.Projectile.create(mcFighter, _local3);
_local4.source = mcFighter;
break;
case "VProjectile" :
_local4 = fighter.specialmoves.Projectile.create(oOpponent.movieClip, _local3);
_local4.source = mcFighter;
break;
case "Fetcher" :
_local4 = fighter.specialmoves.Fetcher.create(mcFighter, _local3);
_local4.source = mcFighter;
break;
case "Screen" :
_local4 = fighter.specialmoves.Screen.create(mcFighter, _local3);
_local4.source = mcFighter;
break;
case "Teleport" :
fighter.specialmoves.Teleport.move(mcFighter, oOpponent.movieClip, _local3);
if (closeToEdge()) {
fighter.specialmoves.Teleport.move(mcFighter, oOpponent.movieClip, _local3);
fighter.specialmoves.Teleport.setCamera(oLevel);
}
break;
case "MoveStrike" :
mcFighter.mcFighter.stop();
bSpecialActivated = true;
nDistanceTravelled = 0;
break;
case "Possession" :
fighter.specialmoves.Possession.move(mcFighter, oOpponent.movieClip, _local3);
if (closeToEdge()) {
fighter.specialmoves.Possession.move(mcFighter, oOpponent.movieClip, _local3);
fighter.specialmoves.Possession.setCamera(oLevel);
}
AttackCollide();
}
if (_local3.moveSound) {
_global.objSounds.playSound(_local3.moveSound, 100, 1, false);
}
}
function hitResults(oMove) {
if (oMove.hitSound) {
_global.objSounds.playSound(oMove.hitSound, 100, 1, false);
}
var _local4 = oMove.nDamage;
if (mcFighter._x < oOpponent.movieClip._x) {
oOpponent.lookDir("Left", true);
} else {
oOpponent.lookDir("Right", true);
}
oOpponent.changeHP(-_local4);
changeHP(_local4);
oOpponent.recoil(oMove.nRecoilX, oMove.nRecoilMinX, oMove.nRecoilY, oMove.nRecoilMinY, oMove.nRecoilDelay);
if (oMove.bGrab) {
oOpponent.justHit = true;
}
}
function closeToEdge() {
if (((oLevel.leftEdge + ((oLevel.rightEdge - oLevel.leftEdge) * 0.2)) > mcFighter._x) || ((oLevel.rightEdge - ((oLevel.rightEdge - oLevel.leftEdge) * 0.2)) < mcFighter._x)) {
return(true);
}
return(false);
}
function act() {
bBlocking = false;
bCrouch = false;
var _local3;
var _local2;
while (aMoveList.length > 0) {
_local2 = aMoveList.shift();
this[_local2]();
}
mcFighter.gotoAndStop(sState);
}
function Idle() {
nLateralMove = 0;
nLateralMoveAir = 0;
bHurting = false;
}
function Crouch() {
bCrouch = true;
sState = "Crouch";
}
function Block() {
bBlocking = true;
sState = "Block";
}
function CrouchBlock() {
bBlocking = true;
sState = "CrouchBlock";
}
function MoveRight() {
if (mcFighter._xscale == 100) {
nLateralMove = oProfile.nMoveXSpeedOffence;
nLateralMoveAir = oProfile.nMoveXSpeedOffenceAir;
} else {
nLateralMove = oProfile.nMoveXSpeedDefence;
nLateralMoveAir = oProfile.nMoveXSpeedDefenceAir;
}
mcFighter._x = mcFighter._x + nLateralMove;
if (FighterCollide()) {
mcFighter._x = mcFighter._x - nLateralMove;
}
sState = "Move";
}
function MoveLeft() {
if (oLevel.onLevel(mcFighter)) {
if (mcFighter._xscale == -100) {
nLateralMove = -oProfile.nMoveXSpeedOffence;
nLateralMoveAir = -oProfile.nMoveXSpeedOffenceAir;
} else {
nLateralMove = -oProfile.nMoveXSpeedDefence;
nLateralMoveAir = -oProfile.nMoveXSpeedDefenceAir;
}
mcFighter._x = mcFighter._x + nLateralMove;
if (FighterCollide()) {
mcFighter._x = mcFighter._x - nLateralMove;
}
}
sState = "Move";
}
function JumpStraight() {
if (oLevel.onLevel(mcFighter) && (!bAttacking)) {
nLateralMove = 0;
nJumpRemaining = oProfile.nJumpTotal;
mcFighter._y = mcFighter._y - nJumpRemaining;
nJumpRemaining = nJumpRemaining - oProfile.nJumpDecrease;
bBlocking = false;
}
sState = "Jump";
}
function JumpLeft() {
if (oLevel.onLevel(mcFighter) && (!bAttacking)) {
MoveLeft();
nJumpRemaining = oProfile.nJumpTotal;
mcFighter._y = mcFighter._y - nJumpRemaining;
nJumpRemaining = nJumpRemaining - oProfile.nJumpDecrease;
bBlocking = false;
}
sState = "Jump";
}
function JumpRight() {
if (oLevel.onLevel(mcFighter) && (!bAttacking)) {
MoveRight();
nJumpRemaining = oProfile.nJumpTotal;
mcFighter._y = mcFighter._y - nJumpRemaining;
nJumpRemaining = nJumpRemaining - oProfile.nJumpDecrease;
bBlocking = false;
}
sState = "Jump";
}
function Airbourne() {
if (sState == "HoleReturn") {
HoleReturn();
} else if (!oLevel.onLevel(mcFighter)) {
if (nJumpRemaining > 0) {
mcFighter._y = mcFighter._y - nJumpRemaining;
nJumpRemaining = nJumpRemaining - oProfile.nJumpDecrease;
if (!getStateLock()) {
sState = "Jump";
}
} else {
nFallSpeed = nFallSpeed + oProfile.nFallSpeed;
mcFighter._y = mcFighter._y + Math.min(nFallSpeed, oProfile.nFallSpeedTotal);
if (oLevel.onLevel(mcFighter)) {
bLockState = false;
bAttacking = false;
sState = "Idle";
_global.objSounds.playSound("Land", 100, 1, false);
} else if (sState == "ReturnFall") {
ReturnFall();
} else if (oHoleManager.inHole()) {
if (!Death()) {
Hole();
}
} else if (!getStateLock()) {
sState = "Fall";
}
}
mcFighter._x = mcFighter._x + nLateralMoveAir;
} else {
nFallSpeed = 0;
if ((sState != "Hurt") && (!getStateLock())) {
sState = "Idle";
bLockState = false;
bAttacking = false;
oOpponent.justHit = false;
}
}
while (FighterCollide()) {
Reposition();
}
}
function Reposition() {
if (mcFighter._x < oOpponent.movieClip._x) {
mcFighter._x = mcFighter._x - oProfile.nMoveXSpeedDefence;
} else {
mcFighter._x = mcFighter._x + oProfile.nMoveXSpeedDefence;
}
}
function ReturnFall() {
mcFighter.gotoAndStop("Jump");
bLockState = true;
}
function Hurt() {
bHurting = true;
if ((!oLevel.onLevel(mcFighter)) || (!oRecoil.endRecoil())) {
oRecoil.update();
bLockState = true;
}
if (oHoleManager.inHole()) {
if (!Death()) {
Hole();
}
}
if (oRecoil.endRecoil()) {
bHurting = false;
bLockState = false;
sState = "Idle";
}
}
function HurtFall() {
bHurting = true;
if ((!oLevel.onLevel(mcFighter)) || (!oRecoil.endRecoil())) {
oRecoil.update();
}
if (oHoleManager.inHole()) {
if (!Death()) {
Hole();
}
} else if (oRecoil.endRecoil() && (oLevel.onLevel(mcFighter))) {
sState = "GetUp";
_global.objSounds.playSound("Fall", 100, 1, false);
mcFighter.gotoAndStop(sState);
bLockState = true;
}
}
function Hole() {
dispatchEvent({type:"death", target:this, bPlayer:bPlayer});
oOpponent.changeHP(oProfile.nFallDamage);
changeHP(-oProfile.nFallDamage);
if (bPlayer) {
oLevel.lockCamera = true;
_global.C.removeScore(1000, false);
removeScore(1000);
} else {
oOpponent.addFalls();
oOpponent.addScore(_global.C.addScore(1000));
}
if (!Death()) {
oHoleManager.setReturn();
HoleReturn();
sState = "HoleReturn";
bLockState = true;
bAttacking = false;
bJustHit = true;
} else {
_global.C.updateHud();
}
}
function Death() {
var _local3 = false;
if (nHP == 0) {
_local3 = true;
bLockState = true;
_global.C.battlewon = true;
sState = "Died";
}
return(_local3);
}
function GetUp() {
if (!getStateLock()) {
bHurting = false;
} else {
bHurting = true;
}
}
function HoleReturn() {
sState = "HoleReturn";
bLockState = true;
bHurting = false;
mcFighter.mcFighter.stop();
if (oHoleManager.manualCamera()) {
sState = "ReturnFall";
}
}
function FighterCollide() {
var _local2 = false;
if (oOpponent.movieClip.mcFighter.hitBody.hitTest(mcFighter.mcFighter.hitBody)) {
_local2 = true;
}
return(_local2);
}
function AttackCollide() {
var _local2 = false;
if (((!oOpponent.justHit) && (!oOpponent.hurting)) && (oOpponent.movieClip.mcFighter.hitBody.hitTest(mcFighter.mcFighter.hitAttack))) {
dispatchEvent({type:"attacked", target:this, bPlayer:bPlayer});
if (!oOpponent.blocking) {
_local2 = true;
dispatchEvent({type:"hit", target:this, bPlayer:bPlayer});
} else {
dispatchEvent({type:"block", target:this, bPlayer:bPlayer});
}
} else if (oOpponent.blocking) {
dispatchEvent({type:"block", target:this, bPlayer:bPlayer});
}
return(_local2);
}
function Attack1() {
switch (true) {
case !oLevel.onLevel(mcFighter) :
sState = "AirAttack";
break;
case bCrouch :
sState = "CrouchAttack";
break;
default :
sState = "Attack1";
}
nTotalTrueFrame = fighter.StrikeManagement.calculateAnticipation(nHP / NUMBER_TOTAL_HP, oProfile[sState].nAnticipation);
bLockState = true;
bAttacking = true;
checkAnticipation();
hit();
}
function Attack2() {
switch (true) {
case !oLevel.onLevel(mcFighter) :
sState = "AirAttack";
break;
case bCrouch :
sState = "CrouchAttack";
break;
default :
sState = "Attack2";
}
nTotalTrueFrame = fighter.StrikeManagement.calculateAnticipation(nHP / NUMBER_TOTAL_HP, oProfile[sState].nAnticipation);
bLockState = true;
bAttacking = true;
checkAnticipation();
hit();
}
function CrouchAttack() {
bLockState = true;
bAttacking = true;
checkAnticipation();
hit();
}
function AirAttack() {
if (!oLevel.onLevel(mcFighter)) {
nTotalTrueFrame = fighter.StrikeManagement.calculateAnticipation(nHP / NUMBER_TOTAL_HP, oProfile[sState].nAnticipation);
bLockState = true;
bAttacking = true;
hit();
} else {
bLockState = false;
sState = "Idle";
}
}
function SpecialMove() {
var _local2 = oProfile.SpecialMoves[nSpecialMove];
mcFighter.gotoAndStop(_local2.sAnim);
nTotalTrueFrame = fighter.StrikeManagement.calculateAnticipation(nHP / NUMBER_TOTAL_HP, _local2.nAnticipation);
checkAnticipation();
switch (_local2.sType) {
case "Projectile" :
case "VProjectile" :
case "Fetcher" :
case "Screen" :
break;
case "Strike" :
case "Teleport" :
case "Possession" :
hitSpecial(_local2);
break;
case "MoveStrike" :
if (!bSpecialActivated) {
break;
}
fighter.specialmoves.MoveStrike.Move(mcFighter, _local2);
nDistanceTravelled = nDistanceTravelled + _local2.nSpeed;
if (nDistanceTravelled >= _local2.nDistance) {
mcFighter.mcFighter.play();
bSpecialActivated = false;
} else if ((((oLevel.leftEdge + ((oLevel.rightEdge - oLevel.leftEdge) * 0.2)) > mcFighter._x) && (mcFighter._xscale == -100)) || (((oLevel.rightEdge - ((oLevel.rightEdge - oLevel.leftEdge) * 0.2)) < mcFighter._x) && (mcFighter._xscale == 100))) {
mcFighter.mcFighter.play();
bSpecialActivated = false;
}
hitSpecial(_local2);
if (!_local2.bThrough) {
break;
}
mcFighter.mcFighter.hitBody._name = "hit";
}
if (!bLockState) {
bLockState = true;
sState = "SpecialMove";
}
bAttacking = true;
}
function Win() {
oLevel.Victory(bPlayer);
if (oLevel.cameraRightPosition) {
mcFighter.gotoAndStop("Win");
if (mcFighter.mcFighter._currentframe == mcFighter.mcFighter._totalframes) {
mcFighter.mcFighter.stop();
mcFighter.mcFighter.prevFrame();
_global.C.setVictoryScreen(sFighter);
} else if (mcFighter.mcFighter._currentframe <= (mcFighter.mcFighter._totalframes - 2)) {
mcFighter.mcFighter.nextFrame();
mcFighter.mcFighter.play();
}
}
}
function getStateLock() {
if (bLockState) {
if (((bHurting && (oLevel.onLevel(mcFighter))) && (oRecoil.endRecoil())) && (sState != "GetUp")) {
bHurting = false;
bLockState = false;
bAttacking = false;
} else if ((((!bHurting) || (sState == "GetUp")) && (oLevel.onLevel(mcFighter))) && (mcFighter.mcFighter._currentframe == mcFighter.mcFighter._totalframes)) {
bLockState = false;
bAttacking = false;
}
}
return(bLockState);
}
function hit() {
if (AttackCollide()) {
hitResults(oProfile[sState]);
}
}
function hitSpecial(oMove) {
if (AttackCollide()) {
hitResults(oMove);
}
}
function recoil(l_nRecoilX, l_nRecoilMinX, l_nRecoilY, l_nRecoilMinY, l_nRecoilTime) {
var _local2 = 1 - (nHP / NUMBER_TOTAL_HP);
oRecoil = new fighter.Recoil(mcFighter, _local2, oProfile.nFallSpeedTotal);
if ((l_nRecoilY == 0) && ((!oLevel.onLevel(mcFighter)) || (closeToEdgeRecoil(l_nRecoilX * _local2)))) {
l_nRecoilY = 15;
}
oRecoil.setRecoil(l_nRecoilX, l_nRecoilMinX, l_nRecoilY, l_nRecoilMinY, l_nRecoilTime);
oRecoil.update();
if ((l_nRecoilY > 0) || (!oLevel.onLevel(mcFighter))) {
sState = "HurtFall";
} else {
sState = "Hurt";
}
bLockState = true;
mcFighter.gotoAndStop(sState);
}
function closeToEdgeRecoil(l_nRecoilX) {
var _local2 = false;
if (mcFighter._xscale == 100) {
mcFighter._x = mcFighter._x - l_nRecoilX;
_local2 = !oLevel.onLevel(mcFighter);
mcFighter._x = mcFighter._x + l_nRecoilX;
} else {
mcFighter._x = mcFighter._x + l_nRecoilX;
_local2 = !oLevel.onLevel(mcFighter);
mcFighter._x = mcFighter._x - l_nRecoilX;
}
return(_local2);
}
function get movieClip() {
return(mcFighter);
}
function set opponent(l_oOpponent) {
oOpponent = l_oOpponent;
//return(opponent);
}
function get opponent() {
return(oOpponent);
}
function get state() {
return(sState);
}
function set state(l_sState) {
sState = l_sState;
//return(state);
}
function get hurting() {
return(bHurting);
}
function get blocking() {
return(bBlocking);
}
function get isAttacking() {
return(bAttacking);
}
function get onLevel() {
return(oLevel.onLevel(mcFighter));
}
function set lockState(l_bLockState) {
bLockState = l_bLockState;
//return(__get__lockState());
}
function get justHit() {
return(bJustHit);
}
function set justHit(l_bJustHit) {
bJustHit = l_bJustHit;
//return(justHit);
}
function get profile() {
return(oProfile);
}
function get inHole() {
return(oHoleManager.inHole());
}
var NUMBER_TOTAL_HP = 200;
var aMoveList = new Array();
}
Symbol 1700 MovieClip [__Packages.mx.events.EventDispatcher] Frame 0
class mx.events.EventDispatcher
{
function EventDispatcher () {
}
static function _removeEventListener(queue, event, handler) {
if (queue != undefined) {
var _local4 = queue.length;
var _local1;
_local1 = 0;
while (_local1 < _local4) {
var _local2 = queue[_local1];
if (_local2 == handler) {
queue.splice(_local1, 1);
return(undefined);
}
_local1++;
}
}
}
static function initialize(object) {
if (_fEventDispatcher == undefined) {
_fEventDispatcher = new mx.events.EventDispatcher();
}
object.addEventListener = _fEventDispatcher.addEventListener;
object.removeEventListener = _fEventDispatcher.removeEventListener;
object.dispatchEvent = _fEventDispatcher.dispatchEvent;
object.dispatchQueue = _fEventDispatcher.dispatchQueue;
}
function dispatchQueue(queueObj, eventObj) {
var _local7 = "__q_" + eventObj.type;
var _local4 = queueObj[_local7];
if (_local4 != undefined) {
var _local5;
for (_local5 in _local4) {
var _local1 = _local4[_local5];
var _local3 = typeof(_local1);
if ((_local3 == "object") || (_local3 == "movieclip")) {
if (_local1.handleEvent != undefined) {
_local1.handleEvent(eventObj);
}
if (_local1[eventObj.type] != undefined) {
if (exceptions[eventObj.type] == undefined) {
_local1[eventObj.type](eventObj);
}
}
} else {
_local1.apply(queueObj, [eventObj]);
}
}
}
}
function dispatchEvent(eventObj) {
if (eventObj.target == undefined) {
eventObj.target = this;
}
this[eventObj.type + "Handler"](eventObj);
dispatchQueue(this, eventObj);
}
function addEventListener(event, handler) {
var _local3 = "__q_" + event;
if (this[_local3] == undefined) {
this[_local3] = new Array();
}
_global.ASSetPropFlags(this, _local3, 1);
_removeEventListener(this[_local3], event, handler);
this[_local3].push(handler);
}
function removeEventListener(event, handler) {
var _local2 = "__q_" + event;
_removeEventListener(this[_local2], event, handler);
}
static var _fEventDispatcher = undefined;
static var exceptions = {move:1, draw:1, load:1};
}
Symbol 1701 MovieClip [__Packages.level.HoleManagement] Frame 0
class level.HoleManagement
{
var oFighter, nFrames, sState, oLevel, __get__levelObj, __get__fighter;
function HoleManagement (l_oFighter) {
oFighter = l_oFighter;
}
function inHole() {
if (oFighter.movieClip._y > NUMBER_HOLE_SURFACE_Y) {
return(true);
}
return(false);
}
function manualCamera() {
nFrames++;
oFighter.lockState = true;
switch (sState) {
case "WaitBefore" :
if (nFrames >= NUMBER_DELAY_BEFORE_CAMERA) {
sState = "MoveCamera";
nFrames = 0;
}
break;
case "MoveCamera" :
oLevel.camera.state = "HoleReturn";
sState = "WaitAfter";
nFrames = 0;
break;
case "WaitAfter" :
if (nFrames >= NUMBER_DELAY_AFTER_CAMERA) {
sState = "Reactivate";
nFrames = 0;
}
break;
case "Reactivate" :
oFighter.movieClip._visible = true;
oLevel.camera.state = "Battle";
setLookDir();
return(true);
}
return(false);
}
function setReturn() {
oFighter.movieClip._x = getNewXPos();
oFighter.movieClip._y = NUMBER_HOLE_SKY_FALL_Y;
nFrames = 0;
oFighter.movieClip.gotoAndStop(1);
sState = "WaitBefore";
oFighter.resetFall();
oLevel.camera.state = "Wait";
}
function set levelObj(l_oLevel) {
oLevel = l_oLevel;
//return(__get__levelObj());
}
function getNewXPos() {
var _local3;
var _local4 = oLevel.rightEdge - oLevel.leftEdge;
var _local2;
if (oFighter.movieClip._x < oLevel.leftEdge) {
_local2 = 0.8;
} else if (oFighter.movieClip._x > oLevel.rightEdge) {
_local2 = 0.2;
} else {
_local2 = 0.5;
}
_local3 = oLevel.leftEdge + (_local4 * _local2);
return(_local3);
}
function setLookDir() {
if (oFighter.movieClip._x < oFighter.opponent.movieClip._x) {
oFighter.movieClip._xscale = 100;
} else {
oFighter.movieClip._xscale = -100;
}
}
function set fighter(l_oFighter) {
oFighter = l_oFighter;
//return(__get__fighter());
}
var NUMBER_HOLE_SURFACE_Y = 600;
var NUMBER_HOLE_SKY_FALL_Y = -100;
var NUMBER_DELAY_BEFORE_CAMERA = 10;
var NUMBER_DELAY_AFTER_CAMERA = 30;
}
Symbol 1702 MovieClip [__Packages.fighter.specialmoves.Projectile] Frame 0
class fighter.specialmoves.Projectile
{
function Projectile () {
}
static function create(l_mcFighter, oProjectile) {
var _local2 = l_mcFighter._parent;
var _local3 = _local2.getNextHighestDepth();
var _local1 = _local2.attachMovie(oProjectile.sProjId, "Proj" + _local3, _local3);
_local1._xscale = l_mcFighter._xscale;
positionProjectile(l_mcFighter, oProjectile, _local1);
_local1.setProjectile(oProjectile);
return(_local1);
}
static function positionProjectile(l_mcFighter, oProjectile, l_mcProj) {
if (l_mcProj._xscale == 100) {
l_mcProj._x = l_mcFighter._x + oProjectile.nWidth;
} else {
l_mcProj._x = l_mcFighter._x - oProjectile.nWidth;
}
if (oProjectile.bGround) {
l_mcProj._y = _global.C.yLevel + oProjectile.nHeight;
} else {
l_mcProj._y = l_mcFighter._y + oProjectile.nHeight;
}
}
}
Symbol 1703 MovieClip [__Packages.fighter.specialmoves.Fetcher] Frame 0
class fighter.specialmoves.Fetcher
{
function Fetcher () {
}
static function create(l_mcFighter, oProjectile) {
var _local2 = l_mcFighter._parent;
var _local3 = _local2.getNextHighestDepth();
var _local1 = _local2.attachMovie(oProjectile.sProjId, "Proj" + _local3, _local3);
positionProjectile(l_mcFighter, oProjectile, _local1);
_local1.setProjectile(oProjectile);
return(_local1);
}
static function positionProjectile(l_mcFighter, oProjectile, l_mcProj) {
if (l_mcProj._xscale == 100) {
l_mcProj._x = l_mcFighter._x + oProjectile.nWidth;
} else {
l_mcProj._x = l_mcFighter._x - oProjectile.nWidth;
}
if (oProjectile.bGround) {
l_mcProj._y = _global.C.yLevel + oProjectile.nHeight;
} else {
l_mcProj._y = l_mcFighter._y + oProjectile.nHeight;
}
}
}
Symbol 1704 MovieClip [__Packages.fighter.specialmoves.Screen] Frame 0
class fighter.specialmoves.Screen
{
function Screen () {
}
static function create(l_mcFighter, oProjectile) {
var _local2 = l_mcFighter._parent;
var _local3 = _local2.getNextHighestDepth();
var _local1 = _local2.attachMovie(oProjectile.sProjId, "Proj" + _local3, _local3);
positionProjectile(l_mcFighter, oProjectile, _local1);
_local1.setProjectile(oProjectile);
return(_local1);
}
static function positionProjectile(l_mcFighter, oProjectile, l_mcProj) {
l_mcProj._x = -300;
l_mcProj._y = -300;
}
}
Symbol 1705 MovieClip [__Packages.fighter.specialmoves.Teleport] Frame 0
class fighter.specialmoves.Teleport
{
function Teleport () {
}
static function move(l_mcFighter, l_mcOpponent, l_oMove) {
var _local1;
if (l_mcFighter._x < l_mcOpponent._x) {
l_mcFighter._xscale = -100;
_local1 = l_oMove.nDistance;
} else {
l_mcFighter._xscale = 100;
_local1 = -l_oMove.nDistance;
}
l_mcFighter._x = l_mcOpponent._x + _local1;
}
static function setCamera(oLevel) {
oLevel.camera.totalFrames = NUMBER_CAMERA_SPEED;
oLevel.camera.state = "Teleport";
}
static var NUMBER_CAMERA_SPEED = 3;
}
Symbol 1706 MovieClip [__Packages.fighter.specialmoves.Possession] Frame 0
class fighter.specialmoves.Possession
{
function Possession () {
}
static function move(l_mcFighter, l_mcOpponent, l_oMove) {
var _local1;
if (l_mcFighter._x > l_mcOpponent._x) {
l_mcFighter._xscale = -100;
_local1 = l_oMove.nDistance;
} else {
l_mcFighter._xscale = 100;
_local1 = -l_oMove.nDistance;
}
l_mcFighter._x = l_mcOpponent._x + _local1;
}
static function setCamera(oLevel) {
oLevel.camera.totalFrames = NUMBER_CAMERA_SPEED;
oLevel.camera.state = "Teleport";
}
static var NUMBER_CAMERA_SPEED = 3;
}
Symbol 1707 MovieClip [__Packages.fighter.StrikeManagement] Frame 0
class fighter.StrikeManagement
{
function StrikeManagement () {
}
static function calculateAnticipation(l_nPourcHP, l_nAnticipation) {
var _local1 = l_nAnticipation * l_nPourcHP;
if (isNaN(_local1) || (_local1 > 30)) {
_local1 = 20 * l_nPourcHP;
}
return(_local1);
}
}
Symbol 1708 MovieClip [__Packages.fighter.specialmoves.MoveStrike] Frame 0
class fighter.specialmoves.MoveStrike
{
function MoveStrike () {
}
static function Move(mcFighter, oMove) {
if (mcFighter._xscale == 100) {
mcFighter._x = mcFighter._x + oMove.nSpeed;
} else if (mcFighter._xscale == -100) {
mcFighter._x = mcFighter._x - oMove.nSpeed;
}
}
}
Symbol 1709 MovieClip [__Packages.fighter.Recoil] Frame 0
class fighter.Recoil
{
var mcFighter, nRecoilRatio, nFallSpeedTotal, nRecoilPos, nRecoilX, nRecoilY, nRecoilDelay, nRecoilTotal, nSingleRecoilX, aRecoilY;
function Recoil (l_mcFighter, l_nRecoilRatio, l_nFallSpeedTotal) {
mcFighter = l_mcFighter;
nRecoilRatio = l_nRecoilRatio;
nFallSpeedTotal = l_nFallSpeedTotal;
nRecoilPos = 0;
}
function update() {
mcFighter._x = mcFighter._x + getRecoilX();
mcFighter._y = mcFighter._y + getRecoilY();
nRecoilPos++;
}
function setRecoil(l_nRecoilX, l_nRecoilMinX, l_nRecoilY, l_nRecoilMinY, l_nRecoilDelay) {
nRecoilX = l_nRecoilMinX + ((l_nRecoilX - l_nRecoilMinX) * nRecoilRatio);
nRecoilY = l_nRecoilMinY + ((l_nRecoilY - l_nRecoilMinY) * nRecoilRatio);
var _local2;
if ((nRecoilX == 0) || (l_nRecoilX == 0)) {
_local2 = 1;
} else {
_local2 = nRecoilX / l_nRecoilX;
}
nRecoilDelay = Math.round(l_nRecoilDelay * _local2);
calculateRecoilX();
calculateRecoilY();
nRecoilTotal = nRecoilDelay;
}
function endRecoil() {
return(nRecoilPos >= nRecoilTotal);
}
function getRecoilX() {
var _local2;
if (nRecoilX > 0) {
nRecoilX = nRecoilX - nSingleRecoilX;
if (nRecoilX <= 0) {
nRecoilX = nSingleRecoilX;
}
if (mcFighter._xscale == 100) {
_local2 = -nSingleRecoilX;
} else {
_local2 = nSingleRecoilX;
}
}
return(_local2);
}
function getRecoilY() {
if (nRecoilPos >= nRecoilTotal) {
return(nFallSpeedTotal);
}
return(-aRecoilY[nRecoilPos]);
}
function calculateRecoilX() {
nSingleRecoilX = nRecoilX / nRecoilDelay;
}
function calculateRecoilY() {
aRecoilY = new Array();
var _local6 = nRecoilDelay;
var _local4 = Math.ceil(_local6 / 2);
var _local2;
var _local3;
var _local5 = nRecoilY / _local4;
_local2 = 0;
while (_local2 < _local4) {
aRecoilY[_local2] = 0;
_local2++;
}
_local2 = 0;
while (_local2 < _local4) {
_local3 = 0;
while (_local3 <= _local2) {
aRecoilY[_local3] = aRecoilY[_local3] + (_local5 / (_local2 + 1));
_local3++;
}
_local2++;
}
_local3 = _local4;
_local2 = _local4 - 1;
while (_local2 >= 0) {
aRecoilY[_local3] = -aRecoilY[_local2];
_local3++;
_local2--;
}
}
var NUMBER_RECOIL_TIME = 12;
}
Symbol 1710 MovieClip [__Packages.fighter.Player] Frame 0
class fighter.Player extends fighter.Fighter
{
var nHit, nSpecial, nCombos, nFalls, nScore, nTotalScore, bLastAttackCollided, mcFighter, oProfile, bPlayer, oLevel, oHoleManager, oOpponent, sState, aMoveList, bAttacking, nTrueFrame, bHurting, act, NUMBER_TOTAL_HP, nHP, getStateLock, nSpecialMove, sFighter;
function Player (l_sName, l_oLevel) {
super(l_sName, l_oLevel);
nHit = 0;
nSpecial = 0;
nCombos = 0;
nFalls = 0;
nScore = 0;
nTotalScore = 0;
bLastAttackCollided = true;
oControls = new fighter.Controls(mcFighter);
oCombo = new fighter.Combo(oProfile.SpecialMoves, this);
bPlayer = true;
}
function update() {
checkPause();
if (!_global.C.pause) {
if (_global.C.battlewon) {
if ((oLevel.onLevel(mcFighter) && (!oHoleManager.inHole())) && (oOpponent.inHole)) {
sState = "Win";
aMoveList.push(sState);
} else if (oHoleManager.inHole() || (oLevel.onLevel(mcFighter) && (!oOpponent.inHole))) {
sState = "Dead";
aMoveList.push(sState);
mcFighter.gotoAndStop("Idle");
} else {
aMoveList.push("Airbourne");
}
} else {
if (!bAttacking) {
nTrueFrame = 1;
}
if (bHurting) {
_global.C.resetCombo();
}
setActions();
}
act();
}
oControls.resetControls();
}
function acquirePlayer(l_oPlayer) {
nTotalScore = l_oPlayer.numberTotalScore;
}
function setPause(l_bPause) {
if (l_bPause) {
mcFighter.mcFighter.stop();
} else {
mcFighter.mcFighter.play();
}
}
function hitResults(oMove, l_bJustHit) {
super.hitResults(oMove);
if (oMove.bSpecial) {
nSpecial++;
} else {
nHit++;
}
if (!l_bJustHit) {
var _local5 = _global.C.addScore(oMove.nPointsWin, oMove.bSpecial);
nScore = nScore + _local5;
}
bLastAttackCollided = true;
}
function addScore(l_nAddScore) {
nScore = nScore + l_nAddScore;
}
function removeScore(l_nRemoveScore) {
nScore = nScore - l_nRemoveScore;
nScore = Math.max(0, nScore);
}
function getHPPourc() {
return(nHP / NUMBER_TOTAL_HP);
}
function addFalls() {
nFalls++;
}
function addCombos() {
nCombos++;
}
function Idle() {
super.Idle();
if (!bLastAttackCollided) {
bLastAttackCollided = true;
_global.C.resetCombo();
}
}
function checkPause() {
if (((!_global.C.battlewon) && (oControls.getKey("Pause"))) && (_global.C.canPause)) {
_global.C.changePause();
}
}
function getBlocking(l_sDir) {
if (opponentCloseAttack() || (projectileClose())) {
if (((l_sDir == "Left") && (mcFighter._x < oOpponent.movieClip._x)) || ((l_sDir == "Right") && (mcFighter._x > oOpponent.movieClip._x))) {
return(true);
}
}
return(false);
}
function opponentCloseAttack() {
var _local2 = Math.abs(oOpponent.movieClip._x - mcFighter._x) < 200;
return(_local2);
}
function projectileClose() {
var _local3 = mcFighter._parent;
var _local2;
var _local4 = false;
for (_local2 in _local3) {
if ((_local2.substring(0, 4) == "Proj") && (Math.abs(mcFighter._x - _local3[_local2]._x) <= 100)) {
_local4 = true;
}
}
return(_local4);
}
function setActions() {
if ((sState != "HurtFall") || (sState == "GetUp")) {
aMoveList.push("Airbourne");
}
if (!getStateLock()) {
bHurting = false;
if (oLevel.onLevel(mcFighter)) {
oLevel.lockCamera = false;
if (!oControls.getAKey()) {
aMoveList.push("Idle");
mcFighter.gotoAndStop("Idle");
}
tryEasterEgg();
if (oControls.getKey("R")) {
oCombo.addCommand("R");
if (oControls.getKey("Jump")) {
aMoveList.push("JumpRight");
} else if (getBlocking("Right")) {
if (oControls.getKey("Crouch")) {
aMoveList.push("CrouchBlock");
} else {
aMoveList.push("Block");
}
} else {
aMoveList.push("MoveRight");
}
} else if (oControls.getKey("L")) {
oCombo.addCommand("L");
if (oControls.getKey("Jump")) {
aMoveList.push("JumpLeft");
} else if (getBlocking("Left")) {
if (oControls.getKey("Crouch")) {
aMoveList.push("CrouchBlock");
} else {
aMoveList.push("Block");
}
} else {
aMoveList.push("MoveLeft");
}
} else if (oControls.getKey("Jump")) {
oCombo.addCommand("U");
aMoveList.push("JumpStraight");
} else if (oControls.getKey("Crouch")) {
oCombo.addCommand("D");
aMoveList.push("Crouch");
}
}
var _local2;
if (oControls.getKey("Attack1") && (oControls.getKey("Attack2"))) {
oCombo.addCommand("12");
nSpecialMove = oCombo.checkSpecialMove("12");
if (nSpecialMove == undefined) {
aMoveList.push("Attack1");
bLastAttackCollided = false;
} else {
aMoveList.push("SpecialMove");
bLastAttackCollided = false;
}
} else if (oControls.getKey("Attack1")) {
oCombo.addCommand("1");
nSpecialMove = oCombo.checkSpecialMove("1");
if (nSpecialMove == undefined) {
aMoveList.push("Attack1");
bLastAttackCollided = false;
} else {
aMoveList.push("SpecialMove");
bLastAttackCollided = false;
}
} else if (oControls.getKey("Attack2")) {
oCombo.addCommand("2");
nSpecialMove = oCombo.checkSpecialMove("2");
if (nSpecialMove == undefined) {
aMoveList.push("Attack2");
bLastAttackCollided = false;
} else {
aMoveList.push("SpecialMove");
bLastAttackCollided = false;
}
}
oCombo.addWait("");
oOpponent.justHit = false;
} else {
switch (sState) {
case "Attack1" :
case "Attack2" :
case "SpecialMove" :
case "AirAttack" :
case "CrouchAttack" :
case "Hurt" :
case "HurtFall" :
aMoveList.push(sState);
}
}
if (oLevel.onLevel(mcFighter)) {
oControls.resetControls();
}
}
function tryEasterEgg() {
if (oControls.getKey("D")) {
oCombo.addCommand("Letter D");
} else if (oControls.getKey("F")) {
oCombo.addCommand("Letter F");
} else if (oControls.getKey("S")) {
oCombo.addCommand("Letter S");
} else if (oControls.getKey("U")) {
oCombo.addCommand("Letter U");
if (oCombo.isEasterEgg) {
_global.C.unlockAllMoves(sFighter);
}
}
}
function get onLevel() {
return(oLevel.onLevel(mcFighter));
}
function get numberHits() {
return(nHit);
}
function get numberSpecials() {
return(nSpecial);
}
function get numberFalls() {
return(nFalls);
}
function get numberScore() {
return(nScore);
}
function set numberScore(l_nScore) {
nScore = l_nScore;
//return(numberScore);
}
function get numberAddTotalScore() {
nTotalScore = nTotalScore + nScore;
return(nTotalScore);
}
function get numberTotalScore() {
return(nTotalScore);
}
function get numberCombos() {
return(nCombos);
}
var oControls = new Object();
var oCombo = new Object();
}
Symbol 1711 MovieClip [__Packages.fighter.Controls] Frame 0
class fighter.Controls
{
var mcFighter, bJump, bAttack1, bAttack2, bPause, keyListen;
function Controls (l_mcFighter) {
mcFighter = l_mcFighter;
setKeyListener();
bJump = false;
bAttack1 = false;
bAttack2 = false;
bPause = false;
}
function resetControls() {
bJump = keyListen.Jump;
bAttack1 = keyListen.Attack1;
bAttack2 = keyListen.Attack2;
bPause = keyListen.Pause;
}
function getAKey() {
if (((((keyListen.Attack1 || (keyListen.Attack2)) || (keyListen.Jump)) || (keyListen.Crouch)) || (keyListen.L)) || (keyListen.R)) {
return(true);
}
return(false);
}
function getKey(l_sKey) {
var _local2 = keyListen[l_sKey];
if (_local2) {
switch (l_sKey) {
case "Attack1" :
case "Attack2" :
case "Jump" :
case "Pause" :
_local2 = !this["b" + l_sKey];
}
}
return(_local2);
}
function setKeyListener() {
mcFighter.KeyListener = new com.sarbakan.utils.KeyManager();
keyListen = mcFighter.KeyListener;
keyListen.addKeyListener(39, "R");
keyListen.addKeyListener(37, "L");
keyListen.addKeyListener(40, "Crouch");
keyListen.addKeyListener(38, "Jump");
keyListen.addKeyListener(67, "Attack1");
keyListen.addKeyListener(32, "Attack2");
keyListen.addKeyListener(68, "D");
keyListen.addKeyListener(70, "F");
keyListen.addKeyListener(83, "S");
keyListen.addKeyListener(85, "U");
}
}
Symbol 1712 MovieClip [__Packages.com.sarbakan.utils.KeyManager] Frame 0
class com.sarbakan.utils.KeyManager
{
var oKeyList, oKeyListener;
function KeyManager () {
mx.transitions.OnEnterFrameBeacon.init();
MovieClip.addListener(this);
oKeyList = new Object();
oKeyListener = new Object();
Key.addListener(oKeyListener);
}
function onEnterFrame() {
setKey();
}
function addKeyListener(l_nKeyCode, l_sKeyName) {
oKeyList[l_sKeyName] = new Object();
oKeyList[l_sKeyName].nKeyCode = l_nKeyCode;
this[l_sKeyName] = false;
}
function setKeyUp() {
var _local2;
for (_local2 in oKeyList) {
if (Key.getCode() == oKeyList[_local2].nKeyCode) {
this[_local2] = false;
break;
}
}
}
function setKeyDown() {
var _local2;
for (_local2 in oKeyList) {
if (Key.getCode() == oKeyList[_local2].nKeyCode) {
this[_local2] = true;
break;
}
}
}
function setKey() {
var _local2;
for (_local2 in oKeyList) {
if (Key.isDown(oKeyList[_local2].nKeyCode)) {
this[_local2] = true;
} else {
this[_local2] = false;
}
}
}
}
Symbol 1713 MovieClip [__Packages.mx.transitions.OnEnterFrameBeacon] Frame 0
class mx.transitions.OnEnterFrameBeacon
{
function OnEnterFrameBeacon () {
}
static function init() {
var _local4 = _global.MovieClip;
if (!_root.__OnEnterFrameBeacon) {
mx.transitions.BroadcasterMX.initialize(_local4);
var _local3 = _root.createEmptyMovieClip("__OnEnterFrameBeacon", 9876);
_local3.onEnterFrame = function () {
_global.MovieClip.broadcastMessage("onEnterFrame");
};
}
}
static var version = "1.1.0.52";
}
Symbol 1714 MovieClip [__Packages.mx.transitions.BroadcasterMX] Frame 0
class mx.transitions.BroadcasterMX
{
var _listeners;
function BroadcasterMX () {
}
static function initialize(o, dontCreateArray) {
if (o.broadcastMessage != undefined) {
delete o.broadcastMessage;
}
o.addListener = mx.transitions.BroadcasterMX.prototype.addListener;
o.removeListener = mx.transitions.BroadcasterMX.prototype.removeListener;
if (!dontCreateArray) {
o._listeners = new Array();
}
}
function addListener(o) {
removeListener(o);
if (broadcastMessage == undefined) {
broadcastMessage = mx.transitions.BroadcasterMX.prototype.broadcastMessage;
}
return(_listeners.push(o));
}
function removeListener(o) {
var _local2 = _listeners;
var _local3 = _local2.length;
while (_local3--) {
if (_local2[_local3] == o) {
_local2.splice(_local3, 1);
if (!_local2.length) {
broadcastMessage = undefined;
}
return(true);
}
}
return(false);
}
function broadcastMessage() {
var _local5 = String(arguments.shift());
var _local4 = _listeners.concat();
var _local6 = _local4.length;
var _local3 = 0;
while (_local3 < _local6) {
_local4[_local3][_local5].apply(_local4[_local3], arguments);
_local3++;
}
}
static var version = "1.1.0.52";
}
Symbol 1715 MovieClip [__Packages.fighter.Combo] Frame 0
class fighter.Combo
{
var oFighter, nTotalMoves;
function Combo (l_aSpecialMoves, l_oFighter) {
aSpecialMoves = l_aSpecialMoves;
oFighter = l_oFighter;
oCommandList = new fighter.CommandList(l_oFighter.movieClip);
nTotalMoves = aSpecialMoves.length;
}
function addCommand(l_sCommand) {
oCommandList.addCommand(l_sCommand);
}
function addWait() {
oCommandList.addWait();
}
function checkSpecialMove(l_sMoveButton) {
oCommandList.trimCommands();
var _local5 = oCommandList.getLogs;
var _local3;
var _local7 = _local5.length;
var _local6;
var _local4;
_local3 = 0;
while (_local3 < nTotalMoves) {
if (_global.C.moveIsLocked(_global.C.player, _local3)) {
} else {
_local6 = aSpecialMoves[_local3].aCommands.length;
if (compareSpecialMove(aSpecialMoves[_local3].aCommands, _local5)) {
if (((!aSpecialMoves[_local3].bAerial) && (oFighter.onLevel)) || (aSpecialMoves[_local3].bAerial && (!oFighter.onLevel))) {
_local4 = _local3;
break;
}
}
}
_local3++;
}
return(_local4);
}
function compareSpecialMove(l_aMove, l_aLog) {
var _local2;
var _local4 = l_aLog.length - 1;
var _local6;
_local2 = l_aMove.length - 1;
while (_local2 >= 0) {
if (l_aMove[_local2].substr(0, 1) != l_aLog[_local4][0]) {
return(false);
}
if ((_local2 != 0) && (l_aLog[_local2][1] >= NUMBER_TIME_HOLD)) {
return(false);
}
if ((_local2 == 0) && (l_aMove[_local2].substr(1, 1) == "H")) {
_local6 = l_aMove[_local2].substr(1, 1).length;
if (l_aLog[_local4][1] < (_local6 * NUMBER_TIME_HOLD)) {
return(false);
}
}
_local4--;
_local2--;
}
return(true);
}
function get isEasterEgg() {
var _local3 = Array(Array("Letter D", 1), Array("Letter F", 1), Array("Letter S", 1), Array("Letter U", 1));
var _local2 = oCommandList.getLogs.slice(-4);
return(_local2.toString() == _local3.toString());
}
var NUMBER_TIME_HOLD = 3;
var aSpecialMoves = new Array();
var oCommandList = new Object();
}
Symbol 1716 MovieClip [__Packages.fighter.CommandList] Frame 0
class fighter.CommandList
{
var mcFighter, nWait, nHeld;
function CommandList (l_mcFighter) {
mcFighter = l_mcFighter;
nWait = 0;
nHeld = 0;
}
function addCommand(l_sCommand) {
nWait = 0;
var _local2 = aCommandLog[aCommandLog.length - 1][0];
if (_local2 == "") {
aCommandLog.pop();
}
l_sCommand = getSideButton(l_sCommand);
if (getButtonHeld(_local2, l_sCommand)) {
aCommandLog[aCommandLog.length - 1][1]++;
} else if ((((_local2 != l_sCommand) || (_local2 == "2")) || (_local2 == "1")) || (_local2 == "12")) {
aCommandLog.push(Array(l_sCommand, 1));
}
while (aCommandLog.length > NUMBER_LOG_SIZE) {
aCommandLog.shift();
}
}
function trimCommands() {
return(aCommandLog);
}
function addWait() {
if (nWait == NUMBER_WAIT_FOR_HOLD) {
addCommand("");
nWait++;
} else if (nWait <= NUMBER_WAIT_FOR_HOLD) {
nWait++;
}
}
function getSideButton(l_sCommand) {
if (l_sCommand == "R") {
if (mcFighter._xscale == 100) {
l_sCommand = "F";
} else {
l_sCommand = "B";
}
} else if (l_sCommand == "L") {
if (mcFighter._xscale == -100) {
l_sCommand = "F";
} else {
l_sCommand = "B";
}
}
return(l_sCommand);
}
function getButtonHeld(l_sLastcommand, l_sCommand) {
if ((l_sLastcommand.substring(0, 1) == l_sCommand) && (l_sCommand != "")) {
if (nHeld == NUMBER_TIME_FOR_HELD) {
nHeld = 0;
return(true);
}
nHeld++;
} else {
nHeld = 0;
}
return(false);
}
function get getLogs() {
return(aCommandLog);
}
var NUMBER_LOG_SIZE = 20;
var NUMBER_MOVE_SENSIBILITY = 2;
var NUMBER_WAIT_FOR_HOLD = 2;
var NUMBER_TIME_FOR_HELD = 3;
var aCommandLog = new Array();
}
Symbol 1717 MovieClip [__Packages.fighter.Opponent] Frame 0
class fighter.Opponent extends fighter.Fighter
{
var sCurrentAction, oDataAI, oProfile, bPlayer, mcFighter, oLevel, oHoleManager, sState, aMoveList, act, oAI, bIsStopped, oOpponent, sCurrentRange, getStateLock, bLockState, nSpecialMove, bBlocking;
function Opponent (l_sName, l_oLevel) {
super(l_sName, l_oLevel);
sCurrentAction = "None";
oDataAI = oProfile.AI;
bPlayer = false;
mcFighter._xscale = -100;
}
function update() {
if (!_global.C.pause) {
if (_global.C.battlewon) {
if (oLevel.onLevel(mcFighter) && (!oHoleManager.inHole())) {
sCurrentAction = "Win";
sState = sCurrentAction;
} else if (oHoleManager.inHole()) {
sCurrentAction = "Dead";
sState = "Idle";
} else {
aMoveList.push("Airbourne");
}
} else {
getAction();
}
aMoveList.push(sCurrentAction);
act();
if ((sCurrentAction != "Dead") && (sCurrentAction != "Win")) {
if ((((sState == "HoleReturn") || (sState == "ReturnFall")) || (sState == "Hurt")) || (sState == "HurtFall")) {
sCurrentAction = sState;
}
if (sCurrentAction == "None") {
oAI.nextDecision();
} else {
oAI.update();
}
}
}
}
function setPause(l_bPause) {
if (l_bPause) {
mcFighter.mcFighter.stop();
} else if (!bIsStopped) {
mcFighter.mcFighter.play();
}
}
function hitResults(oMove, l_bJustHit) {
super.hitResults(oMove);
if (!l_bJustHit) {
_global.C.removeScore(oMove.nPointsLose);
}
}
function setAI(oPlayer) {
oAI = new ai.AI(oPlayer, this, oLevel);
}
function getRange(l_sType) {
var _local2 = oOpponent.movieClip;
if (Math.abs(_local2._x - mcFighter._x) >= oDataAI[("nLong" + l_sType) + "Range"]) {
sCurrentRange = "Long";
} else if (Math.abs(_local2._x - mcFighter._x) >= oDataAI[("nMedium" + l_sType) + "Range"]) {
sCurrentRange = "Medium";
} else {
sCurrentRange = "Short";
}
return(sCurrentRange);
}
function executeAI(l_sAction) {
sState = (sCurrentAction = this["AI" + l_sAction]());
}
function getAction() {
if ((sState != "HurtFall") || (sState == "GetUp")) {
aMoveList.push("Airbourne");
}
aMoveList.push("FighterCollide");
if (((sState == "Hurt") || (sState == "HurtFall")) || (sState == "GetUp")) {
sCurrentAction = sState;
} else if (sState == "Idle") {
sCurrentAction = "None";
}
var _local2 = sCurrentRange;
switch (sCurrentAction) {
case "MoveLeft" :
if (mcFighter._xscale == -100) {
if ((_local2 != sCurrentRange) || (fearEdge("Left", "Move"))) {
sCurrentAction = "None";
}
} else if ((sCurrentRange == "Long") || (fearEdge("Left", "Move"))) {
sCurrentAction = "None";
}
break;
case "MoveRight" :
if (mcFighter._xscale == 100) {
if ((_local2 != sCurrentRange) || (fearEdge("Right", "Move"))) {
sCurrentAction = "None";
}
} else if ((sCurrentRange == "Long") || (fearEdge("Right", "Move"))) {
sCurrentAction = "None";
}
break;
case "Attack1" :
case "Attack2" :
case "SpecialMove" :
case "CrouchAttack" :
if (mcFighter.mcFighter._currentframe != mcFighter.mcFighter._totalframes) {
break;
}
getStateLock();
sCurrentAction = "None";
oOpponent.justHit = false;
}
}
function FighterCollide() {
var _local2 = super.FighterCollide();
return(_local2);
}
function fearEdge(sDir, sType) {
var _local3;
if (sDir == "Left") {
mcFighter._x = mcFighter._x - oDataAI["nFearEdge" + sType];
} else if (sDir == "Right") {
mcFighter._x = mcFighter._x + oDataAI["nFearEdge" + sType];
} else {
return(false);
}
_local3 = !oLevel.onLevel(mcFighter);
if (sDir == "Left") {
mcFighter._x = mcFighter._x + oDataAI["nFearEdge" + sType];
} else {
mcFighter._x = mcFighter._x - oDataAI["nFearEdge" + sType];
}
return(_local3);
}
function AIIdle() {
var _local2;
if (!oLevel.onLevel(mcFighter)) {
_local2 = "Wait";
}
return(_local2);
}
function AIMoveTowards() {
var _local2;
if (!oLevel.onLevel(mcFighter)) {
_local2 = "Wait";
} else {
var _local3;
if (mcFighter._xscale == 100) {
_local3 = "Right";
} else {
_local3 = "Left";
}
if (fearEdge(_local3, "Move")) {
_local2 = "None";
} else {
var _local4 = mcFighter._x;
if (_local3 == "Right") {
mcFighter._x = mcFighter._x + oProfile.nMoveXSpeedOffence;
} else {
mcFighter._x = mcFighter._x - oProfile.nMoveXSpeedOffence;
}
if (FighterCollide()) {
_local2 = "Wait";
} else {
_local2 = "Move" + _local3;
}
mcFighter._x = _local4;
}
}
return(_local2);
}
function AIMoveAway() {
var _local2;
if (!oLevel.onLevel(mcFighter)) {
_local2 = "Wait";
} else {
var _local3;
if (mcFighter._xscale == 100) {
_local3 = "Left";
} else {
_local3 = "Right";
}
if (fearEdge(_local3, "Move")) {
_local2 = "None";
} else {
_local2 = "Move" + _local3;
}
}
return(_local2);
}
function AIWait() {
return("Wait");
}
function AIAttack1() {
var _local1;
_local1 = "Attack1";
return(_local1);
}
function AIAttack2() {
var _local1;
_local1 = "Attack2";
return(_local1);
}
function AICrouch() {
var _local1;
_local1 = "Crouch";
return(_local1);
}
function AICrouchAttack() {
var _local2;
bLockState = true;
_local2 = "CrouchAttack";
return(_local2);
}
function AISpecialMove() {
var _local5;
var _local3 = false;
var _local4;
switch (_global.C.difficulty) {
case "Scary" :
default :
_local4 = 0;
// unexpected jump
case "Frightening" :
_local4 = 1;
// unexpected jump
case "SpineChilling" :
_local4 = 2;
// unexpected jump
case "Apocalyptic" :
}
_local4 = 3;
do {
nSpecialMove = Math.floor(Math.random() * oProfile.SpecialMoves.length);
if (_local4 >= oProfile.SpecialMoves[nSpecialMove].nDifficulty) {
_local3 = true;
}
} while (!_local3);
_local5 = "SpecialMove";
return(_local5);
}
function AIProjectile() {
var _local4;
var _local2;
var _local3 = new Array();
for (_local2 in oProfile.SpecialMoves) {
if (oProfile.SpecialMoves[_local2].sType == "Projectile") {
_local3.push(_local2);
}
}
var _local5 = Math.floor(Math.random() * _local3.length);
_local4 = "SpecialMove";
nSpecialMove = _local3[_local5];
return(_local4);
}
function AIJumpTowards() {
var _local2;
if (!oLevel.onLevel(mcFighter)) {
_local2 = "Wait";
} else {
var _local3;
if (mcFighter._xscale == -100) {
_local3 = "Left";
} else {
_local3 = "Right";
}
if (fearEdge(_local3, "Jump")) {
_local2 = "None";
} else {
_local2 = "Jump" + _local3;
}
}
return(_local2);
}
function AIJumpAway() {
var _local2;
if (!oLevel.onLevel(mcFighter)) {
_local2 = "Wait";
} else {
var _local3;
if (mcFighter._xscale == 100) {
_local3 = "Left";
} else {
_local3 = "Right";
}
if (fearEdge(_local3, "Jump")) {
_local2 = "None";
} else {
_local2 = "Jump" + _local3;
}
}
return(_local2);
}
function AIBlock() {
var _local2;
_local2 = "Block";
mcFighter.gotoAndStop(_local2);
bBlocking = true;
return(_local2);
}
}
Symbol 1718 MovieClip [__Packages.ai.AI] Frame 0
class ai.AI
{
var nMaxDecisionCount, nRemainingAttitudeTime, nBlockProb, sAttitude, oPlayer, oOpponent, oDecisionMaker, addEventListener, nFear, nBloodLust, nBoredom, nCalm, nInsecure, dispatchEvent, nDifficultyblockMulti, sCurrentDecision;
function AI (l_oPlayer, l_oOpponent, l_oHud) {
mx.events.EventDispatcher.initialize(this);
nMaxDecisionCount = 0;
nRemainingAttitudeTime = 0;
Init(l_oPlayer, l_oOpponent, l_oHud);
InitEmotions();
nBlockProb = 0;
setBlockProb();
sAttitude = "Neutral";
}
function Init(l_oPlayer, l_oOpponent, l_oHud) {
oPlayer = l_oPlayer;
oOpponent = l_oOpponent;
oDecisionMaker = new ai.DecisionMaker();
oDecisionMaker.setController(this);
oPlayer.addEventListener("hit", mx.utils.Delegate.create(this, this["reactTo" + _global.C.difficulty]));
oPlayer.addEventListener("block", mx.utils.Delegate.create(this, this["reactTo" + _global.C.difficulty]));
oPlayer.addEventListener("death", mx.utils.Delegate.create(this, this["reactTo" + _global.C.difficulty]));
oPlayer.addEventListener("attacked", mx.utils.Delegate.create(this, reactToAttack));
oOpponent.addEventListener("hit", mx.utils.Delegate.create(this, this["reactTo" + _global.C.difficulty]));
oOpponent.addEventListener("block", mx.utils.Delegate.create(this, this["reactTo" + _global.C.difficulty]));
oOpponent.addEventListener("death", mx.utils.Delegate.create(this, this["reactTo" + _global.C.difficulty]));
addEventListener("timePasses", mx.utils.Delegate.create(this, this["reactTo" + _global.C.difficulty]));
}
function InitEmotions() {
switch (_global.C.difficulty) {
case "Scary" :
default :
nFear = 4;
nBloodLust = -3;
nBoredom = 5;
nCalm = -5;
nInsecure = 4;
// unexpected jump
case "Frightening" :
nFear = 0;
nBloodLust = 0;
nBoredom = -2;
nCalm = 0;
nInsecure = 0;
// unexpected jump
case "Spine-Chilling" :
nFear = 0;
nBloodLust = 3;
nBoredom = -2;
nCalm = 0;
nInsecure = 0;
// unexpected jump
case "Apocalyptic" :
}
nFear = -4;
nBloodLust = 7;
nBoredom = -5;
nCalm = 8;
nInsecure = -5;
}
function update() {
changeAttitude();
if (((nMaxDecisionCount <= 0) && (!oOpponent.getStateLock())) && (oOpponent.state != "ReturnFall")) {
dispatchEvent({type:"timePasses"});
this[("set" + sAttitude) + "DecisionList"]();
nMaxDecisionCount--;
} else if (nMaxDecisionCount > 0) {
nMaxDecisionCount--;
}
}
function setBlockProb() {
switch (_global.C.difficulty) {
case "Scary" :
default :
nDifficultyblockMulti = 0.2;
// unexpected jump
case "Frightening" :
nDifficultyblockMulti = 0.8;
// unexpected jump
case "SpineChilling" :
nDifficultyblockMulti = 1.4;
// unexpected jump
case "Apocalyptical" :
}
nDifficultyblockMulti = 2.2;
}
function setDecision(l_sDecision) {
if (sCurrentDecision != l_sDecision) {
sCurrentDecision = l_sDecision;
return(true);
}
return(false);
}
function nextDecision() {
this[("set" + sAttitude) + "DecisionList"]();
}
function changeAttitude(l_sNewAttitude) {
if (l_sNewAttitude == undefined) {
if ((--nRemainingAttitudeTime) <= 0) {
dispatchEvent({type:"timePasses", target:this});
var _local2 = Math.ceil(Math.random() * 100);
if (_local2 <= 5) {
switch (_local2) {
case 1 :
sAttitude = "Agressive";
nBlockProb = 10 * nDifficultyblockMulti;
break;
case 2 :
sAttitude = "Passive";
nBlockProb = 15 * nDifficultyblockMulti;
break;
case 3 :
sAttitude = "Defensive";
nBlockProb = 25 * nDifficultyblockMulti;
break;
case 4 :
sAttitude = "HightenedSenses";
nBlockProb = 25 * nDifficultyblockMulti;
break;
default :
sAttitude = "Neutral";
nBlockProb = 15 * nDifficultyblockMulti;
}
}
switch (true) {
case (nBloodLust > nFear) && (nBloodLust >= nCalm) :
sAttitude = "Agressive";
nBlockProb = 10 * nDifficultyblockMulti;
break;
case nBoredom >= nFear :
sAttitude = "Passive";
nBlockProb = 15 * nDifficultyblockMulti;
break;
case nInsecure > nBoredom :
sAttitude = "Defensive";
nBlockProb = 25 * nDifficultyblockMulti;
break;
case nCalm > nInsecure :
sAttitude = "HightenedSenses";
nBlockProb = 25 * nDifficultyblockMulti;
break;
default :
sAttitude = "Neutral";
nBlockProb = 15 * nDifficultyblockMulti;
}
nRemainingAttitudeTime = 150;
}
} else {
sAttitude = l_sNewAttitude;
}
}
function setNeutralDecisionList() {
oDecisionMaker.clearDecisionList();
oDecisionMaker.addDecision(new ai.actionlist.DecisionSpecialMove(oOpponent, 0.75));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack2(oOpponent, 0.75));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack1(oOpponent, 0.75));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouchAttack(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouch(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpTowards(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpAway(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveTowards(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveAway(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionIdle(oOpponent));
setDecision(oDecisionMaker.makeDecision());
}
function setPassiveDecisionList() {
oDecisionMaker.clearDecisionList();
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack2(oOpponent, 0.33));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack1(oOpponent, 0.2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouchAttack(oOpponent, 0.2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouch(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpTowards(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpAway(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveTowards(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveAway(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionIdle(oOpponent));
setDecision(oDecisionMaker.makeDecision());
}
function setDefensiveDecisionList() {
oDecisionMaker.clearDecisionList();
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpAway(oOpponent, 2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveAway(oOpponent, 2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouch(oOpponent, 0.75));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveTowards(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpTowards(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionSpecialMove(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack2(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack1(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouchAttack(oOpponent, 0.33));
oDecisionMaker.addDecision(new ai.actionlist.DecisionIdle(oOpponent));
setDecision(oDecisionMaker.makeDecision());
}
function setAgressiveDecisionList() {
oDecisionMaker.clearDecisionList();
oDecisionMaker.addDecision(new ai.actionlist.DecisionSpecialMove(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack2(oOpponent, 2.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack1(oOpponent, 2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouchAttack(oOpponent, 1));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouch(oOpponent, 0.75));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpTowards(oOpponent, 1.25));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpAway(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveTowards(oOpponent, 2.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveAway(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionIdle(oOpponent));
setDecision(oDecisionMaker.makeDecision());
}
function setHightenedSensesDecisionList() {
oDecisionMaker.clearDecisionList();
oDecisionMaker.addDecision(new ai.actionlist.DecisionSpecialMove(oOpponent, 2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack2(oOpponent, 2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionAttack1(oOpponent, 2));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouchAttack(oOpponent, 1.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionCrouch(oOpponent, 0.75));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpTowards(oOpponent, 1.25));
oDecisionMaker.addDecision(new ai.actionlist.DecisionJumpAway(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveTowards(oOpponent, 2.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionMoveAway(oOpponent, 0.5));
oDecisionMaker.addDecision(new ai.actionlist.DecisionIdle(oOpponent));
setDecision(oDecisionMaker.makeDecision());
}
function reactToScary(l_oArg) {
switch (l_oArg.type) {
case "hit" :
if (l_oArg.bPlayer) {
nFear = nFear + 4;
nBoredom++;
nBloodLust = nBloodLust - 2;
nInsecure = nInsecure + 2;
nCalm = nCalm - 4;
} else {
nBloodLust = nBloodLust + 2;
nInsecure--;
nFear--;
nBoredom--;
}
break;
case "block" :
if (l_oArg.bPlayer) {
nInsecure = nInsecure + 2;
nFear = nFear + 3;
nBloodLust = nBloodLust + 2;
nCalm = nCalm - 5;
nBoredom = nBoredom + 3;
} else {
nBloodLust--;
nInsecure--;
nFear--;
nCalm = nCalm + 2;
nBoredom = nBoredom + 2;
}
break;
case "death" :
if (l_oArg.bPlayer) {
nInsecure--;
nFear = nFear - 3;
nBloodLust = nBloodLust + 2;
nCalm++;
} else {
nBloodLust = 0;
nInsecure = nInsecure + 4;
nFear = nFear + 4;
}
break;
case "timePasses" :
nBoredom = nBoredom + 3;
nCalm = nCalm + 1;
}
if (nBloodLust >= 10) {
nBloodLust = nBloodLust - 5;
nFear = nFear + 4;
nInsecure = nInsecure + 4;
}
nFear = Math.min(nFear, 20);
nFear = Math.max(nFear, 0);
nBloodLust = Math.min(nBloodLust, 10);
nBloodLust = Math.max(nBloodLust, -20);
nBoredom = Math.min(nBoredom, 15);
nBoredom = Math.max(nBoredom, -20);
nCalm = Math.min(nCalm, 10);
nCalm = Math.max(nCalm, -20);
nInsecure = Math.min(nInsecure, 20);
nInsecure = Math.max(nInsecure, -5);
}
function reactToFrightening(l_oArg) {
switch (l_oArg.type) {
case "hit" :
if (l_oArg.bPlayer) {
nFear = nFear + 3;
nBoredom = nBoredom - 2;
nBloodLust = nBloodLust - 2;
nInsecure = nInsecure + 2;
nCalm = nCalm - 2;
} else {
nBloodLust = nBloodLust + 4;
nInsecure = nInsecure - 3;
nFear--;
nBoredom--;
}
break;
case "block" :
if (l_oArg.bPlayer) {
nInsecure = nInsecure + 3;
nFear = nFear + 2;
nBloodLust++;
nCalm = nCalm - 3;
nBoredom++;
} else {
nBloodLust--;
nInsecure--;
nFear--;
nCalm = nCalm + 2;
}
break;
case "death" :
if (l_oArg.bPlayer) {
nInsecure = 0;
nFear = 0;
nBloodLust = nBloodLust + 2;
nCalm++;
nBoredom++;
} else {
nBloodLust = 0;
nInsecure = nInsecure + 2;
nFear = nFear + 2;
nBoredom++;
}
break;
case "timePasses" :
nBoredom++;
nCalm = nCalm + 3;
}
if (nFear >= 15) {
nFear = nFear - 20;
nBloodLust = nBloodLust + 3;
}
nFear = Math.min(nFear, 20);
nFear = Math.max(nFear, -20);
nBloodLust = Math.min(nBloodLust, 20);
nBloodLust = Math.max(nBloodLust, -20);
nBoredom = Math.min(nBoredom, 20);
nBoredom = Math.max(nBoredom, -20);
nCalm = Math.min(nCalm, 20);
nCalm = Math.max(nCalm, -20);
nInsecure = Math.min(nInsecure, 20);
nInsecure = Math.max(nInsecure, -20);
}
function reactToSpineChilling(l_oArg) {
nBloodLust = nBloodLust + 2;
switch (l_oArg.type) {
case "hit" :
if (l_oArg.bPlayer) {
nFear++;
nBloodLust = nBloodLust + 2;
nBoredom = nBoredom - 3;
nInsecure++;
nCalm--;
} else {
nBloodLust = nBloodLust + 7;
nInsecure = nInsecure - 2;
nFear = nFear - 2;
nBoredom = nBoredom - 2;
}
break;
case "block" :
if (l_oArg.bPlayer) {
nInsecure = nInsecure + 2;
nFear++;
nBloodLust = nBloodLust + 2;
nCalm--;
} else {
nBloodLust--;
nInsecure = nInsecure - 2;
nFear = nFear - 3;
nCalm = nCalm + 2;
}
break;
case "death" :
if (l_oArg.bPlayer) {
nInsecure = 0;
nFear = 0;
nBloodLust = nBloodLust + 2;
nCalm++;
nBoredom++;
} else {
nBloodLust = nBloodLust - 3;
nInsecure = nInsecure + 2;
nFear = nFear + 2;
nBoredom++;
}
break;
case "timePasses" :
nBoredom++;
nCalm = nCalm + 2;
}
if (nFear >= 10) {
nBloodLust++;
}
if (nFear >= 20) {
nFear = nFear - 20;
nBloodLust = nBloodLust + 4;
}
nFear = Math.min(nFear, 20);
nFear = Math.max(nFear, -20);
nBloodLust = Math.min(nBloodLust, 20);
nBloodLust = Math.max(nBloodLust, -20);
nBoredom = Math.min(nBoredom, 15);
nBoredom = Math.max(nBoredom, -20);
nCalm = Math.min(nCalm, 20);
nCalm = Math.max(nCalm, -20);
nInsecure = Math.min(nInsecure, 20);
nInsecure = Math.max(nInsecure, -20);
}
function reactToApocalyptical(l_oArg) {
nBloodLust = nBloodLust + 1;
nCalm = nCalm + 2;
switch (l_oArg.type) {
case "hit" :
if (l_oArg.bPlayer) {
nBoredom--;
nInsecure++;
nCalm--;
} else {
nBloodLust = nBloodLust + 8;
nInsecure = nInsecure - 2;
nFear = nFear - 4;
nBoredom--;
}
break;
case "block" :
if (l_oArg.bPlayer) {
nInsecure = nInsecure + 2;
nBloodLust = nBloodLust + 3;
nCalm--;
} else {
nBloodLust--;
nInsecure = nInsecure - 2;
nFear = nFear - 3;
nCalm = nCalm + 2;
}
break;
case "death" :
if (l_oArg.bPlayer) {
nInsecure = 0;
nBloodLust = nBloodLust + 2;
nCalm++;
nBoredom++;
oDecisionMaker.clearDecisionList();
oDecisionMaker.addDecision(new ai.actionlist.DecisionIdle(oOpponent));
setDecision(oDecisionMaker.makeDecision());
setDelay(60);
} else {
nBloodLust = 0;
nInsecure = nInsecure + 2;
nFear = nFear + 2;
nBoredom++;
}
break;
case "timePasses" :
nBoredom++;
nCalm = nCalm + 2;
}
if (nFear >= 10) {
nFear = nFear - 10;
nBloodLust = nBloodLust + 3;
}
nFear = Math.min(nFear, 20);
nFear = Math.max(nFear, -20);
nBloodLust = Math.min(nBloodLust, 20);
nBloodLust = Math.max(nBloodLust, -20);
nBoredom = Math.min(nBoredom, 10);
nBoredom = Math.max(nBoredom, -20);
nCalm = Math.min(nCalm, 20);
nCalm = Math.max(nCalm, -20);
nInsecure = Math.min(nInsecure, 20);
nInsecure = Math.max(nInsecure, -20);
}
function reactToAttack() {
var _local2 = Math.ceil(Math.random() * 100);
if (_local2 <= nBlockProb) {
oDecisionMaker.clearDecisionList();
oDecisionMaker.addDecision(new ai.actionlist.DecisionBlock(oOpponent, 1));
setDecision(oDecisionMaker.makeDecision());
}
}
function setDelay(l_nNewDelay) {
nMaxDecisionCount = l_nNewDelay;
}
}
Symbol 1719 MovieClip [__Packages.ai.DecisionMaker] Frame 0
class ai.DecisionMaker
{
var oOpponent, aDecisionList, oManager, lastDecision, bDebugMode;
function DecisionMaker (l_oOpponent) {
oOpponent = l_oOpponent;
aDecisionList = new Array();
}
function setController(l_oDecisionControl) {
oManager = l_oDecisionControl;
}
function addDecision(l_oDecision) {
aDecisionList.push(l_oDecision);
}
function addDecisionFirst(l_oDecision) {
aDecisionList.unshift(l_oDecision);
}
function addDecisionList(l_aDecision) {
aDecisionList = aDecisionList.concat(l_aDecision);
}
function clearDecisionList() {
var _local2;
while (aDecisionList.length > 0) {
_local2 = aDecisionList[0].getType();
aDecisionList.splice(0, 1);
removeDecision(_local2);
}
}
function removeDecision(l_sDecisionType) {
var _local3;
var _local2 = 0;
while (_local2 < aDecisionList.length) {
if (aDecisionList[_local2].getType() == l_sDecisionType) {
aDecisionList.splice(_local2, 1);
_local3 = true;
break;
}
_local2++;
}
if (_local3) {
removeDecision(l_sDecisionType);
}
}
function makeDecision() {
var _local3 = false;
var _local2 = 0;
while (_local2 < aDecisionList.length) {
_local3 = aDecisionList[_local2].Make();
if (_local3) {
oManager.setDelay(aDecisionList[_local2].getDelay());
lastDecision = aDecisionList[_local2];
return(aDecisionList[_local2].toString());
}
_local2++;
}
}
function resumeDecision() {
if (bDebugMode) {
}
var _local3 = false;
var _local2 = 0;
while (_local2 < aDecisionList.length) {
_local3 = aDecisionList[_local2].make();
if (_local3) {
oManager.setDelay(aDecisionList[_local2].getDelay());
if (bDebugMode) {
}
return(aDecisionList[_local2].toString());
}
_local2++;
}
}
function traceDecisionList() {
var _local2 = 0;
while (_local2 < aDecisionList.length) {
_local2++;
}
}
function enableDebug() {
bDebugMode = true;
}
function disableDebug() {
bDebugMode = false;
}
}
Symbol 1720 MovieClip [__Packages.ai.actionlist.Decision] Frame 0
class ai.actionlist.Decision
{
var nDelay;
function Decision () {
}
function Make() {
var _local2;
_local2 = checkConditions();
return(_local2);
}
function toString() {
return(("[Decision " + getType()) + "]");
}
function getType() {
return(sType);
}
function getDelay() {
return(nDelay);
}
function getRandom(l_nRangeSize, l_nRangePos) {
if (l_nRangePos == undefined) {
l_nRangePos = 100;
}
if (l_nRangeSize == undefined) {
l_nRangeSize = 100;
}
if (Math.ceil(Math.random() * 100) <= l_nRangePos) {
if (Math.ceil(Math.random() * 100) <= l_nRangeSize) {
return(true);
}
return(false);
}
return(false);
}
function checkConditions() {
return(false);
}
var sType = "Decision";
}
Symbol 1721 MovieClip [__Packages.ai.actionlist.DecisionSpecialMove] Frame 0
class ai.actionlist.DecisionSpecialMove extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionSpecialMove (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
if (oOpponent.onLevel) {
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Act")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("SpecialMove");
_local2 = true;
}
}
return(_local2);
}
var nRangeShort = 5;
var nRangeMedium = 15;
var nRangeLong = 25;
var sType = "SpecialMove";
var nDelay = 15;
}
Symbol 1722 MovieClip [__Packages.ai.actionlist.DecisionAttack2] Frame 0
class ai.actionlist.DecisionAttack2 extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionAttack2 (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Act")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("Attack2");
_local2 = true;
}
return(_local2);
}
var nRangeShort = 10;
var nRangeMedium = 0;
var nRangeLong = 0;
var sType = "Attack2";
var nDelay = 0;
}
Symbol 1723 MovieClip [__Packages.ai.actionlist.DecisionAttack1] Frame 0
class ai.actionlist.DecisionAttack1 extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionAttack1 (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Act")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("Attack1");
_local2 = true;
}
return(_local2);
}
var nRangeShort = 15;
var nRangeMedium = 0;
var nRangeLong = 0;
var sType = "Attack1";
var nDelay = 0;
}
Symbol 1724 MovieClip [__Packages.ai.actionlist.DecisionCrouchAttack] Frame 0
class ai.actionlist.DecisionCrouchAttack extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionCrouchAttack (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
if (oOpponent.onLevel) {
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Act")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("CrouchAttack");
_local2 = true;
}
}
return(_local2);
}
var nRangeShort = 15;
var nRangeMedium = 3;
var nRangeLong = 0;
var sType = "CrouchAttack";
var nDelay = 0;
}
Symbol 1725 MovieClip [__Packages.ai.actionlist.DecisionCrouch] Frame 0
class ai.actionlist.DecisionCrouch extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionCrouch (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
if (oOpponent.onLevel) {
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Move")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("Crouch");
_local2 = true;
}
}
return(_local2);
}
var nRangeShort = 2;
var nRangeMedium = 1;
var nRangeLong = 0;
var sType = "Crouch";
var nDelay = 10;
}
Symbol 1726 MovieClip [__Packages.ai.actionlist.DecisionJumpTowards] Frame 0
class ai.actionlist.DecisionJumpTowards extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionJumpTowards (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
if (oOpponent.onLevel) {
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Move")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("JumpTowards");
_local2 = true;
}
}
return(_local2);
}
var nRangeShort = 5;
var nRangeMedium = 2;
var nRangeLong = 0;
var sType = "JumpTowards";
var nDelay = 1;
}
Symbol 1727 MovieClip [__Packages.ai.actionlist.DecisionJumpAway] Frame 0
class ai.actionlist.DecisionJumpAway extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionJumpAway (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
if (oOpponent.onLevel) {
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Move")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("JumpAway");
_local2 = true;
}
}
return(_local2);
}
var nRangeShort = 3;
var nRangeMedium = 2;
var nRangeLong = 0;
var sType = "JumpAway";
var nDelay = 1;
}
Symbol 1728 MovieClip [__Packages.ai.actionlist.DecisionMoveTowards] Frame 0
class ai.actionlist.DecisionMoveTowards extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionMoveTowards (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
if (oOpponent.onLevel) {
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Move")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("MoveTowards");
_local2 = true;
}
}
return(_local2);
}
var nRangeShort = 25;
var nRangeMedium = 50;
var nRangeLong = 75;
var sType = "MoveTowards";
var nDelay = 25;
}
Symbol 1729 MovieClip [__Packages.ai.actionlist.DecisionMoveAway] Frame 0
class ai.actionlist.DecisionMoveAway extends ai.actionlist.Decision
{
var oOpponent, nMultiplier, getRandom;
function DecisionMoveAway (l_oOpponent, l_nMultiplier) {
super();
oOpponent = l_oOpponent;
nMultiplier = l_nMultiplier;
}
function checkConditions() {
var _local2 = false;
if (oOpponent.onLevel) {
var _local4;
var _local3;
_local4 = this["nRange" + oOpponent.getRange("Move")];
_local3 = getRandom(_local4 * nMultiplier);
if (_local3) {
oOpponent.executeAI("MoveAway");
_local2 = true;
}
}
return(_local2);
}
var nRangeShort = 5;
var nRangeMedium = 2;
var nRangeLong = 2;
var sType = "MoveAway";
var nDelay = 25;
}
Symbol 1730 MovieClip [__Packages.ai.actionlist.DecisionIdle] Frame 0
class ai.actionlist.DecisionIdle extends ai.actionlist.Decision
{
var oOpponent, nDelay;
function DecisionIdle (l_oOpponent) {
super();
oOpponent = l_oOpponent;
nDelay = 15;
}
function checkConditions() {
var _local2 = true;
oOpponent.executeAI("Idle");
return(_local2);
}
var sType = "Idle";
}
Symbol 1731 MovieClip [__Packages.ai.actionlist.DecisionBlock] Frame 0
class ai.actionlist.DecisionBlock extends ai.actionlist.Decision
{
var oOpponent;
function DecisionBlock (l_oOpponent) {
super();
oOpponent = l_oOpponent;
}
function checkConditions() {
var _local2 = true;
oOpponent.executeAI("Block");
return(_local2);
}
var sType = "Block";
var nDelay = 10;
}
Symbol 1732 MovieClip [__Packages.level.items.ItemGenerator] Frame 0
class level.items.ItemGenerator
{
var oLevel, mcItem, mcPlayer, nFrames, nNextGeneration;
function ItemGenerator (l_oLevel, l_mcPlayer) {
oLevel = l_oLevel;
mcItem = oLevel.levelMC.mcFighter;
mcPlayer = l_mcPlayer;
setUpNextGeneration();
}
function update() {
if (generateItem()) {
var _local3 = getItemType();
var _local2 = mcItem.attachMovie(_local3, "mcItem" + mcItem.getNextHighestDepth(), mcItem.getNextHighestDepth());
var _local4 = oLevel.leftEdge + Math.ceil(Math.random() * (oLevel.rightEdge - oLevel.leftEdge));
_local2.setPos(_local4, oLevel.yLevel);
_local2.target = mcPlayer;
setUpNextGeneration();
}
}
function clear() {
for (var _local2 in mcItem) {
if (_local2.substring(0, 6) == "mcItem") {
mcItem[_local2]._visible = false;
mcItem[_local2].removeMovieClip();
}
}
}
function getItemType() {
var _local2 = Math.ceil(Math.random() * 100);
if (NUMBER_TIME_PROBABILITY >= _local2) {
return("TimeItem");
}
return("HealthItem");
}
function generateItem() {
if ((!_global.C.pause) && (!_global.C.battlewon)) {
nFrames++;
return(nFrames >= nNextGeneration);
}
return(false);
}
function setUpNextGeneration() {
nFrames = 1;
nNextGeneration = NUMBER_GENERATE_DELAY_FRAMES + Math.ceil(Math.random() * NUMBER_GENERATE_DELAY_VARIATION);
}
var NUMBER_GENERATE_DELAY_FRAMES = 500;
var NUMBER_GENERATE_DELAY_VARIATION = 30;
var NUMBER_TIME_PROBABILITY = 50;
}
Symbol 1733 MovieClip [__Packages.Benchmark] Frame 0
class Benchmark
{
var ID, StartTicks;
function Benchmark () {
}
function Start(l_ID) {
ID = l_ID;
StartTicks = getTimer();
}
function End() {
var _local2 = getTimer() - StartTicks;
_local2 = _local2 / 1000;
}
}
Symbol 1734 MovieClip [__Packages.Pause] Frame 0
class Pause
{
var bPaused, oLevel, bCanPause, mcMenu, __get__setMenu;
function Pause (l_oLevel) {
bPaused = false;
oLevel = l_oLevel;
}
function changePause() {
if (bCanPause) {
bPaused = !bPaused;
oLevel.setPause(bPaused);
if (bPaused) {
stopObjects();
mcMenu.onRelease();
} else {
playObjects();
mcMenu.gotoAndPlay("Close");
}
bCanPause = false;
}
}
function addToPauseList(l_mClip) {
aPause.push(l_mClip);
}
function removeFromPauseList(l_mClip) {
var _local2 = 0;
while (_local2 < aPause.length) {
if ((aPause[_local2]._name == l_mClip._name) || (aPause[_local2]._name == undefined)) {
aPause.splice(_local2, 1);
break;
}
_local2++;
}
}
function stopObjects() {
var _local2 = 0;
while (_local2 < aPause.length) {
aPause[_local2].stop();
_local2++;
}
}
function playObjects() {
var _local2 = 0;
while (_local2 < aPause.length) {
aPause[_local2].play();
_local2++;
}
}
function set canPause(l_bCanPause) {
bCanPause = l_bCanPause;
//return(canPause);
}
function get canPause() {
return(bCanPause);
}
function set paused(l_bPaused) {
bPaused = l_bPaused;
//return(paused);
}
function get paused() {
return(bPaused);
}
function set setMenu(l_mcMenu) {
mcMenu = l_mcMenu;
//return(__get__setMenu());
}
var aPause = new Array();
}
Symbol 1735 MovieClip [__Packages.hud.Hud] Frame 0
class hud.Hud
{
var mcHud, oMenu, oScore, oTime;
function Hud (l_mcStage, l_nTotalScore) {
mcHud = l_mcStage._parent;
oMenu = new hud.Menu(mcHud);
oScore = new hud.Score(mcHud, l_nTotalScore);
oTime = new hud.Time(mcHud);
setNames();
stopClips();
}
function update() {
oTime.update();
}
function addScore(l_nScore, l_bIsSpecial) {
var _local3 = oScore.addScore(l_nScore, l_bIsSpecial);
if (_global.C.unlockMove(_global.C.player, oScore.numberScore)) {
unlockMove();
}
return(_local3);
}
function removeScore(l_nScore) {
return(oScore.removeScore(l_nScore));
}
function resetCombo() {
oScore.resetCombo();
}
function addTime(l_nTime) {
oTime.addTime(l_nTime);
}
function changeHealth(l_nPourcHP) {
mcHud.mcHUD.mcHP._x = NUMBER_LEFT_X_HP + (l_nPourcHP * (NUMBER_RIGHT_X_HP - NUMBER_LEFT_X_HP));
mcHud.mcHUD.mcLifeBar.mcPlayer._width = (NUMBER_LIFEBAR_SIZE * 2) * l_nPourcHP;
mcHud.mcHUD.mcLifeBar.mcPlayer.gotoAndStop(Math.max(Math.round(mcHud.mcHUD.mcLifeBar.mcPlayer._totalframes * (1 - l_nPourcHP)), 1));
mcHud.mcHUD.mcLifeBar.mcLifePlayer.gotoAndStop(Math.max(Math.round(mcHud.mcHUD.mcLifeBar.mcPlayer._totalframes * (1 - l_nPourcHP)), 1));
mcHud.mcHUD.mcLifeBar.mcOpponent._width = (NUMBER_LIFEBAR_SIZE * 2) * (1 - l_nPourcHP);
mcHud.mcHUD.mcLifeBar.mcOpponent.gotoAndStop(Math.max(Math.round(mcHud.mcHUD.mcLifeBar.mcOpponent._totalframes * l_nPourcHP), 1));
mcHud.mcHUD.mcLifeBar.mcLifeOpponent.gotoAndStop(Math.max(Math.round(mcHud.mcHUD.mcLifeBar.mcOpponent._totalframes * l_nPourcHP), 1));
}
function setMenu(l_sState) {
oMenu.setMenu(l_sState);
}
function setNames() {
mcHud.mcTxtPlayer.gotoAndStop(_global.C.player);
mcHud.mcHUD.mcLifeBar.mcPlayerHead.gotoAndStop(_global.C.player);
mcHud.mcTxtOpponent.gotoAndStop(_global.C.opponent);
mcHud.mcHUD.mcLifeBar.mcOpponentHead.gotoAndStop(_global.C.opponent);
}
function stopClips() {
mcHud.mcSpecialMove.gotoAndStop(1);
mcHud.mcCombo.gotoAndStop(1);
mcHud.mcCombo._visible = false;
changeHealth(0.5);
}
function unlockMove() {
mcHud.mcSpecialMove.gotoAndPlay(1);
}
var NUMBER_LEFT_X_HP = -212.2;
var NUMBER_RIGHT_X_HP = 212.2;
var NUMBER_LIFEBAR_SIZE = 212.2;
}
Symbol 1736 MovieClip [__Packages.hud.Menu] Frame 0
class hud.Menu
{
var mcMenu, oMoves;
function Menu (l_mcHud) {
mcMenu = l_mcHud.mcMenu;
setIdle();
_global.C.canPause = true;
_global.C.setPauseMenu = mcMenu;
}
function setMenu(l_sState) {
_global.C.canPause = true;
if (l_sState == "Idle") {
setIdle();
} else if (l_sState == "Active") {
setActive();
}
}
function setIdle() {
mcMenu.gotoAndStop("Idle");
mcMenu.onRollOver = function () {
this.gotoAndStop("Over");
};
mcMenu.onRollOut = function () {
this.gotoAndStop("Idle");
};
mcMenu.onRelease = function () {
if ((!_global.C.pause) && (_global.C.canPause)) {
this.gotoAndPlay("Clicked");
_global.C.changePause();
delete this.onRollOut;
delete this.onRollOver;
delete this.onRelease;
}
};
}
function setActive() {
mcMenu.btnMusic.onRelease = function () {
};
mcMenu.btnInstructions.onRelease = mx.utils.Delegate.create(this, showInstructions1);
mcMenu.btnMoves.onRelease = mx.utils.Delegate.create(this, showSpecialMoves);
mcMenu.btnQuit.onRelease = mx.utils.Delegate.create(this, quit);
mcMenu.btnX.onRelease = function () {
if (_global.C.pause && (_global.C.canPause)) {
_global.C.changePause();
}
};
}
function quit() {
mcMenu._parent.mcQuitMenu.gotoAndStop(2);
mcMenu._parent.mcQuitMenu.mcQuitMenu.play();
_quality = "HIGH";
}
function showSpecialMoves() {
mcMenu._parent.mcInstructions1.gotoAndStop(1);
mcMenu._parent.mcInstructions2.gotoAndStop(1);
mcMenu._parent.mcSpecialMoves.gotoAndStop(2);
oMoves = new steps.SpecialMoves(mcMenu._parent, "Fight");
_quality = "HIGH";
}
function showInstructions1() {
mcMenu._parent.mcSpecialMoves.gotoAndStop(1);
mcMenu._parent.mcInstructions2.gotoAndStop(1);
mcMenu._parent.mcInstructions1.gotoAndStop(2);
mcMenu._parent.mcBackInst._visible = true;
oMoves = new steps.Instructions1(mcMenu._parent.mcInstructions1, "Fight");
oMoves.setmenu = this;
_quality = "HIGH";
}
function showInstructions2() {
mcMenu._parent.mcSpecialMoves.gotoAndStop(1);
mcMenu._parent.mcInstructions1.gotoAndStop(1);
mcMenu._parent.mcInstructions2.gotoAndStop(2);
mcMenu._parent.mcBackInst._visible = true;
oMoves = new steps.Instructions2(mcMenu._parent.mcInstructions2, "Fight");
oMoves.setmenu = this;
_quality = "HIGH";
}
}
Symbol 1737 MovieClip [__Packages.hud.Score] Frame 0
class hud.Score
{
var nTotalScore, mcScore, sState, nScore, nComboMulti, txtScore, oScore, mcCombo, nDifficultyMulti;
function Score (l_mcHud, l_nTotalScore) {
nTotalScore = l_nTotalScore;
mcScore = l_mcHud.mcScore;
sState = "Idle";
nScore = 0;
nComboMulti = 1;
if (_quality == "HIGH") {
txtScore = mcScore.mcScore.txtScore;
mcScore.mcScoreBitmap._visible = false;
setScore();
mcScore.gotoAndStop(sState);
} else {
mcScore.mcScore.txtScore._visible = false;
var _local3 = new Array(mcScore.mcScoreBitmap.mcScore1, mcScore.mcScoreBitmap.mcScore2, mcScore.mcScoreBitmap.mcScore3, mcScore.mcScoreBitmap.mcScore4, mcScore.mcScoreBitmap.mcScore5, mcScore.mcScoreBitmap.mcScore6, mcScore.mcScoreBitmap.mcScore7, mcScore.mcScoreBitmap.mcScore8, mcScore.mcScoreBitmap.mcScore9);
oScore = new sarbakan.packaging.DigitBitmapField(_local3);
setScore();
}
mcCombo = l_mcHud.mcCombo;
nDifficultyMulti = OBJECT_DIFFICULTY_MULTIPLIER[_global.C.difficulty];
}
function setScore() {
if (_quality == "HIGH") {
mcScore.gotoAndPlay(sState);
txtScore.text = formatNumber(nTotalScore + nScore, NUMBER_SCORE_SIZE);
} else {
oScore.setContent(nTotalScore + nScore);
}
}
function addScore(l_nScore, l_bIsSpecial) {
var _local2;
sState = "Hit";
if (l_bIsSpecial) {
_local2 = (l_nScore * nComboMulti) * nDifficultyMulti;
} else {
_local2 = l_nScore * nDifficultyMulti;
}
nScore = nScore + _local2;
if (l_bIsSpecial) {
activateScore();
nComboMulti = Math.min(NUMBER_COMBO_MAX_MULTIPLIER, ++nComboMulti);
} else {
nComboMulti = 1;
}
setScore();
return(_local2);
}
function removeScore(l_nScore) {
sState = "Hurt";
mcScore.gotoAndPlay(sState);
nComboMulti = 1;
nScore = nScore - (l_nScore * nDifficultyMulti);
nScore = Math.max(0, nScore);
setScore();
return(l_nScore * nDifficultyMulti);
}
function resetCombo() {
nComboMulti = 1;
}
function activateScore() {
if (nComboMulti > 1) {
mcCombo._visible = true;
mcCombo.playing = true;
mcCombo.mcMulti.txtMulti.text = "x" + nComboMulti;
mcCombo.multiplier = nComboMulti;
mcCombo.gotoAndPlay(1);
_global.C.addCombos();
}
}
function formatNumber(l_nNumber, l_nSize) {
var _local2 = "";
var _local1;
var _local3 = l_nSize - l_nNumber.toString().length;
_local1 = 0;
while (_local1 < _local3) {
_local2 = _local2 + "0";
_local1++;
}
return(_local2 + l_nNumber.toString());
}
function get numberScore() {
return(nTotalScore + nScore);
}
var OBJECT_DIFFICULTY_MULTIPLIER = new Object({Scary:1, Frightening:2, SpineChilling:5, Apocalyptic:10});
var NUMBER_COMBO_MAX_MULTIPLIER = 10;
var NUMBER_SCORE_SIZE = 9;
}
Symbol 1738 MovieClip [__Packages.sarbakan.packaging.DigitBitmapField] Frame 0
class sarbakan.packaging.DigitBitmapField
{
var mcDigitList, nNumber;
function DigitBitmapField (l_mcDigitList) {
mcDigitList = l_mcDigitList;
setContent(0);
}
function setContent(l_number) {
nNumber = l_number;
update();
}
function getContent() {
return(nNumber);
}
function update() {
var _local3 = getNumberToPaddedString();
var _local2 = 0;
while (_local2 < mcDigitList.length) {
mcDigitList[_local2].gotoAndStop(Number(_local3.charAt(_local2)) + 1);
_local2++;
}
}
function getNumberToPaddedString() {
var _local2 = String(nNumber);
while (_local2.length < mcDigitList.length) {
_local2 = "0" + _local2;
}
return(_local2);
}
}
Symbol 1739 MovieClip [__Packages.hud.Time] Frame 0
class hud.Time
{
var oClockMinutes, oClockSeconds, nMinutes, nSeconds, nFrames;
function Time (l_mcHud) {
var _local2 = l_mcHud.mcHudBar.mcClock;
oClockMinutes = new sarbakan.packaging.DigitBitmapField(Array(_local2.mcTime1, _local2.mcTime2));
oClockSeconds = new sarbakan.packaging.DigitBitmapField(Array(_local2.mcTime3, _local2.mcTime4));
nMinutes = NUMBER_TOTAL_MINUTES;
nSeconds = NUMBER_TOTAL_SECONDS;
nFrames = NUMBER_FRAMERATE;
oClockMinutes.setContent(nMinutes);
oClockSeconds.setContent(nSeconds);
}
function update() {
if (!_global.C.pause) {
nFrames--;
if (nFrames <= 0) {
nFrames = NUMBER_FRAMERATE;
nSeconds--;
if (nSeconds < 0) {
nMinutes--;
nSeconds = 59;
}
oClockMinutes.setContent(nMinutes);
oClockSeconds.setContent(nSeconds);
if ((nMinutes == 0) && (nSeconds == 0)) {
_global.C.battlewon = true;
}
}
}
}
function addTime(l_nTime) {
nSeconds = nSeconds + l_nTime;
while (nSeconds > 59) {
nSeconds = nSeconds - 60;
nMinutes++;
}
oClockMinutes.setContent(nMinutes);
oClockSeconds.setContent(nSeconds);
}
function formatNumber(l_nNumber, l_nSize) {
var _local2 = "";
var _local1;
var _local3 = l_nSize - l_nNumber.toString().length;
_local1 = 0;
while (_local1 < _local3) {
_local2 = _local2 + "0";
_local1++;
}
return(_local2 + l_nNumber.toString());
}
var NUMBER_TOTAL_MINUTES = 3;
var NUMBER_TOTAL_SECONDS = 0;
var NUMBER_FRAMERATE = 30;
}
Symbol 1740 MovieClip [__Packages.steps.Victory] Frame 0
class steps.Victory
{
var mcStage, oMoves;
function Victory (l_mcStage, l_sFighter, l_oPlayer) {
mcStage = l_mcStage;
InitVictory(l_sFighter, l_oPlayer);
setCommands();
}
function InitVictory(l_sFighter, l_oPlayer) {
var _local2 = mcStage.mcVictory;
_quality = "HIGH";
_local2._visible = true;
_local2.mcName.gotoAndStop(l_sFighter);
_local2.txtHits.text = formatNumber(l_oPlayer.numberHits, 4);
_local2.txtSpecial.text = formatNumber(l_oPlayer.numberSpecials, 4);
_local2.txtCombo.text = formatNumber(l_oPlayer.numberCombos, 4);
_local2.txtFalls.text = formatNumber(l_oPlayer.numberFalls, 4);
_local2.txtScore.text = formatNumber(l_oPlayer.numberScore, 10);
_local2.txtTotal.text = formatNumber(l_oPlayer.numberAddTotalScore, 10);
}
function setCommands() {
mcStage.mcVictory.btnSpecialMoves.onPress = mx.utils.Delegate.create(this, showSpecialMoves);
mcStage.mcVictory.btnNextFight.onPress = mx.utils.Delegate.create(this, nextFight);
mcStage.mcVictory.mcCombo.multiplier = OBJECT_DIFFICULTY_MULTIPLIER[_global.C.difficulty];
mcStage.mcVictory.mcCombo.play();
mcStage.mcVictory.mcCombo.onEnterFrame = function () {
this.play();
this.update();
if (this._currentframe >= (this._totalframes / 2)) {
this.stop();
delete this.onEnterFrame;
}
};
}
function showSpecialMoves() {
mcStage.mcSpecialMoves.gotoAndStop(2);
oMoves = new steps.SpecialMoves(mcStage, "Fight");
}
function nextFight() {
mcStage.mcVictory._visible = false;
_global.C.setQuality();
_global.C.nextFight();
}
function formatNumber(l_nNumber, l_nSize) {
var _local2 = "";
var _local1;
var _local3 = l_nSize - l_nNumber.toString().length;
_local1 = 0;
while (_local1 < _local3) {
_local2 = _local2 + "0";
_local1++;
}
return(_local2 + l_nNumber.toString());
}
var OBJECT_DIFFICULTY_MULTIPLIER = new Object({Scary:1, Frightening:2, SpineChilling:5, Apocalyptic:10});
var ARRAY_BUTTONS = new Array("btnSpecialMoves", "btnNextFight");
}
Symbol 1741 MovieClip [__Packages.steps.CharSelect] Frame 0
class steps.CharSelect
{
var mcStage, sPlayerCharacter, sGoodBad, sDifficulty;
function CharSelect (l_mcStage) {
mcStage = l_mcStage;
mcStage.mcDifficulty.stop();
}
function setCharacterNames() {
var _local3 = ARRAY_CHARACTER_NAMES.length;
var _local2;
_local2 = 0;
while (_local2 < _local3) {
mcStage["mc" + ARRAY_CHARACTER_NAMES[_local2]].goodbad(ARRAY_GOODBAD[_local2]);
mcStage["mc" + ARRAY_CHARACTER_NAMES[_local2]].clipValue(ARRAY_CHARACTER_NAMES[_local2]);
_local2++;
}
}
function chosenCharacter(l_sChar, l_sGoodBad) {
sPlayerCharacter = l_sChar;
sGoodBad = l_sGoodBad;
var _local3 = ARRAY_CHARACTER_NAMES.length;
var _local2;
_local2 = 0;
while (_local2 < _local3) {
mcStage["mc" + ARRAY_CHARACTER_NAMES[_local2]].setState("Lock");
_local2++;
}
}
function selectDifficulty() {
mcStage.mcDifficulty.play();
}
function chosenDifficulty(l_sDiff) {
sDifficulty = l_sDiff;
_global.C.setQuality();
_global.C.startFight(mcStage);
}
function get difficulty() {
return(sDifficulty);
}
function get playerCharacter() {
return(sPlayerCharacter);
}
function get goodbad() {
return(sGoodBad);
}
var ARRAY_CHARACTER_NAMES = new Array("Danny", "Frostbite", "Sam", "Undergrowth");
var ARRAY_GOODBAD = new Array("Good", "Good", "Bad", "Bad");
var ARRAY_DIFFICULTY_LEVELS = new Array("Scary", "Frightening", "SpineChilling", "Apocalyptic");
}
Symbol 1742 MovieClip [__Packages.PerformanceWatcher] Frame 0
class PerformanceWatcher
{
static var nMovieFPS, bActive, oEnterFrameListener, nCurrentFPS, nUpdateCount, nLastGetTimer, mcDebug;
function PerformanceWatcher () {
}
static function start(l_nMovieFPS) {
nMovieFPS = l_nMovieFPS;
if (!bActive) {
bActive = true;
mx.transitions.OnEnterFrameBeacon.init();
oEnterFrameListener = new Object();
oEnterFrameListener.onEnterFrame = mx.utils.Delegate.create(PerformanceWatcher, update);
MovieClip.addListener(oEnterFrameListener);
}
nCurrentFPS = nMovieFPS;
reset();
}
static function reset() {
nUpdateCount = 0;
nLastGetTimer = getTimer();
}
static function stop() {
if (bActive) {
bActive = false;
MovieClip.removeListener(oEnterFrameListener);
}
}
static function addListener(l_listener, l_nMinFPS, l_bDelete) {
aListeners.push({listener:l_listener, nMinFPS:l_nMinFPS, bDelete:l_bDelete});
}
static function removeListener(l_listener) {
for (var _local2 in aListeners) {
if (aListeners[_local2].listener == l_listener) {
aListeners.splice(_local2, 1);
}
}
}
static function get fps() {
return(nCurrentFPS);
}
static function startDebug(l_mcTimeline) {
mcDebug = l_mcTimeline.createEmptyMovieClip("PerformanceWatcherDebug", DEBUG_DEPTH);
mcDebug.createTextField("field", 1, 15, 0, 0, 100, DEBUG_FONT_SIZE);
mcDebug.field.font = DEBUG_FONT;
mcDebug.fieldShadow.font = DEBUG_FONT;
mcDebug.field.size = DEBUG_FONT_SIZE;
mcDebug.fieldShadow.size = DEBUG_FONT_SIZE;
mcDebug.field.color = DEBUG_FONT_COLOR;
mcDebug.fieldShadow.font = DEBUG_FONT_SHADOW_COLOR;
}
static function update() {
if ((++nUpdateCount) == nMovieFPS) {
computeFrameRate();
updateDebug();
notifyListeners();
}
}
static function computeFrameRate() {
var _local1 = getTimer() - nLastGetTimer;
var _local2 = _local1 / 1000;
nCurrentFPS = Math.round(nMovieFPS / _local2);
reset();
}
static function notifyListeners() {
var _local1 = new Array();
for (var _local2 in aListeners) {
if (aListeners[_local2].nMinFPS >= nCurrentFPS) {
aListeners[_local2].listener(nCurrentFPS);
if (aListeners[_local2].bDelete) {
_local1.push(aListeners[_local2].listener);
}
}
}
for (var _local2 in _local1) {
removeListener(_local1[_local2]);
}
}
static function updateDebug() {
if (mcDebug != undefined) {
mcDebug.field.text = nCurrentFPS + " fps";
mcDebug.fieldShadow.text = nCurrentFPS + " fps";
}
}
static var DEBUG_DEPTH = 123456;
static var DEBUG_TOP_MARGIN = 10;
static var DEBUG_RIGHT_MARGIN = 10;
static var DEBUG_FONT = "_sans";
static var DEBUG_FONT_SIZE = 10;
static var DEBUG_FONT_COLOR = 0;
static var DEBUG_FONT_SHADOW_COLOR = 0;
static var aListeners = new Array();
}
Symbol 1743 MovieClip [__Packages.fighter.subscreens.SpecialMovesMC] Frame 0
class fighter.subscreens.SpecialMovesMC extends MovieClip
{
var _name, onRelease;
function SpecialMovesMC () {
super();
setCommands();
if (_global.C.player == _name.substring(2)) {
onRelease();
}
setLockedMoves();
}
function setCommands() {
onRelease = function () {
var _local2;
var _local3 = this.ARRAY_CHARACTER_NAMES.length;
_local2 = 0;
while (_local2 < _local3) {
if (this.getDepth() < this._parent["mc" + this.ARRAY_CHARACTER_NAMES[_local2]].getDepth()) {
this._parent["mc" + this.ARRAY_CHARACTER_NAMES[_local2]].setCommands();
this.swapDepths(this._parent["mc" + this.ARRAY_CHARACTER_NAMES[_local2]]);
}
_local2++;
}
delete this.onRelease;
};
}
function setLockedMoves() {
var _local5 = _name.substring(2);
var _local4 = _global.C.getFighterProfile(_local5);
var _local3;
for (_local3 in _local4.SpecialMoves) {
if (!_global.C.moveIsLocked(_local5, _local3)) {
this[_name + _local4.SpecialMoves[_local3].sAnim]._visible = false;
} else {
this[_name + _local4.SpecialMoves[_local3].sAnim]._visible = true;
}
}
}
var ARRAY_CHARACTER_NAMES = new Array("Danny", "Frostbite", "Sam", "Undergrowth");
}
Symbol 1744 MovieClip [__Packages.characterselect.ExtendedMC] Frame 0
class characterselect.ExtendedMC extends MovieClip
{
var sState, sNextState, bCanChangeState, gotoAndStop, bLocked, onRollOver, onRollOut, onReleaseOutside, onRelease, onEnterFrame, _name, mcLocked, _totalframes, _currentframe, stop, gotoAndPlay, sValue, sGoodBad, useHandCursor, __get__canChangeState, sType, __get__locked;
function ExtendedMC () {
super();
sState = (sNextState = "Idle");
bCanChangeState = true;
setCommands();
setLocked();
}
function setCommands() {
gotoAndStop("Idle");
if (!bLocked) {
onRollOver = function () {
this.setState("Over");
};
onRollOut = (onReleaseOutside = function () {
this.setState("Out");
});
onRelease = function () {
this.setState("Clicked");
};
onEnterFrame = function () {
this.update();
};
}
}
function setLocked() {
bLocked = _global.C.characterIsLocked(_name.substring(2));
mcLocked._visible = bLocked;
}
function update() {
if (_currentframe == _totalframes) {
stop();
_global.C.selectDifficulty();
delete onEnterFrame;
}
}
function setState(l_sNewState) {
if (!bLocked) {
switch (l_sNewState) {
case "Idle" :
if (bCanChangeState) {
sState = l_sNewState;
gotoAndStop(sState);
bCanChangeState = true;
} else {
sNextState = l_sNewState;
}
break;
case "Over" :
case "Out" :
if (bCanChangeState) {
sNextState = (sState = l_sNewState);
gotoAndPlay(sState);
bCanChangeState = false;
} else {
sNextState = l_sNewState;
}
break;
case "Clicked" :
sState = l_sNewState;
gotoAndPlay(sState);
_global.C.chosenCharacter(sValue, sGoodBad);
break;
case "Lock" :
bCanChangeState = false;
delete onRollOver;
delete onRollOut;
delete onRelease;
}
} else {
useHandCursor = false;
}
}
function set canChangeState(l_bCanChangeState) {
bCanChangeState = l_bCanChangeState;
if (bCanChangeState) {
stop();
if (sNextState != sState) {
setState(sNextState);
}
}
//return(__get__canChangeState());
}
function clipValue(l_sValue) {
sValue = l_sValue;
}
function clipType(l_sType) {
sType = l_sType;
}
function goodbad(l_sGoodBad) {
sGoodBad = l_sGoodBad;
}
function set locked(l_bLocked) {
bLocked = l_bLocked;
if (mcLocked) {
mcLocked._visible = bLocked;
}
//return(__get__locked());
}
}
Symbol 1745 MovieClip [__Packages.characterselect.DifficultyMC] Frame 0
class characterselect.DifficultyMC extends MovieClip
{
var onEnterFrame;
function DifficultyMC () {
super();
onEnterFrame = function () {
if (this._currentframe == this._totalframes) {
this.stop();
delete this.onEnterFrame;
}
};
}
function setButtons() {
var _local3 = ARRAY_DIFFICULTY_LEVELS.length;
var _local2;
_local2 = 0;
while (_local2 < _local3) {
this["btn" + ARRAY_DIFFICULTY_LEVELS[_local2]].onRelease = function () {
};
_local2++;
}
}
var ARRAY_DIFFICULTY_LEVELS = new Array("Scary", "Frightening", "SpineChilling", "Apocalyptic");
}
Symbol 1746 MovieClip [__Packages.hud.ComboMC] Frame 0
class hud.ComboMC extends MovieClip
{
var onEnterFrame, nMultiplier, mcMulti, __get__multiplier, bPlaying, __get__playing;
function ComboMC () {
super();
onEnterFrame = function () {
if (_global.C.pause) {
this.stop();
} else if (this.bPlaying) {
this.play();
}
this.update();
};
}
function update() {
mcMulti.txtMulti.text = "x" + nMultiplier;
}
function set multiplier(l_nMultiplier) {
nMultiplier = l_nMultiplier;
//return(__get__multiplier());
}
function set playing(l_bPlaying) {
bPlaying = l_bPlaying;
//return(__get__playing());
}
}
Symbol 80 MovieClip Frame 1
stop();
Symbol 83 MovieClip [Blizzard] Frame 1
#initclip 91
Object.registerClass("Blizzard", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 88 MovieClip [HighScoresCursor] Frame 1
#initclip 80
Object.registerClass("HighScoresCursor", highscores.HighScoresMC);
#endinitclip
Symbol 101 MovieClip [SpectralBlast] Frame 1
#initclip 81
Object.registerClass("SpectralBlast", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 114 MovieClip [Snowball] Frame 1
#initclip 82
Object.registerClass("Snowball", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 124 MovieClip [Stalactyce] Frame 1
#initclip 83
Object.registerClass("Stalactyce", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 147 MovieClip [Roots] Frame 1
#initclip 84
Object.registerClass("Roots", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 151 MovieClip [Spike] Frame 1
#initclip 85
Object.registerClass("Spike", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 167 MovieClip [GrassGrasp] Frame 1
#initclip 86
Object.registerClass("GrassGrasp", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 176 MovieClip Frame 1
_parent.hitArea = this;
this._visible = false;
Symbol 185 MovieClip [HealthItem] Frame 1
#initclip 87
Object.registerClass("HealthItem", level.items.HealthItemMC);
#endinitclip
Symbol 185 MovieClip [HealthItem] Frame 34
this.state = "Dead";
Symbol 190 MovieClip [TimeItem] Frame 1
#initclip 88
Object.registerClass("TimeItem", level.items.TimeItemMC);
#endinitclip
Symbol 190 MovieClip [TimeItem] Frame 33
this.state = "Dead";
Symbol 247 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 247 MovieClip Frame 6
stop();
Symbol 263 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 263 MovieClip Frame 9
stop();
Symbol 275 MovieClip Frame 15
stop();
Symbol 290 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 336 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 354 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 354 MovieClip Frame 7
_global.C.activateSpecial(this);
Symbol 365 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 365 MovieClip Frame 7
_global.C.activateSpecial(this);
Symbol 385 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 385 MovieClip Frame 6
_global.C.activateSpecial(this);
Symbol 434 MovieClip Frame 4
_global.C.setAnticipation(this);
Symbol 434 MovieClip Frame 20
_global.C.activateSpecial(this);
Symbol 486 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 486 MovieClip Frame 13
_global.C.activateSpecial(this);
Symbol 514 MovieClip Frame 35
stop();
Symbol 608 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 615 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 620 MovieClip Frame 18
stop();
Symbol 627 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 657 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 657 MovieClip Frame 4
_global.C.activateSpecial(this);
Symbol 680 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 680 MovieClip Frame 6
_global.C.activateSpecial(this);
Symbol 691 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 691 MovieClip Frame 5
_global.C.activateSpecial(this);
Symbol 695 MovieClip Frame 23
_global.C.setAnticipation(this);
Symbol 695 MovieClip Frame 26
_global.C.activateSpecial(this);
Symbol 706 MovieClip Frame 11
_global.C.setAnticipation(this);
Symbol 706 MovieClip Frame 12
_global.C.activateSpecial(this);
Symbol 727 MovieClip Frame 56
stop();
Symbol 728 MovieClip Frame 11
stop();
Symbol 811 MovieClip Frame 7
_global.C.setAnticipation(this);
Symbol 819 MovieClip Frame 7
_global.C.setAnticipation(this);
Symbol 834 MovieClip Frame 14
stop();
Symbol 844 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 860 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 863 MovieClip Frame 4
_global.C.setAnticipation(this);
Symbol 863 MovieClip Frame 5
_global.C.activateSpecial(this);
Symbol 878 MovieClip Frame 10
_global.C.setAnticipation(this);
Symbol 883 MovieClip Frame 4
_global.C.activateSpecial(this);
Symbol 883 MovieClip Frame 5
_global.C.activateSpecial(this);
Symbol 896 MovieClip Frame 6
_global.C.setAnticipation(this);
Symbol 907 MovieClip Frame 35
stop();
Symbol 964 MovieClip Frame 4
_global.C.setAnticipation(this);
Symbol 973 MovieClip Frame 4
_global.C.setAnticipation(this);
Symbol 990 MovieClip Frame 4
_global.C.setAnticipation(this);
Symbol 991 MovieClip Frame 13
stop();
Symbol 1036 MovieClip Frame 5
_global.C.setAnticipation(this);
Symbol 1041 MovieClip Frame 4
_global.C.setAnticipation(this);
Symbol 1046 MovieClip Frame 3
_global.C.setAnticipation(this);
Symbol 1046 MovieClip Frame 20
_global.C.activateSpecial(this);
Symbol 1048 MovieClip Frame 5
_global.C.setAnticipation(this);
Symbol 1048 MovieClip Frame 8
_global.C.activateSpecial(this);
Symbol 1063 MovieClip Frame 41
stop();
Symbol 1080 MovieClip Frame 14
_global.C.setAnticipation(this);
Symbol 1091 MovieClip [Permafrost] Frame 1
#initclip 89
Object.registerClass("Permafrost", fighter.specialmoves.ProjectileMC);
#endinitclip
stop();
Symbol 1132 MovieClip [Music OnOff] Frame 1
#initclip 90
Object.registerClass("Music OnOff", MCMusic);
#endinitclip
Instance of Symbol 1170 MovieClip in Symbol 1171 MovieClip Frame 1
on (press) {
}
on (rollOver) {
this.useHandCursor = false;
}
Symbol 1268 MovieClip [Undegrowth_SMoves] Frame 1
#initclip 101
Object.registerClass("Undegrowth_SMoves", fighter.subscreens.SpecialMovesMC);
#endinitclip
Symbol 1295 MovieClip [VSam_SMoves] Frame 1
#initclip 92
Object.registerClass("VSam_SMoves", fighter.subscreens.SpecialMovesMC);
#endinitclip
Symbol 1320 MovieClip [Frostbite_SMoves] Frame 1
#initclip 93
Object.registerClass("Frostbite_SMoves", fighter.subscreens.SpecialMovesMC);
#endinitclip
Symbol 1344 MovieClip [DP_SMoves] Frame 1
#initclip 94
Object.registerClass("DP_SMoves", fighter.subscreens.SpecialMovesMC);
#endinitclip
Symbol 1347 MovieClip Frame 1
stop();
Instance of Symbol 1232 MovieClip in Symbol 1347 MovieClip Frame 2
on (press) {
}
on (rollOver) {
this.useHandCursor = false;
}
Symbol 1354 MovieClip [Selecter_DP] Frame 1
#initclip 95
Object.registerClass("Selecter_DP", characterselect.ExtendedMC);
#endinitclip
Symbol 1354 MovieClip [Selecter_DP] Frame 19
canChangeState = true;
Symbol 1354 MovieClip [Selecter_DP] Frame 29
canChangeState = true;
setState("Idle");
Symbol 1366 MovieClip [Undergrowth_Button] Frame 1
#initclip 96
Object.registerClass("Undergrowth_Button", characterselect.ExtendedMC);
#endinitclip
Symbol 1366 MovieClip [Undergrowth_Button] Frame 19
canChangeState = true;
Symbol 1366 MovieClip [Undergrowth_Button] Frame 29
canChangeState = true;
setState("Idle");
Symbol 1379 MovieClip [Frostbite_SelectButton] Frame 1
#initclip 97
Object.registerClass("Frostbite_SelectButton", characterselect.ExtendedMC);
#endinitclip
Symbol 1379 MovieClip [Frostbite_SelectButton] Frame 19
canChangeState = true;
Symbol 1379 MovieClip [Frostbite_SelectButton] Frame 29
canChangeState = true;
setState("Idle");
Symbol 1390 MovieClip [SamSelectButton] Frame 1
#initclip 98
Object.registerClass("SamSelectButton", characterselect.ExtendedMC);
#endinitclip
Symbol 1390 MovieClip [SamSelectButton] Frame 19
canChangeState = true;
Symbol 1390 MovieClip [SamSelectButton] Frame 29
canChangeState = true;
setState("Idle");
Symbol 1410 Button
on (rollOver) {
this.useHandCursor = false;
}
Symbol 1416 Button
on (press) {
_global.C.chosenDifficulty("Apocalyptic");
}
Symbol 1418 Button
on (press) {
_global.C.chosenDifficulty("SpineChilling");
}
Symbol 1419 Button
on (press) {
_global.C.chosenDifficulty("Frightening");
}
Symbol 1420 Button
on (press) {
_global.C.chosenDifficulty("Scary");
}
Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 1
#initclip 99
Object.registerClass("DifficultyLvlSelect", characterselect.DifficultyMC);
#endinitclip
Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 2
_global.C.startPerformanceWatcher();
Instance of Symbol 1232 MovieClip in Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 2
on (press) {
}
on (rollOver) {
this.useHandCursor = false;
}
Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 12
var l_bVisible = _global.C.difficultyIsLocked("Apocalyptic");
this.btnApocalyptic._visible = !l_bVisible;
this.btnApocalypticDisabled._visible = l_bVisible;
Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 20
var l_bVisible = _global.C.difficultyIsLocked("Apocalyptic");
this.btnApocalyptic._visible = !l_bVisible;
this.btnApocalypticDisabled._visible = l_bVisible;
Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 26
var l_bVisible = _global.C.difficultyIsLocked("Apocalyptic");
this.btnApocalyptic._visible = !l_bVisible;
this.btnApocalypticDisabled._visible = l_bVisible;
Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 32
var l_bVisible = _global.C.difficultyIsLocked("Apocalyptic");
this.btnApocalyptic._visible = !l_bVisible;
this.btnApocalypticDisabled._visible = l_bVisible;
Instance of Symbol 1417 MovieClip "btnApocalypticDisabled" in Symbol 1421 MovieClip [DifficultyLvlSelect] Frame 32
on (rollOver) {
this.useHandCursor = false;
}
Symbol 1481 MovieClip Frame 19
this.gotoAndStop("Idle");
Symbol 1481 MovieClip Frame 30
this.gotoAndStop("Idle");
Symbol 1519 MovieClip Frame 39
_global.C.setMenu("Active");
stop();
Symbol 1519 MovieClip Frame 58
_global.C.setMenu("Idle");
this.gotoAndStop(1);
Symbol 1522 MovieClip Frame 1
this._name = "mcMulti";
Symbol 1523 MovieClip [HitMeterAnim] Frame 1
#initclip 100
Object.registerClass("HitMeterAnim", hud.ComboMC);
#endinitclip
Symbol 1523 MovieClip [HitMeterAnim] Frame 27
stop();
bPlaying = false;
Symbol 1532 MovieClip Frame 55
stop();
Instance of Symbol 1232 MovieClip in Symbol 1565 MovieClip Frame 1
on (press) {
}
on (rollOver) {
this.useHandCursor = false;
}
Symbol 1575 Button
on (release) {
_global.C.setVictoryScreen(_global.C.opponent);
}
Symbol 1577 Button
on (release) {
_parent.play();
}
Symbol 1583 MovieClip Frame 1
btnMask.enabled = false;
Symbol 1583 MovieClip Frame 20
stop();
Symbol 1583 MovieClip Frame 31
_global.C.endPerformanceWatcher();
this._parent.gotoAndStop(1);
Symbol 1584 MovieClip Frame 1
stop();
Symbol 1590 MovieClip Frame 1
stop();
Symbol 1594 MovieClip Frame 1
stop();
Symbol 1669 MovieClip Frame 1
stop();
Instance of Symbol 1135 MovieClip "C" in Symbol 1669 MovieClip Frame 1
onClipEvent (load) {
_global.C = new Controller(this);
}
Symbol 1669 MovieClip Frame 6
Instance of Symbol 1149 MovieClip in Symbol 1669 MovieClip Frame 6
on (rollOver) {
this.useHandCursor = false;
}
Symbol 1669 MovieClip Frame 31
mcSpecialMoves.gotoAndStop(2);
stop();
Symbol 1669 MovieClip Frame 42
_global.C.setCharacterNames();
stop();
Instance of Symbol 1565 MovieClip "mcVictory" in Symbol 1669 MovieClip Frame 56
onClipEvent (load) {
this._visible = false;
}
Instance of Symbol 1171 MovieClip "mcBackInst" in Symbol 1669 MovieClip Frame 56
onClipEvent (load) {
this._visible = false;
}