Frame 1
function __com_mochibot__(swfid, mc, lv, trk) {
var x;
var g;
var s;
var fv;
var sb;
var u;
var res;
var mb;
var mbc;
mb = "__mochibot__";
mbc = "mochibot.com";
g = (_global ? (_global) : (_level0._root));
if (g[mb + swfid]) {
return(g[mb + swfid]);
}
s = System.security;
x = mc._root.getSWFVersion;
fv = (x ? (mc.getSWFVersion()) : ((_global ? 6 : 5)));
if (!s) {
s = {};
}
sb = s.sandboxType;
if (sb == "localWithFile") {
return(null);
}
x = s.allowDomain;
if (x) {
s.allowDomain(mbc);
}
x = s.allowInsecureDomain;
if (x) {
s.allowInsecureDomain(mbc);
}
u = (((((((((((("http://" + mbc) + "/my/core.swf?mv=7&fv=") + fv) + "&v=") + escape(getVersion())) + "&swfid=") + escape(swfid)) + "&l=") + lv) + "&f=") + mc) + (sb ? ("&sb=" + sb) : "")) + (trk ? "&t=1" : "");
lv = ((fv > 6) ? (mc.getNextHighestDepth()) : ((g[mb + "level"] ? (g[mb + "level"] + 1) : (lv))));
g[mb + "level"] = lv;
if (fv == 5) {
res = "_level" + lv;
if (!eval (res)) {
loadMovieNum (u, lv);
}
} else {
res = mc.createEmptyMovieClip(mb + swfid, lv);
res.loadMovie(u);
}
return(res);
}
__com_mochibot__("aabddbca", this, 10301, true);
function newLevel(lvl) {
ingame = true;
removeMovieClip(intro);
removeMovieClip(empty.ball2);
removeMovieClip(empty.ball4);
removeMovieClip(empty.ball6);
empty.attachMovie("ball1", "ball1", 4);
empty.attachMovie("ball1", "ball3", 2);
empty.attachMovie("ball1", "ball5", 0);
empty.ball3._alpha = 50;
empty.ball5._alpha = 25;
empty.ball1.gotoAndStop(1);
empty.ball2.gotoAndStop(1);
empty.ball1.xpush = 0;
empty.ball1.ypush = 0;
empty.ball1.xspeed = 0;
empty.ball1.yspeed = 0;
empty.ball1.charging = 0;
empty.ball1.charge = 0;
empty.ball1.ty = 100;
empty.ball1.tx = 275;
targetscollected = 0;
gtimer = level[lvl][1];
counter = 6;
slowmo = 1;
targets = [];
tstart = level[lvl][2];
tinsta = 1;
maxheight = 0;
timer = tstart - 1;
aresplit = false;
magnet = false;
if (currentlvl >= 4) {
slowmoset = 5;
}
if (currentlvl >= 8) {
splitunlocked = true;
}
if (currentlvl >= 11) {
splitunlocked = true;
}
if (currentlvl > 12) {
sheep = true;
__com_mochibot__("a7900b0d", this, 10301, true);
}
}
function Ball(ob) {
if (Key.isDown(39)) {
ob.xspeed = ob.xspeed - (0.07 / slowmo);
if (Key.isDown(37) && (aresplit == false)) {
if (Key.isDown(32)) {
ob.charging = 1;
if (ob.charge < 19) {
ob.charge++;
} else {
aresplit = true;
split();
ob.charge = 0;
ob.charging = 0;
}
}
} else if (Key.isDown(32)) {
ob.charging = 1;
ob.xpush = 1;
if (ob.charge < 19) {
ob.charge++;
}
}
} else if (Key.isDown(37)) {
ob.xspeed = ob.xspeed + (0.07 / slowmo);
if (Key.isDown(39) && (aresplit == false)) {
if (Key.isDown(32)) {
ob.charging = 1;
if (ob.charge < 19) {
ob.charge++;
} else {
split();
aresplit = true;
ob.charge = 0;
ob.charging = 0;
}
}
} else if (Key.isDown(32)) {
ob.xpush = -1;
ob.charging = 1;
if (ob.charge < 19) {
ob.charge++;
}
}
}
if (Key.isDown(38)) {
if (Key.isDown(32)) {
ob.ypush = -1;
ob.charging = 1;
if (ob.charge < 19) {
ob.charge++;
}
}
}
if (Key.isDown(40)) {
if (Key.isDown(32)) {
ob.ypush = 1;
ob.charging = 1;
if (ob.charge < 19) {
ob.charge++;
}
}
}
if (ob.charging == 1) {
if (Key.isDown(32)) {
} else {
ob.charging = 0;
shoot(ob);
ob.charge = 0;
}
} else {
ob.charge = 0;
}
if (Key.isDown(32)) {
slowmo = slowmoset;
} else {
slowmo = 1;
}
if (Key.isDown(90)) {
if (aresplit == true) {
if (Key.isToggled(90)) {
magnet = true;
} else {
magnet = false;
}
}
}
if (magnet == true) {
if (aresplit == true) {
if (ob == empty.ball1) {
if (ob._x > empty.ball2._x) {
ob.xspeed = ob.xspeed + (0.8 / slowmo);
} else {
ob.xspeed = ob.xspeed - (0.8 / slowmo);
}
if (ob._y > empty.ball2._y) {
ob.yspeed = ob.yspeed + (0.8 / slowmo);
} else {
ob.yspeed = ob.yspeed - (0.8 / slowmo);
}
}
}
}
if (ob.xspeed != 0) {
if (ob.xspeed > 0) {
ob.xspeed = ob.xspeed - (0.05 / slowmo);
} else {
ob.xspeed = ob.xspeed + (0.05 / slowmo);
}
}
if (sheep == true) {
ob._rotation = ob._rotation - (ob.xspeed / slowmo);
}
ob.tx = ob.tx - (ob.xspeed / slowmo);
ob.ty = ob.ty - (ob.yspeed / slowmo);
ob.yspeed = ob.yspeed - (1.2 / slowmo);
if (ob.ty > 380) {
ob.yspeed = (-ob.yspeed) - 5;
ob.ty = 380;
}
if (ob.tx > 530) {
ob.xspeed = -ob.xspeed;
ob.tx = 530;
} else if (ob.tx < 20) {
ob.xspeed = -ob.xspeed;
ob.tx = 20;
}
if (ob == empty.ball1) {
empty.ball3._y = ob._y;
empty.ball3._x = ob._x;
empty.ball3._rotation = ob._rotation;
} else if (ob == empty.ball2) {
empty.ball4._y = ob._y;
empty.ball4._x = ob._x;
empty.ball4._rotation = ob._rotation;
}
ob._y = ob.ty;
ob._x = ob.tx;
var _local2 = 0;
while (_local2 < targets.length) {
if (Math.sqrt(((ob._y - targets[_local2]._y) * (ob._y - targets[_local2]._y)) + ((ob._x - targets[_local2]._x) * (ob._x - targets[_local2]._x))) < (10 + (targets[_local2]._width / 2))) {
removeMovieClip(targets[_local2]);
timer = tinsta;
targets.splice(_local2, 1);
money = money + 1;
targetscollected++;
}
_local2++;
}
timer++;
if (timer > tstart) {
target();
timer = 0;
}
gtimer = gtimer - 1;
if ((-Math.floor(ob.ty - 380)) >= maxheight) {
maxheight = -Math.floor(ob.ty - 380);
trace(maxheight);
}
}
function shoot(ob) {
ob.xspeed = ob.xspeed - ((ob.xpush * ob.charge) / 2);
ob.yspeed = ob.yspeed - (ob.ypush * ob.charge);
ob.xpush = 0;
ob.ypush = 0;
ob.charge = 0;
}
function target() {
empty.attachMovie("target", "target_" + counter, counter);
empty["target_" + counter]._x = (Math.random() * 510) + 20;
empty["target_" + counter]._y = (Math.random() * 360) + 20;
targets.push(empty["target_" + counter]);
counter++;
}
function split() {
if (splitunlocked == true) {
empty.attachMovie("ball1", "ball2", 5, {_x:empty.ball1._x, _y:empty.ball1._y});
empty.attachMovie("ball1", "ball4", 3, {_x:empty.ball1._x, _y:empty.ball1._y});
empty.attachMovie("ball1", "ball6", 1, {_x:empty.ball1._x, _y:empty.ball1._y});
empty.ball4._alpha = 50;
empty.ball6._alpha = 25;
empty.ball2.xpush = empty.ball1.xpush;
empty.ball2.ypush = empty.ball1.ypush;
empty.ball2.xspeed = empty.ball1.xspeed + 1;
empty.ball2.yspeed = empty.ball1.yspeed;
empty.ball2.charging = empty.ball1.charging;
empty.ball2.charge = empty.ball1.charge;
empty.ball2.ty = empty.ball1.ty;
empty.ball2.tx = empty.ball1.tx;
}
}
function GUI() {
mask._width = 190 - (empty.ball1.charge * 10);
Money.text = money;
targettotal.text = targets.length;
seconds.text = Math.floor(gtimer / 4) / 10;
height.text = -Math.floor(_root.empty.ball1.ty - 380);
}
function mission() {
if (level[currentlvl][0] == 1) {
if (gtimer <= 0) {
if (targetscollected >= level[currentlvl][4]) {
currentlvl++;
endLvl();
_root.attachMovie("completed", "completed", 555555);
} else {
endLvl();
money = money - Math.floor(targetscollected / 10);
_root.attachMovie("failure", "failure", 555555);
}
}
} else if (level[currentlvl][0] == 2) {
if (targets.length <= level[currentlvl][4]) {
if (gtimer <= 0) {
currentlvl++;
endLvl();
_root.attachMovie("completed", "completed", 555555);
}
} else {
endLvl();
_root.attachMovie("failure", "failure", 555555);
money = money - Math.floor(targetscollected / 10);
}
} else if (level[currentlvl][0] == 3) {
if (gtimer <= 0) {
if (maxheight >= level[currentlvl][4]) {
currentlvl++;
endLvl();
_root.attachMovie("completed", "completed", 555555);
money = money + Math.floor(maxheight / 500);
} else {
endLvl();
_root.attachMovie("failure", "failure", 555555);
money = money - Math.floor(targetscollected / 10);
}
}
}
}
function endLvl() {
ingame = false;
counter = 2;
reallvl = currentlvl + 1;
trace(reallvl);
}
function Frame() {
if (ingame == true) {
if (empty.ball2 != undefined) {
Ball(empty.ball2);
}
empty.ball5._y = empty.ball3._y;
empty.ball5._x = empty.ball3._x;
empty.ball6._y = empty.ball4._y;
empty.ball6._x = empty.ball4._x;
Ball(empty.ball1);
GUI();
mission();
graphics();
}
}
function graphics() {
ob = empty.ball1;
ob2 = empty.ball2;
ob3 = empty.ball3;
ob4 = empty.ball4;
ob5 = empty.ball5;
ob6 = empty.ball6;
if (sheep == true) {
ob.gotoAndStop(5);
ob2.gotoAndStop(5);
ob3.gotoAndStop(5);
ob4.gotoAndStop(5);
ob5.gotoAndStop(5);
ob6.gotoAndStop(5);
return(undefined);
}
if (slowmoset > 1) {
if (ob.charging == true) {
ob.gotoAndStop(2);
ob2.gotoAndStop(2);
ob3.gotoAndStop(2);
ob4.gotoAndStop(2);
ob5.gotoAndStop(2);
ob6.gotoAndStop(2);
if (magnet == true) {
ob.gotoAndStop(4);
ob3.gotoAndStop(4);
ob5.gotoAndStop(4);
} else {
ob.gotoAndStop(2);
ob3.gotoAndStop(2);
ob5.gotoAndStop(2);
}
} else if (ob.charging != true) {
ob.gotoAndStop(1);
ob3.gotoAndStop(1);
ob5.gotoAndStop(1);
ob2.gotoAndStop(1);
ob4.gotoAndStop(1);
ob6.gotoAndStop(1);
if (magnet == true) {
ob.gotoAndStop(3);
ob3.gotoAndStop(3);
ob5.gotoAndStop(3);
} else {
ob.gotoAndStop(1);
ob3.gotoAndStop(1);
ob5.gotoAndStop(1);
}
}
}
}
fscommand ("allowscale", false);
reallvl = 1;
currentlvl = 0;
money = 0;
ingame = false;
targetscollected = 0;
level = [[1, 600, 100, "Collect 2 Targets before time is up!", 1], [1, 2400, 100, "Collect 10 Targets before time is up!", 10], [2, 2400, 60, "Keep the Number of Targets on Stage below 10 for one Minute", 10], [3, 600, 1000, "Jump 3000 Feet before time is up!", 3000], [1, 1800, 200, "Collect 5 Targets", 5, "You have unlocked slow motion, press space to enter slow motion"], [3, 600, 200, "Jump 10000 feet", 10000], [1, 2400, 50, "collect 30 targets in a minute", 30], [2, 4800, 70, "keep the number of targets below 8 for 2 minutes", 8], [1, 1800, 50, "collect 20 targets", 20, "you have unlocked the split function; while holding left and right, charge space"], [3, 600, 200, "Jump 18000 feet", 18000], [1, 2400, 75, "collect 20 targets", 20], [1, 1600, 10, "collect 100 targets", 100, "you have unlocked magnet, after the ball is spliced, press z to toggle on/off"], [2, 4800, 1, "last level!!! keep your computer from locking up by keeping the targets on screen below 200", 200], [3, 1E18, 80, "good job... don't you feel proud?", 10000000, "SHEEEEPY!!!"]];
_root.attachMovie("intro", "intro", 1000000);
intro.reward.text = "Arrow keys to control and Space to charge";
intro.mission.text = "Mission: " + level[currentlvl][3];
intro.score.text = money;
slowmoset = 1;
splitunlocked = false;
magnet = false;
sheep = false;
Instance of Symbol 37 MovieClip [empty] "empty" in Frame 1
onClipEvent (enterFrame) {
_root.Frame();
}
Symbol 3 MovieClip Frame 19
stop();
Symbol 8 MovieClip [ball1] Frame 1
stop();
Symbol 26 MovieClip [intro] Frame 1
begin.onRelease = function () {
_root.newLevel(_root.currentlvl);
};
shop.onRelease = function () {
_root.attachMovie("shopmenu", "shopmenu", 1);
_root.intro.removeMovieClip(intro);
};
link.onRelease = function () {
getURL ("http://www.albinoblacksheep.com", "_blank");
};
Instance of Symbol 25 MovieClip [link] "link" in Symbol 26 MovieClip [intro] Frame 1
/* no clip actions */
Symbol 30 MovieClip [failure] Frame 87
cont.onRelease = function () {
temp = _root.targets.length;
var _local2 = 0;
while (_local2 < temp) {
trace(_root.targets[_local2]);
removeMovieClip(_root.targets[_local2]);
_local2++;
}
_local2 = 0;
while (_local2 < temp) {
_root.targets = [];
_local2++;
}
trace(_root.targets[_local2]);
_root.attachMovie("intro", "intro", 1000000);
_root.intro.mission.text = "Mission: " + _root.level[_root.currentlvl][3];
_root.intro.level.text = "Level: " + _root.reallvl;
_root.failure.removeMovieClip(failure);
};
stop();
Symbol 34 MovieClip [completed] Frame 87
cont.onRelease = function () {
temp = _root.targets.length;
var _local2 = 0;
while (_local2 < temp) {
trace(_root.targets[_local2]);
removeMovieClip(_root.targets[_local2]);
_local2++;
}
_local2 = 0;
while (_local2 < temp) {
_root.targets = [];
_local2++;
}
trace(_root.targets[_local2]);
_root.attachMovie("intro", "intro", 1000000);
_root.intro.score.text = _root.money;
if (_root.level[_root.currentlvl][5] != undefined) {
_root.intro.reward.text = "Unlocked: " + _root.level[_root.currentlvl][5];
}
_root.intro.mission.text = "Mission: " + _root.level[_root.currentlvl][3];
_root.intro.level.text = "Level: " + _root.reallvl;
_root.completed.removeMovieClip(completed);
};
stop();