Frame 1
stop();
Instance of Symbol 119 MovieClip in Frame 1
onClipEvent (enterFrame) {
if (_root.getBytesLoaded() == _root.getBytesTotal()) {
gotoAndStop (2);
} else {
gotoAndStop (1);
perc = _root.getBytesLoaded() / _root.getBytesTotal();
mask._x = (bar._x - 1) + perc;
}
}
Frame 2
stop();
playerName = "";
Frame 3
stop();
Frame 4
function openPG() {
getURL ("http://www.psychogoldfish.com", "_blank");
}
function openWGM() {
getURL ("http://www.webgamemagazine.com", "_blank");
}
function openJT() {
getURL ("http://www.joshtuttle.com", "_blank");
}
var lettersCM = new ContextMenu();
lettersCM.hideBuiltInItems();
lettersCM.customItems.push(new ContextMenuItem("Play More Games", openPG));
lettersCM.customItems.push(new ContextMenuItem("Game Reviews", openWGM));
lettersCM.customItems.push(new ContextMenuItem("My Blog", openJT));
this.menu = lettersCM;
_global.blur = b1.filters;
_global.noblur = b0.filters;
_global.colors = new Array();
i = 1;
while (i <= 8) {
colors[i - 1] = this["c" + i].filters;
i++;
}
nextSet = 0;
_global.maxColors = 3;
_global.blank = 5;
_global.bombs = 1;
_global.swapper = 0;
_global.dropRate = 10000;
_global.maxRows = 9;
_global.maxCols = 9;
_global.baseRows = 6;
_global.bottom = 432;
_global.left = 48;
_global.size = 48;
song = random(3);
_global.score = 0;
_global.level = 1;
_global.baselevel = 1;
stop();
volume = 100;
gameId = "Obversity";
myScore = new saveScore("Obversity", "jhadfas84983dhol34d9djp9dj9d8d398d9d", "newgrounds");
paused = false;
Instance of Symbol 329 MovieClip in Frame 4
onClipEvent (enterFrame) {
prc = Math.round((_root.getBytesLoaded() / _root.getBytesTotal()) * 100);
if (prc < 100) {
gotoAndStop (1);
bar._width = prc;
} else {
gotoAndStop (2);
}
}
Frame 5
mplayer.gotoAndPlay("stop");
while (level < baselevel) {
level++;
nextSet++;
trace(nextSet);
dropRate = dropRate - 100;
if ((((((nextSet == 1) or (nextSet == 2)) or (nextSet == 4)) or (nextSet == 5)) or (nextSet == 7)) or (nextSet == 8)) {
blank = blank + 2;
} else if (nextSet < 10) {
swapper++;
} else if (maxColors < 8) {
_global.maxColors++;
nextSet = 0;
blank = blank - 4;
swapper = swapper - 1;
dropRate = dropRate + 450;
if ((maxColors % 2) == 0) {
bombs++;
}
} else if (bombs > 0) {
bombs--;
}
}
tex = "Level " + level;
stop();
Frame 6
function startmusic() {
mplayer.gotoAndPlay("launch");
trace("starting song " + song);
}
function makeBoom() {
explode = new Sound();
explode.attachSound("boom");
explode.start();
}
function startLevel() {
toClear = 250;
dd = 100;
rowMatic = setInterval(this, "dropRow", dropRate);
r = 0;
while (r < baseRows) {
c = 0;
while (c < maxCols) {
if (genList.length < 1) {
_global.genList = generateList();
}
myTile = genList.pop();
dd++;
tileData[(("r" + r) + "c") + c] = "tile" + dd;
this.attachMovie(myTile, "tile" + dd, dd);
this["tile" + dd]._x = left + (c * size);
this["tile" + dd]._y = bottom - (r * size);
this["tile" + dd].c = c;
this["tile" + dd].r = r;
this["tile" + dd].ar = r;
this["tile" + dd].p = r;
c++;
}
r++;
}
}
function generateList() {
bm = bombs;
dt = blank;
sw = swapper;
tmp = new Array();
ret = new Array();
i = 0;
while (i < 90) {
if (bm > 0) {
bm--;
tmp.push({tile:"bomb", rnd:Math.random()});
} else if (dt > 0) {
dt--;
tmp.push({tile:"tile2", rnd:Math.random()});
} else if (sw > 0) {
sw--;
tmp.push({tile:"tile3", rnd:Math.random()});
} else {
tmp.push({tile:"tile", rnd:Math.random()});
}
i++;
}
tmp.sortOn("rnd");
i = 0;
while (i < tmp.length) {
ret.push(tmp[i].tile);
i++;
}
return(ret);
}
function fireTile(r, c, v) {
if (!paused) {
safety = 500;
d = new Object();
chain = new Object();
checkChain(r, c, v);
links = 0;
bombChain = new Object();
for (i in chain) {
if (this[tileData[i]].bomb) {
bombChain[i] = true;
} else {
links++;
}
}
pointVal = 20;
if (links > 2) {
for (i in bombChain) {
br = -1;
while (br <= 1) {
bc = -1;
while (bc <= 1) {
bbr = this[tileData[i]].r + br;
bbc = this[tileData[i]].c + bc;
if (this[tileData[(("r" + bbr) + "c") + bbc]] and (this[tileData[(("r" + bbr) + "c") + bbc]].r == bbr)) {
chain[(("r" + bbr) + "c") + bbc] = true;
}
bc++;
}
br++;
}
}
scoreUp = 0;
ctxt = 0;
for (i in chain) {
ctxt++;
scoreUp = scoreUp + pointVal;
pointVal = pointVal + 5;
dd++;
this.attachMovie("explosion", "ex" + dd, dd);
this["ex" + dd]._x = this[tileData[i]]._x;
this["ex" + dd]._y = this[tileData[i]]._y;
this[tileData[i]].removeMovieClip();
toClear--;
if (toClear < 1) {
blowTiles();
play();
}
}
makeBoom();
score = score + scoreUp;
dd++;
this.attachMovie("comboText", "ct" + dd, dd + 3000);
this["ct" + dd].val = scoreUp;
frm = Math.ceil(ctxt / 4);
if (frm > 6) {
frm = 6;
}
xxx = _xmouse;
yyy = _ymouse;
this["ct" + dd].combo.gotoAndStop(frm);
this["ct" + dd]._x = xxx;
this["ct" + dd]._y = yyy - size;
resetRows();
}
}
}
function dropRow() {
if (!paused) {
c = 0;
while (c < maxCols) {
crow = 0;
r = 0;
while (r < maxRows) {
if (this[tileData[(("r" + r) + "c") + c]]) {
crow++;
}
r++;
}
if (genList.length < 1) {
_global.genList = generateList();
}
myTile = genList.pop();
dd++;
tileData[(("r" + crow) + "c") + c] = "tile" + dd;
this.attachMovie(myTile, "tile" + dd, dd);
this["tile" + dd]._x = left + (c * size);
this["tile" + dd]._y = bottom - ((maxRows + 1) * size);
this["tile" + dd].c = c;
this["tile" + dd].ar = crow;
this["tile" + dd].r = maxRows + 1;
this["tile" + dd].p = crow;
this["tile" + dd].initDrop();
c++;
}
}
}
function resetRows() {
reset = new Object();
c = 0;
while (c < maxCols) {
tmp = new Array();
r = 0;
while (r < (maxRows + 1)) {
if (this[tileData[(("r" + r) + "c") + c]]) {
tmp.push(tileData[(("r" + r) + "c") + c]);
}
r++;
}
i = 0;
while (i < tmp.length) {
reset[(("r" + i) + "c") + c] = tmp[i];
this[tmp[i]].ar = i;
this[tmp[i]].initDrop();
i++;
}
c++;
}
cnt = 0;
for (i in reset) {
cnt++;
}
tileData = reset;
if ((cnt < 10) and (toClear > 0)) {
clearInterval(rowMatic);
rowMatic = setInterval(this, "dropRow", dropRate);
dropRow();
}
}
function checkChain(r, c, v) {
safety--;
if (safety > 0) {
chain[(("r" + r) + "c") + c] = true;
d[(("r" + r) + "c") + c] = 0;
while (d[(("r" + r) + "c") + c] < chainDirs.length) {
tr = r + chainDirs[d[(("r" + r) + "c") + c]].y;
tc = c + chainDirs[d[(("r" + r) + "c") + c]].x;
if (this[tileData[(("r" + tr) + "c") + tc]] and (!chain[(("r" + tr) + "c") + tc])) {
if ((this[tileData[(("r" + tr) + "c") + tc]].myColor() == v) and (this[tileData[(("r" + tr) + "c") + tc]].r == tr)) {
checkChain(tr, tc, v);
} else if ((this[tileData[(("r" + tr) + "c") + tc]].bomb == true) and (this[tileData[(("r" + tr) + "c") + tc]].r == tr)) {
chain[(("r" + tr) + "c") + tc] = true;
}
}
d[(("r" + r) + "c") + c]++;
}
}
}
function loseGame() {
blowTiles();
gotoAndStop ("gameOver");
}
function blowTiles() {
clearInterval(rowMatic);
for (i in tileData) {
if (this[tileData[i]]) {
dd++;
this.attachMovie("explosion", "ex" + dd, dd);
this["ex" + dd]._x = this[tileData[i]]._x;
this["ex" + dd]._y = this[tileData[i]]._y;
this[tileData[i]].removeMovieClip();
}
}
tileData = new Object();
}
song++;
if (song > 3) {
song = 1;
}
if (music == "on") {
startmusic();
}
_global.genList = generateList();
lb = new Array();
lb[0] = "r";
lb[1] = "b";
lb[2] = "g";
chainDirs = new Array();
chainDirs.push({x:-1, y:0});
chainDirs.push({x:1, y:0});
chainDirs.push({x:0, y:-1});
chainDirs.push({x:0, y:1});
tileData = new Object();
startLevel();
stop();
Instance of Symbol 369 MovieClip in Frame 6
onClipEvent (load) {
}
Frame 7
baselevel++;
gotoAndStop ("lev");
Frame 8
disp = "Final Score: " + score;
stopAllSounds();
scoreSent = false;
Symbol 22 MovieClip [explosion] Frame 13
this.removeMovieClip();
stop();
Symbol 27 MovieClip Frame 1
stop();
Symbol 31 MovieClip Frame 31
if (random(100) < 50) {
gotoAndPlay (1);
}
Symbol 31 MovieClip Frame 40
gotoAndPlay ("loop");
Symbol 35 Button
on (release) {
if (!_parent.paused) {
gotoAndPlay ("flip");
}
}
Symbol 38 MovieClip Frame 31
if (random(100) < 50) {
gotoAndPlay (1);
}
Symbol 38 MovieClip Frame 40
gotoAndPlay ("loop");
Symbol 43 Button
on (release) {
fireMe();
}
Symbol 49 MovieClip Frame 31
if (random(100) < 50) {
gotoAndPlay (1);
}
Symbol 49 MovieClip Frame 40
gotoAndPlay ("loop");
Symbol 54 Button
on (release) {
fireMe();
}
Symbol 64 MovieClip [tile] Frame 1
#initclip 11
Object.registerClass("tile", colorTile);
#endinitclip
setColor();
stop();
Symbol 64 MovieClip [tile] Frame 2
view.filters = colors[color1];
boom.filters = colors[color1];
Symbol 64 MovieClip [tile] Frame 3
if (color == 2) {
c1 = color1;
c2 = color2;
} else {
c2 = color1;
c1 = color2;
}
v1.filters = colors[c2];
v2.filters = colors[c1];
Symbol 64 MovieClip [tile] Frame 4
v1.filters = colors[c2];
v2.filters = colors[c1];
Symbol 64 MovieClip [tile] Frame 6
if (color == 1) {
color = 2;
} else {
color = 1;
}
v1.filters = colors[c1];
v2.filters = colors[c2];
Symbol 67 MovieClip [bomb] Frame 1
#initclip 8
Object.registerClass("bomb", obvTile);
#endinitclip
bomb = true;
Symbol 77 MovieClip [tile3] Frame 1
#initclip 9
Object.registerClass("tile3", swapTile);
#endinitclip
Symbol 87 MovieClip Frame 1
stop();
Symbol 88 MovieClip [comboText] Frame 1
_xscale = 10;
_yscale = 10;
dir = 1;
inspeed = 10;
outspeed = 5;
onEnterFrame = function () {
if (dir == 1) {
_xscale = (_xscale + inspeed);
_yscale = (_yscale + inspeed);
if (_xscale > 100) {
dir = 0;
}
} else {
_xscale = (_xscale - outspeed);
_yscale = (_yscale - outspeed);
_alpha = (_alpha - outspeed);
if (_alpha < 1) {
this.removeMovieClip();
}
}
};
stop();
Symbol 92 MovieClip [tile2] Frame 1
#initclip 10
Object.registerClass("tile2", colorTile);
#endinitclip
setColor();
stop();
view.filters = colors[color1];
boom.filters = colors[color1];
Symbol 97 MovieClip Frame 1
stop();
Instance of Symbol 97 MovieClip in Symbol 107 MovieClip [explosion1] Frame 1
onClipEvent (load) {
if (_parent._yscale > 120) {
gotoAndStop ("large");
} else if (_parent._yscale <= 50) {
gotoAndStop ("small");
} else {
gotoAndStop ("medium");
}
}
Symbol 107 MovieClip [explosion1] Frame 18
this.removeMovieClip();
stop();
Symbol 118 Button
on (release) {
_parent.play();
}
Symbol 119 MovieClip Frame 2
_root.play();
Symbol 383 MovieClip [__Packages.obvTile] Frame 0
class obvTile extends MovieClip
{
var ar, r, dropper, filters, _y, _parent;
function obvTile () {
super();
}
function initDrop() {
if (r > ar) {
clearInterval(dropper);
dropper = setInterval(this, "dropMe", 33);
filters = _global.blur;
}
}
function dropMe() {
r = Math.ceil((_global.bottom - _y) / _global.size);
if (r > ar) {
_y = _y + 16;
} else {
clearInterval(dropper);
filters = _global.noblur;
if (r >= _global.maxRows) {
_parent.loseGame();
}
}
}
}
Symbol 384 MovieClip [__Packages.swapTile] Frame 0
class swapTile extends obvTile
{
var cperc, color, bar, colorVal, view, flip;
function swapTile () {
super();
cperc = 0;
if (!color) {
color = random(_global.maxColors);
}
setColor();
}
function onEnterFrame() {
bar._xscale = cperc;
cperc = cperc + 2.5;
if (cperc > 100) {
cperc = 0;
setColor();
}
}
function setColor() {
color++;
if (color >= _global.maxColors) {
color = 0;
}
var _local3 = color + 1;
if (_local3 >= _global.maxColors) {
_local3 = 0;
}
colorVal = color;
view.filters = _global.colors[color];
flip.filters = _global.colors[_local3];
}
function myColor() {
return(color);
}
}
Symbol 385 MovieClip [__Packages.colorTile] Frame 0
class colorTile extends obvTile
{
var color, color1, color2, _parent, r, c, filters, colorVal, gotoAndStop, f, b, view, boom, flip;
function colorTile () {
super();
if (!color) {
color = 1;
color1 = random(_global.maxColors);
color2 = random(_global.maxColors);
}
}
function fireMe() {
_parent.fireTile(r, c, myColor());
}
function blurMe() {
filters = _global.blur;
}
function unBlurMe() {
filters = _global.noblur;
}
function setColor() {
if (color1 == color2) {
colorVal = color1;
(gotoAndStop(2));// not popped
} else {
if (color == 2) {
f = color1;
b = color2;
} else {
f = color2;
b = color1;
}
colorVal = this["color" + color];
view.filters = _global.colors[b];
view.gotoAndStop(color);
boom.filters = _global.colors[b];
flip.filters = _global.colors[f];
colorVal = myColor();
}
}
function myColor() {
return(this["color" + color]);
}
}
Symbol 386 MovieClip [__Packages.saveScore] Frame 0
class saveScore
{
var gameId, eKey, sponsor;
function saveScore (g, k, s) {
gameId = g;
eKey = k;
sponsor = s;
}
function submit(u, n, o, p) {
var _local2 = new Object();
_local2.seed = 99999999 * Math.random();
_local2.user = u;
if (p) {
_local2.password = com.meychi.ascrypt.MD5.calculate(p);
}
_local2.score = n;
if (o) {
_local2.other = JSON.stringify(o);
}
var _local3 = com.meychi.ascrypt.RC4.encrypt(JSON.stringify(_local2), eKey);
sendit(_local3);
}
function sendit(secure) {
_root.createEmptyMovieClip("scoreSubmissionWrapper", _root.getNextHighestDepth());
_root.scoreSubmissionWrapper.dataString = secure;
_root.scoreSubmissionWrapper.sponsor = sponsor;
_root.scoreSubmissionWrapper.gameId = gameId;
_root.scoreSubmissionWrapper.getURL("http://www.psychogoldfish.com/submitScore.php", "_blank", "POST");
_root.scoreSubmissionWrapper.removeMovieClip();
}
function show() {
getURL ((("http://www.psychogoldfish.com/scoreBoards.php?gameId=" + gameId) + "&sponsor=") + sponsor, "_blank");
}
}
Symbol 387 MovieClip [__Packages.com.meychi.ascrypt.MD5] Frame 0
class com.meychi.ascrypt.MD5
{
function MD5 () {
}
static function calculate(src) {
return(hex_md5(src));
}
static function hex_md5(src) {
return(binl2hex(core_md5(str2binl(src), src.length * 8)));
}
static function core_md5(x, len) {
x[len >> 5] = x[len >> 5] | (128 << (len % 32));
x[(((len + 64) >>> 9) << 4) + 14] = len;
var _local4 = 1732584193 /* 0x67452301 */;
var _local3 = -271733879;
var _local2 = -1732584194;
var _local1 = 271733878 /* 0x10325476 */;
var _local5 = 0;
while (_local5 < x.length) {
var _local10 = _local4;
var _local9 = _local3;
var _local8 = _local2;
var _local7 = _local1;
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 0], 7, -680876936);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 1], 12, -389564586);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 2], 17, 606105819);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 3], 22, -1044525330);
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 4], 7, -176418897);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 5], 12, 1200080426);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 6], 17, -1473231341);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 7], 22, -45705983);
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 8], 7, 1770035416);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 9], 12, -1958414417);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 10], 17, -42063);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 11], 22, -1990404162);
_local4 = md5_ff(_local4, _local3, _local2, _local1, x[_local5 + 12], 7, 1804603682);
_local1 = md5_ff(_local1, _local4, _local3, _local2, x[_local5 + 13], 12, -40341101);
_local2 = md5_ff(_local2, _local1, _local4, _local3, x[_local5 + 14], 17, -1502002290);
_local3 = md5_ff(_local3, _local2, _local1, _local4, x[_local5 + 15], 22, 1236535329);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 1], 5, -165796510);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 6], 9, -1069501632);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 11], 14, 643717713);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 0], 20, -373897302);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 5], 5, -701558691);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 10], 9, 38016083);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 15], 14, -660478335);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 4], 20, -405537848);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 9], 5, 568446438);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 14], 9, -1019803690);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 3], 14, -187363961);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 8], 20, 1163531501);
_local4 = md5_gg(_local4, _local3, _local2, _local1, x[_local5 + 13], 5, -1444681467);
_local1 = md5_gg(_local1, _local4, _local3, _local2, x[_local5 + 2], 9, -51403784);
_local2 = md5_gg(_local2, _local1, _local4, _local3, x[_local5 + 7], 14, 1735328473);
_local3 = md5_gg(_local3, _local2, _local1, _local4, x[_local5 + 12], 20, -1926607734);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 5], 4, -378558);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 8], 11, -2022574463);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 11], 16, 1839030562);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 14], 23, -35309556);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 1], 4, -1530992060);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 4], 11, 1272893353);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 7], 16, -155497632);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 10], 23, -1094730640);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 13], 4, 681279174);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 0], 11, -358537222);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 3], 16, -722521979);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 6], 23, 76029189);
_local4 = md5_hh(_local4, _local3, _local2, _local1, x[_local5 + 9], 4, -640364487);
_local1 = md5_hh(_local1, _local4, _local3, _local2, x[_local5 + 12], 11, -421815835);
_local2 = md5_hh(_local2, _local1, _local4, _local3, x[_local5 + 15], 16, 530742520);
_local3 = md5_hh(_local3, _local2, _local1, _local4, x[_local5 + 2], 23, -995338651);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 0], 6, -198630844);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 7], 10, 1126891415);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 14], 15, -1416354905);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 5], 21, -57434055);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 12], 6, 1700485571);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 3], 10, -1894986606);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 10], 15, -1051523);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 1], 21, -2054922799);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 8], 6, 1873313359);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 15], 10, -30611744);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 6], 15, -1560198380);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 13], 21, 1309151649);
_local4 = md5_ii(_local4, _local3, _local2, _local1, x[_local5 + 4], 6, -145523070);
_local1 = md5_ii(_local1, _local4, _local3, _local2, x[_local5 + 11], 10, -1120210379);
_local2 = md5_ii(_local2, _local1, _local4, _local3, x[_local5 + 2], 15, 718787259);
_local3 = md5_ii(_local3, _local2, _local1, _local4, x[_local5 + 9], 21, -343485551);
_local4 = safe_add(_local4, _local10);
_local3 = safe_add(_local3, _local9);
_local2 = safe_add(_local2, _local8);
_local1 = safe_add(_local1, _local7);
_local5 = _local5 + 16;
}
return(new Array(_local4, _local3, _local2, _local1));
}
static function md5_cmn(q, a, b, x, s, t) {
return(safe_add(bit_rol(safe_add(safe_add(a, q), safe_add(x, t)), s), b));
}
static function md5_ff(a, b, c, d, x, s, t) {
return(md5_cmn((b & c) | ((~b) & d), a, b, x, s, t));
}
static function md5_gg(a, b, c, d, x, s, t) {
return(md5_cmn((b & d) | (c & (~d)), a, b, x, s, t));
}
static function md5_hh(a, b, c, d, x, s, t) {
return(md5_cmn((b ^ c) ^ d, a, b, x, s, t));
}
static function md5_ii(a, b, c, d, x, s, t) {
return(md5_cmn(c ^ (b | (~d)), a, b, x, s, t));
}
static function bit_rol(num, cnt) {
return((num << cnt) | (num >>> (32 - cnt)));
}
static function safe_add(x, y) {
var _local1 = (x & 65535) + (y & 65535);
var _local2 = ((x >> 16) + (y >> 16)) + (_local1 >> 16);
return((_local2 << 16) | (_local1 & 65535));
}
static function str2binl(str) {
var _local3 = new Array();
var _local4 = 255;
var _local1 = 0;
while (_local1 < (str.length * 8)) {
_local3[_local1 >> 5] = _local3[_local1 >> 5] | ((str.charCodeAt(_local1 / 8) & _local4) << (_local1 % 32));
_local1 = _local1 + 8;
}
return(_local3);
}
static function binl2hex(binarray) {
var _local4 = new String("");
var _local3 = new String("0123456789abcdef");
var _local1 = 0;
while (_local1 < (binarray.length * 4)) {
_local4 = _local4 + (_local3.charAt((binarray[_local1 >> 2] >> (((_local1 % 4) * 8) + 4)) & 15) + _local3.charAt((binarray[_local1 >> 2] >> ((_local1 % 4) * 8)) & 15));
_local1++;
}
return(_local4);
}
}
Symbol 388 MovieClip [__Packages.JSON] Frame 0
class JSON
{
function JSON () {
}
static function stringify(arg) {
var _local3;
var _local2;
var _local6;
var _local1 = "";
var _local4;
switch (typeof(arg)) {
case "object" :
if (arg) {
if (arg instanceof Array) {
_local2 = 0;
while (_local2 < arg.length) {
_local4 = stringify(arg[_local2]);
if (_local1) {
_local1 = _local1 + ",";
}
_local1 = _local1 + _local4;
_local2++;
}
return(("[" + _local1) + "]");
}
if (typeof(arg.toString) != "undefined") {
for (_local2 in arg) {
_local4 = arg[_local2];
if ((typeof(_local4) != "undefined") && (typeof(_local4) != "function")) {
_local4 = stringify(_local4);
if (_local1) {
_local1 = _local1 + ",";
}
_local1 = _local1 + ((stringify(_local2) + ":") + _local4);
}
}
return(("{" + _local1) + "}");
}
}
return("null");
case "number" :
return((isFinite(arg) ? (String(arg)) : "null"));
case "string" :
_local6 = arg.length;
_local1 = "\"";
_local2 = 0;
while (_local2 < _local6) {
_local3 = arg.charAt(_local2);
if (_local3 >= " ") {
if ((_local3 == "\\") || (_local3 == "\"")) {
_local1 = _local1 + "\\";
}
_local1 = _local1 + _local3;
} else {
switch (_local3) {
case "\b" :
_local1 = _local1 + "\\b";
break;
case "\f" :
_local1 = _local1 + "\\f";
break;
case newline :
_local1 = _local1 + "\\n";
break;
case "\r" :
_local1 = _local1 + "\\r";
break;
case "\t" :
_local1 = _local1 + "\\t";
break;
default :
_local3 = _local3.charCodeAt();
_local1 = _local1 + (("\\u00" + Math.floor(_local3 / 16).toString(16)) + (_local3 % 16).toString(16));
}
}
_local2 = _local2 + 1;
}
return(_local1 + "\"");
case "boolean" :
return(String(arg));
}
return("null");
}
static function parse(text) {
var at = 0;
var ch = " ";
var _value;
var _error = function (m) {
throw {name:"JSONError", message:m, at:at - 1, text:text};
};
var _next = function () {
ch = text.charAt(at);
at = at + 1;
return(ch);
};
var _white = function () {
while (ch) {
if (ch <= " ") {
_next();
} else if (ch == "/") {
switch (_next()) {
case "/" :
while ((_next() && (ch != newline)) && (ch != "\r")) {
}
break;
case "*" :
_next();
for(;;){
if (ch) {
if (ch == "*") {
if (_next() == "/") {
_next();
// unexpected jump
}
} else {
_next();
}
} else {
_error("Unterminated comment");
}
};
break;
default :
_error("Syntax error");
}
} else {
return;
}
}
};
var _string = function () {
var _local4;
var _local1 = "";
var _local3;
var _local2;
var _local5 = false;
if (ch == "\"") {
while (_next()) {
if (ch == "\"") {
_next();
return(_local1);
}
if (ch == "\\") {
switch (_next()) {
case "b" :
_local1 = _local1 + "\b";
break;
case "f" :
_local1 = _local1 + "\f";
break;
case "n" :
_local1 = _local1 + newline;
break;
case "r" :
_local1 = _local1 + "\r";
break;
case "t" :
_local1 = _local1 + "\t";
break;
case "u" :
_local2 = 0;
_local4 = 0;
while (_local4 < 4) {
_local3 = parseInt(_next(), 16);
if (!isFinite(_local3)) {
_local5 = true;
break;
}
_local2 = (_local2 * 16) + _local3;
_local4 = _local4 + 1;
}
if (_local5) {
_local5 = false;
break;
}
_local1 = _local1 + String.fromCharCode(_local2);
break;
default :
_local1 = _local1 + ch;
}
} else {
_local1 = _local1 + ch;
}
}
}
_error("Bad string");
};
var _array = function () {
var _local1 = [];
if (ch == "[") {
_next();
_white();
if (ch == "]") {
_next();
return(_local1);
}
while (ch) {
_local1.push(_value());
_white();
if (ch == "]") {
_next();
return(_local1);
}
if (ch != ",") {
break;
}
_next();
_white();
}
}
_error("Bad array");
};
var _object = function () {
var _local2;
var _local1 = {};
if (ch == "{") {
_next();
_white();
if (ch == "}") {
_next();
return(_local1);
}
while (ch) {
_local2 = _string();
_white();
if (ch != ":") {
break;
}
_next();
_local1[_local2] = _value();
_white();
if (ch == "}") {
_next();
return(_local1);
}
if (ch != ",") {
break;
}
_next();
_white();
}
}
_error("Bad object");
};
var _number = function () {
var _local1 = "";
var _local2;
if (ch == "-") {
_local1 = "-";
_next();
}
while ((ch >= "0") && (ch <= "9")) {
_local1 = _local1 + ch;
_next();
}
if (ch == ".") {
_local1 = _local1 + ".";
while ((_next() && (ch >= "0")) && (ch <= "9")) {
_local1 = _local1 + ch;
}
}
_local2 = 1 * _local1;
if (!isFinite(_local2)) {
_error("Bad number");
} else {
return(_local2);
}
};
var _word = function () {
switch (ch) {
case "t" :
if (((_next() == "r") && (_next() == "u")) && (_next() == "e")) {
_next();
return(true);
}
break;
case "f" :
if ((((_next() == "a") && (_next() == "l")) && (_next() == "s")) && (_next() == "e")) {
_next();
return(false);
}
break;
case "n" :
if (!(((_next() == "u") && (_next() == "l")) && (_next() == "l"))) {
break;
}
_next();
return(null);
}
_error("Syntax error");
};
_value = function () {
_white();
switch (ch) {
case "{" :
return(_object());
case "[" :
return(_array());
case "\"" :
return(_string());
case "-" :
return(_number());
}
return((((ch >= "0") && (ch <= "9")) ? (_number()) : (_word())));
};
return(_value());
}
}
Symbol 389 MovieClip [__Packages.com.meychi.ascrypt.RC4] Frame 0
class com.meychi.ascrypt.RC4
{
function RC4 () {
}
static function encrypt(src, key) {
var _local3 = strToChars(src);
var _local1 = strToChars(key);
var _local2 = calculate(_local3, _local1);
return(charsToHex(_local2));
}
static function decrypt(src, key) {
var _local3 = hexToChars(src);
var _local1 = strToChars(key);
var _local2 = calculate(_local3, _local1);
return(charsToStr(_local2));
}
static function initialize(pwd) {
var _local2 = 0;
var _local3;
var _local4 = pwd.length;
var _local1 = 0;
while (_local1 <= 255) {
mykey[_local1] = pwd[_local1 % _local4];
sbox[_local1] = _local1;
_local1++;
}
_local1 = 0;
while (_local1 <= 255) {
_local2 = ((_local2 + sbox[_local1]) + mykey[_local1]) % 256;
_local3 = sbox[_local1];
sbox[_local1] = sbox[_local2];
sbox[_local2] = _local3;
_local1++;
}
}
static function calculate(plaintxt, psw) {
initialize(psw);
var _local1 = 0;
var _local2 = 0;
var _local9 = new Array();
var _local7;
var _local5;
var _local6;
var _local3 = 0;
while (_local3 < plaintxt.length) {
_local1 = (_local1 + 1) % 256;
_local2 = (_local2 + sbox[_local1]) % 256;
_local5 = sbox[_local1];
sbox[_local1] = sbox[_local2];
sbox[_local2] = _local5;
var _local4 = (sbox[_local1] + sbox[_local2]) % 256;
_local7 = sbox[_local4];
_local6 = plaintxt[_local3] ^ _local7;
_local9.push(_local6);
_local3++;
}
return(_local9);
}
static function charsToHex(chars) {
var _local4 = new String("");
var _local3 = new Array("0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "a", "b", "c", "d", "e", "f");
var _local1 = 0;
while (_local1 < chars.length) {
_local4 = _local4 + (_local3[chars[_local1] >> 4] + _local3[chars[_local1] & 15]);
_local1++;
}
return(_local4);
}
static function hexToChars(hex) {
var _local3 = new Array();
var _local1 = ((hex.substr(0, 2) == "0x") ? 2 : 0);
while (_local1 < hex.length) {
_local3.push(parseInt(hex.substr(_local1, 2), 16));
_local1 = _local1 + 2;
}
return(_local3);
}
static function charsToStr(chars) {
var _local3 = new String("");
var _local1 = 0;
while (_local1 < chars.length) {
_local3 = _local3 + String.fromCharCode(chars[_local1]);
_local1++;
}
return(_local3);
}
static function strToChars(str) {
var _local3 = new Array();
var _local1 = 0;
while (_local1 < str.length) {
_local3.push(str.charCodeAt(_local1));
_local1++;
}
return(_local3);
}
static var sbox = new Array(255);
static var mykey = new Array(255);
}
Symbol 242 MovieClip Frame 1
stop();
Symbol 242 MovieClip Frame 2
play();
Instance of Symbol 242 MovieClip in Symbol 250 MovieClip Frame 1
onClipEvent (load) {
if (random(300) < 100) {
gotoAndPlay (2);
}
}
Symbol 259 MovieClip Frame 22
Symbol 259 MovieClip Frame 336
_parent.play();
stop();
Symbol 260 Button
on (release) {
getURL ("http://www.psychogoldfish.com", "_blank");
}
Symbol 263 Button
on (release) {
stopAllSounds();
nextFrame();
}
Symbol 267 MovieClip Frame 66
gotoAndPlay (1);
Symbol 269 MovieClip Frame 16
gotoAndPlay (1);
Symbol 274 MovieClip Frame 9
gotoAndPlay (1);
Symbol 277 MovieClip Frame 9
gotoAndPlay (1);
Symbol 280 MovieClip Frame 15
gotoAndPlay (1);
Symbol 281 MovieClip Frame 15
stop();
Symbol 288 MovieClip Frame 10
stop();
Symbol 291 MovieClip Frame 242
_parent.play();
Symbol 292 Button
on (release) {
getURL ("http://www.newgrounds.com", "_blank");
}
Symbol 296 Button
on (release) {
getURL ("http://www.newgrounds.com", "blank");
}
Symbol 319 MovieClip Frame 1
function nextTip() {
nextFrame();
}
if (!init) {
init = 1;
tip = setInterval(this, "nextTip", 10000);
gotoAndStop(random(5) + 1);
}
stop();
Symbol 319 MovieClip Frame 6
gotoAndStop (1);
Symbol 323 Button
on (release) {
getURL ("http://www.psychogoldfish.com", "_blank");
}
Symbol 325 Button
on (release) {
_parent.play();
}
Symbol 327 Button
on (release) {
getURL ("http://www.psychogoldfish.com/scores/game/Obversity/guestScores/show", "_blank");
}
Symbol 352 MovieClip Frame 1
stop();
Symbol 352 MovieClip Frame 7
gotoAndStop(_parent.song + 1);
Symbol 352 MovieClip Frame 16
stopAllSounds();
stop();
Symbol 356 Button
on (release) {
if (music == "on") {
music = "off";
stopAllSounds();
} else {
stopAllSounds();
music = "on";
startmusic();
}
}
Symbol 361 Button
on (release) {
play();
}
Symbol 366 Button
on (release) {
if (_parent.paused == true) {
_parent.paused = false;
gotoAndStop (1);
} else {
_parent.paused = true;
gotoAndStop (2);
}
}
Symbol 369 MovieClip Frame 1
stop();
Symbol 377 Button
on (release) {
score = 0;
gotoAndPlay (5);
}
Symbol 380 Button
on (release) {
if ((scoreSent != true) and (playerName.length > 1)) {
myScore.submit(playerName, score);
scoreSent = true;
}
}
Symbol 381 Button
on (release) {
level = 1;
baselevel = 1;
score = 0;
gotoAndPlay (4);
}