Frame 1
_focusrect = false;
Stage.showMenu = false;
this.stop();
Instance of Symbol 21 MovieClip in Frame 1
onClipEvent (load) {
this.stop();
}
onClipEvent (enterFrame) {
var l_nLoaded = this._parent.getBytesLoaded();
var l_nTotal = this._parent.getBytesTotal();
if (l_nLoaded == l_nTotal) {
this.play();
if (this._currentframe == this._totalframes) {
this._parent.gotoAndPlay("Game");
}
} else {
this.txtPourc.text = String(Math.floor((l_nLoaded / l_nTotal) * 100)) + "%";
}
}
Frame 14
if (_global.objSounds == undefined) {
_global.objSounds = new sarbakan.utils.SoundController(this);
}
if (_global.objHS == undefined) {
_global.objHS = new objHSNick();
}
stop();
Instance of Symbol 1349 MovieClip in Frame 14
onClipEvent (load) {
this = new Controller(this);
}
Symbol 26 Button
on (keyPress "<Left>") {
return(undefined);
}
on (keyPress "<Right>") {
return(undefined);
}
on (keyPress "<Up>") {
return(undefined);
}
on (keyPress "<Down>") {
return(undefined);
}
Symbol 1350 MovieClip [__Packages.MCPowerup] Frame 0
class MCPowerup extends MovieClip
{
var onEnterFrame, oTime, mcPiece, getDepth, swapDepths, _parent, removeMovieClip, sSound, sType, nValue;
function MCPowerup () {
super();
_global.KMC.addPowerup(this);
onEnterFrame = update;
}
function update() {
if (oTime && (!_global.KMC.paused)) {
oTime.update();
if (oTime.__get__timeOut()) {
mcPiece.setPowerup(undefined);
if (getDepth() < 0) {
swapDepths(_parent.getNextHighestDepth());
}
removeMovieClip();
}
} else if (mcPiece._visible || (mcPiece == undefined)) {
mcPiece.setPowerup(undefined);
swapDepths(_parent.getNextHighestDepth());
removeMovieClip();
}
}
function use() {
if (sSound) {
_global.objSounds.playSound(sSound, 100, 1, false);
}
_global.KMC.usePowerup(this);
swapDepths(_parent.getNextHighestDepth());
removeMovieClip();
}
function setPiece(l_mcPiece) {
mcPiece = l_mcPiece;
}
function getType() {
return(sType);
}
function setTime(l_oTime) {
oTime = l_oTime;
}
function getValue() {
return(nValue);
}
}
Symbol 1351 MovieClip [__Packages.MCPiece] Frame 0
class MCPiece extends MovieClip
{
var nPaths, nScoreValue, _height, _width, aPaths, _visible, _alpha, mcPowerup, onEnterFrame;
function MCPiece () {
super();
nPaths = 0;
nScoreValue = Math.ceil((_width * _height) / 100) * 10;
aPaths = new Array();
_visible = false;
_global.KMC.addPiece(this);
}
function addPathHit(l_mcPath, l_bBackup) {
aPaths.push(l_mcPath);
if (!l_bBackup) {
nPaths++;
}
}
function removePathHit(l_bInit) {
nPaths--;
if ((nPaths == 0) && (!l_bInit)) {
_visible = true;
var _local3 = new flash.geom.Transform(this);
_local3.colorTransform = new flash.geom.ColorTransform(1, 1, 1, 1, 0, 0, 0, 0);
_alpha = 100;
lockAllPaths();
if (mcPowerup != undefined) {
mcPowerup.use();
} else {
_global.objSounds.playSound("RevealImage", 100, 1, false);
}
_global.KMC.revealPiece(nScoreValue);
}
}
function removePath() {
nPaths--;
}
function setPowerup(l_mcPowerup) {
mcPowerup = l_mcPowerup;
mcPowerup.setPiece(this);
}
function getPowerup() {
return(mcPowerup);
}
function flashOut() {
_visible = true;
var _local2 = new flash.geom.Transform(this);
_local2.colorTransform = new flash.geom.ColorTransform(1, 0.15, 0.15, 1, 0, 0, 0, 0);
onEnterFrame = flashUpdate;
}
function flashUpdate() {
_alpha = _alpha - 25;
if (_alpha == 0) {
var _local2 = new flash.geom.Transform(this);
_local2.colorTransform = new flash.geom.ColorTransform(1, 1, 1, 1, 0, 0, 0, 0);
_alpha = 100;
_visible = false;
delete onEnterFrame;
}
}
function lockAllPaths() {
var _local2;
_local2 = 0;
while (_local2 < aPaths.length) {
aPaths[_local2].lock();
_local2++;
}
}
function getPaths() {
return(nPaths);
}
function resetAllPaths() {
var _local2;
_local2 = 0;
while (_local2 < aPaths.length) {
aPaths[_local2].cherckUntag();
_local2++;
}
}
function setPaths(l_nPaths) {
nPaths = l_nPaths;
if (nPaths == 0) {
_visible = true;
}
}
}
Symbol 1352 MovieClip [__Packages.MCPath] Frame 0
class MCPath extends MovieClip
{
var _rotation, sState, aPieces, gotoAndStop, mcDot, oColor, _x, _y, _width, _height, nX, nY;
function MCPath () {
super();
setCoordonates(Math.round(_rotation));
rotate(Math.round(_rotation));
sState = "Untagged";
aPieces = new Array();
gotoAndStop(sState);
_global.KMC.addPath(this);
init();
}
function restoreState(l_sState) {
sState = l_sState;
if (sState == "Locked") {
gotoAndStop("Tagged");
var _local4 = new flash.geom.Transform(mcDot);
var _local2 = 0.4;
var _local3 = new flash.geom.ColorTransform(oColor.redMultiplier - Math.abs(oColor.redMultiplier * _local2), oColor.blueMultiplier - Math.abs(oColor.blueMultiplier * _local2), oColor.greenMultiplier - Math.abs(oColor.greenMultiplier * _local2), 1, oColor.redOffset - Math.abs(oColor.redOffset * _local2), oColor.greenOffset - Math.abs(oColor.redOffset * _local2), oColor.blueOffset - Math.abs(oColor.redOffset * _local2), oColor.alphaOffset);
_local4.colorTransform = _local3;
} else {
gotoAndStop(sState);
}
compensatePathRemove();
}
function playerPass() {
if (sState == "Untagged") {
sState = "Tagged";
removeHits();
gotoAndStop(sState);
} else if (sState == "Tagged") {
sState = "Untagged";
addHits();
gotoAndStop(sState);
}
setColor(oColor);
return(sState);
}
function reset() {
if (sState == "Tagged") {
sState = "Untagged";
addHits();
gotoAndStop(sState);
}
setColor(oColor);
}
function lock() {
sState = "Locked";
gotoAndStop("Tagged");
var _local4 = new flash.geom.Transform(mcDot);
var _local2 = 0.4;
var _local3 = new flash.geom.ColorTransform(oColor.redMultiplier - Math.abs(oColor.redMultiplier * _local2), oColor.blueMultiplier - Math.abs(oColor.blueMultiplier * _local2), oColor.greenMultiplier - Math.abs(oColor.greenMultiplier * _local2), 1, oColor.redOffset - Math.abs(oColor.redOffset * _local2), oColor.greenOffset - Math.abs(oColor.redOffset * _local2), oColor.blueOffset - Math.abs(oColor.redOffset * _local2), oColor.alphaOffset);
_local4.colorTransform = _local3;
}
function addPiece(l_mcPiece) {
aPieces.push(l_mcPiece);
}
function setColor(l_oColor) {
oColor = l_oColor;
var _local3;
var _local2 = new Array();
for (_local3 in this) {
if (_local3 != "mcDot") {
_local2.push(new flash.geom.Transform(this[_local3]));
_local2[_local2.length - 1].colorTransform = oColor;
}
}
}
function cherckUntag(l_mcSource) {
var _local2;
var _local3 = true;
_local2 = 0;
while (_local2 < aPieces.length) {
if (aPieces[_local2]._visible) {
_local3 = false;
break;
}
_local2++;
}
if (_local3 && (sState != "Untagged")) {
sState = "Untagged";
gotoAndStop(sState);
setColor(oColor);
addHits();
init();
}
}
function setCoordonates(l_nAngle) {
var _local3 = _x + 10;
var _local2 = _y + 15;
switch (l_nAngle) {
case 90 :
_local3 = _local3 - _width;
break;
case 180 :
_local3 = _local3 - _width;
_local2 = _local2 - _height;
break;
case 270 :
case -90 :
_local2 = _local2 - _height;
}
nX = Math.round(_local3 / _width);
nY = Math.round(_local2 / _height);
}
function rotate(l_nAngle) {
if ((l_nAngle != 0) && (l_nAngle != undefined)) {
var _local4 = new Array(Array(), Array(), Array());
var _local3;
var _local2;
var _local6 = aPath.length - 1;
var _local5 = aPath[0].length - 1;
_local3 = 0;
while (_local3 <= _local6) {
_local2 = 0;
while (_local2 <= _local5) {
switch (l_nAngle) {
case 90 :
_local4[_local2][_local6 - _local3] = aPath[_local3][_local2];
break;
case 180 :
_local4[_local6 - _local3][_local5 - _local2] = aPath[_local3][_local2];
break;
case 270 :
case -90 :
_local4[_local5 - _local2][_local3] = aPath[_local3][_local2];
}
_local2++;
}
_local3++;
}
aPath = _local4;
}
}
function addHits() {
var _local2;
_local2 = 0;
while (_local2 < aPieces.length) {
aPieces[_local2].addPathHit();
_local2++;
}
}
function removeHits(l_bInit) {
var _local2;
_local2 = 0;
while (_local2 < aPieces.length) {
aPieces[_local2].removePathHit(l_bInit);
_local2++;
}
}
function compensatePathRemove() {
}
function init() {
}
function getPathArray() {
return(aPath);
}
function getX() {
return(nX);
}
function getY() {
return(nY);
}
function getState() {
return(sState);
}
var aPath = new Array(Array(), Array(), Array());
}
Symbol 1353 MovieClip [__Packages.Time] Frame 0
class Time
{
var nSeconds, nMinutes, nFrames;
function Time (l_nMinutes, l_nSeconds) {
nSeconds = l_nSeconds;
nMinutes = l_nMinutes;
nFrames = 30;
}
function update() {
nFrames--;
if (nFrames <= 0) {
nSeconds--;
if (nSeconds < 0) {
nMinutes = Math.max(nMinutes - 1, 0);
nSeconds = 59;
}
nFrames = 30;
}
}
function addTime(l_oTime) {
nSeconds = nSeconds + l_oTime.seconds;
while (nSeconds >= 60) {
nSeconds = nSeconds - 60;
nMinutes++;
}
nMinutes = nMinutes + l_oTime.minutes;
}
function get timeOut() {
return((nSeconds <= 0) && (nMinutes <= 0));
}
function get seconds() {
return(nSeconds);
}
function get minutes() {
return(nMinutes);
}
function set seconds(l_nSeconds) {
nSeconds = l_nSeconds;
nFrames = 30;
//return(seconds);
}
function get exactSecond() {
return(nFrames == 30);
}
function set minutes(l_nMinutes) {
nMinutes = l_nMinutes;
//return(minutes);
}
}
Symbol 1354 MovieClip [__Packages.MCStandBy] Frame 0
class MCStandBy extends MCPowerup
{
function MCStandBy () {
super();
}
var sType = "StandBy";
var sSound = "SndFreeze";
var nValue = 5;
}
Symbol 1355 MovieClip [__Packages.MCTakeTwo] Frame 0
class MCTakeTwo extends MCPowerup
{
function MCTakeTwo () {
super();
}
var sType = "TakeTwo";
}
Symbol 1356 MovieClip [__Packages.MCPointBonus] Frame 0
class MCPointBonus extends MCPowerup
{
function MCPointBonus () {
super();
}
var sType = "PointBonus";
var sSound = "SndPoints";
var nValue = 1000;
}
Symbol 1357 MovieClip [__Packages.sarbakan.utils.SoundController] Frame 0
class sarbakan.utils.SoundController
{
var mcSoundFX, SOUND_FADE_SPEED, bMute, 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;
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].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;
l_oClip.initVolume = l_nVolume;
if (bMute) {
_local2.setVolume(0);
} else {
_local2.setVolume(l_nVolume);
}
_local2.start(0, l_nLoop);
return(_local2);
}
function get muted() {
return(bMute);
}
function set muted(l_bMute) {
bMute = l_bMute;
//return(muted);
}
static var nNextDepth = 0;
}
Symbol 1358 MovieClip [__Packages.objHSNick] Frame 0
class objHSNick
{
var bHSAvailable, G_TestHighScore, bSubmitHS, bGetHS, G_GameID, mcHSZone;
function objHSNick () {
bHSAvailable = true;
G_TestHighScore = false;
bSubmitHS = false;
bGetHS = false;
G_GameID = "km_sushi";
mcHSZone = undefined;
if (G_TestHighScore == true) {
_global.gProxyObj.setServer("www.nick.com");
_global.gProxyObj.setScreenName("bdragons");
_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;
removeMessage();
_local3 = 0;
while (_local3 < _local7) {
_local8 = "";
_local4 = _global.gProxyObj.getScoreItem(_local3);
_local5 = _local4[0];
_local6 = _local4[1];
_global.KMC.addHighScore(_local5, _local6);
_local3++;
}
} 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.KMC.startHighScore(l_mcStage, true, false);
}
function fDoViewHS(l_mcStage, l_bFromGame) {
bGetHS = true;
_global.KMC.startHighScore(l_mcStage, l_bFromGame, true);
}
function fSetHSBoard(P_mcRef) {
mcHSZone = P_mcRef;
if (_global.gProxyObj.getIsLoggedIn()) {
mcHSZone.btnSubmitHS._visible = true;
} else {
mcHSZone.btnSubmitHS._visible = false;
}
}
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 1359 MovieClip [__Packages.Controller] Frame 0
class Controller
{
var mcCont, bPause, sState, oGame, oHighScores, __get__hud, __get__hudTime;
function Controller (l_mcCont) {
_global.KMC = this;
mcCont = l_mcCont;
bPause = false;
mcCont.onEnterFrame = mx.utils.Delegate.create(this, update);
sState = "Menu";
_global.objSounds.clearSound();
mcCont._parent.mcGame.gotoAndStop("Title");
_global.objSounds.playSound("MenuMusic", 25, 99999, true);
if (_global.objHS.bHSAvailable) {
_global.objHS.fDoHSInit();
}
}
function update() {
if (!(sState === "Game")) {
} else if (!bPause) {
oGame.update();
}
}
function startGame() {
_global.objSounds.stopSound("MenuMusic");
_global.objSounds.playSound("GameMusic", 25, 99999, true);
sState = "Begin";
oGame = undefined;
delete oGame;
oGame = new Game(mcCont._parent.mcGame);
oGame.Begin();
bPause = false;
}
function loadLevel() {
sState = "Game";
oGame.LoadLevel();
}
function endGame(l_bWin) {
sState = "Menu";
_global.objSounds.clearSound();
_global.objSounds.playSound("MenuMusic", 25, 99999, true);
if (l_bWin) {
mcCont._parent.mcGame.gotoAndStop("Win");
mcCont._parent.mcGame.txtScore.text = sarbakan.utils.MoreMath.padZero(oGame.__get__score(), 6);
} else {
mcCont._parent.mcGame.gotoAndStop("Lose");
mcCont._parent.mcGame.txtScore.text = sarbakan.utils.MoreMath.padZero(oGame.__get__score(), 6);
}
if (_global.objHS.bHSAvailable) {
mcCont._parent.mcGame.btnViewHS._visible = true;
if (_global.gProxyObj.getIsLoggedIn()) {
_global.objHS.fDoHSInit();
mcCont._parent.mcGame.btnSubmitHS._visible = true;
} else {
mcCont._parent.mcGame.btnSubmitHS._visible = false;
}
} else {
mcCont._parent.mcGame.btnSubmitHS._visible = false;
mcCont._parent.mcGame.btnViewHS._visible = false;
}
}
function gameStart() {
oGame.gameStart();
}
function scoreSubmit() {
}
function nextLevel() {
oGame.nextLevel();
}
function startHighScore(l_mcStage, bFromGame, l_bDisplaySubmit) {
sState = "Score";
l_mcStage.gotoAndStop("Score");
oHighScores = new HighScores(l_mcStage, bFromGame, oGame.__get__score(), l_bDisplaySubmit);
}
function addHighScore(l_sName, l_nScore) {
oHighScores.addHighScore(l_sName, l_nScore);
}
function addPath(oPath) {
oGame.addPath(oPath);
}
function addPiece(oPiece) {
oGame.addPiece(oPiece);
}
function addPlayer(oPlayer) {
oGame.addPlayer(oPlayer);
}
function addEnnemy(oEnnemy) {
oGame.addEnnemy(oEnnemy);
}
function addPowerup(oPowerup) {
oGame.addPowerup(oPowerup);
}
function usePowerup(oPowerup) {
oGame.usePowerup(oPowerup);
}
function addScore(nScoreValue) {
oGame.addScore(nScoreValue);
}
function revealPiece(nScoreValue) {
oGame.revealPiece(nScoreValue);
}
function addCreatureGenerator(oGenerator) {
oGame.addCreatureGenerator(oGenerator);
}
function addLevel(l_sLevel, l_bBackup) {
oGame.addLevel(l_sLevel, l_bBackup);
}
function endLevel(l_bComplete) {
oGame.endLevel(l_bComplete);
}
function get pause() {
return(bPause);
}
function set pause(l_bPause) {
bPause = l_bPause;
oGame.__set__pause(l_bPause);
//return(pause);
}
function set hud(l_mcHud) {
oGame.__set__hud(l_mcHud);
//return(__get__hud());
}
function set hudTime(l_oTime) {
oGame.__set__hudTime(l_oTime);
//return(__get__hudTime());
}
function get state() {
return(sState);
}
}
Symbol 1360 MovieClip [__Packages.Game] Frame 0
class Game
{
var mcStage, bGameRunning, aLevel, nCurrentLevel, nPiecesThisTurn, oHud, oData, nNextLevel, oTime, nPreviousLevel, __get__hud, __get__hudTime, __get__pause;
function Game (l_mcStage) {
mcStage = l_mcStage;
bGameRunning = false;
aLevel = new Array();
nCurrentLevel = -1;
nPiecesThisTurn = 0;
oHud = new Hud();
oData = new Data();
nNextLevel = 1;
oTime = new Time(0, NUMBER_GAME_RESTART_TIME);
}
function Begin() {
mcStage.gotoAndStop("Begin");
mcStage.mcSquare.txtLevel.text = String(nNextLevel);
}
function LoadLevel() {
addLevel("Level" + nNextLevel, false);
}
function Password(l_sLevel) {
nCurrentLevel = 1;
mcStage.gotoAndStop("Password");
var _local2 = oData.getLevel(l_sLevel);
if (l_sLevel != "5") {
mcStage.mcSquare.btnNext._visible = false;
} else {
mcStage.mcSquare.btnNextLevel._visible = false;
}
}
function nextLevel() {
if (nNextLevel != undefined) {
Begin();
} else {
_global.KMC.endGame(true);
}
}
function update() {
if (bGameRunning) {
nPiecesThisTurn = 0;
aLevel[nCurrentLevel].update();
if (aLevel[nCurrentLevel].playerState == "Dead") {
oTime.update();
if (oTime.__get__timeOut()) {
if (!oHud.loseLife()) {
aLevel[nCurrentLevel].resetLevel();
oTime.__set__seconds(NUMBER_GAME_RESTART_TIME);
} else {
_global.KMC.endGame(false);
}
}
} else if (aLevel[nCurrentLevel].playerState == "Win") {
oTime.update();
if (oTime.__get__timeOut()) {
endLevel(true);
oTime.__set__seconds(NUMBER_GAME_RESTART_TIME);
}
} else if (oHud.update()) {
timeOut();
}
}
}
function timeOut() {
aLevel[nCurrentLevel].timeOut();
}
function addLevel(l_sLevel, l_bBackup) {
if (l_bBackup) {
aLevel[nCurrentLevel].setBackup();
}
nPreviousLevel = nCurrentLevel;
nCurrentLevel = undefined;
var _local2;
_local2 = 0;
while (_local2 < aLevel.length) {
if (aLevel[_local2].levelname == l_sLevel) {
nCurrentLevel = _local2;
break;
}
_local2++;
}
if (nCurrentLevel == undefined) {
nCurrentLevel = aLevel.length;
aLevel.push(new Level(l_sLevel, oData.getLevel(l_sLevel)));
}
mcStage.gotoAndStop(l_sLevel);
l_sLevel = l_sLevel.substring(5);
if (isNaN(Number(l_sLevel))) {
l_sLevel = "*";
}
oHud.__set__level(l_sLevel);
bGameRunning = false;
}
function endLevel(l_bComplete) {
var _local4 = aLevel[nCurrentLevel].levelname;
if (l_bComplete) {
var _local3 = oData.getLevel(_local4);
aLevel.splice(nCurrentLevel, 1);
if (_local3.sNextLevel || (_local3.bFinalLevel)) {
if (!_local3.bFinalLevel) {
nNextLevel = _local3.sNextLevel.substring(5);
_global.KMC.addScore(10000);
Password(_local4);
} else {
nNextLevel = undefined;
_global.KMC.addScore(50000);
nextLevel();
}
} else {
_global.KMC.addScore(25000);
if (nCurrentLevel < nPreviousLevel) {
nPreviousLevel--;
}
nCurrentLevel = nPreviousLevel;
aLevel[nCurrentLevel].resetMCArrays();
mcStage.gotoAndStop(aLevel[nCurrentLevel].levelname);
_local4 = aLevel[nCurrentLevel].levelname.substring(5);
if (isNaN(Number(_local4))) {
_local4 = "*";
}
oHud.__set__level(_local4);
}
} else {
aLevel[nCurrentLevel].setBackup();
nCurrentLevel = nPreviousLevel;
aLevel[nCurrentLevel].resetMCArrays();
mcStage.gotoAndStop(aLevel[nCurrentLevel].levelname);
_local4 = aLevel[nCurrentLevel].levelname.substring(5);
if (isNaN(Number(_local4))) {
_local4 = "*";
}
oHud.__set__level(_local4);
aLevel[nCurrentLevel].setPlayerInvincible();
}
}
function gameStart() {
bGameRunning = true;
}
function addPath(oPath) {
aLevel[nCurrentLevel].addPath(oPath);
}
function addPiece(oPiece) {
aLevel[nCurrentLevel].addPiece(oPiece);
}
function addPlayer(oPlayer) {
aLevel[nCurrentLevel].addPlayer(oPlayer);
}
function addEnnemy(oEnnemy) {
aLevel[nCurrentLevel].addEnnemy(oEnnemy);
}
function addPowerup(oPowerup) {
aLevel[nCurrentLevel].addPowerup(oPowerup);
}
function usePowerup(oPowerup) {
aLevel[nCurrentLevel].usePowerup(oPowerup);
}
function addScore(nScoreValue) {
oHud.addScore(nScoreValue);
}
function revealPiece(nScoreValue) {
oHud.addScore(nScoreValue);
var _local3 = oData.getLevel(aLevel[nCurrentLevel].levelname);
if (aLevel[nCurrentLevel].revealPiece()) {
aLevel[nCurrentLevel].win();
_global.objSounds.playSound("win", 100, 1, false);
_global.objSounds.stopSound("invincible");
} else if ((!_local3.bBonus) && (!_local3.bYesMan)) {
nPiecesThisTurn++;
if (nPiecesThisTurn >= 2) {
addLevel("LevelBonus", true);
_global.objSounds.stopSound("invincible");
}
}
}
function addCreatureGenerator(oGenerator) {
aLevel[nCurrentLevel].addCreatureGenerator(oGenerator);
}
function set hud(l_mcHud) {
var _local3 = aLevel[nCurrentLevel].levelname;
var _local2 = oData.getLevel(_local3);
oHud.setHudMC(l_mcHud, _local2.textColor);
if (_local2.bTime) {
oHud.__set__time(new Time(_local2.nMinutes, _local2.nSeconds));
} else {
oHud.__set__time(undefined);
}
//return(__get__hud());
}
function get score() {
return(oHud.__get__score());
}
function set hudTime(l_oTime) {
oHud.__set__time(l_oTime);
//return(__get__hudTime());
}
function set pause(l_bPause) {
aLevel[nCurrentLevel].pause = l_bPause;
//return(__get__pause());
}
var NUMBER_GAME_RESTART_TIME = 3;
}
Symbol 1361 MovieClip [__Packages.Hud] Frame 0
class Hud
{
var nLives, nScore, oTime, mcHud, nLevel, __get__time, __get__level;
function Hud () {
nLives = 4;
nScore = 0;
}
function update() {
oTime.update();
mcHud.setTime(oTime);
return(oTime.__get__timeOut());
}
function setHudMC(l_mcHud, l_textColor) {
mcHud = l_mcHud;
var _local2 = String(nLevel);
if (isNaN(nLevel)) {
_local2 = "*";
}
mcHud.setLevel(_local2);
mcHud.setLives(nLives);
mcHud.setScore(nScore);
mcHud.setColor(l_textColor);
}
function set time(l_oTime) {
if (l_oTime != undefined) {
mcHud.initTime(true);
mcHud.setTime(l_oTime);
oTime = l_oTime;
} else {
mcHud.initTime(false);
oTime = l_oTime;
}
//return(__get__time());
}
function set level(l_sLevel) {
nLevel = Number(l_sLevel);
mcHud.setLevel(String(l_sLevel));
//return(__get__level());
}
function addScore(l_nScore) {
nScore = nScore + l_nScore;
mcHud.setScore(nScore);
}
function loseLife() {
var _local2 = false;
nLives--;
if (nLives == 0) {
_local2 = true;
} else {
mcHud.setLives(nLives);
}
return(_local2);
}
function get score() {
return(nScore);
}
}
Symbol 1362 MovieClip [__Packages.MCHud] Frame 0
class MCHud extends MovieClip
{
var mcLives, txtScore, txtRemaining, txtTime, oTxtFormat, txtLevel;
function MCHud () {
super();
mcLives.gotoAndStop(4);
txtScore.text = formatNumber(0, 6);
txtRemaining._visible = false;
txtTime._visible = false;
_global.KMC.hud = this;
}
function initTime(l_bTime) {
txtRemaining._visible = l_bTime;
txtTime._visible = l_bTime;
}
function setTime(l_oTime) {
txtTime.text = (l_oTime.__get__minutes() + ":") + formatNumber(l_oTime.__get__seconds(), 2);
txtTime.setTextFormat(oTxtFormat);
}
function setLevel(l_sLevel) {
txtLevel.text = l_sLevel;
txtLevel.setTextFormat(oTxtFormat);
}
function setLives(l_nLevel) {
mcLives.gotoAndStop(l_nLevel);
}
function setScore(l_nScore) {
txtScore.text = formatNumber(l_nScore, 6);
txtScore.setTextFormat(oTxtFormat);
}
function setColor(l_nColor) {
oTxtFormat = new TextFormat();
oTxtFormat.color = l_nColor;
txtScore.setTextFormat(oTxtFormat);
txtLevel.setTextFormat(oTxtFormat);
txtTime.setTextFormat(oTxtFormat);
}
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());
}
}
Symbol 1363 MovieClip [__Packages.Data] Frame 0
class Data
{
var oLevel;
function Data () {
var _local2;
oLevel = new Object();
_local2 = 0;
while (_local2 < ARRAY_LEVELS.length) {
oLevel[ARRAY_LEVELS[_local2]] = this["Create" + ARRAY_LEVELS[_local2]]();
_local2++;
}
}
function getLevel(l_sLevel) {
return(oLevel[l_sLevel]);
}
function CreateLevel() {
var _local1 = new Object();
_local1.nCreatureGeneratorSpeed = 5;
_local1.nPowerupGeneratorSpeed = 15;
_local1.nPowerupDuration = 10;
_local1.nMaxSearchDistance = 10;
_local1.bTime = false;
_local1.bPowerup = true;
_local1.bFinalLevel = false;
_local1.bYesMan = false;
_local1.textColor = 16777215 /* 0xFFFFFF */;
return(_local1);
}
function CreateLevel1() {
var _local2 = CreateLevel();
_local2.sNextLevel = "Level2";
_local2.sPassword = "12345678";
_local2.nEnnemySpeed = 1;
_local2.color = new flash.geom.ColorTransform(1, 0.34, 0.51, 1, 163, 0, 125, 0);
_local2.textColor = 15874263 /* 0xF238D7 */;
return(_local2);
}
function CreateLevel2() {
var _local2 = CreateLevel();
_local2.nMaxSearchDistance = 12;
_local2.nEnnemySpeed = 1;
_local2.sNextLevel = "Level3";
_local2.sPassword = "75472673";
_local2.textColor = 7522761 /* 0x72C9C9 */;
return(_local2);
}
function CreateLevel3() {
var _local2 = CreateLevel();
_local2.nCreatureGeneratorSpeed = 4;
_local2.nMaxSearchDistance = 13;
_local2.nEnnemySpeed = 2;
_local2.sNextLevel = "Level4";
_local2.sPassword = "03859175";
_local2.textColor = 39423;
_local2.color = new flash.geom.ColorTransform(0.12, -0.42, -0.06, 1, 0, 180, 224, 0);
return(_local2);
}
function CreateLevel4() {
var _local2 = CreateLevel();
_local2.nCreatureGeneratorSpeed = 4;
_local2.nMaxSearchDistance = 14;
_local2.nEnnemySpeed = 3;
_local2.sNextLevel = "Level5";
_local2.sPassword = "52857287";
_local2.textColor = 14679808 /* 0xDFFF00 */;
_local2.color = new flash.geom.ColorTransform(-0.56, 0.1, -0.18, 1, 224, 225, 0, 0);
return(_local2);
}
function CreateLevel5() {
var _local2 = CreateLevel();
_local2.nCreatureGeneratorSpeed = 3;
_local2.nMaxSearchDistance = 15;
_local2.nEnnemySpeed = 3;
_local2.bYesMan = true;
_local2.bFinalLevel = true;
_local2.bTime = true;
_local2.bPowerup = false;
_local2.nMinutes = 0;
_local2.nSeconds = 20;
_local2.sPassword = "90692769";
_local2.textColor = 16724736 /* 0xFF3300 */;
_local2.color = new flash.geom.ColorTransform(0.29, 0.29, 0.12, 1, 204, 0, 0, 0);
return(_local2);
}
function CreateLevelBonus() {
var _local2 = CreateLevel();
_local2.bBonus = true;
_local2.bTime = true;
_local2.bPowerup = false;
_local2.nMinutes = 0;
_local2.nSeconds = 15;
_local2.textColor = 16287521 /* 0xF88721 */;
_local2.color = new flash.geom.ColorTransform(0.12, 0.2, 0.12, 1, 224, 86, 0, 0);
return(_local2);
}
var ARRAY_LEVELS = new Array("Level1", "Level2", "Level3", "Level4", "Level5", "LevelBonus");
}
Symbol 1364 MovieClip [__Packages.Level] Frame 0
class Level
{
var sLevel, oData, sNextLevel, nPieces, aLevel, aLevelCharacters, aLevelPieces, aEnnemies, oBackup, oPathFinder, oCreatureGenerator, oPowerupGenerator, oPlayer, __get__pause;
function Level (l_sLevel, l_oData) {
sLevel = l_sLevel;
oData = l_oData;
sNextLevel = oData.sNextLevel;
nPieces = 0;
aLevel = new Array();
aLevelCharacters = new Array();
aLevelPieces = new Array();
aEnnemies = new Array();
oBackup = new Backup();
oPathFinder = new PathFinder(aLevel);
oCreatureGenerator = new CreatureGenerator(new Time(0, oData.nCreatureGeneratorSpeed));
if (oData.bPowerup) {
oPowerupGenerator = new PowerupGenerator(new Time(0, oData.nPowerupDuration), new Time(0, oData.nPowerupGeneratorSpeed));
}
}
function update() {
var _local3 = new Obstacles(oPlayer.__get__actorMC().getX(), oPlayer.__get__actorMC().getY(), aLevel);
var _local4 = oPlayer.update(_local3);
moveCharacter(_local4, oPlayer);
revertCell();
var _local2;
_local2 = 0;
while (_local2 < aEnnemies.length) {
_local3 = oPathFinder.update(aEnnemies[_local2].actorMC, oPlayer.__get__actorMC(), oPlayer.__get__invincible());
moveCharacter(aEnnemies[_local2].update(_local3), aEnnemies[_local2]);
_local2++;
}
if (nPieces > 0) {
oCreatureGenerator.update(oPlayer.__get__actorMC());
oPowerupGenerator.update(aLevelPieces);
}
}
function resetMCArrays() {
aLevel = new Array();
aLevelCharacters = new Array();
aLevelPieces = new Array();
oCreatureGenerator.resetCreatureGenerators();
}
function addPath(oPath) {
var _local6 = oPath.getPathArray();
var _local5 = oPath.getX() - 1;
var _local3 = oPath.getY() - 1;
var _local4;
var _local2;
_local4 = 0;
while (_local4 < 3) {
_local2 = 0;
while (_local2 < 3) {
if (aLevel[_local3 + _local2] == undefined) {
aLevel[_local3 + _local2] = new Array();
}
if (aLevelCharacters[_local3 + _local2] == undefined) {
aLevelCharacters[_local3 + _local2] = new Array();
}
if (!isNaN(aLevel[_local3 + _local2][_local5 + _local4])) {
aLevel[_local3 + _local2][_local5 + _local4] = Math.max(_local6[_local2][_local4], aLevel[_local3 + _local2][_local5 + _local4]);
} else if (aLevel[_local3 + _local2][_local5 + _local4] == undefined) {
aLevel[_local3 + _local2][_local5 + _local4] = _local6[_local2][_local4];
}
_local2++;
}
_local4++;
}
_local5++;
_local3++;
oPath.setColor(oData.color);
if (oBackup.getPath(_local3, _local5) != undefined) {
setPiece(oPath, true);
oPath.restoreState(oBackup.getPath(_local3, _local5));
} else {
setPiece(oPath, false);
}
aLevel[_local3][_local5] = oPath;
}
function addPiece(oPiece) {
if (oBackup.getPiece(Math.floor(oPiece._x), Math.floor(oPiece._y)) == undefined) {
var _local6;
var _local5;
var _local3;
var _local2;
_local6 = 0;
while (_local6 < aLevel.length) {
_local5 = 0;
while (_local5 < aLevel[_local6].length) {
_local2 = aLevel[_local6][_local5];
_local3 = new Object({x:_local2.getX() * _local2._width, y:_local2.getY() * _local2._height});
_local2._parent.localToGlobal(_local3);
if (((oPiece.hitTest(_local3.x - (_local2._width / 2), _local3.y - (_local2._height / 2), true) || (oPiece.hitTest(_local3.x + (_local2._width / 2), _local3.y - (_local2._height / 2), true))) || (oPiece.hitTest(_local3.x - (_local2._width / 2), _local3.y + (_local2._height / 2), true))) || (oPiece.hitTest(_local3.x + (_local2._width / 2), _local3.y + (_local2._height / 2), true))) {
oPiece.addPathHit(_local2);
_local2.addPiece(oPiece);
}
_local5++;
}
_local6++;
}
nPieces++;
} else {
var _local6 = 0;
while (_local6 < aLevel.length) {
var _local5 = 0;
while (_local5 < aLevel[_local6].length) {
var _local2 = aLevel[_local6][_local5];
var _local3 = new Object({x:_local2.getX() * _local2._width, y:_local2.getY() * _local2._height});
_local2._parent.localToGlobal(_local3);
if (((oPiece.hitTest(_local3.x - (_local2._width / 2), _local3.y - (_local2._height / 2), true) || (oPiece.hitTest(_local3.x + (_local2._width / 2), _local3.y - (_local2._height / 2), true))) || (oPiece.hitTest(_local3.x - (_local2._width / 2), _local3.y + (_local2._height / 2), true))) || (oPiece.hitTest(_local3.x + (_local2._width / 2), _local3.y + (_local2._height / 2), true))) {
oPiece.addPathHit(_local2);
_local2.addPiece(oPiece);
}
_local5++;
}
_local6++;
}
oPiece.setPaths(oBackup.getPiece(Math.floor(oPiece._x), Math.floor(oPiece._y)));
}
aLevelPieces.push(oPiece);
}
function revealPiece() {
nPieces--;
return(nPieces == 0);
}
function setPiece(oPath, l_bBackup) {
var _local4;
var _local9;
var _local8;
var _local3;
_local4 = 0;
while (_local4 < aLevelPieces.length) {
_local3 = new Object({x:oPath.getX() * oPath._width, y:oPath.getY() * oPath._height});
oPath._parent.localToGlobal(_local3);
if (((aLevelPieces[_local4].hitTest(_local3.x - (oPath._width / 2), _local3.y - (oPath._height / 2), true) || (aLevelPieces[_local4].hitTest(_local3.x + (oPath._width / 2), _local3.y - (oPath._height / 2), true))) || (aLevelPieces[_local4].hitTest(_local3.x - (oPath._width / 2), _local3.y + (oPath._height / 2), true))) || (aLevelPieces[_local4].hitTest(_local3.x + (oPath._width / 2), _local3.y + (oPath._height / 2), true))) {
aLevelPieces[_local4].addPathHit(oPath, l_bBackup);
oPath.addPiece(aLevelPieces[_local4]);
}
_local4++;
}
}
function setBackup() {
var _local2;
var _local3;
_local2 = 0;
while (_local2 < aLevel.length) {
_local3 = 0;
while (_local3 < aLevel[_local2].length) {
oBackup.addPath(_local2, _local3, aLevel[_local2][_local3].getState());
_local3++;
}
_local2++;
}
var _local4 = new Object({x:oPlayer.__get__actorMC().getX(), y:oPlayer.__get__actorMC().getY()});
oBackup.addCharacter(_local4, oPlayer.__get__backupNum());
_local2 = 0;
while (_local2 < aEnnemies.length) {
_local4 = new Object({x:aEnnemies[_local2].actorMC.getX(), y:aEnnemies[_local2].actorMC.getY()});
oBackup.addCharacter(_local4, aEnnemies[_local2].backupNum);
aEnnemies[_local2].firstX = aEnnemies[_local2].actorMC.getFirstX();
aEnnemies[_local2].firstY = aEnnemies[_local2].actorMC.getFirstY();
_local2++;
}
_local2 = 0;
while (_local2 < aLevelPieces.length) {
oBackup.addPiece(Math.floor(aLevelPieces[_local2]._x), Math.floor(aLevelPieces[_local2]._y), aLevelPieces[_local2].getPaths());
_local2++;
}
}
function addPlayer(l_mcPlayer) {
if (oPlayer == undefined) {
oPlayer = new Player(l_mcPlayer);
} else {
var _local2 = oBackup.getCharacter(oPlayer.__get__backupNum());
oPlayer.__set__actorMC(l_mcPlayer);
l_mcPlayer.moveAbsolute(_local2.x, _local2.y);
}
addElement(oPlayer);
}
function addEnnemy(l_mcEnnemy) {
l_mcEnnemy.setSearchDistance(oData.nMaxSearchDistance);
l_mcEnnemy.setSpeed(oData.nEnnemySpeed);
var _local5 = aEnnemies.length;
if (ennemyInLevel(l_mcEnnemy)) {
for (var _local4 in aEnnemies) {
if (aEnnemies[_local4].actorMC == l_mcEnnemy) {
_local5 = _local4;
break;
}
}
if (_local5 == aEnnemies.length) {
aEnnemies.push(new Ennemy(l_mcEnnemy));
}
addElement(aEnnemies[_local5]);
_global.objSounds.playSound(l_mcEnnemy.getSpawnSound(), 100, 1, false);
} else {
_local5 = ennemyBackup(l_mcEnnemy);
if (!isNaN(_local5)) {
var _local6 = oBackup.getCharacter(aEnnemies[_local5].backupNum);
aEnnemies[_local5].actorMC = l_mcEnnemy;
l_mcEnnemy.moveAbsolute(_local6.x, _local6.y);
} else {
oCreatureGenerator.addCreature(l_mcEnnemy);
oCreatureGenerator.addCreatureMaster(l_mcEnnemy);
l_mcEnnemy.swapDepths(l_mcEnnemy._parent.getNextHighestDepth());
l_mcEnnemy.removeMovieClip();
}
}
}
function addCreatureGenerator(oGenerator) {
oCreatureGenerator.addCreatureGenerator(oGenerator);
}
function addPowerup(oPowerup) {
if (oPlayer.__get__actorMC().getDepth() < oPowerup.getDepth()) {
oPlayer.__get__actorMC().swapDepths(oPowerup.getDepth());
}
var _local3;
_local3 = 0;
while (_local3 < aEnnemies.length) {
if (aEnnemies[_local3].actorMC.getDepth() < oPowerup.getDepth()) {
aEnnemies[_local3].actorMC.swapDepths(oPowerup.getDepth());
}
_local3++;
}
_local3 = 0;
while (_local3 < aLevelPieces.length) {
var _local4 = new Object({x:oPowerup._x, y:oPowerup._y});
oPowerup._parent.localToGlobal(_local4);
aLevelPieces[_local3]._parent.globalToLocal(_local4);
if ((Math.abs(aLevelPieces[_local3]._x - oPowerup._x) < 1) && (Math.abs(aLevelPieces[_local3]._y - oPowerup._y) < 1)) {
aLevelPieces[_local3].setPowerup(oPowerup);
break;
}
_local3++;
}
}
function usePowerup(oPowerup) {
switch (oPowerup.getType()) {
case "StandBy" :
var _local3;
_local3 = 0;
while (_local3 < aEnnemies.length) {
aEnnemies[_local3].freeze(oPowerup.getValue());
var _local5 = new Time(0, oPowerup.getValue());
oCreatureGenerator.addTime(_local5);
_local3++;
}
_global.KMC.addScore(500);
break;
case "TakeTwo" :
_local3 = 0;
while (_local3 < aEnnemies.length) {
aEnnemies[_local3].die();
oCreatureGenerator.reset();
_local3++;
}
aEnnemies = new Array();
_global.KMC.addScore(500);
_global.objSounds.playSound("EatSushi", 100, 1, false);
break;
case "PointBonus" :
_global.KMC.addScore(oPowerup.getValue());
break;
case "GuanoPower" :
var _local5 = new Time(0, oPowerup.getValue());
oPlayer.setInvincible(_local5);
_global.KMC.addScore(300);
}
}
function resetLevel() {
var _local3;
var _local2;
var _local4;
oBackup = new Backup();
aLevelCharacters = new Array();
oPlayer.reset();
addElement(oPlayer);
while (aEnnemies.length > 0) {
_local4 = aEnnemies[0].actorMC;
aEnnemies.shift();
_local4.swapDepths(_local4._parent.getNextHighestDepth());
_local4.removeMovieClip();
}
aEnnemies = new Array();
_local3 = 0;
while (_local3 < aLevel.length) {
_local2 = 0;
while (_local2 < aLevel[_local3].length) {
aLevel[_local3][_local2].reset();
_local2++;
}
_local3++;
}
oCreatureGenerator.reset();
}
function win() {
_global.objSounds.playSound("EatSushi", 100, 1, false);
oPlayer.__get__actorMC().win();
var _local3;
_local3 = 0;
while (_local3 < aEnnemies.length) {
aEnnemies[_local3].die();
oCreatureGenerator.__set__time(new Time(10, 0));
_local3++;
}
}
function timeOut() {
switch (true) {
case oData.bBonus :
_global.KMC.endLevel(false);
break;
case oData.bYesMan :
removePieces();
var _local3 = new Time(oData.nMinutes, oData.nSeconds);
_global.KMC.hudTime = _local3;
}
}
function setPlayerInvincible() {
oPlayer.setInvincible();
}
function addElement(l_oNewType) {
var _local3 = new Object({x:l_oNewType.actorMC.getX(), y:l_oNewType.actorMC.getY()});
if (aLevelCharacters[l_oNewType.actorMC.getY()] == undefined) {
aLevelCharacters[l_oNewType.actorMC.getY()] = new Array();
}
aLevelCharacters[l_oNewType.actorMC.getY()][l_oNewType.actorMC.getX()] = l_oNewType;
l_oNewType.backupNum = oBackup.addCharacter(_local3);
}
function moveCharacter(l_oCoord, l_oNewType) {
if (l_oCoord != undefined) {
switch (true) {
case aLevelCharacters[l_oCoord.y - 1][l_oCoord.x] == l_oNewType :
aLevelCharacters[l_oCoord.y - 1][l_oCoord.x] = undefined;
break;
case aLevelCharacters[l_oCoord.y + 1][l_oCoord.x] == l_oNewType :
aLevelCharacters[l_oCoord.y + 1][l_oCoord.x] = undefined;
break;
case aLevelCharacters[l_oCoord.y][l_oCoord.x - 1] == l_oNewType :
aLevelCharacters[l_oCoord.y][l_oCoord.x - 1] = undefined;
break;
case aLevelCharacters[l_oCoord.y][l_oCoord.x + 1] == l_oNewType :
aLevelCharacters[l_oCoord.y][l_oCoord.x + 1] = undefined;
}
if (ennemyCollide(l_oCoord, l_oNewType)) {
if (oPlayer.__get__invincible()) {
if (l_oNewType.actorMC.getType() == "Ennemy") {
oCreatureGenerator.addCreature(l_oNewType.actorMC);
l_oNewType.actorMC.death();
} else {
oCreatureGenerator.addCreature(aLevelCharacters[l_oCoord.y][l_oCoord.x].actorMC);
aLevelCharacters[l_oCoord.y][l_oCoord.x].actorMC.death();
var _local5 = aLevel[l_oCoord.y][l_oCoord.x].playerPass();
revertTrueEmptyCell(oPlayer.__get__prevCoordonates(), _local5);
}
_global.objSounds.playSound("EatSushi", 100, 1, false);
} else {
_global.objSounds.playSound("die", 100, 1, false);
if (l_oNewType.actorMC.getType() == "Player") {
l_oNewType.actorMC.death();
} else {
aLevelCharacters[l_oCoord.y][l_oCoord.x].actorMC.death();
}
}
} else if (l_oNewType.actorMC.getType() == "Player") {
var _local5 = aLevel[l_oCoord.y][l_oCoord.x].playerPass();
revertTrueEmptyCell(oPlayer.__get__prevCoordonates(), _local5);
}
if (aLevelCharacters[l_oCoord.y] == undefined) {
aLevelCharacters[l_oCoord.y] = Array();
}
aLevelCharacters[l_oCoord.y][l_oCoord.x] = l_oNewType;
}
}
function revertTrueEmptyCell(l_oCoord, l_sState) {
if (l_sState != "Locked") {
var _local3 = aLevel[l_oCoord.y][l_oCoord.x].getState();
if (_local3 != l_sState) {
aLevel[l_oCoord.y][l_oCoord.x].playerPass();
}
}
}
function revertCell() {
if (oPlayer.__get__oppositeDir()) {
var _local2 = oPlayer.__get__prevCoordonates();
aLevel[_local2.y][_local2.x].playerPass();
}
}
function removePieces() {
var _local2 = new Array();
var _local3;
_local3 = 0;
while (_local3 < aLevelPieces.length) {
if (aLevelPieces[_local3].getPaths() == 0) {
_local2.push(aLevelPieces[_local3]);
}
_local3++;
}
if (_local2.length > 0) {
do {
var l_nRnd = Math.floor(Math.random() * _local2.length);
_local2[l_nRnd]._visible = false;
_local2[l_nRnd].resetAllPaths();
if (_local2[l_nRnd].getPaths() == 0) {
_local2[l_nRnd]._visible = true;
}
} while (_local2[l_nRnd]._visible);
_local2[l_nRnd].flashOut();
nPieces++;
}
}
function ennemyInLevel(l_mcEnnemy) {
var _local2 = true;
var _local1 = new Object({x:l_mcEnnemy._x, y:l_mcEnnemy._y});
if ((((_local1.x > Stage.width) || (_local1.y > Stage.height)) || (_local1.x < 0)) || (_local1.y < 0)) {
_local2 = false;
}
return(_local2);
}
function ennemyBackup(l_mcEnnemy) {
var _local2;
var _local4;
_local2 = 0;
while (_local2 < aEnnemies.length) {
if ((aEnnemies[_local2].firstX == l_mcEnnemy._x) && (aEnnemies[_local2].firstY == l_mcEnnemy._y)) {
_local4 = _local2;
break;
}
_local2++;
}
return(_local4);
}
function ennemyCollide(l_oCoord, l_oNewType) {
var _local2 = false;
if ((aLevelCharacters[l_oCoord.y][l_oCoord.x].actorMC.getType() == "Player") || (l_oNewType.actorMC.getType() == "Player")) {
if ((aLevelCharacters[l_oCoord.y][l_oCoord.x].actorMC.getType() == "Ennemy") || (l_oNewType.actorMC.getType() == "Ennemy")) {
_local2 = true;
}
}
return(_local2);
}
function get levelname() {
return(sLevel);
}
function get playerState() {
return(oPlayer.__get__actorMC().getState());
}
function get playerInvincible() {
return(oPlayer.__get__playerInvincible()());
}
function set pause(l_bPause) {
oPlayer.__get__actorMC().setPause(l_bPause);
var _local2;
_local2 = 0;
while (_local2 < aEnnemies.length) {
aEnnemies[_local2].actorMC.setPause(l_bPause);
_local2++;
}
//return(__get__pause());
}
}
Symbol 1365 MovieClip [__Packages.Actor] Frame 0
class Actor
{
var oView, nBackup;
function Actor (l_mcActor) {
oView = new View(l_mcActor);
}
function update() {
}
function get actorMC() {
return(oView.__get__actorMC());
}
function set actorMC(l_mcActor) {
oView.__set__actorMC(l_mcActor);
//return(actorMC);
}
function get backupNum() {
return(nBackup);
}
function set backupNum(l_nBackup) {
nBackup = l_nBackup;
//return(backupNum);
}
}
Symbol 1366 MovieClip [__Packages.View] Frame 0
class View
{
var mcActor, bMoving;
function View (l_mcActor) {
mcActor = l_mcActor;
bMoving = false;
}
function update() {
return(mcActor.update());
}
function moveTo(l_sDir, l_bOppositeDir) {
mcActor.move(l_sDir, l_bOppositeDir);
}
function get moving() {
return(bMoving);
}
function get actorMC() {
return(mcActor);
}
function set actorMC(l_actorMC) {
mcActor = l_actorMC;
//return(actorMC);
}
}
Symbol 1367 MovieClip [__Packages.MCActor] Frame 0
class MCActor extends MovieClip
{
var nSpeed, nX, nTargetX, nY, nTargetY, nFirstX, nFirstY, _x, _y, sState, gotoAndStop, _xscale, sLastDirection, mcClip, sType;
function MCActor () {
super();
nSpeed = NUMBER_SPEED;
nX = (nTargetX = nX);
nY = (nTargetY = nY);
nFirstX = nFirstX;
nFirstY = nFirstY;
if ((nX == undefined) || (nY == undefined)) {
nX = (nTargetX = Math.round(getConvertedX() / NUMBER_WIDTH));
nY = (nTargetY = Math.round(getConvertedY() / NUMBER_HEIGHT));
} else {
alignToCase();
}
if ((nFirstX == undefined) || (nFirstY == undefined)) {
nFirstX = _x;
nFirstY = _y;
}
sState = "Idle";
}
function update() {
var _local2;
switch (sState) {
case "Moving" :
switch (true) {
case nTargetX < nX :
_x = _x - nSpeed;
gotoAndStop("runside");
_xscale = -100;
break;
case nTargetX > nX :
_x = _x + nSpeed;
gotoAndStop("runside");
_xscale = 100;
break;
case nTargetY < nY :
_y = _y - nSpeed;
gotoAndStop("runup");
break;
case nTargetY > nY :
_y = _y + nSpeed;
gotoAndStop("rundown");
}
if ((Math.round(getConvertedX()) == (nTargetX * NUMBER_WIDTH)) && (Math.round(getConvertedY()) == (nTargetY * NUMBER_HEIGHT))) {
sState = "Idle";
calculateCoords();
alignToCase();
_local2 = new Object({x:nX, y:nY});
}
break;
case "Idle" :
gotoAndStop("idle");
}
return(_local2);
}
function move(l_sDirection, l_bOppositeDir, l_sLastDirection) {
if (l_sDirection != undefined) {
sLastDirection = l_sDirection;
if (sState != "Moving") {
sState = "Moving";
if ((nTargetX == nX) && (nTargetY == nY)) {
switch (l_sDirection) {
case "Left" :
nTargetX = nTargetX - 1;
break;
case "Right" :
nTargetX = nTargetX + 1;
break;
case "Up" :
nTargetY = nTargetY - 1;
break;
case "Down" :
nTargetY = nTargetY + 1;
}
}
} else if (l_bOppositeDir) {
switch (l_sDirection) {
case "Left" :
nTargetX = nTargetX - 2;
break;
case "Right" :
nTargetX = nTargetX + 2;
break;
case "Up" :
nTargetY = nTargetY - 2;
break;
case "Down" :
nTargetY = nTargetY + 2;
}
} else if (sState == "Moving") {
sLastDirection = l_sLastDirection;
}
}
}
function freeze() {
sState = "Frozen";
gotoAndStop("hurt");
mcClip.stop();
}
function death() {
sState = "Dead";
gotoAndStop("hurt");
mcClip.play();
}
function reset() {
_x = nFirstX;
_y = nFirstY;
calculateCoords();
nTargetX = nX;
nTargetY = nY;
sState = "Idle";
sLastDirection = undefined;
}
function moveAbsolute(l_nX, l_nY) {
nTargetX = (nX = l_nX);
nTargetY = (nY = l_nY);
alignToCase();
}
function calculateCoords() {
nX = Math.round(getConvertedX() / NUMBER_WIDTH);
nY = Math.round(getConvertedY() / NUMBER_HEIGHT);
}
function alignToCase() {
_x = nX * NUMBER_WIDTH;
_y = (nY * NUMBER_HEIGHT) - 5;
}
function setPause(l_bPause) {
var _local2;
for (_local2 in this) {
if (!l_bPause) {
if (sState != "Frozen") {
this[_local2].play();
}
} else {
this[_local2].stop();
}
}
}
function getConvertedX() {
return(_x);
}
function getConvertedY() {
return(_y + 5);
}
function getX() {
return(nX);
}
function getY() {
return(nY);
}
function getType() {
return(sType);
}
function setState(l_sState) {
sState = l_sState;
}
function getState() {
return(sState);
}
function getFirstX() {
return(nFirstX);
}
function getFirstY() {
return(nFirstY);
}
function getLastDirection() {
return(sLastDirection);
}
var NUMBER_WIDTH = 20;
var NUMBER_HEIGHT = 20;
var NUMBER_SPEED = MCActor.prototype.NUMBER_WIDTH / 5;
}
Symbol 1368 MovieClip [__Packages.Player] Frame 0
class Player extends Actor
{
var bInvincible, oControls, sOppositeDir, bOppositeDir, oView, oPrevCoords, oTime;
function Player (l_mcPlayer) {
super(l_mcPlayer);
bInvincible = false;
oControls = new Controls(l_mcPlayer);
}
function update(l_oObstacles) {
if ((actorMC.getState() != "Dead") && (actorMC.getState() != "Win")) {
var _local3 = oControls.update();
if ((!l_oObstacles[_local3]) && (_local3 != undefined)) {
if (sOppositeDir == _local3) {
bOppositeDir = true;
} else {
bOppositeDir = false;
}
oView.moveTo(_local3, bOppositeDir);
sOppositeDir = l_oObstacles.oppositeDir(_local3);
} else if (((l_oObstacles[_local3] || (_local3 == undefined)) && (l_oObstacles.__get__choices() <= 2)) && (!l_oObstacles[oView.__get__actorMC().getLastDirection()])) {
bOppositeDir = false;
oView.moveTo();
}
oPrevCoords = new Object({x:actorMC.getX(), y:actorMC.getY()});
if (bInvincible) {
oTime.update();
if (oTime.__get__timeOut()) {
bInvincible = false;
actorMC.setPower(bInvincible);
_global.objSounds.stopSound("invincible");
} else if (oTime.__get__exactSecond() && ((oTime.__get__seconds() == 1) || (oTime.__get__seconds() == 2))) {
_global.objSounds.playSound("alarm", 100, 1, false);
}
}
return(oView.update());
}
}
function setInvincible(l_oTime) {
if (l_oTime) {
oTime = l_oTime;
}
if ((oTime.__get__seconds() > 0) || (oTime.__get__minutes() > 0)) {
bInvincible = true;
actorMC.setPower(bInvincible);
_global.objSounds.playSound("invincible", 100, 9999, true);
}
}
function reset() {
actorMC.reset();
}
function get invincible() {
return(bInvincible);
}
function get prevCoordonates() {
return(oPrevCoords);
}
function get oppositeDir() {
return(bOppositeDir);
}
function get playerInvincible() {
return(bInvincible);
}
function set oppositeDir(l_bOppositeDir) {
bOppositeDir = l_bOppositeDir;
//return(oppositeDir);
}
function get actorMC() {
return(super.__get__actorMC());
}
function set actorMC(l_mcActor) {
super.__set__actorMC(l_mcActor);
oView.actorMC.setPower(bInvincible);
//return(actorMC);
}
}
Symbol 1369 MovieClip [__Packages.Controls] Frame 0
class Controls
{
var mcPlayer, keyListen;
function Controls (l_mcPlayer) {
mcPlayer = l_mcPlayer;
setKeyListener();
}
function update() {
var _local2;
if (keyListen.Right) {
_local2 = "Right";
}
if (keyListen.Left) {
_local2 = "Left";
}
if (keyListen.Up) {
_local2 = "Up";
}
if (keyListen.Down) {
_local2 = "Down";
}
return(_local2);
}
function setKeyListener() {
mcPlayer.KeyListener = new com.sarbakan.utils.KeyManager();
keyListen = mcPlayer.KeyListener;
keyListen.addKeyListener(39, "Right");
keyListen.addKeyListener(37, "Left");
keyListen.addKeyListener(40, "Down");
keyListen.addKeyListener(38, "Up");
keyListen.addKeyListener(80, "Pause");
}
}
Symbol 1370 MovieClip [__Packages.com.sarbakan.utils.KeyManager] Frame 0
class com.sarbakan.utils.KeyManager
{
var oKeyList;
function KeyManager () {
mx.transitions.OnEnterFrameBeacon.init();
MovieClip.addListener(this);
oKeyList = new Object();
}
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 setKey() {
var _local2;
for (_local2 in oKeyList) {
if (Key.isDown(oKeyList[_local2].nKeyCode)) {
this[_local2] = true;
} else {
this[_local2] = false;
}
}
}
}
Symbol 1371 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 1372 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 1373 MovieClip [__Packages.MCPlayer] Frame 0
class MCPlayer extends MCActor
{
var bPower, mcPower, gotoAndStop, sState, sLastDirection;
function MCPlayer () {
super();
bPower = false;
mcPower._visible = false;
_global.KMC.addPlayer(this);
gotoAndStop("Idle");
}
function update() {
var _local3 = super.update();
mcPower._visible = bPower;
return(_local3);
}
function win() {
sState = "Win";
gotoAndStop("victory");
}
function setPower(l_bPower) {
bPower = l_bPower;
}
function reset() {
super.reset();
}
function move(l_sDirection, l_bOppositeDir) {
var _local3 = sLastDirection;
if (l_sDirection != undefined) {
sLastDirection = l_sDirection;
}
super.move(sLastDirection, l_bOppositeDir, _local3);
}
var sType = "Player";
}
Symbol 1374 MovieClip [__Packages.Obstacles] Frame 0
class Obstacles
{
var Up, Down, Left, Right;
function Obstacles (l_nX, l_nY, l_aLevel) {
if (((l_nX == undefined) || (l_nY == undefined)) || (l_aLevel == undefined)) {
Up = true;
Down = true;
Left = true;
Right = true;
} else {
Up = (l_aLevel[l_nY - 1][l_nX] == 0) || (l_aLevel[l_nY - 1][l_nX] == undefined);
Down = (l_aLevel[l_nY + 1][l_nX] == 0) || (l_aLevel[l_nY + 1][l_nX] == undefined);
Left = (l_aLevel[l_nY][l_nX - 1] == 0) || (l_aLevel[l_nY][l_nX - 1] == undefined);
Right = (l_aLevel[l_nY][l_nX + 1] == 0) || (l_aLevel[l_nY][l_nX + 1] == undefined);
}
}
function get choices() {
var _local2 = 0;
aValid = new Array();
if (!Up) {
_local2++;
aValid.push("Up");
}
if (!Down) {
_local2++;
aValid.push("Down");
}
if (!Left) {
_local2++;
aValid.push("Left");
}
if (!Right) {
_local2++;
aValid.push("Right");
}
return(_local2);
}
function rndValidDir(l_sDir) {
var _local2;
if (aValid.length > 1) {
l_sDir = oppositeDir(l_sDir);
do {
_local2 = Math.floor(Math.random() * aValid.length);
} while (l_sDir == aValid[_local2]);
} else {
_local2 = 0;
}
return(aValid[_local2]);
}
function oppositeDir(l_sDir) {
var _local1;
switch (l_sDir) {
case "Left" :
_local1 = "Right";
break;
case "Right" :
_local1 = "Left";
break;
case "Up" :
_local1 = "Down";
break;
case "Down" :
_local1 = "Up";
}
return(_local1);
}
function addDirection(l_nX, l_nY, l_aLevel, l_sDirection) {
var _local5 = movePosition(l_nX, l_nY, l_sDirection);
l_nX = _local5.x;
l_nY = _local5.y;
if (!Up) {
Up = (l_aLevel[l_nY - 1][l_nX] == 0) || (l_aLevel[l_nY - 1][l_nX] == undefined);
}
if (!Down) {
Down = (l_aLevel[l_nY + 1][l_nX] == 0) || (l_aLevel[l_nY + 1][l_nX] == undefined);
}
if (!Left) {
Left = (l_aLevel[l_nY][l_nX - 1] == 0) || (l_aLevel[l_nY][l_nX - 1] == undefined);
}
if (!Right) {
Right = (l_aLevel[l_nY][l_nX + 1] == 0) || (l_aLevel[l_nY][l_nX + 1] == undefined);
}
}
function movePosition(l_nX, l_nY, l_sDirection) {
switch (l_sDirection) {
case "Left" :
l_nX--;
break;
case "Right" :
l_nX++;
break;
case "Up" :
l_nY--;
break;
case "Down" :
l_nY++;
}
var _local1 = new Object({x:l_nX, y:l_nY});
return(_local1);
}
var aValid = new Array();
}
Symbol 1375 MovieClip [__Packages.CreatureGenerator] Frame 0
class CreatureGenerator
{
var aSpawnPoints, aCreaturesToSpawn, aCreaturesToSpawnMaster, oTime, oOriginalTime, mcLevel, __get__time;
function CreatureGenerator (l_oTime) {
aSpawnPoints = new Array();
aCreaturesToSpawn = new Array();
aCreaturesToSpawnMaster = new Array();
time = (l_oTime);
}
function update(l_mcPlayer) {
if (aCreaturesToSpawn.length > 0) {
oTime.update();
if (oTime.__get__timeOut()) {
if (((aSpawnPoints[0].getX() < (l_mcPlayer.getX() - 2)) || (aSpawnPoints[0].getX() > (l_mcPlayer.getX() + 2))) || ((aSpawnPoints[0].getY() < (l_mcPlayer.getY() - 2)) || (aSpawnPoints[0].getY() > (l_mcPlayer.getY() + 2)))) {
oTime = new Time(oOriginalTime.__get__minutes(), oOriginalTime.__get__seconds());
spawnCreature();
} else {
oTime = new Time(0, 1);
}
}
}
}
function addCreatureGenerator(l_mcSpawn) {
mcLevel = l_mcSpawn._parent;
aSpawnPoints.push(l_mcSpawn);
}
function resetCreatureGenerators() {
aSpawnPoints = new Array();
}
function reset() {
aCreaturesToSpawn = aCreaturesToSpawnMaster.slice();
oTime = new Time(oOriginalTime.__get__minutes(), oOriginalTime.__get__seconds());
}
function addCreature(l_mcCreature) {
var _local4 = false;
var _local2;
_local2 = 0;
while (_local2 < aCreaturesToSpawn.length) {
if ((aCreaturesToSpawn[_local2].firstX == l_mcCreature.getFirstX()) && (aCreaturesToSpawn[_local2].firstY == l_mcCreature.getFirstY())) {
_local4 = true;
break;
}
_local2++;
}
if (!_local4) {
aCreaturesToSpawn.push(new Object({firstX:l_mcCreature.getFirstX(), firstY:l_mcCreature.getFirstY(), ident:l_mcCreature.getIdentifier()}));
}
}
function addCreatureMaster(l_mcCreature) {
var _local4 = false;
var _local2;
_local2 = 0;
while (_local2 < aCreaturesToSpawnMaster.length) {
if ((aCreaturesToSpawnMaster[_local2].firstX == l_mcCreature.getFirstX()) && (aCreaturesToSpawnMaster[_local2].firstY == l_mcCreature.getFirstY())) {
_local4 = true;
break;
}
_local2++;
}
if (!_local4) {
aCreaturesToSpawnMaster.push(new Object({firstX:l_mcCreature.getFirstX(), firstY:l_mcCreature.getFirstY(), ident:l_mcCreature.getIdentifier()}));
}
}
function spawnCreature() {
var _local2 = aCreaturesToSpawn.shift();
var _local3 = mcLevel.getNextHighestDepth();
var _local4 = mcLevel.attachMovie(_local2.ident, "creature" + _local3, _local3, {nX:aSpawnPoints[0].getX(), nY:aSpawnPoints[0].getY(), nFirstX:_local2.firstX, nFirstY:_local2.firstY});
aSpawnPoints.push(aSpawnPoints.shift());
}
function addTime(l_oTime) {
oTime.addTime(l_oTime);
}
function set time(l_oTime) {
oTime = l_oTime;
oOriginalTime = new Time(l_oTime.__get__minutes(), l_oTime.__get__seconds());
//return(__get__time());
}
}
Symbol 1376 MovieClip [__Packages.MCCreatureGenerator] Frame 0
class MCCreatureGenerator extends MCActor
{
var _visible;
function MCCreatureGenerator () {
super();
_global.KMC.addCreatureGenerator(this);
_visible = false;
}
}
Symbol 1377 MovieClip [__Packages.MCEnnemy] Frame 0
class MCEnnemy extends MCActor
{
var sIdentifier, sLastDirection, onEnterFrame, nSpeed;
function MCEnnemy () {
super();
_global.KMC.addEnnemy(this);
}
function get maxSearchDistance() {
return(l_nMaxSearchDistance);
}
function getIdentifier() {
return(sIdentifier);
}
function getSpawnSound() {
return(sSpawnSound);
}
function move(l_sDirection, l_bOppositeDir) {
super.move(l_sDirection, l_bOppositeDir, sLastDirection);
}
function death() {
super.death();
onEnterFrame = function () {
if (this.mcClip._currentframe == this.mcClip._totalframes) {
this.swapDepths(this._parent.getNextHighestDepth());
this.removeMovieClip();
}
};
_global.KMC.addScore(250);
}
function setSearchDistance(l_nDistance) {
l_nMaxSearchDistance = l_nDistance;
}
function setSpeed(l_nSpeedLevel) {
nSpeed = ARRAY_SPEED[l_nSpeedLevel - 1];
}
var ARRAY_SPEED = new Array(MCActor.prototype.NUMBER_WIDTH / 8, MCActor.prototype.NUMBER_WIDTH / 5, MCActor.prototype.NUMBER_WIDTH / 5);
var sType = "Ennemy";
var l_nMaxSearchDistance = 10;
var sSpawnSound = "SpawnMed";
}
Symbol 1378 MovieClip [__Packages.Backup] Frame 0
class Backup
{
var aLevelState, aCharacters, aPieces;
function Backup () {
aLevelState = new Array();
aCharacters = new Array();
aPieces = new Array();
}
function addPath(l_nX, l_nY, l_sState) {
if (aLevelState[l_nX] == undefined) {
aLevelState[l_nX] = new Array();
}
aLevelState[l_nX][l_nY] = l_sState;
}
function getPath(l_nX, l_nY) {
return(aLevelState[l_nX][l_nY]);
}
function addCharacter(l_oCoords, nActor) {
if (nActor == undefined) {
nActor = aCharacters.length;
}
aCharacters[nActor] = l_oCoords;
return(nActor);
}
function getCharacter(nActor) {
return(aCharacters[nActor]);
}
function addPiece(l_nX, l_nY, nPaths) {
if (aPieces[l_nX] == undefined) {
aPieces[l_nX] = new Array();
}
aPieces[l_nX][l_nY] = nPaths;
}
function getPiece(l_nX, l_nY) {
return(aPieces[l_nX][l_nY]);
}
}
Symbol 1379 MovieClip [__Packages.PathFinder] Frame 0
class PathFinder
{
var aLevel;
function PathFinder (l_aLevel) {
aLevel = l_aLevel;
}
function update(l_mcFoe, l_mcPlayer, l_bInvincible) {
var _local5 = new Obstacles(l_mcFoe.getX(), l_mcFoe.getY(), aLevel);
var _local2 = Math.abs(l_mcFoe.getX() - l_mcPlayer.getX()) + Math.abs(l_mcFoe.getY() - l_mcPlayer.getY());
var _local8 = l_mcFoe.maxSearchDistance;
if ((l_mcFoe.getState() != "Moving") && (_local2 <= _local8)) {
_local2 = 0;
var _local4 = 0;
var _local7;
if (!_local5.Up) {
_local2 = search(_local8, "Up", l_mcFoe.getX(), l_mcFoe.getY(), l_mcPlayer.getX(), l_mcPlayer.getY());
if (((_local4 == undefined) || (_local4 < _local2)) && (_local2 > 0)) {
_local7 = "Up";
_local4 = _local2;
}
}
if (!_local5.Down) {
_local2 = search(_local8 - _local4, "Down", l_mcFoe.getX(), l_mcFoe.getY(), l_mcPlayer.getX(), l_mcPlayer.getY());
if (((_local4 == undefined) || (_local4 < _local2)) && (_local2 > 0)) {
_local7 = "Down";
_local4 = _local2;
}
}
if (!_local5.Left) {
_local2 = search(_local8 - _local4, "Left", l_mcFoe.getX(), l_mcFoe.getY(), l_mcPlayer.getX(), l_mcPlayer.getY());
if (((_local4 == undefined) || (_local4 < _local2)) && (_local2 > 0)) {
_local7 = "Left";
_local4 = _local2;
}
}
if (!_local5.Right) {
_local2 = search(_local8 - _local4, "Right", l_mcFoe.getX(), l_mcFoe.getY(), l_mcPlayer.getX(), l_mcPlayer.getY());
if (((_local4 == undefined) || (_local4 < _local2)) && (_local2 > 0)) {
_local7 = "Right";
_local4 = _local2;
}
}
if (_local4 > 0) {
if (l_bInvincible) {
_local5[_local7] = true;
} else {
var _local9 = Math.ceil(Math.random() * 100);
if (_local9 > 35) {
if (_local7 != _local5.oppositeDir(l_mcFoe.getLastDirection())) {
_local5 = new Obstacles();
_local5[_local7] = false;
}
}
}
}
} else if (l_mcFoe.getState() == "Moving") {
if (!_local5[l_mcFoe.getLastDirection()]) {
_local5 = new Obstacles();
_local5[l_mcFoe.getLastDirection()] = false;
}
}
return(_local5);
}
function search(l_nDistanceRemaining, l_sDirection, l_nX, l_nY, l_nTargetX, l_nTargetY) {
l_nDistanceRemaining--;
var _local2 = 0;
switch (l_sDirection) {
case "Left" :
l_nX = l_nX - 1;
break;
case "Right" :
l_nX = l_nX + 1;
break;
case "Up" :
l_nY = l_nY - 1;
break;
case "Down" :
l_nY = l_nY + 1;
}
if ((l_nDistanceRemaining > 0) && (!((l_nX == l_nTargetX) && (l_nY == l_nTargetY)))) {
var _local5 = new Obstacles(l_nX, l_nY, aLevel);
_local5[_local5.oppositeDir(l_sDirection)] = true;
if (!_local5.Up) {
_local2 = search(l_nDistanceRemaining, "Up", l_nX, l_nY, l_nTargetX, l_nTargetY);
}
if (!_local5.Down) {
_local2 = Math.max(_local2, search(l_nDistanceRemaining - _local2, "Down", l_nX, l_nY, l_nTargetX, l_nTargetY));
}
if (!_local5.Left) {
_local2 = Math.max(_local2, search(l_nDistanceRemaining - _local2, "Left", l_nX, l_nY, l_nTargetX, l_nTargetY));
}
if (!_local5.Right) {
_local2 = Math.max(_local2, search(l_nDistanceRemaining - _local2, "Right", l_nX, l_nY, l_nTargetX, l_nTargetY));
}
} else {
_local2 = l_nDistanceRemaining;
}
return(_local2);
}
}
Symbol 1380 MovieClip [__Packages.PowerupGenerator] Frame 0
class PowerupGenerator
{
var oPowerupTime, oTime, oOriginalTime, __get__time;
function PowerupGenerator (l_oPowerupTimeDuration, l_oTimeGeneratorSpeed) {
oPowerupTime = l_oPowerupTimeDuration;
time = (l_oTimeGeneratorSpeed);
}
function update(l_aLevelPieces) {
oTime.update();
if (oTime.__get__timeOut()) {
var _local2 = l_aLevelPieces.slice();
var _local3;
reset();
while (_local2.length > 0) {
_local3 = Math.floor(Math.random() * _local2.length);
if ((_local2[_local3].getPowerup() == undefined) && (!_local2[_local3]._visible)) {
var _local6 = Math.floor(Math.random() * ARRAY_POWERUP_TYPES.length);
var _local4 = _local2[_local3]._parent.getNextHighestDepth();
var _local5 = _local2[_local3]._parent.attachMovie(ARRAY_POWERUP_TYPES[_local6], "Powerup" + _local4, _local4, {_x:_local2[_local3]._x, _y:_local2[_local3]._y, oTimeLimit:oPowerupTime});
_local5.setTime(new Time(0, oPowerupTime.__get__seconds()));
_local5.setPiece(_local2[_local3]);
_local2 = new Array();
} else {
_local2.splice(_local3, 1);
}
}
}
}
function reset() {
oTime = new Time(oOriginalTime.__get__minutes(), oOriginalTime.__get__seconds());
}
function addTime(l_oTime) {
oTime.addTime(l_oTime);
}
function set time(l_oTime) {
oTime = l_oTime;
oOriginalTime = new Time(l_oTime.__get__minutes(), l_oTime.__get__seconds());
//return(__get__time());
}
var ARRAY_POWERUP_TYPES = new Array("PointBonus", "StandBy", "TakeTwo", "TakeTwo");
}
Symbol 1381 MovieClip [__Packages.Ennemy] Frame 0
class Ennemy extends Actor
{
var oAI, actorMC, oFreezeTime, oView, nFirstX, nFirstY;
function Ennemy (l_mcEnnemy) {
super(l_mcEnnemy);
oAI = new AI();
}
function update(l_oObstacles) {
if (actorMC.getState() == "Frozen") {
oFreezeTime.update();
if (oFreezeTime.__get__timeOut()) {
actorMC.setState("Idle");
}
} else if (actorMC.getState() != "Dead") {
var _local2 = oAI.update(l_oObstacles);
oView.moveTo(_local2);
return(oView.update());
}
}
function freeze(l_nSeconds) {
actorMC.freeze();
oFreezeTime = new Time(0, l_nSeconds);
}
function die() {
actorMC.death();
}
function set firstX(l_nFirstX) {
nFirstX = l_nFirstX;
//return(firstX);
}
function set firstY(l_nFirstY) {
nFirstY = l_nFirstY;
//return(firstY);
}
function get firstX() {
return(nFirstX);
}
function get firstY() {
return(nFirstY);
}
}
Symbol 1382 MovieClip [__Packages.AI] Frame 0
class AI
{
var bCanChange, sLastDir;
function AI () {
bCanChange = true;
}
function update(l_oObstacles) {
var _local2 = l_oObstacles.__get__choices();
if ((sLastDir == undefined) || (bCanChange && ((_local2 > 2) || (l_oObstacles[sLastDir])))) {
sLastDir = l_oObstacles.rndValidDir(sLastDir);
bCanChange = false;
} else if (_local2 <= 2) {
bCanChange = true;
}
return(sLastDir);
}
}
Symbol 1383 MovieClip [__Packages.HighScores] Frame 0
class HighScores
{
var nY, nTotalScore, mcStage, nScoreHeight;
function HighScores (l_mcStage, l_bFromGame, l_nTotalScore, l_bDisplaySubmit) {
nY = NUMBER_TOP_Y;
nTotalScore = l_nTotalScore;
mcStage = l_mcStage;
getHighScores();
l_mcStage.btnSubmitHS.onPress = mx.utils.Delegate.create(this, saveNGetHighScores);
if (l_bFromGame) {
mcStage.btnBack._visible = false;
if (_global.gProxyObj.getIsLoggedIn()) {
l_mcStage.btnSubmitHS._visible = l_bDisplaySubmit;
} else {
l_mcStage.btnSubmitHS._visible = false;
}
} else {
mcStage.btnPlay._visible = false;
l_mcStage.btnSubmitHS._visible = false;
}
}
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, 6);
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.bGetHS = false;
_global.objHS.getScores();
} else if (_global.objHS.bSubmitHS == true) {
_global.objHS.bSubmitHS = false;
mcStage.btnSubmitHS._visible = false;
_global.objHS.submitScore(nTotalScore);
}
}
function saveNGetHighScores() {
clearBoard();
_global.objHS.bSubmitHS = true;
getHighScores();
}
function clearBoard() {
nY = NUMBER_TOP_Y;
for (var _local2 in mcStage.mcHighScore) {
if (mcStage.mcHighScore[_local2]._name.substring(0, 6) == "mcHigh") {
mcStage.mcHighScore[_local2].removeMovieClip();
}
}
}
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 = -100;
}
Symbol 1384 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 1385 MovieClip [__Packages.sarbakan.utils.MoreMath] Frame 0
class sarbakan.utils.MoreMath
{
function MoreMath () {
}
static function getDistance(l_x1, l_y1, l_x2, l_y2) {
var _local1 = Math.sqrt(Math.pow(Math.abs(l_x2 - l_x1), 2) + Math.pow(Math.abs(l_y2 - l_y1), 2));
return(_local1);
}
static function getAngle(l_oPt1, l_oPt2) {
var _local2 = 0;
var _local3 = 0;
var _local1 = 0;
var _local4 = 0;
_local2 = (l_oPt1.x - l_oPt2.x) * -1;
_local3 = (l_oPt1.y - l_oPt2.y) * -1;
_local1 = Math.atan2(_local3, _local2);
_local1 = (_local1 * 180) / Math.PI;
if (_local1 < 0) {
_local1 = _local1 * -1;
_local4 = 180 - _local1;
_local1 = 180 + _local4;
}
if (_local1 < 0) {
_local1 = _local1 + 360;
}
return(_local1);
}
static function getRadian(l_oPt1, l_oPt2) {
var _local1 = 0;
var _local2 = 0;
var _local3 = 0;
_local1 = (l_oPt1.x - l_oPt2.x) * -1;
_local2 = (l_oPt1.y - l_oPt2.y) * -1;
_local3 = Math.atan2(_local2, _local1);
return(_local3);
}
static function padZero(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());
}
}
Symbol 1386 MovieClip [__Packages.MCEasterEgg] Frame 0
class MCEasterEgg extends MovieClip
{
var sState, stop, onRollOver, onRollOut, gotoAndStop, mcClip, onEnterFrame;
function MCEasterEgg () {
super();
sState = "Idle";
stop();
onRollOver = EERollOver;
onRollOut = EERollOut;
}
function EERollOver() {
if (sState == "Idle") {
gotoAndStop("rollO");
} else {
mcClip.play();
}
onEnterFrame = EEUpdateOver;
sState = "Roll";
}
function EERollOut() {
mcClip.stop();
onEnterFrame = EEUpdateOut;
sState = "Roll";
}
function EEUpdateOver() {
if (mcClip._currentframe == mcClip._totalframes) {
mcClip.stop();
delete onEnterFrame;
}
}
function EEUpdateOut() {
mcClip.prevFrame();
if (mcClip._currentframe == 1) {
sState = "Idle";
gotoAndStop("Idle");
delete onEnterFrame;
}
}
}
Symbol 1387 MovieClip [__Packages.MCInstructions] Frame 0
class MCInstructions extends MovieClip
{
var _visible;
function MCInstructions () {
super();
if (_global.KMC.state == "Game") {
_visible = false;
}
setButtons();
}
function setButtons() {
}
}
Symbol 1388 MovieClip [__Packages.MCInstructions1] Frame 0
class MCInstructions1 extends MCInstructions
{
var btnPlay, btnBack, btnNext;
function MCInstructions1 () {
super();
}
function setButtons() {
trace(_global.KMC.state);
if (_global.KMC.state == "Game") {
btnBack.onPress = (btnPlay.onPress = function () {
this._parent._visible = false;
});
btnNext.onPress = function () {
this._parent._visible = false;
this._parent._parent.mcInstructions2._visible = true;
};
} else {
btnBack.onPress = function () {
this._parent._parent.gotoAndStop("Title");
};
btnNext.onPress = function () {
this._parent._parent.gotoAndStop("Instructions2");
};
btnPlay.onPress = function () {
_global.KMC.startGame();
};
}
}
}
Symbol 1389 MovieClip [__Packages.MCInstructions2] Frame 0
class MCInstructions2 extends MCInstructions
{
var btnBack, btnPlay, btnNext;
function MCInstructions2 () {
super();
}
function setButtons() {
trace(_global.KMC.state);
if (_global.KMC.state == "Game") {
btnBack.onPress = function () {
this._parent._visible = false;
this._parent._parent.mcInstructions1._visible = true;
};
btnNext.onPress = (btnPlay.onPress = function () {
this._parent._visible = false;
});
} else {
btnBack.onPress = function () {
this._parent._parent.gotoAndStop("Instructions1");
};
btnNext.onPress = function () {
this._parent._parent.gotoAndStop("Title");
};
btnPlay.onPress = function () {
_global.KMC.startGame();
};
}
}
}
Symbol 1390 MovieClip [__Packages.MCBegin] Frame 0
class MCBegin extends MovieClip
{
var oTime, onEnterFrame, txtLevel, _parent;
function MCBegin () {
super();
oTime = new Time(0, 2);
onEnterFrame = update;
}
function update() {
oTime.update();
if (oTime.__get__timeOut()) {
if (txtLevel.text != "5") {
_global.KMC.loadLevel();
} else {
_parent.gotoAndStop("Level5 Explain");
}
}
}
}
Symbol 1391 MovieClip [__Packages.MCTimedInstructions] Frame 0
class MCTimedInstructions extends MovieClip
{
var oTime, onEnterFrame;
function MCTimedInstructions () {
super();
oTime = new Time(0, 3);
onEnterFrame = update;
}
function update() {
oTime.update();
if (oTime.__get__timeOut()) {
_global.KMC.loadLevel();
}
}
}
Symbol 1392 MovieClip [__Packages.LineCorner] Frame 0
class LineCorner extends MCPath
{
function LineCorner () {
super();
}
var aPath = new Array(Array(0, 0, 0), Array(0, 1, 1), Array(0, 1, 0));
}
Symbol 1393 MovieClip [__Packages.LineHorizontal] Frame 0
class LineHorizontal extends MCPath
{
function LineHorizontal () {
super();
}
var aPath = new Array(Array(0, 1, 0), Array(0, 1, 0), Array(0, 1, 0));
}
Symbol 1394 MovieClip [__Packages.LineT] Frame 0
class LineT extends MCPath
{
var lock, removeHits, addHits;
function LineT () {
super();
}
function init() {
lock();
removeHits(true);
}
function compensatePathRemove() {
addHits();
}
var aPath = new Array(Array(0, 1, 0), Array(1, 1, 1), Array(0, 0, 0));
}
Symbol 1395 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");
} else {
_global.objSounds.unmuteAllSounds();
gotoAndStop("On");
}
}
}
Symbol 1396 MovieClip [__Packages.MCPauseMenu] Frame 0
class MCPauseMenu extends MovieClip
{
var stop, sState, btnOpenMenu, gotoAndPlay, _parent, mcMenu, btnCloseMenu;
function MCPauseMenu () {
super();
stop();
sState = "Closed";
btnOpenMenu.onRelease = mx.utils.Delegate.create(this, buttonPress);
}
function buttonPress() {
if (sState != "Active") {
if (sState == "Closed") {
gotoAndPlay("Opens");
_global.KMC.pause = true;
} else {
gotoAndPlay("Closes");
}
sState = "Active";
}
}
function quitMenuAppear() {
_parent._parent.mcPopup._visible = true;
}
function setState(l_sState) {
stop();
sState = l_sState;
if (sState == "Closed") {
_global.KMC.pause = false;
btnOpenMenu.onRelease = mx.utils.Delegate.create(this, buttonPress);
} else if (sState == "Open") {
setMenu();
}
}
function setMenu() {
mcMenu.btnMusic.mcOnOff.stop();
mcMenu.btnMusic.onPress = function () {
this.mcOnOff.play();
};
mcMenu.btnHelp.onRelease = function () {
this._parent._parent._parent._parent._parent.mcInstructions1._visible = true;
};
mcMenu.btnQuit.onPress = mx.utils.Delegate.create(this, quitMenuAppear);
btnCloseMenu.onRelease = mx.utils.Delegate.create(this, buttonPress);
}
}
Symbol 1397 MovieClip [__Packages.MCGuanoPower] Frame 0
class MCGuanoPower extends MCPowerup
{
function MCGuanoPower () {
super();
}
var sType = "GuanoPower";
var nValue = 5;
}
Symbol 1398 MovieClip [__Packages.MCEnnemy2] Frame 0
class MCEnnemy2 extends MCEnnemy
{
function MCEnnemy2 () {
super();
}
var sIdentifier = "sushi2_clip";
var sSpawnSound = "SpawnLow";
var ARRAY_SPEED = new Array(MCActor.prototype.NUMBER_WIDTH / 10, MCActor.prototype.NUMBER_WIDTH / 10, MCActor.prototype.NUMBER_WIDTH / 8);
}
Symbol 1399 MovieClip [__Packages.MCEnnemy3] Frame 0
class MCEnnemy3 extends MCEnnemy
{
function MCEnnemy3 () {
super();
}
var sIdentifier = "sushi3_clip";
var sSpawnSound = "SpawnMed";
var ARRAY_SPEED = new Array(MCActor.prototype.NUMBER_WIDTH / 8, MCActor.prototype.NUMBER_WIDTH / 8, MCActor.prototype.NUMBER_WIDTH / 5);
}
Symbol 1400 MovieClip [__Packages.MCQuitPopup] Frame 0
class MCQuitPopup extends MovieClip
{
var _visible, btnYes, btnNo;
function MCQuitPopup () {
super();
_visible = false;
btnYes.onPress = sarbakan.utils.Delegate.create(this, pressYes);
btnNo.onPress = sarbakan.utils.Delegate.create(this, pressNo);
}
function pressYes() {
_global.KMC.endGame(false);
}
function pressNo() {
_visible = false;
}
}
Symbol 1401 MovieClip [__Packages.sarbakan.utils.Delegate] Frame 0
class sarbakan.utils.Delegate extends Object
{
var func;
function Delegate () {
super();
}
function DelegateArgs(f) {
func = f;
}
static function create(obj, func) {
var _local2 = function () {
var _local3 = arguments.callee.target;
var _local4 = arguments.callee.func;
var _local2 = arguments.callee.arg;
_local2 = _local2.concat(arguments);
return(_local4.apply(_local3, _local2));
};
_local2.target = obj;
_local2.func = func;
_local2.arg = arguments.slice(2);
return(_local2);
}
function createDelegate(obj) {
return(create(obj, func));
}
}
Symbol 1402 MovieClip [__Packages.LineCross] Frame 0
class LineCross extends MCPath
{
var lock, removeHits, addHits;
function LineCross () {
super();
}
function init() {
lock();
removeHits(true);
}
function compensatePathRemove() {
addHits();
}
var aPath = new Array(Array(0, 1, 0), Array(1, 1, 1), Array(0, 1, 0));
}
Symbol 1403 MovieClip [__Packages.MCEnnemy1] Frame 0
class MCEnnemy1 extends MCEnnemy
{
function MCEnnemy1 () {
super();
}
var sIdentifier = "sushi1_clip";
var sSpawnSound = "SpawnHigh";
var ARRAY_SPEED = new Array(MCActor.prototype.NUMBER_WIDTH / 5, MCActor.prototype.NUMBER_WIDTH / 5, MCActor.prototype.NUMBER_WIDTH / 5);
}
Symbol 1404 MovieClip [__Packages.HighScoresMC] Frame 0
class HighScoresMC extends MovieClip
{
var nXLimit, _x, nYHsStartPos, _parent, bDragging, onPress, onRelease, onReleaseOutside, onMouseMove;
function HighScoresMC () {
super();
_global.KMC.setPageScore();
nXLimit = _x;
nYHsStartPos = _parent._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._parent.mcHighScore._y = this.nYHsStartPos - ((this._parent._parent.mcHighScore._height - this.NUMBER_VIEW_LIMIT) * ((this._y - this.NUMBER_TOP_LIMIT) / (this.NUMBER_BOTTOM_LIMIT - this.NUMBER_TOP_LIMIT)));
};
}
var NUMBER_TOP_LIMIT = -95;
var NUMBER_BOTTOM_LIMIT = 100.2;
var NUMBER_VIEW_LIMIT = 195;
}
Symbol 36 MovieClip [PointBonus] Frame 1
#initclip 58
Object.registerClass("PointBonus", MCPointBonus);
#endinitclip
Symbol 89 MovieClip [StandBy] Frame 1
#initclip 56
Object.registerClass("StandBy", MCStandBy);
#endinitclip
Symbol 95 MovieClip [TakeTwo] Frame 1
#initclip 57
Object.registerClass("TakeTwo", MCTakeTwo);
#endinitclip
Symbol 111 MovieClip Frame 1
stop();
Symbol 129 MovieClip Frame 1
this._visible = false;
_parent.hitArea = this;
Symbol 151 MovieClip Frame 1
stop();
Symbol 159 MovieClip Frame 16
stop();
Symbol 160 MovieClip [KM_TitleCguano_Anim] Frame 1
#initclip 159
Object.registerClass("KM_TitleCguano_Anim", MCEasterEgg);
#endinitclip
Symbol 174 MovieClip [Km_TaitleCardSushi3_Anim] Frame 1
#initclip 59
Object.registerClass("Km_TaitleCardSushi3_Anim", MCEasterEgg);
#endinitclip
Symbol 181 MovieClip Frame 8
stop();
Symbol 182 MovieClip [Km_Sushi02TitleCardAnim] Frame 1
#initclip 60
Object.registerClass("Km_Sushi02TitleCardAnim", MCEasterEgg);
#endinitclip
Symbol 183 MovieClip Frame 20
stop();
Symbol 184 MovieClip Frame 20
stop();
Symbol 185 MovieClip [Km_TitleCardSushi1_Anim] Frame 1
#initclip 61
Object.registerClass("Km_TitleCardSushi1_Anim", MCEasterEgg);
#endinitclip
Symbol 202 Button
on (press) {
_global.KMC.startGame();
}
Symbol 221 Button
on (press) {
this.gotoAndStop("Instructions1");
}
Symbol 234 Button
on (press) {
_global.objHS.fDoViewHS(this, false);
}
Symbol 273 MovieClip [Instructions1] Frame 1
#initclip 62
Object.registerClass("Instructions1", MCInstructions1);
#endinitclip
Instance of Symbol 235 MovieClip in Symbol 273 MovieClip [Instructions1] Frame 1
onClipEvent (load) {
this.onRelease = function () {
};
this.onRollOver = function () {
this.useHandCursor = false;
};
}
Instance of Symbol 237 MovieClip in Symbol 273 MovieClip [Instructions1] Frame 1
onClipEvent (load) {
this.onRelease = function () {
};
this.onRollOver = function () {
this.useHandCursor = false;
};
}
Symbol 326 MovieClip [Instructions2] Frame 1
#initclip 63
Object.registerClass("Instructions2", MCInstructions2);
#endinitclip
Symbol 337 MovieClip [KM_PopUpLevel01] Frame 1
#initclip 64
Object.registerClass("KM_PopUpLevel01", MCBegin);
#endinitclip
Symbol 348 Button
on (press) {
_global.KMC.nextLevel();
}
Symbol 352 Button
on (press) {
_global.KMC.nextLevel();
}
Symbol 355 MovieClip [KM_PopUpLevel05Timer] Frame 1
#initclip 65
Object.registerClass("KM_PopUpLevel05Timer", MCTimedInstructions);
#endinitclip
Symbol 363 MovieClip [Piece1g] Frame 1
#initclip 66
Object.registerClass("Piece1g", MCPiece);
#endinitclip
Symbol 365 MovieClip [Piece1a] Frame 1
#initclip 67
Object.registerClass("Piece1a", MCPiece);
#endinitclip
Symbol 367 MovieClip [Piece1b] Frame 1
#initclip 68
Object.registerClass("Piece1b", MCPiece);
#endinitclip
Symbol 369 MovieClip [Piece1c] Frame 1
#initclip 69
Object.registerClass("Piece1c", MCPiece);
#endinitclip
Symbol 371 MovieClip [Piece1d] Frame 1
#initclip 70
Object.registerClass("Piece1d", MCPiece);
#endinitclip
Symbol 373 MovieClip [Piece1e] Frame 1
#initclip 71
Object.registerClass("Piece1e", MCPiece);
#endinitclip
Symbol 375 MovieClip [Piece1f] Frame 1
#initclip 72
Object.registerClass("Piece1f", MCPiece);
#endinitclip
Symbol 377 MovieClip [Piece1h] Frame 1
#initclip 73
Object.registerClass("Piece1h", MCPiece);
#endinitclip
Symbol 379 MovieClip [Piece1i] Frame 1
#initclip 74
Object.registerClass("Piece1i", MCPiece);
#endinitclip
Symbol 381 MovieClip [Piece1j] Frame 1
#initclip 75
Object.registerClass("Piece1j", MCPiece);
#endinitclip
Symbol 387 MovieClip [KM_CheminCoin01] Frame 1
#initclip 76
Object.registerClass("KM_CheminCoin01", LineCorner);
#endinitclip
Symbol 388 MovieClip [KM_Chemin02] Frame 1
#initclip 77
Object.registerClass("KM_Chemin02", LineHorizontal);
#endinitclip
Symbol 389 MovieClip [KM_CheminT01] Frame 1
#initclip 78
Object.registerClass("KM_CheminT01", LineT);
#endinitclip
Symbol 404 Button
on (release) {
_global.C.ShowMenu("Menu");
}
Symbol 414 Button
on (release) {
_global.C.EnterCodeSection = false;
_parent.gotoAndStop("MonsterDesign");
}
Symbol 424 MovieClip [Msuic Button] Frame 1
#initclip 79
Object.registerClass("Msuic Button", MCMusic);
#endinitclip
Symbol 429 Button
on (release) {
_global.C.ShowMenu("Menu");
}
Symbol 430 MovieClip [KM_MvMenu01] Frame 1
#initclip 80
Object.registerClass("KM_MvMenu01", MCPauseMenu);
#endinitclip
Symbol 430 MovieClip [KM_MvMenu01] Frame 22
this.setState("Open");
Symbol 430 MovieClip [KM_MvMenu01] Frame 35
this.setState("Closed");
Symbol 431 MovieClip [Hud01] Frame 1
#initclip 81
Object.registerClass("Hud01", MCHud);
#endinitclip
Symbol 640 MovieClip Frame 17
stop();
Symbol 641 MovieClip [guano_clip_all] Frame 1
#initclip 82
Object.registerClass("guano_clip_all", MCPlayer);
#endinitclip
Symbol 644 MovieClip [Creature Spawn Point] Frame 1
#initclip 83
Object.registerClass("Creature Spawn Point", MCCreatureGenerator);
#endinitclip
Symbol 647 MovieClip [GuanoPower] Frame 1
#initclip 84
Object.registerClass("GuanoPower", MCGuanoPower);
#endinitclip
Symbol 778 MovieClip [sushi2_clip] Frame 1
#initclip 85
Object.registerClass("sushi2_clip", MCEnnemy2);
#endinitclip
Symbol 930 MovieClip [sushi3_clip] Frame 1
#initclip 86
Object.registerClass("sushi3_clip", MCEnnemy3);
#endinitclip
Symbol 942 MovieClip [KM_PopUpQuit01] Frame 1
#initclip 87
Object.registerClass("KM_PopUpQuit01", MCQuitPopup);
#endinitclip
Symbol 946 MovieClip Frame 5
_global.KMC.gameStart();
stop();
Symbol 954 MovieClip [Piece 2a] Frame 1
#initclip 88
Object.registerClass("Piece 2a", MCPiece);
#endinitclip
Symbol 956 MovieClip [Piece 2b] Frame 1
#initclip 89
Object.registerClass("Piece 2b", MCPiece);
#endinitclip
Symbol 958 MovieClip [Piece 2c] Frame 1
#initclip 90
Object.registerClass("Piece 2c", MCPiece);
#endinitclip
Symbol 960 MovieClip [Piece 2d] Frame 1
#initclip 91
Object.registerClass("Piece 2d", MCPiece);
#endinitclip
Symbol 962 MovieClip [Piece 2e] Frame 1
#initclip 92
Object.registerClass("Piece 2e", MCPiece);
#endinitclip
Symbol 964 MovieClip [Piece 2f] Frame 1
#initclip 93
Object.registerClass("Piece 2f", MCPiece);
#endinitclip
Symbol 966 MovieClip [Piece 2g] Frame 1
#initclip 94
Object.registerClass("Piece 2g", MCPiece);
#endinitclip
Symbol 968 MovieClip [Piece 2h] Frame 1
#initclip 95
Object.registerClass("Piece 2h", MCPiece);
#endinitclip
Symbol 970 MovieClip [Piece 2i] Frame 1
#initclip 96
Object.registerClass("Piece 2i", MCPiece);
#endinitclip
Symbol 972 MovieClip [Piece 2j] Frame 1
#initclip 97
Object.registerClass("Piece 2j", MCPiece);
#endinitclip
Symbol 974 MovieClip [Piece 2k] Frame 1
#initclip 98
Object.registerClass("Piece 2k", MCPiece);
#endinitclip
Symbol 976 MovieClip [Piece 2l] Frame 1
#initclip 99
Object.registerClass("Piece 2l", MCPiece);
#endinitclip
Symbol 978 MovieClip [Piece 2m] Frame 1
#initclip 100
Object.registerClass("Piece 2m", MCPiece);
#endinitclip
Symbol 980 MovieClip [Piece 2n] Frame 1
#initclip 101
Object.registerClass("Piece 2n", MCPiece);
#endinitclip
Symbol 982 MovieClip [Piece 2o] Frame 1
#initclip 102
Object.registerClass("Piece 2o", MCPiece);
#endinitclip
Symbol 983 MovieClip [KM_CheminCroix01] Frame 1
#initclip 103
Object.registerClass("KM_CheminCroix01", LineCross);
#endinitclip
Symbol 1158 MovieClip [sushi1_clip] Frame 1
#initclip 104
Object.registerClass("sushi1_clip", MCEnnemy1);
#endinitclip
Symbol 1159 MovieClip Frame 5
_global.KMC.gameStart();
stop();
Symbol 1167 MovieClip [Piece 3a] Frame 1
#initclip 105
Object.registerClass("Piece 3a", MCPiece);
#endinitclip
Symbol 1169 MovieClip [Piece 3b] Frame 1
#initclip 106
Object.registerClass("Piece 3b", MCPiece);
#endinitclip
Symbol 1171 MovieClip [Piece 3c] Frame 1
#initclip 107
Object.registerClass("Piece 3c", MCPiece);
#endinitclip
Symbol 1173 MovieClip [Piece 3d] Frame 1
#initclip 108
Object.registerClass("Piece 3d", MCPiece);
#endinitclip
Symbol 1175 MovieClip [Piece 3e] Frame 1
#initclip 109
Object.registerClass("Piece 3e", MCPiece);
#endinitclip
Symbol 1177 MovieClip [Piece 3f] Frame 1
#initclip 110
Object.registerClass("Piece 3f", MCPiece);
#endinitclip
Symbol 1179 MovieClip [Piece 3g] Frame 1
#initclip 111
Object.registerClass("Piece 3g", MCPiece);
#endinitclip
Symbol 1181 MovieClip [Piece 3h] Frame 1
#initclip 112
Object.registerClass("Piece 3h", MCPiece);
#endinitclip
Symbol 1183 MovieClip [Piece 3j] Frame 1
#initclip 113
Object.registerClass("Piece 3j", MCPiece);
#endinitclip
Symbol 1185 MovieClip [Piece 3k] Frame 1
#initclip 114
Object.registerClass("Piece 3k", MCPiece);
#endinitclip
Symbol 1187 MovieClip [Piece 3i] Frame 1
#initclip 115
Object.registerClass("Piece 3i", MCPiece);
#endinitclip
Symbol 1189 MovieClip [Piece 3l] Frame 1
#initclip 116
Object.registerClass("Piece 3l", MCPiece);
#endinitclip
Symbol 1190 MovieClip Frame 5
_global.KMC.gameStart();
stop();
Symbol 1196 MovieClip [Piece 4a] Frame 1
#initclip 117
Object.registerClass("Piece 4a", MCPiece);
#endinitclip
Symbol 1198 MovieClip [Piece 4b] Frame 1
#initclip 118
Object.registerClass("Piece 4b", MCPiece);
#endinitclip
Symbol 1200 MovieClip [Piece 4c] Frame 1
#initclip 119
Object.registerClass("Piece 4c", MCPiece);
#endinitclip
Symbol 1202 MovieClip [Piece 4d] Frame 1
#initclip 120
Object.registerClass("Piece 4d", MCPiece);
#endinitclip
Symbol 1204 MovieClip [Piece 4e] Frame 1
#initclip 121
Object.registerClass("Piece 4e", MCPiece);
#endinitclip
Symbol 1206 MovieClip [Piece 4f] Frame 1
#initclip 122
Object.registerClass("Piece 4f", MCPiece);
#endinitclip
Symbol 1208 MovieClip [Piece 4g] Frame 1
#initclip 123
Object.registerClass("Piece 4g", MCPiece);
#endinitclip
Symbol 1210 MovieClip [Piece 4h] Frame 1
#initclip 124
Object.registerClass("Piece 4h", MCPiece);
#endinitclip
Symbol 1212 MovieClip [Piece 4i] Frame 1
#initclip 125
Object.registerClass("Piece 4i", MCPiece);
#endinitclip
Symbol 1214 MovieClip [Piece 4j] Frame 1
#initclip 126
Object.registerClass("Piece 4j", MCPiece);
#endinitclip
Symbol 1216 MovieClip [Piece 4k] Frame 1
#initclip 127
Object.registerClass("Piece 4k", MCPiece);
#endinitclip
Symbol 1218 MovieClip [Piece 4l] Frame 1
#initclip 128
Object.registerClass("Piece 4l", MCPiece);
#endinitclip
Symbol 1219 MovieClip Frame 5
_global.KMC.gameStart();
stop();
Symbol 1225 MovieClip [Piece 5a] Frame 1
#initclip 129
Object.registerClass("Piece 5a", MCPiece);
#endinitclip
Symbol 1227 MovieClip [Piece 5b] Frame 1
#initclip 130
Object.registerClass("Piece 5b", MCPiece);
#endinitclip
Symbol 1229 MovieClip [Piece 5c] Frame 1
#initclip 131
Object.registerClass("Piece 5c", MCPiece);
#endinitclip
Symbol 1231 MovieClip [Piece 5d] Frame 1
#initclip 132
Object.registerClass("Piece 5d", MCPiece);
#endinitclip
Symbol 1233 MovieClip [Piece 5e] Frame 1
#initclip 133
Object.registerClass("Piece 5e", MCPiece);
#endinitclip
Symbol 1235 MovieClip [Piece 5f] Frame 1
#initclip 134
Object.registerClass("Piece 5f", MCPiece);
#endinitclip
Symbol 1237 MovieClip [Piece 5g] Frame 1
#initclip 135
Object.registerClass("Piece 5g", MCPiece);
#endinitclip
Symbol 1239 MovieClip [Piece 5h] Frame 1
#initclip 136
Object.registerClass("Piece 5h", MCPiece);
#endinitclip
Symbol 1241 MovieClip [Piece 5i] Frame 1
#initclip 137
Object.registerClass("Piece 5i", MCPiece);
#endinitclip
Symbol 1243 MovieClip [Piece 5j] Frame 1
#initclip 138
Object.registerClass("Piece 5j", MCPiece);
#endinitclip
Symbol 1245 MovieClip [Piece 5k] Frame 1
#initclip 139
Object.registerClass("Piece 5k", MCPiece);
#endinitclip
Symbol 1247 MovieClip [Piece 5l] Frame 1
#initclip 140
Object.registerClass("Piece 5l", MCPiece);
#endinitclip
Symbol 1249 MovieClip [Piece 5m] Frame 1
#initclip 141
Object.registerClass("Piece 5m", MCPiece);
#endinitclip
Symbol 1251 MovieClip [Piece 5n] Frame 1
#initclip 142
Object.registerClass("Piece 5n", MCPiece);
#endinitclip
Symbol 1253 MovieClip [Piece 5o] Frame 1
#initclip 143
Object.registerClass("Piece 5o", MCPiece);
#endinitclip
Symbol 1255 MovieClip [Piece 5p] Frame 1
#initclip 144
Object.registerClass("Piece 5p", MCPiece);
#endinitclip
Symbol 1256 MovieClip Frame 5
_global.KMC.gameStart();
stop();
Symbol 1265 MovieClip [Piece Bonusa] Frame 1
#initclip 145
Object.registerClass("Piece Bonusa", MCPiece);
#endinitclip
Symbol 1267 MovieClip [Piece Bonusb] Frame 1
#initclip 146
Object.registerClass("Piece Bonusb", MCPiece);
#endinitclip
Symbol 1269 MovieClip [Piece Bonusc] Frame 1
#initclip 147
Object.registerClass("Piece Bonusc", MCPiece);
#endinitclip
Symbol 1271 MovieClip [Piece Bonusd] Frame 1
#initclip 148
Object.registerClass("Piece Bonusd", MCPiece);
#endinitclip
Symbol 1273 MovieClip [Piece Bonuse] Frame 1
#initclip 149
Object.registerClass("Piece Bonuse", MCPiece);
#endinitclip
Symbol 1275 MovieClip [Piece Bonusf] Frame 1
#initclip 150
Object.registerClass("Piece Bonusf", MCPiece);
#endinitclip
Symbol 1277 MovieClip [Piece Bonusg] Frame 1
#initclip 151
Object.registerClass("Piece Bonusg", MCPiece);
#endinitclip
Symbol 1279 MovieClip [Piece Bonush] Frame 1
#initclip 152
Object.registerClass("Piece Bonush", MCPiece);
#endinitclip
Symbol 1281 MovieClip [Piece Bonusi] Frame 1
#initclip 153
Object.registerClass("Piece Bonusi", MCPiece);
#endinitclip
Symbol 1283 MovieClip [Piece Bonus j] Frame 1
#initclip 154
Object.registerClass("Piece Bonus j", MCPiece);
#endinitclip
Symbol 1285 MovieClip [Piece Bonusk] Frame 1
#initclip 155
Object.registerClass("Piece Bonusk", MCPiece);
#endinitclip
Symbol 1287 MovieClip [Piece Bonusl] Frame 1
#initclip 156
Object.registerClass("Piece Bonusl", MCPiece);
#endinitclip
Symbol 1289 MovieClip [Piece Bonusm] Frame 1
#initclip 157
Object.registerClass("Piece Bonusm", MCPiece);
#endinitclip
Symbol 1292 MovieClip Frame 9
_global.KMC.gameStart();
stop();
Symbol 1308 Button
on (press) {
_global.KMC.startGame();
}
Symbol 1309 Button
on (press) {
_global.objHS.fDoViewHS(this, true);
}
Symbol 1319 Button
on (press) {
_global.objHS.fDoSubmitHS(this);
}
Symbol 1340 MovieClip [KM_Carre01 copy] Frame 1
#initclip 158
Object.registerClass("KM_Carre01 copy", HighScoresMC);
#endinitclip
Symbol 1346 Button
on (press) {
this.gotoAndStop("Title");
}
Instance of Symbol 127 MovieClip "jghjhg" in Symbol 1347 MovieClip Frame 106
onClipEvent (load) {
function __f_load(eventObj) {
trace("*" + this);
}
this.addEventListener("load", __f_load);
}