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__("52db9278", this, 10301, true);
MochiAd.showPreGameAd({id:"3e2508dd30d6aa55", res:"600x500"});
Frame 2
function play_the_game() {
function ball_die() {
falling = false;
jumping = false;
bricks._x = 240 - (80 * _root.ball_start_x);
bricks._y = 220 - (80 * _root.ball_start_y);
xspeed = 0;
yspeed = 0;
draw_level(lev);
}
function draw_level(number) {
ball.swapDepths(4);
yspeed = 0;
xspeed = 0;
level = new Array();
messages = new Array();
level_intro._visible = true;
go = false;
if (number == 2) {
level_intro.leveltitle.text = "Level 2";
level_intro.leveltext.text = "Same tiles as the previous level.\nBut things get harder\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 0;
_root.ball_start_y = 1;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0], [10, 1, 2, 3, 2, 3, 2, 3, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 4, 4, 4], [0, 0, 0, 1, 1, 5, 0, 1, 1, 5, 0, 1, 1, 5, 0, 1, 1, 13, 0, 1, 0, 0, 1, 1, 1], [1, 1, 1, 5, 0, 1, 1, 5, 0, 1, 1, 5, 0, 1, 1, 5, 0, 1, 0, 1, 0, 0, 4, 4, 4], [3, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 1, 0, 0, 1, 1, 1], [4, 3, 0, 7, 4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 7, 0, 1, 0, 0, 4, 4, 4], [3, 4, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 1, 1], [4, 3, 0, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0, 0, 5, 5], [3, 4, 0, 7, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 13, 0, 0, 0, 1, 0, 0, 0, 1, 1], [1, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 4, 4], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1, 1, 7, 1, 1, 0, 1, 1], [0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 7, 7, 7, 7, 7, 0, 5, 5], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1], [3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 1, 0, 7, 7, 0, 7, 7, 0, 4, 4], [4, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 1, 0, 7, 1, 7, 1, 7, 1, 7, 0, 1, 1], [4, 7, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 0, 1, 7, 1, 7, 1, 7, 1, 0, 0, 1], [4, 7, 5, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 1, 7, 1, 7, 1, 7, 0, 0, 13], [7, 7, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1], [0, 1, 1, 1, 1, 13, 1, 1, 2, 2, 3, 3, 2, 2, 3, 3, 2, 2, 3, 3, 1, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1]];
messages[1] = "This is a warmup level where you will learn something about the game\nThings will soon get harder.";
messages[2] = "Tiles with an arrow will spin your ball in the direction of the arrow";
messages[5] = "You are about to cross a checkpoint.\nWhen you die, you always respawn at the last crossed checkpoint";
messages[4] = "Don't drink and drive...";
messages[3] = "At the end of this corridor, you'll met the exit tile\nStop over it to pass level";
messages[6] = "This game is meant to be very hard like old C64 games";
messages[7] = "Spinning tiles will increase your speed in the direction you are going";
}
if (number == 1) {
level_intro.leveltitle.text = "Level 1";
level_intro.leveltext.text = "Welcome to TILEBALL.\n\nTap arrow keys to keep the ball on the track.\n\nHere you'll meet some basic tiles\n\nThe level is large but there are checkpoints\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 9;
_root.ball_start_y = 2;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 7, 7, 1, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 7, 7, 1, 1, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 1, 0], [0, 0, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 4, 1], [0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 1, 1, 13, 1, 0, 0, 1, 4, 1], [0, 0, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 5, 1], [0, 0, 7, 7, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 1, 5, 1], [0, 0, 7, 7, 1, 1, 1, 0, 0, 3, 1, 1, 2, 0, 0, 3, 1, 2, 0, 0, 1, 0, 1, 1, 1], [0, 0, 1, 1, 0, 0, 1, 0, 0, 3, 0, 0, 2, 0, 0, 3, 0, 2, 0, 1, 1, 0, 0, 1, 0], [0, 0, 0, 0, 0, 0, 13, 0, 0, 3, 0, 0, 2, 0, 0, 3, 0, 2, 0, 1, 0, 0, 1, 3, 1], [0, 0, 0, 0, 0, 0, 1, 1, 1, 3, 0, 0, 2, 1, 1, 3, 0, 2, 0, 1, 1, 0, 1, 3, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 1, 0, 1, 2, 1], [1, 1, 1, 1, 1, 0, 0, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 2, 0, 0, 1, 0, 1, 2, 1], [1, 1, 1, 1, 1, 0, 0, 7, 1, 1, 1, 1, 1, 1, 7, 0, 0, 2, 0, 0, 1, 0, 0, 1, 0], [1, 1, 0, 1, 1, 0, 0, 7, 1, 7, 7, 7, 1, 1, 7, 0, 0, 2, 0, 0, 1, 1, 1, 1, 0], [1, 1, 0, 1, 1, 1, 1, 7, 1, 7, 0, 7, 1, 1, 7, 13, 1, 2, 0, 0, 0, 0, 0, 0, 0], [1, 1, 0, 0, 0, 0, 0, 7, 1, 7, 7, 7, 1, 1, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 0, 0, 0, 0, 0, 7, 1, 1, 1, 1, 1, 1, 7, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0], [1, 1, 0, 0, 0, 0, 0, 7, 7, 7, 7, 7, 7, 7, 7, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0], [1, 1, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 0, 10, 0], [1, 1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 0, 0]];
}
if (number == 3) {
level_intro.leveltitle.text = "Level 3";
level_intro.leveltext.text = "Meeting other tile types\n\nWhen over tiles with an hexagon, you can jump pressing SPACE\n\nThis game seems inspired to Marble Madness,\nbut I made it as a tribute to an old C64 game called\nTRAILBLAZER\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 15;
_root.ball_start_y = 11;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 8, 8, 8, 8, 8, 8, 10], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 1, 1, 0, 1, 8, 8, 8, 8, 8, 8, 0], [1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 9, 0, 9, 0, 13, 0, 0, 0, 0, 0, 0, 0], [0, 0, 6, 6, 0, 0, 0, 0, 0, 1, 1, 0, 0, 9, 0, 9, 0, 1, 0, 0, 1, 1, 1, 1, 0], [0, 0, 0, 6, 6, 0, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0], [0, 0, 0, 0, 6, 6, 0, 0, 0, 1, 1, 0, 0, 9, 0, 9, 0, 1, 0, 0, 1, 0, 0, 13, 0], [0, 0, 0, 0, 0, 6, 6, 0, 0, 1, 0, 0, 0, 9, 0, 9, 0, 1, 0, 4, 1, 5, 0, 1, 0], [0, 0, 0, 0, 0, 0, 6, 6, 0, 13, 0, 1, 1, 1, 0, 1, 1, 1, 0, 4, 7, 5, 0, 1, 7], [0, 0, 0, 0, 0, 0, 6, 6, 0, 9, 0, 9, 0, 0, 0, 0, 0, 0, 0, 4, 7, 5, 0, 0, 1], [0, 0, 0, 0, 0, 6, 6, 0, 0, 1, 0, 1, 0, 1, 7, 1, 7, 1, 0, 4, 7, 5, 0, 7, 1], [0, 0, 0, 0, 6, 6, 0, 0, 0, 9, 0, 9, 0, 5, 0, 0, 0, 7, 0, 4, 7, 5, 0, 1, 0], [0, 0, 0, 6, 6, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 4, 7, 5, 0, 1, 7], [0, 0, 6, 6, 0, 0, 0, 0, 0, 9, 0, 9, 0, 5, 0, 1, 0, 1, 0, 4, 1, 5, 0, 0, 1], [0, 6, 6, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 4, 0, 1, 0, 0, 1, 0, 0, 1, 1], [6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 1, 0, 7, 1, 1, 13, 0, 0, 1, 1], [1, 1, 1, 6, 6, 6, 6, 1, 1, 0, 0, 0, 0, 1, 0, 4, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 6, 6, 6, 6, 1, 1, 0, 0, 0, 0, 4, 0, 1, 0, 7, 7, 1, 7, 1, 7, 1, 1], [0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 1, 1, 1, 0, 7, 7, 7, 1, 7, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 6, 1, 6, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 0, 0], [13, 1, 1, 1, 6, 1, 6, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 1, 1, 1, 1, 1, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 0, 1, 1, 1, 1, 1, 0, 0, 14, 1, 1, 1, 1, 1, 0, 14, 1, 1, 1, 1, 1, 1, 13], [1, 1, 1, 1, 0, 1, 1, 1, 0, 0, 14, 1, 1, 1, 1, 1, 0, 14, 1, 1, 1, 1, 1, 1, 1]];
}
if (number == 4) {
level_intro.leveltitle.text = "Level 4";
level_intro.leveltext.text = "Nasty chessboards\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 12;
_root.ball_start_y = 3;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[9, 11, 9, 11, 9, 11, 9, 11, 1, 13, 1, 1, 1, 1, 1, 1, 1, 7, 8, 7, 8, 7, 8, 7, 8], [11, 9, 11, 9, 11, 9, 11, 9, 0, 0, 0, 1, 1, 1, 1, 1, 1, 8, 7, 8, 7, 8, 7, 8, 7], [9, 11, 9, 11, 9, 11, 9, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 8, 7, 8, 7, 8, 7, 8], [11, 9, 11, 9, 11, 9, 11, 9, 0, 0, 0, 0, 1, 0, 0, 0, 0, 8, 7, 8, 7, 8, 7, 8, 7], [9, 11, 9, 11, 9, 11, 9, 11, 0, 0, 0, 0, 1, 0, 0, 0, 0, 7, 8, 7, 8, 7, 8, 7, 8], [11, 9, 11, 9, 11, 9, 11, 9, 0, 0, 0, 0, 1, 0, 0, 0, 0, 8, 7, 8, 7, 8, 7, 8, 7], [9, 11, 9, 11, 9, 11, 9, 11, 0, 0, 0, 0, 1, 0, 0, 0, 0, 7, 8, 7, 8, 7, 8, 7, 8], [11, 9, 11, 9, 11, 9, 11, 9, 0, 0, 0, 7, 4, 7, 0, 0, 0, 8, 7, 8, 7, 8, 7, 8, 7], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 5, 7, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 4, 7, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 13], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 5, 7, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 1], [13, 1, 1, 1, 1, 1, 1, 8, 8, 8, 8, 8, 8, 8, 8, 2, 0, 0, 0, 0, 0, 0, 0, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1], [11, 6, 11, 6, 11, 6, 11, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 6, 9, 6, 9, 6, 9, 6], [6, 11, 6, 11, 6, 11, 6, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 9, 6, 9, 6, 9, 6, 9], [11, 6, 11, 6, 11, 6, 11, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 6, 9, 6, 9, 6, 9, 6], [6, 11, 6, 11, 6, 11, 6, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 9, 6, 9, 6, 9, 6, 9], [11, 6, 11, 6, 11, 6, 11, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9, 6, 9, 6, 9, 6, 9, 6], [6, 11, 6, 11, 6, 11, 6, 11, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 9, 6, 9, 6, 9, 6, 9], [11, 6, 11, 6, 11, 6, 11, 6, 1, 1, 1, 1, 1, 1, 0, 0, 0, 9, 6, 9, 6, 9, 6, 9, 6], [6, 11, 6, 11, 6, 11, 6, 11, 1, 1, 1, 1, 1, 1, 1, 13, 1, 6, 9, 6, 9, 6, 9, 6, 9]];
}
if (number == 5) {
level_intro.leveltitle.text = "Level 5";
level_intro.leveltext.text = "Long jumps\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 24;
_root.ball_start_y = 24;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[1, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 0, 7, 7, 14, 0, 0, 0, 14, 0, 0, 1, 1, 1, 10], [13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [3, 8, 8, 8, 7, 0, 0, 0, 0, 0, 7, 1, 7, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 2, 1, 7, 1, 7, 8, 2, 0, 0, 7, 8, 7, 8, 8, 8, 1, 0, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 11, 1, 7, 11, 7, 7, 7, 7, 1, 11, 1, 14, 0, 0, 2, 2, 1, 1, 1, 13, 0, 1], [13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1], [9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1], [9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 9, 9, 1, 0, 0, 14, 1, 1, 1, 1, 1, 9, 9, 9, 1, 1, 1, 9, 9, 9, 1, 1, 1, 1], [1, 1, 9, 9, 0, 0, 14, 1, 1, 1, 1, 1, 9, 1, 9, 9, 1, 9, 1, 1, 9, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 1, 1, 1, 1, 3, 7, 7, 7, 8, 8, 8, 8, 8, 14, 0, 0, 0, 4, 4, 4, 1, 1, 1], [13, 0, 1, 1, 1, 1, 2, 7, 7, 7, 8, 8, 8, 8, 8, 14, 0, 0, 0, 4, 4, 4, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 14, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1], [1, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0, 14, 7, 7, 7, 7, 7, 1, 1, 1, 1, 1, 1, 1, 1]];
}
if (number == 6) {
level_intro.leveltitle.text = "Level 6";
level_intro.leveltext.text = "Precision needed\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 24;
_root.ball_start_y = 22;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[0, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 8, 10], [0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 8, 3, 8, 8, 8, 0], [0, 0, 0, 8, 8, 8, 0, 0, 1, 0, 0, 0, 8, 8, 8, 8, 8, 3, 8, 8, 0, 0, 0, 0, 0], [0, 0, 0, 8, 8, 8, 0, 0, 8, 8, 0, 13, 8, 8, 8, 8, 8, 3, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 8, 8, 8, 0, 0, 8, 8, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 7, 7, 7, 0, 0, 2, 2, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 8, 8, 8, 0, 0, 8, 8, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0], [0, 0, 0, 8, 8, 8, 0, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0], [0, 0, 0, 8, 8, 8, 0, 0, 3, 3, 0, 0, 0, 0, 0, 11, 1, 1, 0, 2, 8, 8, 8, 8, 2], [0, 0, 0, 1, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 11, 0, 1, 0, 0, 0, 0, 0, 0, 1], [0, 0, 0, 1, 0, 0, 0, 0, 8, 8, 0, 0, 0, 0, 0, 11, 0, 1, 0, 2, 8, 8, 8, 8, 2], [1, 1, 1, 1, 0, 0, 0, 0, 4, 4, 0, 11, 8, 8, 8, 11, 0, 1, 0, 1, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 8, 0, 0, 0, 0, 0, 1, 0, 2, 8, 8, 8, 8, 2], [1, 0, 0, 0, 0, 0, 0, 0, 8, 8, 0, 8, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1], [13, 0, 1, 13, 1, 0, 0, 0, 5, 5, 0, 8, 0, 0, 0, 0, 0, 1, 0, 2, 8, 8, 8, 8, 2], [1, 0, 1, 0, 1, 0, 0, 0, 5, 5, 0, 8, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0], [1, 0, 1, 0, 1, 0, 0, 0, 8, 8, 0, 11, 8, 8, 8, 11, 0, 1, 0, 2, 8, 8, 8, 8, 2], [1, 0, 4, 0, 8, 8, 8, 0, 8, 8, 0, 0, 0, 0, 0, 8, 0, 1, 0, 0, 0, 0, 0, 0, 1], [8, 0, 8, 0, 8, 8, 8, 0, 0, 13, 1, 1, 1, 1, 1, 1, 0, 13, 1, 1, 1, 1, 1, 1, 1], [8, 0, 8, 0, 8, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [4, 0, 1, 0, 8, 8, 8, 0, 0, 0, 8, 8, 8, 8, 8, 8, 1, 1, 8, 8, 8, 8, 0, 0, 0], [1, 0, 1, 0, 8, 8, 8, 0, 0, 0, 8, 8, 8, 8, 8, 8, 0, 0, 8, 8, 8, 8, 0, 0, 0], [1, 1, 1, 0, 8, 8, 8, 1, 1, 1, 8, 8, 8, 8, 8, 8, 0, 0, 8, 8, 8, 8, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]];
}
if (number == 7) {
level_intro.leveltitle.text = "Level 7";
level_intro.leveltext.text = "The labyrinth.\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 0;
_root.ball_start_y = 0;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[1, 0, 1, 4, 4, 4, 4, 7, 5, 1, 5, 1, 1, 0, 1, 7, 5, 0, 5, 1, 1, 1, 1, 1, 0], [1, 0, 6, 0, 4, 0, 4, 0, 8, 1, 1, 1, 4, 0, 1, 0, 7, 0, 1, 0, 0, 0, 0, 1, 0], [1, 0, 6, 0, 4, 0, 4, 0, 0, 0, 0, 0, 14, 0, 4, 0, 1, 0, 1, 1, 1, 1, 5, 9, 0], [1, 0, 0, 0, 6, 0, 6, 6, 6, 6, 6, 0, 6, 0, 6, 6, 4, 0, 0, 0, 0, 6, 0, 0, 0], [1, 1, 5, 14, 11, 1, 6, 0, 0, 0, 0, 0, 6, 0, 7, 0, 4, 11, 1, 1, 4, 5, 9, 3, 1], [1, 0, 9, 14, 14, 14, 0, 1, 11, 14, 14, 2, 2, 0, 2, 0, 7, 0, 1, 0, 0, 0, 8, 0, 1], [0, 0, 5, 0, 0, 14, 0, 14, 0, 14, 0, 0, 0, 0, 1, 0, 7, 0, 1, 4, 9, 9, 8, 0, 1], [9, 1, 1, 6, 6, 3, 0, 11, 0, 1, 7, 7, 1, 1, 1, 0, 7, 0, 1, 0, 0, 0, 0, 0, 1], [0, 0, 0, 0, 0, 3, 0, 14, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 6], [1, 1, 4, 5, 0, 6, 0, 14, 0, 1, 6, 6, 6, 7, 7, 5, 5, 9, 5, 8, 8, 0, 0, 0, 0], [9, 0, 0, 4, 0, 0, 0, 14, 0, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 1, 1, 1], [1, 0, 9, 9, 9, 9, 9, 14, 14, 11, 5, 0, 9, 9, 9, 8, 3, 7, 7, 0, 1, 0, 0, 0, 6], [1, 0, 3, 0, 0, 0, 0, 0, 14, 0, 9, 0, 9, 0, 1, 0, 1, 0, 11, 0, 7, 5, 1, 0, 6], [1, 0, 3, 0, 8, 14, 14, 9, 14, 0, 3, 0, 1, 0, 9, 0, 4, 0, 14, 0, 0, 0, 0, 0, 1], [1, 0, 3, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 9, 14, 11, 1, 5, 1, 7, 6, 1], [1, 0, 1, 0, 1, 9, 0, 8, 14, 8, 2, 11, 11, 4, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 9], [1, 3, 3, 0, 1, 9, 0, 11, 0, 11, 0, 0, 0, 0, 0, 0, 14, 1, 5, 5, 1, 1, 1, 0, 9], [0, 0, 0, 0, 0, 9, 0, 11, 0, 11, 0, 2, 2, 2, 2, 0, 1, 0, 2, 0, 0, 0, 1, 0, 7], [1, 1, 14, 14, 3, 9, 0, 3, 0, 8, 0, 8, 8, 0, 14, 0, 1, 0, 2, 1, 1, 1, 1, 0, 7], [1, 0, 0, 0, 0, 0, 0, 11, 0, 9, 0, 0, 0, 0, 1, 3, 3, 0, 14, 0, 0, 0, 14, 0, 14], [2, 0, 5, 5, 14, 14, 14, 1, 0, 11, 11, 0, 14, 0, 6, 7, 7, 0, 0, 0, 0, 14, 14, 9, 6], [2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 0, 11, 0, 11, 0, 0, 11, 6, 6, 0, 0, 0, 0, 0], [1, 2, 0, 2, 2, 1, 7, 7, 2, 2, 2, 0, 7, 0, 1, 3, 3, 0, 11, 11, 11, 11, 11, 11, 3], [0, 0, 0, 2, 0, 0, 0, 0, 0, 0, 7, 0, 1, 0, 2, 0, 0, 3, 0, 0, 3, 0, 0, 0, 0], [1, 1, 1, 1, 2, 2, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 3, 3, 3, 3, 3, 1, 1, 10]];
}
if (number == 8) {
level_intro.leveltitle.text = "Level 8";
level_intro.leveltext.text = "Running on glass\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 24;
_root.ball_start_y = 0;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [0, 0, 6, 6, 6, 6, 0, 6, 6, 6, 6, 6, 0, 6, 6, 6, 6, 6, 6, 6, 1, 1, 1, 1, 1], [0, 0, 6, 0, 0, 6, 0, 6, 0, 0, 0, 6, 0, 6, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1], [0, 0, 6, 0, 0, 6, 6, 6, 0, 0, 0, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [6, 6, 6, 0, 0, 6, 6, 6, 0, 0, 0, 0, 6, 6, 6, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6], [6, 0, 0, 0, 6, 6, 0, 6, 6, 0, 0, 6, 6, 0, 6, 6, 0, 0, 0, 0, 0, 6, 6, 0, 6], [6, 0, 0, 6, 6, 0, 0, 0, 6, 6, 6, 6, 0, 0, 0, 6, 6, 0, 0, 0, 6, 6, 0, 0, 6], [13, 0, 6, 6, 0, 0, 0, 0, 0, 6, 6, 0, 0, 0, 0, 0, 6, 6, 0, 6, 6, 0, 0, 0, 6], [1, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6, 6, 6, 0, 0, 0, 0, 13], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6], [6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6, 0, 6, 6, 6], [6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [6, 6, 6, 6, 6, 6, 14, 0, 0, 6, 6, 6, 14, 0, 0, 6, 6, 14, 0, 0, 0, 6, 6, 6, 6], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13], [0, 0, 0, 0, 0, 0, 0, 0, 0, 14, 6, 6, 6, 0, 0, 14, 6, 6, 6, 6, 6, 6, 6, 6, 6], [0, 0, 14, 6, 6, 6, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 6, 6, 6, 6, 6, 6, 14, 0, 6, 6, 6, 14, 0, 6, 6, 14, 0, 0, 0, 6, 6, 6, 10], [0, 0, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]];
}
if (number == 9) {
level_intro.leveltitle.text = "Level 9";
level_intro.leveltext.text = "Nasty arrows\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 0;
_root.ball_start_y = 2;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 1, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 1, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 1, 1, 9, 9, 14, 0, 0, 13, 9, 9, 9, 1, 7, 7, 7, 14, 0, 13, 7, 0, 0], [0, 0, 0, 0, 0, 1, 9, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 1, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 7, 7, 7, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 0, 7, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 7, 7, 7, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 14, 0, 0], [0, 1, 1, 1, 0, 0, 0, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 0, 0, 0, 0, 0, 0, 0, 0], [0, 1, 1, 1, 1, 13, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 13, 0, 0], [0, 8, 8, 8, 0, 0, 0, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0], [0, 8, 8, 8, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 8, 8, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 2, 2, 2, 2, 0, 0, 0], [0, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0], [0, 9, 9, 9, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0], [0, 1, 1, 1, 1, 14, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0], [0, 1, 1, 1, 1, 14, 0, 0, 0, 0, 13, 1, 1, 1, 1, 2, 2, 2, 0, 0, 0, 1, 0, 0, 0], [0, 1, 1, 1, 1, 14, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 10, 8, 8, 2, 2, 2, 2, 2, 2, 2, 2, 2, 1, 2, 2, 2, 2, 2, 1, 0, 0, 0]];
}
if (number == 10) {
level_intro.leveltitle.text = "Level 10";
level_intro.leveltext.text = "36 holes to avoid\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 24;
_root.ball_start_y = 22;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 7, 8, 7, 0, 9, 7, 9, 0, 9, 9, 9, 0, 6, 6, 6, 0, 6, 9, 6, 0, 6, 6, 9, 0], [0, 8, 0, 8, 1, 7, 0, 7, 14, 9, 0, 9, 1, 9, 0, 9, 1, 6, 0, 6, 1, 6, 0, 6, 10], [0, 7, 8, 7, 0, 9, 7, 9, 0, 9, 9, 9, 0, 6, 6, 6, 0, 6, 9, 6, 0, 9, 6, 6, 0], [0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 3, 4, 3, 0, 11, 11, 11, 0, 6, 6, 6, 0, 1, 0, 1, 0, 9, 6, 9, 0, 6, 9, 6, 0], [0, 4, 0, 4, 1, 11, 0, 11, 1, 6, 0, 6, 1, 11, 0, 7, 1, 6, 0, 6, 1, 9, 0, 9, 0], [0, 3, 4, 3, 0, 11, 11, 11, 0, 6, 6, 6, 0, 1, 0, 14, 0, 9, 6, 9, 0, 6, 9, 6, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0], [0, 2, 2, 2, 0, 3, 3, 3, 0, 4, 4, 4, 0, 5, 5, 5, 0, 7, 7, 7, 0, 5, 5, 5, 0], [0, 2, 0, 2, 1, 3, 0, 3, 1, 4, 0, 4, 1, 5, 0, 5, 1, 7, 0, 7, 1, 7, 0, 7, 0], [0, 2, 2, 2, 0, 3, 3, 3, 0, 4, 4, 4, 0, 5, 5, 5, 0, 7, 7, 7, 0, 5, 5, 5, 0], [0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 7, 7, 7, 0, 2, 2, 2, 0, 1, 6, 6, 0, 5, 5, 6, 0, 9, 9, 9, 0, 9, 9, 9, 0], [0, 7, 0, 8, 1, 8, 0, 1, 1, 1, 0, 8, 1, 1, 0, 1, 1, 11, 0, 11, 1, 9, 0, 9, 0], [0, 7, 7, 7, 0, 3, 3, 3, 0, 1, 6, 6, 0, 5, 5, 6, 0, 9, 9, 9, 0, 9, 9, 9, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13, 0, 0], [0, 6, 6, 6, 0, 8, 1, 1, 0, 11, 11, 11, 0, 11, 6, 11, 0, 6, 11, 6, 0, 7, 11, 7, 0], [0, 6, 0, 6, 1, 14, 0, 1, 1, 11, 0, 11, 1, 6, 0, 6, 1, 11, 0, 11, 1, 11, 0, 11, 0], [0, 6, 6, 6, 0, 8, 1, 1, 0, 11, 11, 11, 0, 11, 6, 11, 0, 6, 11, 6, 0, 7, 11, 7, 0], [0, 0, 13, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 6, 6, 6, 0, 9, 9, 9, 0, 7, 7, 7, 0, 7, 2, 7, 0, 3, 3, 3, 0, 6, 6, 6, 0], [0, 6, 0, 6, 1, 9, 0, 9, 1, 7, 0, 7, 1, 5, 0, 4, 1, 3, 0, 3, 1, 6, 0, 6, 1], [0, 6, 6, 6, 0, 9, 9, 9, 0, 7, 7, 7, 0, 7, 3, 7, 0, 3, 3, 3, 0, 6, 6, 6, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]];
}
if (number == 11) {
level_intro.leveltitle.text = "Level 11";
level_intro.leveltext.text = "This is what I call a KEYBOARD BREAKER\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 24;
_root.ball_start_y = 24;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[10, 0, 7, 8, 7, 0, 7, 8, 7, 0, 7, 8, 1, 8, 7, 0, 7, 8, 7, 0, 7, 8, 7, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 13, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [7, 8, 7, 0, 7, 8, 7, 0, 7, 8, 7, 0, 1, 0, 7, 8, 7, 0, 7, 8, 7, 0, 7, 8, 7], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 7, 1, 1, 1, 14, 1, 1, 1, 1, 1, 1, 1, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 1, 0, 1, 2, 2, 2, 2, 2, 2, 2, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 1, 0, 1, 2, 2, 2, 2, 2, 2, 2, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 0, 1, 0, 1, 2, 2, 2, 2, 2, 2, 2, 1], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [1, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 1, 1, 1, 0, 1, 2, 2, 2, 2, 2, 2, 2, 1]];
}
if (number == 12) {
level_intro.leveltitle.text = "Level 12";
level_intro.leveltext.text = "Just a matter of timing\n\nHit ENTER to start.\n\nESC to stop sound (if any)";
_root.ball_start_x = 24;
_root.ball_start_y = 23;
if (checkpoint_passed) {
_root.ball_start_x = save_x;
_root.ball_start_y = save_y;
}
level = [[10, 1, 0, 0, 14, 2, 8, 8, 8, 2, 8, 8, 8, 2, 8, 8, 8, 2, 8, 8, 8, 2, 1, 13, 6], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 6], [0, 0, 11, 11, 11, 8, 8, 8, 8, 8, 8, 9, 9, 8, 8, 8, 8, 8, 9, 9, 8, 1, 1, 0, 6], [13, 1, 11, 11, 11, 8, 8, 8, 8, 9, 9, 8, 8, 8, 8, 8, 9, 9, 8, 8, 8, 6, 6, 6, 6], [1, 0, 11, 11, 11, 8, 8, 8, 8, 8, 8, 9, 9, 8, 8, 8, 8, 8, 9, 9, 8, 1, 1, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 1, 1, 1, 8, 8, 9, 8, 8, 8, 9, 8, 8, 8, 9, 8, 8, 8, 9, 8, 1, 1, 0, 0], [1, 1, 1, 1, 1, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 9, 8, 8, 1, 1, 1, 13], [0, 0, 1, 1, 1, 9, 8, 8, 8, 9, 8, 8, 8, 9, 8, 8, 8, 9, 8, 8, 8, 1, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [0, 0, 1, 2, 2, 8, 8, 8, 14, 0, 0, 0, 8, 8, 8, 8, 9, 9, 8, 8, 8, 1, 1, 0, 1], [13, 1, 1, 2, 2, 8, 8, 8, 14, 0, 0, 0, 8, 8, 8, 8, 9, 9, 8, 8, 8, 1, 1, 1, 1], [1, 0, 1, 2, 2, 8, 8, 8, 14, 0, 0, 0, 8, 8, 8, 8, 9, 9, 8, 8, 8, 1, 1, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 1, 1, 1, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 7, 1, 0, 0], [1, 1, 1, 1, 1, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 7, 1, 1, 13], [0, 0, 1, 1, 1, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 7, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [0, 0, 1, 1, 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 14, 0, 9, 8, 8, 1, 1, 0, 1], [13, 1, 1, 1, 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 14, 0, 9, 8, 8, 1, 1, 1, 1], [1, 0, 1, 1, 1, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 14, 0, 9, 8, 8, 1, 1, 0, 0], [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 1, 1, 1, 8, 9, 8, 8, 8, 9, 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 1, 1, 0, 0], [1, 1, 1, 1, 1, 8, 9, 8, 8, 8, 9, 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 1, 1, 1, 1], [0, 0, 1, 1, 1, 8, 9, 8, 8, 8, 9, 8, 8, 8, 8, 9, 8, 8, 8, 8, 8, 1, 1, 0, 0]];
}
if (number == 13) {
level_intro.leveltitle.text = "CONGRATULATIONS";
level_intro.leveltext.text = "I am proud I entertained you!\n\nGAME OVER...";
_root.ball_start_x = 24;
_root.ball_start_y = 23;
}
_root.createEmptyMovieClip("bricks", 3);
bricks._x = 300 - (80 * ball_start_x);
bricks._y = 250 - (80 * ball_start_y);
starz._x = -20 + ((bricks._x - 240) / 20);
starz._y = -20 + ((bricks._y - 220) / 20);
y = 0;
while (y < 25) {
x = 0;
while (x < 25) {
if (level[y][x] > 0) {
depth = (y * 25) + x;
place_brick = bricks.attachMovie("brick", "brick_" + depth, bricks.getNextHighestDepth(), {_x:x * 80, _y:y * 80});
frame_to_stop = level[y][x];
if (frame_to_stop > 12000) {
frame_to_stop = 12;
}
place_brick.gotoAndStop(frame_to_stop);
}
x++;
}
y++;
}
}
_root.attachMovie("starz", "starz", 1, {_x:-20, _y:-20});
_root.attachMovie("ball", "ball", 4, {_x:300, _y:250});
_root.attachMovie("info_panel", "info_panel", 5, {_y:460, _visible:false});
_root.attachMovie("level_intro", "level_intro", 6, {_x:50, _y:125});
var _local8 = 5;
var _local5 = 135;
var _local7 = 0;
var _local16 = 0.4;
var _local11 = 2;
var _local10 = 2;
var _local13 = 1;
var _local6 = 3;
var _local9 = false;
var _local14 = false;
var _local12 = false;
var _local15 = new flash.filters.DropShadowFilter(_local8, _local5, _local7, _local16, _local11, _local10, _local13, _local6, _local9, _local14, _local12);
ball.filters = new Array(_local15);
ball.texture.setMask(ball.ball_itself);
yspeed = 0;
xspeed = 0;
checkpoint_passed = false;
lev = 1;
jumping = false;
falling = false;
can_jump = false;
go = false;
draw_level(lev);
ball.onEnterFrame = function () {
if (go) {
can_jump = false;
info_panel._visible = false;
friction = 0.99;
power = 0.4;
brick_x = Math.floor((bricks._x - 260) / 80) * -1;
brick_y = Math.floor((bricks._y - 210) / 80) * -1;
type_of_tile = level[brick_y][brick_x];
if ((!jumping) and (!falling)) {
if (type_of_tile > 12000) {
message_to_show = messages[type_of_tile % 12000];
type_of_tile = 12;
}
switch (type_of_tile) {
case 1 :
break;
case 2 :
yspeed = yspeed + 0.2;
break;
case 3 :
yspeed = yspeed - 0.2;
break;
case 4 :
xspeed = xspeed - 0.2;
break;
case 5 :
xspeed = xspeed + 0.2;
break;
case 6 :
depth = (brick_y * 25) + brick_x;
bricks["brick_" + depth]._alpha = bricks["brick_" + depth]._alpha - 2;
if (bricks["brick_" + depth]._alpha < 1) {
level[brick_y][brick_x] = 0;
}
break;
case 7 :
xspeed = xspeed * 1.05;
yspeed = yspeed * 1.05;
break;
case 8 :
friction = 1;
power = 0;
break;
case 9 :
depth = (brick_y * 25) + brick_x;
if (bricks["brick_" + depth].lava._currentframe > 90) {
ball_die();
}
break;
case 10 :
if (Math.abs(xspeed + yspeed) < 1) {
checkpoint_passed = false;
lev++;
_root.removeMovieClip("bricks");
draw_level(lev);
}
break;
case 11 :
power = power * -1;
break;
case 12 :
info_panel._visible = true;
info_panel.message_text.text = message_to_show;
break;
case 13 :
checkpoint_passed = true;
save_x = brick_x;
save_y = brick_y;
break;
case 14 :
can_jump = true;
break;
default :
falling = true;
this.swapDepths(2);
}
if (Key.isDown(37)) {
xspeed = xspeed - power;
}
if (Key.isDown(39)) {
xspeed = xspeed + power;
}
if (Key.isDown(38)) {
yspeed = yspeed - power;
}
if (Key.isDown(40)) {
yspeed = yspeed + power;
}
if (Key.isDown(32)) {
if ((!jumping) and can_jump) {
jumping = true;
jump_factor = 3;
}
}
if (Key.isDown(27)) {
music.stop();
}
}
if (jumping) {
this._width = this._width + jump_factor;
this._height = this._height + jump_factor;
if (this._width == 201) {
jump_factor = jump_factor * -1;
}
if (this._width == 126) {
jumping = false;
}
}
if (falling) {
this._width = this._width - 4;
this._height = this._height - 4;
if (this._width == 2) {
this._width = 126;
this._height = 126;
ball_die();
}
}
xspeed = xspeed * friction;
yspeed = yspeed * friction;
if ((xspeed < 0.1) and (xspeed > -0.1)) {
xspeed = 0;
}
if ((yspeed < 0.1) and (yspeed > -0.1)) {
yspeed = 0;
}
bricks._y = bricks._y - yspeed;
bricks._x = bricks._x - xspeed;
starz._x = -20 + ((bricks._x - 240) / 20);
starz._y = -20 + ((bricks._y - 220) / 20);
this.texture._y = this.texture._y + yspeed;
this.texture._x = this.texture._x + xspeed;
if (this.texture._x > 53) {
this.texture._x = this.texture._x - 63;
}
if (this.texture._x < -53) {
this.texture._x = this.texture._x + 63;
}
if (this.texture._y > 53) {
this.texture._y = this.texture._y - 63;
}
if (this.texture._y < -53) {
this.texture._y = this.texture._y + 63;
}
}
};
level_intro.onEnterFrame = function () {
if (Key.isDown(13)) {
go = true;
this._visible = false;
}
};
}
stop();
_root.attachMovie("main", "main", 0);
music = new Sound(this);
music.attachSound("music");
music.start(0, 10000);
main.onEnterFrame = function () {
if (Key.isDown(27)) {
music.stop();
}
if (Key.isDown(32)) {
play_the_game();
this.removeMovieClip();
}
};
Symbol 26 MovieClip [brick] Frame 1
stop();
Symbol 26 MovieClip [brick] Frame 2
stop();
Symbol 26 MovieClip [brick] Frame 3
stop();
Symbol 26 MovieClip [brick] Frame 4
stop();
Symbol 26 MovieClip [brick] Frame 5
stop();
Symbol 26 MovieClip [brick] Frame 6
stop();
Symbol 26 MovieClip [brick] Frame 7
stop();
Symbol 26 MovieClip [brick] Frame 8
stop();
Symbol 26 MovieClip [brick] Frame 9
stop();
Symbol 26 MovieClip [brick] Frame 10
stop();
Symbol 26 MovieClip [brick] Frame 11
stop();
Symbol 26 MovieClip [brick] Frame 12
stop();
Symbol 26 MovieClip [brick] Frame 13
stop();
Symbol 26 MovieClip [brick] Frame 14
stop();
Symbol 57 Button
on (release) {
getURL ("http://www.emanueleferonato.com/stuff/christmas_couples/", "_blank");
}
Symbol 60 Button
on (release) {
getURL ("http://www.emanueleferonato.com/stuff/circle_chain/", "_blank");
}
Symbol 67 MovieClip [__Packages.MochiAd] Frame 0
class MochiAd
{
function MochiAd () {
}
static function getVersion() {
return("2.1");
}
static function showPreGameAd(options) {
var _local27 = {clip:_root, ad_timeout:3000, fadeout_time:250, regpt:"o", method:"showPreloaderAd", color:16747008, background:16777161, outline:13994812, ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local27);
var clip = options.clip;
var _local23 = 11000;
var _local26 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local14 = _getRes(options);
var _local4 = _local14[0];
var _local13 = _local14[1];
mc._x = _local4 * 0.5;
mc._y = _local13 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk._x = _local4 * -0.5;
chk._y = _local13 * -0.5;
var _local7 = chk.createEmptyMovieClip("_mochiad_bar", 4);
_local7._x = 10;
_local7._y = _local13 - 20;
var _local22 = options.color;
delete options.color;
var _local19 = options.background;
delete options.background;
var _local24 = options.outline;
delete options.outline;
var _local5 = _local7.createEmptyMovieClip("_outline", 1);
_local5.beginFill(_local19);
_local5.moveTo(0, 0);
_local5.lineTo(_local4 - 20, 0);
_local5.lineTo(_local4 - 20, 10);
_local5.lineTo(0, 10);
_local5.lineTo(0, 0);
_local5.endFill();
var _local3 = _local7.createEmptyMovieClip("_inside", 2);
_local3.beginFill(_local22);
_local3.moveTo(0, 0);
_local3.lineTo(_local4 - 20, 0);
_local3.lineTo(_local4 - 20, 10);
_local3.lineTo(0, 10);
_local3.lineTo(0, 0);
_local3.endFill();
_local3._xscale = 0;
var _local6 = _local7.createEmptyMovieClip("_outline", 3);
_local6.lineStyle(0, _local24, 100);
_local6.moveTo(0, 0);
_local6.lineTo(_local4 - 20, 0);
_local6.lineTo(_local4 - 20, 10);
_local6.lineTo(0, 10);
_local6.lineTo(0, 0);
chk.ad_msec = _local23;
chk.ad_timeout = _local26;
chk.started = getTimer();
chk.showing = false;
chk.last_pcnt = 0;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = function (width, height) {
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec;
};
chk.onEnterFrame = function () {
var _local6 = this._parent._parent;
var _local12 = this._parent._mochiad_ctr;
var _local5 = getTimer() - this.started;
var _local3 = false;
var _local4 = _local6.getBytesTotal();
var _local8 = _local6.getBytesLoaded();
var _local10 = (100 * _local8) / _local4;
var _local11 = (100 * _local5) / chk.ad_msec;
var _local9 = this._mochiad_bar._inside;
var _local2 = Math.min(100, Math.min(_local10 || 0, _local11));
_local2 = Math.max(this.last_pcnt, _local2);
this.last_pcnt = _local2;
_local9._xscale = _local2;
if (!chk.showing) {
var _local7 = _local12.getBytesTotal();
if ((_local7 > 0) || (typeof(_local7) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local5 > chk.ad_timeout) {
_local3 = true;
}
}
if (_local5 > chk.ad_msec) {
_local3 = true;
}
if (((_local4 > 0) && (_local8 >= _local4)) && (_local3)) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = chk.fadeFunction;
}
}
};
}
static function showInterLevelAd(options) {
var _local13 = {clip:_root, ad_timeout:2000, fadeout_time:250, regpt:"o", method:"showTimedAd", ad_started:function () {
this.clip.stop();
}, ad_finished:function () {
this.clip.play();
}};
options = _parseOptions(options, _local13);
var clip = options.clip;
var _local10 = 11000;
var _local12 = options.ad_timeout;
delete options.ad_timeout;
var fadeout_time = options.fadeout_time;
delete options.fadeout_time;
if (!load(options)) {
options.ad_finished();
return(undefined);
}
options.ad_started();
var mc = clip._mochiad;
mc.onUnload = function () {
options.ad_finished();
};
var _local5 = _getRes(options);
var _local14 = _local5[0];
var _local11 = _local5[1];
mc._x = _local14 * 0.5;
mc._y = _local11 * 0.5;
var chk = mc.createEmptyMovieClip("_mochiad_wait", 3);
chk.ad_msec = _local10;
chk.ad_timeout = _local12;
chk.started = getTimer();
chk.showing = false;
chk.fadeout_time = fadeout_time;
chk.fadeFunction = function () {
var _local2 = 100 * (1 - ((getTimer() - this.fadeout_start) / this.fadeout_time));
if (_local2 > 0) {
this._parent._alpha = _local2;
} else {
var _local3 = this._parent._parent;
MochiAd.unload(_local3);
delete this.onEnterFrame;
}
};
mc.lc.adLoaded = function (width, height) {
};
mc.lc.adjustProgress = function (msec) {
var _local2 = this.mc._mochiad_wait;
_local2.server_control = true;
_local2.started = getTimer();
_local2.ad_msec = msec - 250;
};
chk.onEnterFrame = function () {
var _local5 = this._parent._mochiad_ctr;
var _local4 = getTimer() - this.started;
var _local2 = false;
if (!chk.showing) {
var _local3 = _local5.getBytesTotal();
if ((_local3 > 0) || (typeof(_local3) == "undefined")) {
chk.showing = true;
chk.started = getTimer();
} else if (_local4 > chk.ad_timeout) {
_local2 = true;
}
}
if (_local4 > chk.ad_msec) {
_local2 = true;
}
if (_local2) {
if (this.server_control) {
delete this.onEnterFrame;
} else {
this.fadeout_start = getTimer();
this.onEnterFrame = this.fadeFunction;
}
}
};
}
static function showTimedAd(options) {
showInterLevelAd(options);
}
static function showPreloaderAd(options) {
showPreGameAd(options);
}
static function _allowDomains(server) {
var _local1 = server.split("/")[2].split(":")[0];
if (System.security) {
if (System.security.allowDomain) {
System.security.allowDomain("*");
System.security.allowDomain(_local1);
}
if (System.security.allowInsecureDomain) {
System.security.allowInsecureDomain("*");
System.security.allowInsecureDomain(_local1);
}
}
return(_local1);
}
static function _loadCommunicator(options) {
var _local26 = {clip:_root, com_server:"http://x.mochiads.com/com/1/", method:"loadCommunicator", depth:10337, id:"_UNKNOWN_"};
options = _parseOptions(options, _local26);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local18 = options.clip;
var _local20 = "_mochiad_com_" + options.id;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local18[_local20]) {
return(_local18[_local20].lc);
}
var _local21 = options.com_server + options.id;
_allowDomains(_local21);
delete options.id;
delete options.com_server;
var _local25 = options.depth;
delete options.depth;
var _local17 = _local18.createEmptyMovieClip(_local20, _local25);
var _local11 = _local17.createEmptyMovieClip("_mochiad_com", 1);
for (var _local15 in options) {
_local11[_local15] = options[_local15];
}
var _local6 = new LocalConnection();
var _local16 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local6.mc = _local17;
_local6.name = _local16;
_local6.allowDomain = function (d) {
return(true);
};
_local6.allowInsecureDomain = _local6.allowDomain;
_local6.connect(_local16);
_local17.lc = _local6;
_local11.lc = _local16;
_local6._id = 0;
_local6._queue = [];
_local6.rpcResult = function (cb_arg) {
var _local8 = parseInt(cb_arg);
var _local4 = this._callbacks[_local8];
if (!_local4) {
return(undefined);
}
delete this._callbacks[_local8];
var _local5 = [];
var _local3 = 2;
while (_local3 < _local4.length) {
_local5.push(_local4[_local3]);
_local3++;
}
_local3 = 1;
while (_local3 < arguments.length) {
_local5.push(arguments[_local3]);
_local3++;
}
var _local6 = _local4[1];
var _local7 = _local4[0];
if (_local7 && (typeof(_local6) == "string")) {
_local6 = _local7[_local6];
}
if (_local6) {
_local6.apply(_local7, _local5);
}
};
_local6._didConnect = function (endpoint) {
this._endpoint = endpoint;
var _local4 = this._queue;
delete this._queue;
var _local5 = this.doSend;
var _local2 = 0;
while (_local2 < _local4.length) {
var _local3 = _local4[_local2];
_local5.apply(this, _local3);
_local2++;
}
};
_local6.doSend = function (args, cbobj, cbfn) {
if (this._endpoint == null) {
var _local4 = [];
var _local3 = 0;
while (_local3 < arguments.length) {
_local4.push(arguments[_local3]);
_local3++;
}
this._queue.push(_local4);
return(undefined);
}
this._id = this._id + 1;
var _local5 = this._id;
if ((cbfn === undefined) || (cbfn === null)) {
cbfn = cbobj;
}
this._callbacks[_local5] = [cbobj, cbfn];
var _local7 = new LocalConnection();
var _local9 = _local7.send(this._endpoint, "rpc", _local5, args);
};
_local6._callbacks = {};
_local6._callbacks[0] = [_local6, "_didConnect"];
_local11.st = getTimer();
_local11.loadMovie(_local21 + ".swf", "POST");
return(_local6);
}
static function fetchHighScores(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["fetchHighScores", options];
_local1.doSend(["fetchHighScores", options], callbackObj, callbackMethod);
return(true);
}
static function sendHighScore(options, callbackObj, callbackMethod) {
var _local1 = _loadCommunicator({id:options.id});
if (!_local1) {
return(false);
}
var _local4 = ["sendHighScore", options];
_local1.doSend(["sendHighScore", options], callbackObj, callbackMethod);
return(true);
}
static function load(options) {
var _local13 = {clip:_root, server:"http://x.mochiads.com/srv/1/", method:"load", depth:10333, id:"_UNKNOWN_"};
options = _parseOptions(options, _local13);
options.swfv = options.clip.getSWFVersion() || 6;
options.mav = getVersion();
var _local9 = options.clip;
if (!_isNetworkAvailable()) {
return(null);
}
if (_local9._mochiad_loaded) {
return(null);
}
var _local12 = options.depth;
delete options.depth;
var _local6 = _local9.createEmptyMovieClip("_mochiad", _local12);
var _local11 = _getRes(options);
options.res = (_local11[0] + "x") + _local11[1];
options.server = options.server + options.id;
delete options.id;
_local9._mochiad_loaded = true;
var _local4 = _local6.createEmptyMovieClip("_mochiad_ctr", 1);
for (var _local7 in options) {
_local4[_local7] = options[_local7];
}
var _local10 = _local4.server;
delete _local4.server;
var _local14 = _allowDomains(_local10);
_local6.onEnterFrame = function () {
if (this._mochiad_ctr._url != this._url) {
this.onEnterFrame = function () {
if (!this._mochiad_ctr) {
delete this.onEnterFrame;
MochiAd.unload(this._parent);
}
};
}
};
var _local5 = new LocalConnection();
var _local8 = ["", Math.floor(new Date().getTime()), random(999999)].join("_");
_local5.mc = _local6;
_local5.name = _local8;
_local5.hostname = _local14;
_local5.allowDomain = function (d) {
return(true);
};
_local5.allowInsecureDomain = _local5.allowDomain;
_local5.connect(_local8);
_local6.lc = _local5;
_local4.lc = _local8;
_local4.st = getTimer();
_local4.loadMovie(_local10 + ".swf", "POST");
return(_local6);
}
static function unload(clip) {
if (typeof(clip) == "undefined") {
clip = _root;
}
if (clip.clip && (clip.clip._mochiad)) {
clip = clip.clip;
}
if (!clip._mochiad) {
return(false);
}
clip._mochiad.removeMovieClip();
delete clip._mochiad_loaded;
delete clip._mochiad;
return(true);
}
static function _isNetworkAvailable() {
if (System.security) {
var _local1 = System.security;
if (_local1.sandboxType == "localWithFile") {
return(false);
}
}
return(true);
}
static function _getRes(options) {
var _local3 = options.clip.getBounds();
var _local2 = 0;
var _local1 = 0;
if (typeof(options.res) != "undefined") {
var _local4 = options.res.split("x");
_local2 = parseFloat(_local4[0]);
_local1 = parseFloat(_local4[1]);
} else {
_local2 = _local3.xMax - _local3.xMin;
_local1 = _local3.yMax - _local3.yMin;
}
if ((_local2 == 0) || (_local1 == 0)) {
_local2 = Stage.width;
_local1 = Stage.height;
}
return([_local2, _local1]);
}
static function _parseOptions(options, defaults) {
var _local4 = {};
for (var _local8 in defaults) {
_local4[_local8] = defaults[_local8];
}
if (options) {
for (var _local8 in options) {
_local4[_local8] = options[_local8];
}
}
if (_root.mochiad_options) {
var _local5 = _root.mochiad_options.split("&");
var _local2 = 0;
while (_local2 < _local5.length) {
var _local3 = _local5[_local2].split("=");
_local4[unescape(_local3[0])] = unescape(_local3[1]);
_local2++;
}
}
return(_local4);
}
}