Frame 1
_global.home = this;
gk1 = "fruitstreamersaquatic";
loadVariables (userInfoURL, this);
gotKey = true;
_global.loadScores = function (score, obj) {
delete home.scoreList;
home.scoreList = new LoadVars();
home.scoreList.onLoad = function (success) {
if (success) {
for (var _local1 in home.scoreList) {
trace((_local1 + " -> ") + home.scoreList[_local1]);
}
setScores(1, obj);
} else {
setScores(0, obj);
}
};
if (score != undefined) {
home.scoreList.load(score);
} else {
var _local2 = (home.highScoresURL + "?gk=") + home.gk1;
home.scoreList.load(_local2);
}
};
_global.getScores = function (score, obj) {
if ((score != undefined) || (score != null)) {
var _local1 = score;
var _local3 = (((((((((home.highScoresURL + "?gk=") + home.gk1) + "&uk=") + home.userKey) + "&s=") + _local1) + "&es=") + encrypt(_local1)) + "&sd=") + home.seed;
loadScores(_local3, obj);
} else {
loadScores(null, obj);
}
};
_global.setScores = function (type, obj) {
trace("set obj: " + obj);
if (type) {
if (home.scoreList.rank != undefined) {
home.returnedInfo = "Good Job, you've made the list. Your RANK is " + home.scoreList.rank;
} else {
home.returnedInfo = "You're score did not make the list";
}
var _local1 = 1;
while (_local1 <= 10) {
obj["total_" + _local1] = (home.scoreList[("hs_" + _local1) + "_score"] + " pts - ") + home.scoreList[("hs_" + _local1) + "_username"];
_local1++;
}
}
};
_global.clearScores = function (obj) {
var _local1 = 1;
while (_local1 <= 10) {
obj["total_" + _local1] = "";
_local1++;
}
obj.total_1 = "Retrieving...";
};
_global.encrypt = function (encScore) {
encScore = encScore.toString();
my_date = new Date();
my_date.hours = my_date.getUTCHours();
my_date.minutes = my_date.getUTCMinutes();
my_date.seconds = my_date.getUTCSeconds();
if (my_date.seconds < 10) {
my_date.seconds = "0" + my_date.seconds;
}
if (my_date.minutes < 10) {
my_date.minutes = "0" + my_date.minutes;
}
if (my_date.hours < 10) {
my_date.hours = "0" + my_date.hours;
}
home.seed = ((((my_date.hours + ":") + my_date.minutes) + ":") + my_date.seconds) + ":28";
charList = new Array(2, 8, 10, 5, 4, 1, 11, 7);
keyChars = new Array();
i = 0;
while (i < 8) {
var _local1 = charList[i];
keyChars.push(seed.charAt(_local1 - 1));
i++;
}
snafuText = "";
i = 0;
while (i < encScore.length) {
tempHolder = keyChars.shift();
keyChars.push(tempHolder);
tempName = "ascii" + i;
tempName = encScore.charCodeAt(i) + Math.round(tempHolder);
snafuText = snafuText + String.fromCharCode(tempName);
i++;
}
return(snafuText);
};
var trackerVars_get = new LoadVars();
var trackerVars_send = new LoadVars();
trackerVars_send.gameID = home.gameID;
home.trackerVars_get.onLoad = function (success) {
if (success) {
}
};
addGamePlay = function () {
trace("adding gameplay");
trackerVars_send.sendAndLoad(trackerURL, trackerVars_get, "POST");
};
Frame 2
function check() {
var _local2 = this.getBytesLoaded();
if (_local2 < totalSize) {
progressMC.progress._width = 298 * (_local2 / totalSize);
} else {
clearInterval(si);
gotoAndStop ("initMain");
}
}
stop();
var totalSize = this.getBytesTotal();
var si = setInterval(this, "check", 10);
Frame 20
var app = (new com.kaboose.games.kelloggsfruitstreamers.Main.init(this));
Symbol 19 MovieClip Frame 1
stop();
Symbol 49 MovieClip [mainBackground] Frame 1
stop();
Symbol 49 MovieClip [mainBackground] Frame 2
stop();
Symbol 49 MovieClip [mainBackground] Frame 10
stop();
Symbol 49 MovieClip [mainBackground] Frame 20
stop();
Symbol 49 MovieClip [mainBackground] Frame 30
stop();
Symbol 49 MovieClip [mainBackground] Frame 40
stop();
Symbol 49 MovieClip [mainBackground] Frame 50
stop();
Symbol 49 MovieClip [mainBackground] Frame 60
gotoAndStop (2);
Symbol 61 MovieClip Frame 1
function showWarning() {
if (!bPlayingB) {
gotoAndPlay ("notAccurate");
}
}
function showAccuracy() {
if (!bPlayingA) {
gotoAndPlay ("accurate");
}
}
stop();
bPlayingA = false;
bPlayingB = false;
Symbol 61 MovieClip Frame 2
bPlayingA = true;
bPlayingB = false;
Symbol 61 MovieClip Frame 29
gotoAndPlay ("accurate");
Symbol 61 MovieClip Frame 30
bPlayingA = false;
bPlayingB = true;
Symbol 61 MovieClip Frame 58
gotoAndPlay ("notAccurate");
Symbol 85 Button
on (release) {
nextFrame();
}
Symbol 102 MovieClip [headShark] Frame 1
particleSocket._alpha = 0;
Symbol 104 MovieClip [headFish] Frame 1
particleSocket._alpha = 0;
Symbol 153 MovieClip [game_over_burst] Frame 11
stop();
Symbol 153 MovieClip [game_over_burst] Frame 30
this.removeMovieClip();
Symbol 155 MovieClip [levelMC] Frame 1
stop();
Symbol 172 MovieClip [headFishClown] Frame 1
particleSocket._alpha = 0;
Symbol 174 MovieClip [headDuck] Frame 1
particleSocket._alpha = 0;
Symbol 175 MovieClip [headSquid] Frame 1
particleSocket._alpha = 0;
Symbol 188 MovieClip [headSub] Frame 1
particleSocket._alpha = 0;
Symbol 194 MovieClip [headSkull] Frame 1
particleSocket._alpha = 0;
Symbol 195 MovieClip [headSpaceShip] Frame 1
particleSocket._alpha = 0;
Symbol 199 MovieClip [headEye] Frame 1
particleSocket._alpha = 0;
Symbol 203 Button
on (release) {
nextFrame();
}
Symbol 204 Button
on (release) {
nextFrame();
}
Symbol 208 MovieClip Frame 1
stop();
Symbol 209 MovieClip [__Packages.com.kaboose.games.kelloggsfruitstreamers.Main] Frame 0
class com.kaboose.games.kelloggsfruitstreamers.Main
{
static var menuManager;
var mcRoot, sndController, patterns, gameLayer, linesLayer, hudLayer, menuLayer, mainBackground, mainBackgroundHack, levelMC, keyEvents, lines, HUD, pauseCount, startPoint, pointData, overallAccuracy, accuracyDOT, playerMC, uiGameOver, continueBtn, showHighScoresID, pausedText, timeOutText, timeOutNumbers, bSoundMuted;
function Main (target) {
var _local3 = new LocalConnection();
if (((((_local3.domain() == "devgames.funschool.com") || (_local3.domain() == "games.funschool.com")) || (_local3.domain() == "fundev.kaboose.com")) || (_local3.domain() == "funschool.kaboose.com")) || (_local3.domain() == "canada.funschool.com")) {
_global.bIsFunschool = true;
}
mx.transitions.OnEnterFrameBeacon.init();
MovieClip.addListener(this);
mcRoot = target;
sndController = new com.kaboose.games.kelloggsfruitstreamers.SoundsManager(mcRoot, this);
patterns = new com.kaboose.games.kelloggsfruitstreamers.Patterns(this);
gameLayer = mcRoot.createEmptyMovieClip("gameLayer", 2);
linesLayer = gameLayer.createEmptyMovieClip("linesLayer", -1);
hudLayer = mcRoot.createEmptyMovieClip("hudLayer", 3);
menuLayer = mcRoot.createEmptyMovieClip("menuLayer", 4);
mainBackground = mcRoot.attachMovie("mainBackground", "mainBG", -1);
mainBackgroundHack = gameLayer.attachMovie("mainBackground", "mainBG2", 0);
levelMC = gameLayer.attachMovie("levelMC", "levelMC", 1);
levelMC._x = Stage.width / 2;
levelMC._y = Stage.height / 2;
mainBackground.gotoAndStop(2);
mainBackgroundHack.gotoAndStop(2);
mainBackgroundHack._width = 120;
menuManager = new com.kaboose.games.kelloggsfruitstreamers.MenuManager(menuLayer, this);
menuManager.showMainMenu();
sndController.playMenuMusic();
if ((_local3.domain() == "localhost") || (_local3.domain() == "devgames.zeeks.com")) {
new com.kaboose.utils.FPSmeter(menuLayer, -1);
}
}
static function init(target) {
if (_instance != undefined) {
delete _instance;
}
_instance = new com.kaboose.games.kelloggsfruitstreamers.Main(target);
}
function startGame(iconName) {
_root.addGamePlay();
mainBackground.gotoAndStop(2);
mainBackgroundHack.gotoAndStop(2);
keyEvents = new com.kaboose.games.kelloggsfruitstreamers.KeyEvents(this);
lines = new com.kaboose.games.kelloggsfruitstreamers.RainbowLines(linesLayer);
HUD = hudLayer.attachMovie("ui_HUD", "ui_HUD", 0);
startTime = getTimer();
endTime = 0;
pauseCount = 0;
pauseStart = 0;
pauseResume = 0;
totalPauseTime = 0;
gameSpeed = defaultGameSpeed;
currentLevel = 0;
startPoint = 800;
levelMC.currentLevel = ++currentLevel;
levelMC.play();
cheatID = undefined;
bTimeOut = false;
bCheckingForCheats = false;
sndController.stopMenuMusic();
sndController.playGameMusic();
patterns.reset();
pointData = new Array();
playerScore = 0;
setScore(playerScore);
overallAccuracy = 100;
accuracyDOT = gameLayer.attachMovie("gfx_ball", "accuracyDOT", 3);
accuracyDOT._alpha = 100;
playerMC = gameLayer.attachMovie(iconName, "playerMC", 2);
playerMC.icon.stop();
bStartTracking = false;
bGameStarted = true;
MovieClip.bGamePaused = false;
Mouse.hide();
}
function endGame() {
Mouse.show();
endTime = getTimer();
bGameStarted = false;
uiGameOver = hudLayer.attachMovie("game_over_burst", "game_over_burst", 1, {_x:Stage.width / 2, _y:Stage.height / 2});
sndController.playOnce("Darkness");
sndController.fadeOutGameMusic();
}
function showContinueButton() {
trace("show continue button");
playerMC.accMC.gotoAndStop(1);
uiGameOver.play();
continueBtn = hudLayer.attachMovie("continueBTN", "continueBTN", 2, {_x:Stage.width / 2, _y:(Stage.height / 2) + 20});
continueBtn.onPress = function () {
if (!_global.bIsFunschool) {
com.kaboose.games.kelloggsfruitstreamers.Main._instance.showHighScores();
} else {
com.kaboose.games.kelloggsfruitstreamers.Main._instance.showMainMenu();
}
this.removeMovieClip();
};
}
function showMainMenu() {
sndController.playMenuMusic();
uiGameOver.removeMovieClip();
HUD.removeMovieClip();
accuracyDOT.removeMovieClip();
playerMC.removeMovieClip();
lines.clear();
clearInterval(showHighScoresID);
mainBackground.gotoAndStop(2);
mainBackgroundHack.gotoAndStop(2);
menuManager.showMainMenu();
}
function showHighScores() {
sndController.playMenuMusic();
uiGameOver.removeMovieClip();
HUD.removeMovieClip();
accuracyDOT.removeMovieClip();
playerMC.removeMovieClip();
lines.clear();
clearInterval(showHighScoresID);
mainBackground.gotoAndStop(2);
mainBackgroundHack.gotoAndStop(2);
menuManager.showHighScores(playerScore);
}
function togglePause() {
if (!bGameStarted) {
return(undefined);
}
if (bTimeOut) {
return(undefined);
}
if (MovieClip.bGamePaused) {
Mouse.hide();
pausedText.removeMovieClip();
pauseResume = getTimer();
totalPauseTime = totalPauseTime + (pauseResume - pauseStart);
MovieClip.bGamePaused = false;
return(undefined);
}
pausedText = hudLayer.attachMovie("text_paused", "paused", 5, {_x:Stage.width / 2, _y:(Stage.height / 2) - 50});
Mouse.show();
sndController.playOnce("SineThrow1", 50);
pauseCount++;
noCheatingForJoo();
MovieClip.bGamePaused = true;
pauseStart = getTimer();
}
function noCheatingForJoo() {
if (cheatID == undefined) {
bCheckingForCheats = true;
cheatID = setInterval(function (m) {
m.bCheckingForCheats = false;
clearInterval(m.cheatID);
m.cheatID = undefined;
}, 10000, this);
}
var ccID = setInterval(function (m) {
if ((m.pauseCount > 3) && (m.bCheckingForCheats == true)) {
if (!MovieClip.bGamePaused) {
m.togglePause();
}
m.pauseCount = 0;
m.showWarningMessage();
clearInterval(m.cheatID);
clearInterval(ccID);
m.cheatID = undefined;
}
}, 100, this);
}
function showWarningMessage() {
bTimeOut = true;
timeOutText = hudLayer.attachMovie("text_time_out", "timeOut", 6, {_x:Stage.width / 2, _y:(Stage.height / 2) + 5});
timeOutNumbers = hudLayer.attachMovie("timeOutNumbers", "timeOutNumbers", 7, {_x:Stage.width / 2, _y:(Stage.height / 2) + 54});
timeOutNumbers.gotoAndStop(11);
var timeOutID = setInterval(function (m) {
m.timeOutNumbers.prevFrame();
m.sndController.playOnce("TingSine", 30);
if (m.timeOutNumbers._currentframe == 1) {
m.bTimeOut = false;
m.timeOutText.removeMovieClip();
m.timeOutNumbers.removeMovieClip();
clearInterval(timeOutID);
}
}, 1000, this);
}
function toggleQuality() {
if (bHighQuality) {
_root._quality = "LOW";
bHighQuality = false;
return(undefined);
}
bHighQuality = true;
_root._quality = "HIGH";
}
function toggleSound() {
if (bSoundMuted) {
sndController.muteMusic(false);
bSoundMuted = false;
} else {
bSoundMuted = true;
sndController.muteMusic(true);
}
}
function spawnNewPoint() {
if (pointData[pointData.length - 1].x > Stage.width) {
return(undefined);
}
var _local2;
if (currentLevel > 12) {
_local2 = 1.3;
} else {
_local2 = 1;
}
if (currentLevel > 14) {
gameSpeed = 1.75;
}
var _local3 = {x:startPoint, y:220 + (patterns.getPointData() * _local2)};
pointData.push(_local3);
}
function nextLevel() {
levelMC.currentLevel = ++currentLevel;
levelMC.play();
startPoint = 800 - (5 * (currentLevel - 1));
if (startPoint <= 770) {
startPoint = 770;
}
if (gameSpeed < 1.25) {
gameSpeed = gameSpeed + 0.25;
} else {
gameSpeed = 1.25;
}
changeBackgroundColor();
}
function redraw() {
for (var _local2 in pointData) {
pointData[_local2].x = pointData[_local2].x - (gameSpeed * MovieClip.frameDelta);
}
if ((pointData.length > 1) && (pointData[1].x < _xmouse)) {
setScore(Math.round(overallAccuracy * currentAccuracy));
pointData.splice(0, 1);
}
if (pointData[0].x < _xmouse) {
bStartTracking = true;
}
lines.redraw(pointData);
}
function setScore(inValue) {
playerScore = playerScore + inValue;
HUD.scoreMC.value.text = "SCORE " + com.kaboose.utils.Formatting.formatNumber(playerScore);
}
function drawGameTime(formattedTime) {
HUD.timeMC.value.text = "TIME " + formattedTime;
}
function drawAccuracy(amount) {
if (amount == undefined) {
return(undefined);
}
overallAccuracy = overallAccuracy - amount;
if (overallAccuracy > 100) {
overallAccuracy = 100;
}
if (overallAccuracy <= 0) {
endGame();
overallAccuracy = 0;
}
HUD.accMC.accuracyBar._xscale = overallAccuracy;
}
function mouseDistance(mousePos, referenceMC) {
if (!bStartTracking) {
return(undefined);
}
var _local5 = {x:0, y:0};
playerMC.particleSocket.localToGlobal(_local5);
var _local6 = {x:referenceMC._x, y:referenceMC._y};
var _local2 = getDistance(mousePos, _local6);
var _local3 = _local2 / 60;
var _local4 = 24;
if (_local3 > 0.6) {
_local3 = 0.6;
}
if (_local2 < _local4) {
currentAccuracy = 1 - (_local2 / _local4);
new com.kaboose.particles.types.BaseA(gameLayer, _local5);
playerMC.accMC.showAccuracy();
return(-0.01);
}
playerMC.accMC.showWarning();
return(_local3);
}
function getDistance(objA, objB) {
var _local2 = objB.x - objA.x;
var _local1 = objB.y - objA.y;
return(Math.sqrt((_local2 * _local2) + (_local1 * _local1)));
}
function interpolate(target, pt1, pt2) {
var _local7 = Math.round(getDistance(pt1, pt2));
var _local5 = Math.round(pt2.x - pt1.x);
var _local4 = (pt2.x - target._x) / _local5;
return({x:_xmouse, y:pt2.y + (_local4 * (pt1.y - pt2.y))});
}
function onEnterFrame() {
var _local3 = getTimer();
var _local2 = _xmouse;
var _local5 = _ymouse;
var _local6 = ((_local3 - lastTime) / 1000) * 125;
MovieClip.frameDelta = _local6;
lastTime = _local3;
if (MovieClip.bGamePaused) {
return(undefined);
}
if (bGameStarted) {
mainBackgroundHack._x = _local2 - 140;
gameTimer = _local3 - (startTime + totalPauseTime);
MovieClip.gameTimer = gameTimer;
drawGameTime(com.kaboose.utils.Formatting.timeToClockStyle(gameTimer));
spawnNewPoint();
playerMC._x = _local2;
playerMC._y = _local5;
if (_local2 < accuracyDOT._x) {
accuracyDOT._x = accuracyDOT._x - (gameSpeed * MovieClip.frameDelta);
}
var _local4 = interpolate(accuracyDOT, pointData[0], pointData[1]);
accuracyDOT._x = _local4.x;
accuracyDOT._y = _local4.y;
if (_local2 > pointData[0].x) {
drawAccuracy(mouseDistance({x:_local2, y:_local5}, accuracyDOT));
} else {
playerMC.accMC.gotoAndStop(1);
}
if ((accuracyDOT._x < pointData[0].x) || (pointData[0] == undefined)) {
accuracyDOT._visible = false;
} else {
accuracyDOT._visible = true;
}
redraw();
}
}
function changeBackgroundColor() {
sndController.levelChange();
mainBackground.play();
mainBackgroundHack.play();
}
static var _instance = undefined;
var lastTime = 0;
var bHighQuality = true;
var bGameStarted = false;
var bStartTracking = false;
var bTimeOut = false;
var bCheckingForCheats = false;
var currentAccuracy = 0;
var defaultGameSpeed = 0.75;
var gameSpeed = com.kaboose.games.kelloggsfruitstreamers.Main.prototype.defaultGameSpeed;
var playerScore = 0;
var currentLevel = 0;
var gameTimer = 0;
var startTime = 0;
var endTime = 0;
var pauseStart = 0;
var pauseResume = 0;
var totalPauseTime = 0;
var bCheckCheating = false;
var cheatID = undefined;
}
Symbol 210 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 211 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 212 MovieClip [__Packages.com.kaboose.games.kelloggsfruitstreamers.SoundsManager] Frame 0
class com.kaboose.games.kelloggsfruitstreamers.SoundsManager
{
static var _instance;
var sndContainer, sndObject, menuMusic, levelChangeSound, gameMusic, gameMusicID;
function SoundsManager (base, subscriber) {
_instance = this;
sndContainer = base.createEmptyMovieClip("sndContainer", -10);
sndObject = new Array();
AsBroadcaster.initialize(this);
subscribe(subscriber);
}
function subscribe(obj) {
_instance.addListener(obj);
}
function objectRef(name) {
var _local2 = sndContainer.createEmptyMovieClip(name, sndContainer.getNextHighestDepth());
return(_local2);
}
function playOnce(soundName, volume) {
var _local3 = objectRef(soundName);
var _local2 = new Sound(_local3);
if (volume == undefined) {
volume = 100;
}
_local2.attachSound(soundName);
_local2.setVolume(volume);
_local2.start();
}
function playMenuMusic() {
menuMusic = new Sound(objectRef("menuMusic"));
menuMusic.attachSound("short_loop22");
menuMusic.setVolume(menuMusicDefaultVolume);
menuMusic.start(0, 999);
}
function levelChange() {
levelChangeSound = new Sound(objectRef("levelChangeSound"));
levelChangeSound.attachSound("Pickmeup1");
levelChangeSound.setVolume(80);
levelChangeSound.start();
}
function stopMenuMusic() {
menuMusic.stop();
}
function playGameMusic() {
gameMusic = new Sound(objectRef("gamemusic"));
gameMusic.attachSound("dance_loop22");
gameMusic.setVolume(gameMusicDefaultVolume);
gameMusic.start(0, 999);
}
function fadeOutGameMusic() {
gameMusicID = setInterval(this, "fadeGameMusic", 20);
}
function muteMusic(bMute) {
if (bMute) {
gameMusic.setVolume(0);
} else {
gameMusic.setVolume(gameMusicDefaultVolume);
}
}
function fadeGameMusic(inObj) {
var _local2 = gameMusic.getVolume();
_local2 = _local2 - 1;
gameMusic.setVolume(_local2);
if (_local2 <= 0) {
trace("show the button");
_instance.broadcastMessage("showContinueButton");
gameMusic.stop();
clearInterval(gameMusicID);
}
}
var gameMusicDefaultVolume = 50;
var menuMusicDefaultVolume = 50;
}
Symbol 213 MovieClip [__Packages.com.kaboose.games.kelloggsfruitstreamers.Patterns] Frame 0
class com.kaboose.games.kelloggsfruitstreamers.Patterns
{
static var _instance;
function Patterns (subscriber) {
_instance = this;
AsBroadcaster.initialize(this);
subscribe(subscriber);
levelA.unshift(copyArray(largeArcB));
levelA.unshift(copyArray(simpleWobbleB));
levelA.unshift(copyArray(shortBreak));
levelB.unshift(copyArray(largeArcB));
levelB.unshift(copyArray(medWobbleA));
levelB.unshift(copyArray(shortBreak));
levelC.unshift(copyArray(FlatBottomtoFlatTop));
levelC.unshift(copyArray(lowSimpleWobbleA));
levelC.unshift(copyArray(shortBreak));
levelD.unshift(copyArray(lowSimpleWobbleA));
levelD.unshift(copyArray(FlatBottomtoFlatTop));
levelD.unshift(copyArray(shortBreak));
levelE.unshift(copyArray(PeaktoValleytoPeaktoValleyendBottom));
levelE.unshift(copyArray(BHalfValleytoPeaktoValleytoPeakendMiddle));
levelE.unshift(copyArray(FlatBottomtoFlatTop));
levelE.unshift(copyArray(shortBreak));
levelF.unshift(copyArray(slope));
levelF.unshift(copyArray(FlatBottomtoFlatTop));
levelF.unshift(copyArray(miniAttack));
levelF.unshift(copyArray(shortBreak));
levelG.unshift(copyArray(miniAttackReverse));
levelG.unshift(copyArray(FlatBottomtoFlatTop));
levelG.unshift(copyArray(largeArcB));
levelG.unshift(copyArray(shortBreak));
levelH.unshift(copyArray(HighLow));
levelH.unshift(copyArray(TwoSlope));
levelH.unshift(copyArray(longBreak));
levelI.unshift(copyArray(HalfValleytoPeaktoValleytoPeakendMiddle));
levelI.unshift(copyArray(miniAttackReverse));
levelI.unshift(copyArray(longBreak));
levelJ.unshift(copyArray(TheHeartAttack2startendmiddle));
levelJ.unshift(copyArray(lowSimpleWobbleA));
levelJ.unshift(copyArray(longBreak));
levelK.unshift(copyArray(miniAttackReverse));
levelK.unshift(copyArray(TheHeartAttack2startendmiddle));
levelK.unshift(copyArray(longBreak));
levelL.unshift(copyArray(slope));
levelL.unshift(copyArray(TwoSlope));
levelL.unshift(copyArray(HighLow));
levelL.unshift(copyArray(longBreak));
levelM.unshift(copyArray(miniAttack));
levelM.unshift(copyArray(miniAttack));
levelM.unshift(copyArray(longBreak));
levelN.unshift(copyArray(miniAttackReverse));
levelN.unshift(copyArray(miniAttackReverse));
levelN.unshift(copyArray(miniAttackReverse));
levelN.unshift(copyArray(longBreak));
levelO.unshift(copyArray(TheHeartAttack2startendmiddle));
levelO.unshift(copyArray(TheHeartAttack2startendmiddle));
levelO.unshift(copyArray(TheHeartAttack2startendmiddle));
levelO.unshift(copyArray(TheHeartAttack2startendmiddle));
levelO.unshift(copyArray(longBreak));
levels.unshift(copyArray(levelA));
levels.unshift(copyArray(levelB));
levels.unshift(copyArray(levelC));
levels.unshift(copyArray(levelD));
levels.unshift(copyArray(levelE));
levels.unshift(copyArray(levelF));
levels.unshift(copyArray(levelG));
levels.unshift(copyArray(levelH));
levels.unshift(copyArray(levelI));
levels.unshift(copyArray(levelJ));
levels.unshift(copyArray(levelK));
levels.unshift(copyArray(levelL));
levels.unshift(copyArray(levelM));
levels.unshift(copyArray(levelN));
levels.unshift(copyArray(levelO));
levels.reverse();
current = copyArray(levels[0]);
}
function subscribe(obj) {
_instance.addListener(obj);
}
function getPointData() {
if (current[current.length - 1][0] == undefined) {
current.pop();
}
if (current.length == 0) {
_instance.broadcastMessage("nextLevel");
currentLevelID++;
current = getNextLevel();
}
return(current[current.length - 1].pop());
}
function reset() {
currentLevelID = 0;
current = copyArray(levels[0]);
}
function getNextLevel() {
if (levels[currentLevelID] == undefined) {
currentLevelID = 14;
}
return(copyArray(levels[currentLevelID]));
}
function copyArray(inArray) {
var _local4 = new Array();
var _local2 = 0;
while (_local2 < inArray.length) {
if (inArray[_local2].length > 0) {
_local4[_local2] = copyArray(inArray[_local2]);
} else {
_local4[_local2] = inArray[_local2];
}
_local2++;
}
return(_local4);
}
var current = [];
var wobbleA = [0, 36, 72, 48, 24, 48, 24, 48, 24, 48, -1, 34, -24, 36, 0];
var wobbleB = [0, -36, 0, 48, 24, 48, 24, 48, 24, 48, 24, -60, -109, -74, -108, -48, 0];
var shortBreak = [0, 0, 0, 0];
var longBreak = [0, 0, 0, 0, 0, 0, 0, 0];
var HalfValleytoPeaktoValleytoPeakendMiddle = [0, -28, -50, -80, -53, -24, 0, -25, -55, -25, 0];
var FlatToptoMiddle = [0, -87, 100, -86, 102, -87, 100, -84, 100, -86, 0];
var TheHeartAttack2startendmiddle = [0, 99, -86, 100, -85, 100, -87, 99, -86, 101, 0];
var PeaktoValleytoPeaktoValleyendBottom = [0, 38, 64, 99, 67, 35, 0, 30, 65, 99, 100];
var FlatToptoFlatBottom = [0, -85, -85, -86, -86, 0, 101, 100, 101, 102, 99];
var FlatBottomtoFlatTop = [100, 101, 100, 101, 100, 0, -86, -87, -86, -85, -87];
var BHalfValleytoPeaktoValleytoPeakendMiddle = [0, 43, 71, 99, 74, 31, 84, 63, 35, 0, 0];
var FlatBottomtoendMiddle = [100, 101, 100, 101, 100, 60, 29, 16, -13, 1, -1];
var largeArcB = [0, 30, 50, 70, 90, 92, 90, 70, 50, 30, 0];
var largeArcA = [0, -20, -50, -70, -72, -81, -71, -60, -40, -20, 0];
var highSimpleWobbleA = [-50, -50, -10, -50, -30, 0, -50, -30, 10, -10, -50];
var lowSimpleWobbleA = [55, 45, 60, 41, 81, 75, 85, 45, 85, 45, 55];
var medWobbleB = [0, 70, 70, 0, -40, -40, 60, 0, -30, -20, 0];
var medWobbleA = [0, -70, -20, -20, -70, -70, 0, 0, -60, -60, 0];
var simpleWobbleB = [0, 13, 0, -30, -60, -50, 0, 50, 30, 10, 0];
var simpleWobbleA = [0, 10, 40, 80, 80, 70, 40, 40, 30, 30, 0];
var HighLow = [0, -20, -86, -59, -59, -59, -81, -50, 90, 20, 0];
var TwoSlope = [0, -70, -53, -27, 0, -70, -53, -27, 0, 0, 0];
var slope = [0, 96, 87, 77, 67, 58, 48, 36, 21, 9, 0];
var miniAttackReverse = [0, -86, 90, -64, 56, -48, 34, -33, 26, -25, 0];
var miniAttack = [0, -19, 30, -40, 70, -69, 80, -28, 40, -20, 0];
var levels = [];
var levelA = [];
var levelB = [];
var levelC = [];
var levelD = [];
var levelE = [];
var levelF = [];
var levelG = [];
var levelH = [];
var levelI = [];
var levelJ = [];
var levelK = [];
var levelL = [];
var levelM = [];
var levelN = [];
var levelO = [];
var currentLevelID = 0;
}
Symbol 214 MovieClip [__Packages.com.kaboose.games.kelloggsfruitstreamers.MenuManager] Frame 0
class com.kaboose.games.kelloggsfruitstreamers.MenuManager
{
static var _instance;
var container, menuMain, menuHighScores, menuInstructions;
function MenuManager (targetMC, subscriber) {
container = targetMC;
if (_global.bIsFunschool) {
domainMenu = "funschoolMenu";
}
if (_instance == undefined) {
_instance = this;
Key.addListener(this);
AsBroadcaster.initialize(this);
subscribe(this);
subscribe(subscriber);
}
}
function subscribe(obj) {
_instance.addListener(obj);
}
function showMainMenu() {
menuMain = container.attachMovie(domainMenu, "menuMain", 0);
menuMain.btn_play.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuMain.removeMovieClip();
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead = com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.container.attachMovie("menuSelectHead", "menuSelectHead", 1);
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headA.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headShark");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headB.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headFish");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headC.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headFishClown");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headD.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headDuck");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headE.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headSquid");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headF.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headSub");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headG.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headSkull");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headH.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headEye");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuSelectHead.btn_headI.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headSpaceShip");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
};
menuMain.btn_instructions.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuMain.removeMovieClip();
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.showInstructions();
};
menuMain.btn_highscores.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuMain.removeMovieClip();
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.showHighScores();
};
menuMain.btn_tell.onPress = function () {
var _local2 = ("javascript:openTellAFriendWindow('" + _root.tellURL) + "',450,550)";
getURL (_local2);
};
}
function isLoggedIn() {
var ID = setInterval(function () {
if ((_global.home.userKey == undefined) || (_global.home.userKey == "")) {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("userNotLoggedIn");
clearInterval(ID);
} else {
clearInterval(ID);
}
}, 10, this);
}
function userNotLoggedIn() {
menuHighScores.btn_register._visible = true;
menuHighScores.loginMsg._visible = true;
menuHighScores.btn_registerShadow._visible = true;
}
function showHighScores(playerScore) {
menuHighScores = container.attachMovie("menu_HighScores", "menuHighScores", 1);
menuHighScores.btn_register._visible = false;
menuHighScores.btn_registerShadow._visible = false;
menuHighScores.loginMsg._visible = false;
if (playerScore == undefined) {
_global.getScores(null, menuHighScores);
} else {
_global.getScores(playerScore, menuHighScores);
}
isLoggedIn();
menuHighScores.btn_mainMenu.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuHighScores.removeMovieClip();
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.showMainMenu();
};
menuHighScores.btn_register.onPress = function () {
getURL ("http://www.kaboose.com/registration/login.php", "_blank");
};
}
function showInstructions() {
menuInstructions = container.attachMovie("menuInstructions", "menuInstructions", 1);
menuInstructions.btn_headA.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headShark");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
menuInstructions.btn_headB.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headFish");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
menuInstructions.btn_headC.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.broadcastMessage("startGame", "headLizard");
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.removeAllMenus();
};
menuInstructions.btn_mainMenu.onPress = function () {
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.menuInstructions.removeMovieClip();
com.kaboose.games.kelloggsfruitstreamers.MenuManager._instance.showMainMenu();
};
}
function removeAllMenus() {
for (var _local2 in container) {
if (typeof(container[_local2]) == "movieclip") {
container[_local2].removeMovieClip();
}
}
}
var domainMenu = "menuMain";
}
Symbol 215 MovieClip [__Packages.com.kaboose.utils.FPSmeter] Frame 0
class com.kaboose.utils.FPSmeter
{
var container, interval;
function FPSmeter (targetMC, depth) {
MovieClip.addListener(this);
container = targetMC.createEmptyMovieClip("FPSmeter", depth);
container.createTextField("fpsText", 1, 0, 0, 0, 0);
container.fpsText.autoSize = true;
container.fpsText.text = "fps:" + frameCount;
container.onPress = function () {
startDrag (this);
};
container.onRelease = function () {
stopDrag();
};
interval = setInterval(function (fps) {
fps.container.fpsText.text = "fps:" + fps.frameCount;
fps.frameCount = 0;
}, 1000, this);
}
function onEnterFrame() {
frameCount++;
}
var frameCount = 0;
}
Symbol 216 MovieClip [__Packages.com.kaboose.games.kelloggsfruitstreamers.KeyEvents] Frame 0
class com.kaboose.games.kelloggsfruitstreamers.KeyEvents
{
static var _instance;
function KeyEvents (subscriber) {
if (_instance == undefined) {
_instance = this;
Key.addListener(this);
AsBroadcaster.initialize(this);
subscribe(subscriber);
}
}
function subscribe(obj) {
_instance.addListener(obj);
}
function onKeyUp() {
switch (Key.getCode()) {
case 32 :
_instance.broadcastMessage("togglePause");
return;
case 77 :
_instance.broadcastMessage("toggleSound");
return;
case 81 :
_instance.broadcastMessage("toggleQuality");
}
}
}
Symbol 217 MovieClip [__Packages.com.kaboose.games.kelloggsfruitstreamers.RainbowLines] Frame 0
class com.kaboose.games.kelloggsfruitstreamers.RainbowLines
{
var dupLines, container;
function RainbowLines (target) {
dupLines = new Array();
container = target;
}
function clear() {
container.clear();
for (var _local2 in dupLines) {
dupLines[_local2].clear();
}
}
function redraw(pointData) {
var _local8 = pointData.length - 1;
var _local6 = 6;
dupLines = [];
container.clear();
container.lineStyle(_local6, orange, 100);
container.moveTo(pointData[0].x, pointData[0].y);
var _local2 = 0;
while (_local2 < pointData.length) {
container.lineTo(pointData[_local2].x, pointData[_local2].y);
_local2++;
}
var _local4;
var _local5 = new Color(_local4);
_local4 = container.duplicateMovieClip("1", -2, {_y:container._y - _local6});
_local5 = new Color(_local4);
_local5.setRGB(yellow);
dupLines.push(_local4);
if (MovieClip.gameTimer > 20000) {
_local4 = container.duplicateMovieClip("2", -3, {_y:container._y + _local6});
_local5 = new Color(_local4);
_local5.setRGB(green);
dupLines.push(_local4);
_local4 = container.duplicateMovieClip("3", -4, {_y:container._y + (_local6 * 2)});
_local5 = new Color(_local4);
_local5.setRGB(green2);
dupLines.push(_local4);
}
if (MovieClip.gameTimer > 40000) {
_local4 = container.duplicateMovieClip("4", -5, {_y:container._y - (_local6 * 2)});
_local5 = new Color(_local4);
_local5.setRGB(blue);
dupLines.push(_local4);
_local4 = container.duplicateMovieClip("5", -6, {_y:container._y + (_local6 * 3)});
_local5 = new Color(_local4);
_local5.setRGB(purple);
dupLines.push(_local4);
}
}
var orange = 16737792;
var yellow = 16695606;
var green = 7381032;
var green2 = 35128;
var blue = 26265;
var purple = 10027110;
}
Symbol 218 MovieClip [__Packages.com.kaboose.utils.Formatting] Frame 0
class com.kaboose.utils.Formatting
{
function Formatting () {
}
static function timeToClockStyle(inTime) {
var _local3 = Math.floor;
var _local4;
var _local5;
var _local1;
var _local2;
_local4 = _local3(inTime / 1000);
_local2 = _local4 % 60;
_local1 = _local3((_local4 / 60) % 60);
_local5 = _local3((_local1 / 60) % 60);
if (_local1 < 10) {
_local1 = "0" + _local1;
}
if (_local2 < 10) {
_local2 = "0" + _local2;
}
return((_local1 + ":") + _local2);
}
static function showInstance(inObject) {
for (var _local3 in inObject) {
for (var _local2 in inObject[_local3]) {
trace(inObject[_local3][_local2].mc);
}
}
}
static function brace(inString) {
return(("[" + inString) + "]");
}
static function quote(inString) {
return(("\"" + inString) + "\"");
}
static function formatNumber(number) {
var _local2;
var _local1 = number.toString();
var _local3 = 1;
if (_local1.indexOf(".") == -1) {
_local2 = "";
_local1 = _local1.split("");
} else {
_local2 = _local1.substr(_local1.indexOf("."), _local1.length);
_local1 = _local1.substr(0, _local1.indexOf(".")).split("");
}
for (var _local4 in _local1) {
_local2 = _local1[_local4] + _local2;
if ((_local3++) == 3) {
_local3 = 1;
_local2 = (((isNaN(_local1[0]) && (_local4 > 1)) || ((!isNaN(_local1[0])) && (_local4 >= 1))) ? ("," + _local2) : (_local2));
}
}
return(_local2);
}
}
Symbol 219 MovieClip [__Packages.com.kaboose.particles.SimpleParticleBase] Frame 0
class com.kaboose.particles.SimpleParticleBase
{
var particle, color, xmove, ymove;
function SimpleParticleBase (target, sp) {
if (MovieClip.frameDelta > 6) {
return;
}
MovieClip.addListener(this);
var _local2 = target.getNextHighestDepth();
initObject._x = sp.x;
initObject._y = sp.y;
particle = target.attachMovie(spriteRef, spriteRef + getTimer(), _local2, initObject);
}
function changeColor(newColor) {
color = new Color(particle);
color.setRGB(newColor);
}
function onEnterFrame() {
particle._x = particle._x - (xmove * rand());
particle._y = particle._y + (ymove * rand());
if (((particle._x < 0) || (particle._y > Stage.height)) || (particle._y < 0)) {
destroy();
}
}
function destroy() {
MovieClip.removeListener(this);
particle.removeMovieClip();
}
var colorValue = 77777777;
var spriteRef = "dot";
var initObject = [];
var rand = Math.random;
}
Symbol 220 MovieClip [__Packages.com.kaboose.particles.types.BaseA] Frame 0
class com.kaboose.particles.types.BaseA extends com.kaboose.particles.SimpleParticleBase
{
var particle, colorArray, rand, changeColor;
function BaseA (target, sp) {
super(target, sp);
particle._width = 8;
particle._height = 8;
colorArray = new Array();
colorArray.push(orange);
colorArray.push(yellow);
colorArray.push(green);
colorArray.push(green2);
colorArray.push(blue);
colorArray.push(purple);
var _local3 = Math.floor(colorArray.length * rand());
changeColor(colorArray[_local3]);
}
var spriteRef = "gfx_ball";
var xmove = 12;
var ymove = -8;
var alpha = 0;
var orange = 16737792;
var yellow = 16695606;
var green = 7381032;
var green2 = 35128;
var blue = 26265;
var purple = 10027110;
}