Frame 1
Nonoba.api.NonobaAPI.Init(APIContainer);
fscommand.showMenu = false;
choosenom = undefined;
nom = null;
Nonoba.api.NonobaAPI.GetUsername(function (response, username) {
switch (response) {
case Nonoba.api.NonobaAPI.SUCCESS :
_root.choosenom = true;
_root.nom = username;
break;
case Nonoba.api.NonobaAPI.NOT_LOGGED_IN :
_root.choosenom = false;
nom = null;
break;
case Nonoba.api.NonobaAPI.ERROR :
_root.choosenom = false;
nom = null;
}
});
stop();
onEnterFrame = function () {
completed = _root.getBytesLoaded() / _root.getBytesTotal();
percent = completed * 100;
loada.scaler._xscale = percent;
loada2.scaler._xscale = percent;
if (((percent == 100) && (_currentframe == 1)) && (choosenom != undefined)) {
gotoAndStop (3);
delete onEnterFrame;
}
};
Frame 3
balls = 0;
stop();
played = false;
if (_root.choosenom) {
prompter._visible = false;
}
if (seenit) {
intro._visible = false;
}
Frame 4
function cleanUp() {
here.gotoAndStop(1);
here._x = -1000;
removeMovieClip(pscreen);
removeMovieClip(timer);
i = 0;
while (i <= balls) {
removeMovieClip(_root["ball" + i]);
i++;
}
}
alertist.gotoAndStop(1);
alertist._visible = true;
played = true;
var beepSound = new Sound();
beepSound.attachSound("beep");
attachMovie("pscreen", "pscreen", 1000);
attachMovie("timer", "timer", 999);
timer._x = Stage.width / 2;
timer._y = Stage.height / 2;
pscreen._x = Stage.width / 2;
pscreen._y = Stage.height / 2;
_root.balls = 0;
addBall = function () {
timer.gotoAndPlay(1);
attachMovie("ball", "ball" + balls, balls);
_root["ball" + balls].gotoAndStop(Math.ceil(Math.random() * _root["ball" + balls]._totalframes));
_root["ball" + balls].effect.gotoAndStop(Math.ceil(Math.random() * _root["ball" + balls].effect._totalframes));
_root["ball" + balls]._xscale = (_root["ball" + balls]._yscale = (Math.random() * 100) + 50);
_root["ball" + balls]._x = Math.random() * Stage.width;
_root["ball" + balls].depth = balls;
_root["ball" + balls]._y = Math.random() * Stage.height;
_root["ball" + balls].speed = 5 - (Math.random() * 10);
balls++;
};
addBall();
onMouseDown = function () {
if (pscreen._currentframe == 1) {
clicking = true;
} else {
pscreen.play();
}
};
onMouseUp = function () {
clicking = false;
};
onEnterFrame = function () {
curHitDepth = -1;
i = 0;
while (i <= balls) {
_root["ball" + i]._rotation = _root["ball" + i]._rotation + _root["ball" + i].speed;
if (clicking) {
if (_root["ball" + i].hitTest(_xmouse, _ymouse, true)) {
if (_root["ball" + i].depth > curHitDepth) {
curHitDepth = _root["ball" + i].depth;
}
}
}
i++;
}
xballs = balls - 1;
if (curHitDepth > -1) {
if (curHitDepth == (balls - 1)) {
if (pscreen._currentframe < 2) {
beepSound.start(0, 1);
if ((((balls == 5) || (balls == 10)) || (balls == 15)) || (balls == 20)) {
NonobaAPI.AwardAchievement("oddball" + balls, function (response, count) {
switch (response) {
case NonobaAPI.SUCCESS :
trace("The achievement was successfully awarded.");
trace(("It has been awarded " + count) + " times.");
break;
case NonobaAPI.NOT_LOGGED_IN :
trace("The user is not logged in.");
break;
case NonobaAPI.ERROR :
trace("An error occurred.");
}
});
}
}
gameover = false;
pscreen.play();
timer.stop();
} else {
timer.stop();
gameover = true;
pscreen.gotoAndPlay("lose");
pscreen.levelc = ("Level " + balls) + " completed";
here._x = _root["ball" + xballs]._x;
here._y = _root["ball" + xballs]._y;
here._yscale = (here._xscale = _root["ball" + xballs].xscale);
here.play();
}
}
if ((timer._currentframe == timer._totalframes) && (pscreen._currentframe == 1)) {
timer.stop();
gameover = true;
pscreen.gotoAndPlay("lose");
pscreen.levelc = ("Level " + balls) + " completed";
here._x = _root["ball" + xballs]._x;
here._y = _root["ball" + xballs]._y;
here._yscale = (here._xscale = _root["ball" + xballs].xscale);
here.play();
}
};
Frame 5
function __rankz_send__(par1, par2, par3, par4) {
par227 = new LoadVars();
par228 = new LoadVars();
par227.flashkey = par2;
par227.SU0249 = par1;
par227.bmFtZTE = ab3.rankz.Armor_Bot_30_En_AS1.Encode(par3);
par227.c2NvcmUx = ab3.rankz.Armor_Bot_30_En_AS1.Encode(par4 + "j%e%a%n%s");
par227.flashkey = par227.flashkey.split("=").join("");
par227.SU0249 = par227.SU0249.split("=").join("");
par228.onLoad = function (success) {
if (success) {
loader._visible = false;
if (par228.place == 0) {
hstatus = "Sorry, you didn't make it to the top500.";
} else {
hstatus = ("Success! You are position #" + par228.place) + " on the boards!";
}
} else {
trace(par228.loaded);
hstatus = "But it failed!";
}
};
par227.sendAndLoad("http://rankz.armorbot.com/submit/", par228, "POST");
}
viewinscore._visible = false;
stop();
if (_root.balls != 0) {
reportit = "!= 0";
Nonoba.api.NonobaAPI.SubmitScore("totalmemorised", balls, function (response) {
reportit = "RESP: " + reportit;
switch (response) {
case Nonoba.api.NonobaAPI.SUCCESS :
reportit = "done";
break;
case Nonoba.api.NonobaAPI.NOT_LOGGED_IN :
reportit = "NLI";
break;
case Nonoba.api.NonobaAPI.ERROR :
reportit = "Error!";
}
});
reportit = Nonoba.api.NonobaAPI.SubmitScore;
Nonoba.api.NonobaAPI.SubmitScore("memorised", balls);
}
if (_root.played) {
bXlnYW1lX25hbWVfdmFyaWFibGU = nom;
bXlnYW1lX3Njb3JlX3ZhcmlhYmxl = balls;
__rankz_send__("MjQ2OWolZSVhJW4lcw==", "SXpLU0xkaW4=", bXlnYW1lX25hbWVfdmFyaWFibGU, bXlnYW1lX3Njb3JlX3ZhcmlhYmxl);
trace(Nonoba.api.NonobaAPI);
} else {
attempt._visible = false;
viewinscore._visible = true;
hstatus = "";
loader._visible = false;
getURL ("http://rankz.armorbot.com/oddball/", "_BLANK");
}
Frame 6
_root.gotoAndStop("menu");
trace("e");
Symbol 8 MovieClip [timer] Frame 155
stop();
Symbol 186 MovieClip [__Packages.Nonoba.api.NonobaAPI] Frame 0
class Nonoba.api.NonobaAPI
{
static var api;
function NonobaAPI () {
throw new Error("ERROR!: You cannot create an instance of the NonobaAPI class!");
}
static function SubmitScore(key, score, callback) {
if (!isInited) {
Init();
}
if (failed) {
if (callback) {
callback(ERROR);
}
return(undefined);
}
if (api && (api.SubmitScore)) {
api.SubmitScore(key, score, callback);
} else {
cachedRequests.push(function () {
Nonoba.api.NonobaAPI.SubmitScore(key, score, callback);
});
}
}
static function AwardAchievement(key, callback) {
if (!isInited) {
Init();
}
if (failed) {
if (callback) {
callback(ERROR, 0);
}
return(undefined);
}
if (api && (api.AwardAchievement)) {
api.AwardAchievement(key, callback);
} else {
cachedRequests.push(function () {
Nonoba.api.NonobaAPI.AwardAchievement(key, callback);
});
}
}
static function SetUserData(key, value, callback) {
if (!isInited) {
Init();
}
if (failed) {
if (callback) {
callback(ERROR);
}
return(undefined);
}
if (api && (api.SetUserData)) {
api.SetUserData(key, value, callback);
} else {
cachedRequests.push(function () {
Nonoba.api.NonobaAPI.SetUserData(key, value, callback);
});
}
}
static function GetUserData(key, callback) {
if (!isInited) {
Init();
}
if (failed) {
if (callback) {
callback(ERROR, "");
}
return(undefined);
}
if (api && (api.GetUserData)) {
api.GetUserData(key, callback);
} else {
cachedRequests.push(function () {
Nonoba.api.NonobaAPI.GetUserData(key, callback);
});
}
}
static function GetUsername(callback) {
if (!isInited) {
Init();
}
if (failed) {
if (callback) {
callback(ERROR, "");
}
return(undefined);
}
if (api && (api.GetUsername)) {
api.GetUsername(callback);
} else {
cachedRequests.push(function () {
Nonoba.api.NonobaAPI.GetUsername(callback);
});
}
}
static function Init(container) {
function emptyCache() {
var _local1 = 0;
while (_local1 < Nonoba.api.NonobaAPI.cachedRequests.length) {
Nonoba.api.NonobaAPI.cachedRequests[_local1]();
_local1++;
}
Nonoba.api.NonobaAPI.cachedRequests = [];
}
if (isInited) {
throw new Error("NonobaAPI can not be re-initialized!");
}
isInited = true;
var _local3 = _root.nonoba$apicodeas2;
if (!_local3) {
failed = true;
emptyCache();
}
System.security.allowDomain("*");
container = container || _root;
api = container.createEmptyMovieClip("___NonobaAPI__loader", container.getNextHighestDepth());
var _local5 = new MovieClipLoader();
_local5.addListener({onLoadComplete:function () {
var loadTimer = setInterval(mx.utils.Delegate.create(Nonoba.api.NonobaAPI, function () {
if (!(Nonoba.api.NonobaAPI.api.SubmitScore === undefined)) {
clearInterval(loadTimer);
emptyCache();
}
}), 500);
}, onLoadError:function () {
Nonoba.api.NonobaAPI.failed = true;
emptyCache();
}});
_local5.loadClip(_local3, api);
}
static var SUCCESS = "SUCCESS";
static var NOT_LOGGED_IN = "user not logged in";
static var ERROR = "error";
static var isInited = false;
static var loading = false;
static var cachedRequests = [];
static var failed = false;
}
Symbol 187 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 188 MovieClip [__Packages.ab3.rankz.Armor_Bot_30_En_AS1] Frame 0
class ab3.rankz.Armor_Bot_30_En_AS1 extends Object
{
static var _CharsReverseLookup;
var _Armor_Bot_30_En_AS1Str, _Armor_Bot_30_En_AS1Count;
function Armor_Bot_30_En_AS1 () {
super();
}
static function Encode(str) {
var _local1 = new ab3.rankz.Armor_Bot_30_En_AS1();
return(_local1.encodeArmor_Bot_30_En_AS1(str));
}
static function Decode(str) {
var _local1 = new ab3.rankz.Armor_Bot_30_En_AS1();
return(_local1.decodeArmor_Bot_30_En_AS1(str));
}
static function StringReplaceAll(source, find, replacement) {
return(source.split(find).join(replacement));
}
static function InitReverseChars() {
_CharsReverseLookup = new Array();
var _local1 = 0;
while (_local1 < _Chars.length) {
_CharsReverseLookup[_Chars[_local1]] = _local1;
_local1++;
}
return(true);
}
static function UrlDecode(str) {
str = StringReplaceAll(str, "\\", " ");
str = unescape(str);
return(str);
}
static function UrlEncode(str) {
str = escape(str);
str = StringReplaceAll(str, "\\", "%2B");
str = StringReplaceAll(str, "%20", "+");
return(str);
}
function setArmor_Bot_30_En_AS1Str(str) {
_Armor_Bot_30_En_AS1Str = str;
_Armor_Bot_30_En_AS1Count = 0;
}
function readArmor_Bot_30_En_AS1() {
if (!_Armor_Bot_30_En_AS1Str) {
return(_EndOfInput);
}
if (_Armor_Bot_30_En_AS1Count >= _Armor_Bot_30_En_AS1Str.length) {
return(_EndOfInput);
}
var _local2 = _Armor_Bot_30_En_AS1Str.charCodeAt(_Armor_Bot_30_En_AS1Count) & 255;
_Armor_Bot_30_En_AS1Count++;
return(_local2);
}
function encodeArmor_Bot_30_En_AS1(str) {
setArmor_Bot_30_En_AS1Str(str);
var _local3 = "";
var _local2 = new Array(3);
var _local5 = 0;
var _local4 = false;
while ((!_local4) && (((_local2[0] = readArmor_Bot_30_En_AS1())) != _EndOfInput)) {
_local2[1] = readArmor_Bot_30_En_AS1();
_local2[2] = readArmor_Bot_30_En_AS1();
_local3 = _local3 + _Chars[_local2[0] >> 2];
if (_local2[1] != _EndOfInput) {
_local3 = _local3 + _Chars[((_local2[0] << 4) & 48) | (_local2[1] >> 4)];
if (_local2[2] != _EndOfInput) {
_local3 = _local3 + _Chars[((_local2[1] << 2) & 60) | (_local2[2] >> 6)];
_local3 = _local3 + _Chars[_local2[2] & 63];
} else {
_local3 = _local3 + _Chars[(_local2[1] << 2) & 60];
_local3 = _local3 + "=";
_local4 = true;
}
} else {
_local3 = _local3 + _Chars[(_local2[0] << 4) & 48];
_local3 = _local3 + "=";
_local3 = _local3 + "=";
_local4 = true;
}
_local5 = _local5 + 4;
if (_local5 >= 76) {
_local3 = _local3 + newline;
_local5 = 0;
}
}
return(_local3);
}
function readReverseArmor_Bot_30_En_AS1() {
if (!_Armor_Bot_30_En_AS1Str) {
return(_EndOfInput);
}
while (true) {
if (_Armor_Bot_30_En_AS1Count >= _Armor_Bot_30_En_AS1Str.length) {
return(_EndOfInput);
}
var _local2 = _Armor_Bot_30_En_AS1Str.charAt(_Armor_Bot_30_En_AS1Count);
_Armor_Bot_30_En_AS1Count++;
if (_CharsReverseLookup[_local2]) {
return(_CharsReverseLookup[_local2]);
}
if (_local2 == "A") {
return(0);
}
}
}
function ntos(n) {
var _local1 = n.toString(16);
if (_local1.length == 1) {
_local1 = "0" + _local1;
}
_local1 = "%" + _local1;
return(unescape(_local1));
}
function decodeArmor_Bot_30_En_AS1(str) {
setArmor_Bot_30_En_AS1Str(str);
var _local3 = "";
var _local2 = new Array(4);
var _local4 = false;
while (((!_local4) && (((_local2[0] = readReverseArmor_Bot_30_En_AS1())) != _EndOfInput)) && (((_local2[1] = readReverseArmor_Bot_30_En_AS1())) != _EndOfInput)) {
_local2[2] = readReverseArmor_Bot_30_En_AS1();
_local2[3] = readReverseArmor_Bot_30_En_AS1();
_local3 = _local3 + ntos(((_local2[0] << 2) & 255) | (_local2[1] >> 4));
if (_local2[2] != _EndOfInput) {
_local3 = _local3 + ntos(((_local2[1] << 4) & 255) | (_local2[2] >> 2));
if (_local2[3] != _EndOfInput) {
_local3 = _local3 + ntos(((_local2[2] << 6) & 255) | _local2[3]);
} else {
_local4 = true;
}
} else {
_local4 = true;
}
}
return(_local3);
}
function toHex(n) {
var _local4 = "";
var _local3 = true;
var _local1 = 32;
while (_local1 > 0) {
_local1 = _local1 - 4;
var _local2 = (n >> _local1) & 15;
if ((!_local3) || (_local2 != 0)) {
_local3 = false;
_local4 = _local4 + _Digits[_local2];
}
}
return(((_local4 == "") ? "0" : (_local4)));
}
function pad(str, len, pad) {
var _local2 = str;
var _local1 = str.length;
while (_local1 < len) {
_local2 = pad + _local2;
_local1++;
}
return(_local2);
}
function encodeHex(str) {
var _local4 = "";
var _local2 = 0;
while (_local2 < str.length) {
_local4 = _local4 + pad(toHex(str.charCodeAt(_local2) & 255), 2, "0");
_local2++;
}
return(_local4);
}
function decodeHex(str) {
var _local5 = "";
var _local3 = "";
var _local2 = 0;
while (_local2 < str.length) {
_local3 = _local3 + str.charAt(_local2);
if (_local3.length == 2) {
_local5 = _local5 + ntos(parseInt("0x" + _local3));
_local3 = "";
}
_local2++;
}
return(_local5);
}
static var _EndOfInput = -1;
static var _Chars = new Array("A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "+", "/");
static var _CharsReverseLookupInited = InitReverseChars();
static var _Digits = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f");
}
Symbol 55 MovieClip [pscreen] Frame 1
stop();
Symbol 55 MovieClip [pscreen] Frame 20
object1.stop();
object1.effect.stop();
object2.stop();
object2.effect.stop();
Symbol 55 MovieClip [pscreen] Frame 30
levelc = ("Level " + _root.balls) + " completed.";
stop();
stop();
Symbol 55 MovieClip [pscreen] Frame 31
_root.addBall();
trace(_root.gameover);
_root.alertist.nextFrame();
Symbol 55 MovieClip [pscreen] Frame 40
object1.stop();
object1.effect.stop();
object1.stop();
object1.effect.stop();
Symbol 55 MovieClip [pscreen] Frame 50
gotoAndStop (1);
Symbol 55 MovieClip [pscreen] Frame 100
object1.stop();
object1.effect.stop();
object2.stop();
object2.effect.stop();
Symbol 55 MovieClip [pscreen] Frame 110
stop();
Symbol 55 MovieClip [pscreen] Frame 111
_root.gotoAndStop("submitscore");
_root.cleanUp();
Symbol 64 Button
on (release) {
gotoAndStop ("game");
}
Symbol 77 Button
on (release) {
gotoAndStop ("submitscore");
}
Symbol 80 Button
on (release) {
getURL ("http://www.armorgames.com", "_BLANK");
}
Symbol 83 Button
on (release) {
getURL ("http://www.armorblog.com", "_BLANK");
}
Symbol 97 Button
on (release) {
_visible = false;
_root.choosenom = true;
_root.nom = nom;
}
Symbol 112 MovieClip Frame 126
_parent.play();
Symbol 113 MovieClip Frame 1
if (_root.seenit == true) {
stop();
}
Symbol 113 MovieClip Frame 123
stop();
Instance of Symbol 112 MovieClip in Symbol 113 MovieClip Frame 123
onClipEvent (enterFrame) {
this.onPress = function () {
getURL ("http://www.armorgames.com", "_blank");
};
}
Symbol 113 MovieClip Frame 124
stop();
_root.seenit = true;
Symbol 132 MovieClip Frame 1
stop();
Symbol 138 MovieClip Frame 5
_visible = false;
Symbol 167 Button
on (release) {
getURL ("http://rankz.armorbot.com/oddball/", "_BLANK");
}
Symbol 169 Button
on (release) {
gotoAndStop (3);
}
Symbol 171 Button
on (release) {
gotoAndStop (4);
}
Symbol 179 Button
on (release) {
getURL ("http://www.armorgames.com", "_BLANK");
}