Frame 1
function initLoader() {
var _local2 = ((result_lv.b == undefined) ? "false" : (result_lv.b));
trace(("b ::" + _local2) + "::");
trace(("result_lv.h ::" + result_lv.h) + "::");
if (result_lv.h == "true") {
isHome = true;
}
if (_local2 == "true") {
bannedSign._alpha = 100;
} else {
this.onEnterFrame = function () {
createNewParticle();
mcLoadLogoBg.bar._xscale = 100 * (1 - (getBytesLoaded() / getBytesTotal()));
emitter._x = (mcLoadLogoBg._x + (96 - mcLoadLogoBg.bar._width)) + 15;
emitter._y = mcLoadLogoBg._y + 44;
if (getBytesLoaded() == getBytesTotal()) {
kill();
this.onEnterFrame = undefined;
if (isHome) {
this.gotoAndStop(3);
} else {
this.gotoAndStop(2);
}
}
};
bannedSign.onRelease = function () {
if (!isHome) {
openKingPage(LINK_TYPE_LOADER_PROGRESS);
}
};
}
}
function openKingPage(type, page) {
trace(type);
var _local4 = _root._url;
var _local3 = (((((("game=" + GAME_NAME) + "&from=") + _local4) + "&type=") + type) + "&session=") + sessionID;
if (page != undefined) {
_local3 = _local3 + ("&redirect=" + page);
}
var _local2 = "_blank";
if (isHome) {
_local2 = "_top";
}
getURL ((bounceURL + "?") + _local3, _local2);
}
function openOtherGamesLink() {
openKingPage(LINK_TYPE_OTHER_GAMES);
}
function openHighscoresLink() {
openKingPage(LINK_TYPE_HIGHSCORES, ("game/" + GAME_NAME) + "/highscores");
}
function openSignLink() {
if (!isHome) {
openKingPage(LINK_TYPE_SIGN);
}
}
function openAddToWebsiteLink() {
openKingPage(LINK_TYPE_ADD_GAME, "website_content.jsp");
}
function openLoaderMovieLink() {
openKingPage(LINK_TYPE_LOADER_MOVIE);
}
function openRightClickLink() {
openKingPage(LINK_TYPE_RIGHT_CLICK);
}
function openOfflineProtectionLink() {
openKingPage(LINK_TYPE_PROTECT);
}
function addScore(points) {
checkScore();
var _local1 = (iscore - 123) / 2;
_local1 = _local1 + points;
iscore = (_local1 * 2) + 123;
var _local2 = new md5();
checkStr = _local2.hash((((iscore + ":") + GAME_NAME) + ":") + SK);
return(_local1);
}
function resetScore() {
iscore = 123;
checkStr = null;
}
function submitInternalScore() {
checkScore();
var _local1 = (iscore - 123) / 2;
submitScore(_local1);
}
function checkScore() {
if (checkStr != null) {
var _local1 = new md5();
if (checkStr != _local1.hash((((iscore + ":") + GAME_NAME) + ":") + SK)) {
SSK = "ng41ui54hy35tdsnd6f54rews";
}
}
}
function submitScore(score) {
var _local2 = new md5();
var _local1 = _local2.hash((((score + ":") + GAME_NAME) + ":") + SSK);
try {
if (isHome) {
flash.external.ExternalInterface.call("submitScore", score, _local1);
} else {
openKingPage(LINK_TYPE_HIGHSCORES, (((("game/" + GAME_NAME) + "/submit/") + score) + ":") + _local1);
}
} catch(e:Error) {
trace(e);
}
}
function submitLevel(level) {
var _local1 = new md5();
var _local2 = _local1.hash((((level + ":") + GAME_NAME) + ":") + SSK);
try {
if (isHome) {
flash.external.ExternalInterface.call("submitLevel", level, _local2);
}
} catch(e:Error) {
trace(e);
}
}
function submitAchievement(achievement) {
var _local1 = new md5();
var _local2 = _local1.hash((((achievement + ":") + GAME_NAME) + ":") + SAK);
try {
if (isHome) {
flash.external.ExternalInterface.call("submitAchievement", achievement, _local2);
}
} catch(e:Error) {
trace(e);
}
}
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);
}
function createNewParticle() {
var _local4 = emitter.attachMovie("libGlow", "newLibGlow", emitter.getNextHighestDepth());
var _local3 = new Particle(_local4, -10, -7, _root._width, _root._height);
_local3.setVel(randRange(minXVel, maxXVel), randRange(minYVel, maxYVel));
_local3.setSize(randRange(minSize, maxSize));
particles.push(_local3);
while (particles.length > numParticles) {
_local3 = particles.shift();
_local3.destroy();
}
var _local2 = 0;
while (_local2 < particles.length) {
particles[_local2].update();
_local2++;
}
}
function kill() {
var _local1 = 0;
while (_local1 < particles.length) {
particles[_local1].destroy();
_local1++;
}
}
function randRange(min, max) {
var _local1 = (Math.random() * (max - min)) + min;
return(_local1);
}
stop();
var GAME_NAME = "bounce-squared";
var MOCHI_SIGNATURE = "";
var loadCountURL = "http://www.mygame.com/king/loadcount.jsp";
var bounceURL = "http://www.mygame.com/king/bounce.jsp";
var loadHomeParametersURL = "http://www.king.com/servlet/FreeGameServlet?action=load";
var LINK_TYPE_LOADER_MOVIE = "loader_movie";
var LINK_TYPE_LOADER_PROGRESS = "loader_progress";
var LINK_TYPE_PROTECT = "protect";
var LINK_TYPE_OTHER_GAMES = "other_games";
var LINK_TYPE_HIGHSCORES = "highscores";
var LINK_TYPE_SIGN = "sign";
var LINK_TYPE_ADD_GAME = "add_game";
var LINK_TYPE_RIGHT_CLICK = "rightclick";
var LINK_TYPE_RIGHT_CLICK = "rightclick";
var SSK = "ng43ui54hy35tdsnd6f54rews";
var SAK = "ggfd7sday923mdsfd8csfds34";
var SK = "vf78hxcsjak77cxzhjkwad87s";
var iscore = 123;
var checkStr = null;
var USER_TYPE_UNREGISTERED = 0;
var USER_TYPE_REGISTERED = 1;
var USER_TYPE_GOLD = 2;
var USER_TYPE_SUBSCRIPTION = 3;
var SessionID = "";
var gameWidth = Stage.width;
var gameHeight = Stage.height;
var isHome = false;
bannedSign._alpha = 0;
bannedSign._x = (bannedSign._y = 0);
bannedSign.bg._width = gameWidth;
bannedSign.bg._height = gameHeight;
mcLoadLogoBg._x = (gameWidth / 2) - (mcLoadLogoBg._width / 2);
mcLoadLogoBg._y = (gameHeight / 2) - (mcLoadLogoBg._height / 2);
var result_lv = new LoadVars();
result_lv.onLoad = function (success) {
_root.initLoader();
};
var my_lv = new LoadVars();
my_lv.game = GAME_NAME;
my_lv.from = _root._url;
var so = SharedObject.getLocal("session");
if (so.data.sessionID == null) {
var rnd1 = Math.floor(Math.random() * 4294967295);
var rnd2 = Math.floor(Math.random() * 4294967295);
so.data.sessionID = rnd1.toString(16) + rnd2.toString(16);
so.flush();
}
sessionID = so.data.sessionID;
my_lv.session = sessionID;
my_lv.sendAndLoad(loadCountURL, result_lv, "GET");
if (MOCHI_SIGNATURE != "") {
__com_mochibot__(MOCHI_SIGNATURE, this, 10301, true);
}
var numParticles = 20;
var minXVel = -1;
var maxXVel = 1;
var minYVel = -1;
var maxYVel = 1;
var minSize = 12;
var maxSize = 29;
var minAlpha = 10;
var maxAlpha = 20;
var particles = new Array();
var emitter = _root.createEmptyMovieClip("p_holder", _root.getNextHighestDepth());
function sitelock(url_to_lock) {
domain_parts = _url.split("://");
real_domain = domain_parts[1].split("/");
domain.text = real_domain[0];
if (real_domain[0] == url_to_lock) {
unlock_all();
}
}
function flush_SO() {
my_info.data.score = score;
my_info.data.sound_on = sound_on;
my_info.data.sv = sv;
my_info.data.unlocked = unlocked;
my_info.data.pass_array = pa;
my_info.flush();
}
function start_loop() {
if (sound_on && (!loop_called)) {
my_loop.start(0, 999);
loop_called = true;
}
}
function toggle_sound() {
if (sound_on) {
stopAllSounds();
sound_on = false;
loop_called = false;
mute_button.gotoAndStop("off");
sound_clip.nextFrame();
} else {
sound_on = true;
start_loop();
mute_button.gotoAndStop("on");
sound_clip.prevFrame();
}
my_info.data.sound_on = sound_on;
my_info.flush();
}
function do_sound(my_sound) {
if (sound_on) {
my_sound.start();
}
}
function do_options() {
gotoAndStop ("options");
speed_clip.gotoAndStop(sv + 1);
if (!sound_on) {
sound_clip.gotoAndStop(2);
}
}
function stage_select() {
sitelock("www.king.com");
gotoAndStop ("stage_select");
var _local3 = 0;
while (_local3 < map.length) {
trace("pa: " + pa[_local3]);
_root["s" + _local3].sb.gotoAndStop(pa[_local3] + 1);
_root["s" + _local3].my_stage = _local3;
var _local6 = _root["s" + _local3].attachMovie("diff_rollover", "dr" + _local3, 2);
var _local5 = 0;
while (_local5 < 3) {
var _local4 = _root["s" + _local3].sb["b" + _local5];
_local4.my_speed = _local5;
_local4.dr = _local6;
if (pa[_local3] != 0) {
_local4.onRollOver = function () {
this.gotoAndStop(2);
this.dr.gotoAndStop(this.my_speed + 2);
};
_local4.onRollOut = (_local4.onDragOut = (_local4.onReleaseOutside = function () {
this.gotoAndStop(1);
this.dr.gotoAndStop(1);
}));
_local4.onRelease = function () {
trace("s" + this.my_speed);
update_speed(this.my_speed);
start_game(this._parent._parent.my_stage);
};
}
_local5++;
}
var _local7 = _root["s" + _local3].attachMovie("mp" + _local3, "mp" + _local3, 1);
if (pa[_local3] != 0) {
_local7.gotoAndStop(2);
_local7.onRelease = function () {
start_game(this._parent.my_stage);
};
}
_local3++;
}
}
function check_unlock() {
if ((((bounce_i && (bounce_s)) && (bounce_o)) && (bounce_g)) && (!unlocked)) {
unlock_all();
}
}
function unlock_all() {
unlocked = true;
var _local1 = 0;
while (_local1 < pa.length) {
if (pa[_local1] == 0) {
pa[_local1] = 1;
}
_local1++;
}
do_sound(sssound);
}
function start_game(gn) {
text_waiting = false;
gotoAndStop ("game");
num = gn;
cs = 0;
lc = 0;
bt = 0;
stage_passed = false;
la.length = 0;
is_paused = false;
_root.createEmptyMovieClip("game", 0);
game._x = 24;
game._y = 38;
game.onEnterFrame = function () {
if (!is_paused) {
enter_frame();
}
};
}
function pause_game() {
is_paused = true;
var _local2 = _root.attachMovie("pause_menu", "pause_menu", _root.getNextHighestDepth());
_local2.base.onRelease = function () {
};
_local2.base.useHandCursor = false;
if (!sound_on) {
_local2.sound_clip.gotoAndStop(2);
}
}
function unpause_game() {
is_paused = false;
removeMovieClip(pause_menu);
}
function end_game() {
ScoreAPI = new LocalConnection();
ScoreAPI.send(_root.com_mindjolt_api, "submitScore", score);
_root.kongregateStats.submit("HighScore", score);
my_info.data.score = score;
my_info.flush();
delete game.onEnterFrame;
removeMovieClip(game);
stage_select();
}
function pass_stage() {
if (!stage_passed) {
end_message();
if ((sv + 2) > pa[num]) {
pa[num] = sv + 2;
}
if ((num < (map.length - 1)) && (pa[num + 1] == 0)) {
pa[num + 1] = 1;
}
var so = game.attachMovie("stage_outro", "so", 2001);
so._x = -game._x;
so._y = -game._y;
so.of = 10;
so.trans_text.cl_text = (so.trans_text.cl_text_shadow = ("Level " + cl) + " Clear!");
so.onRelease = function () {
if (so._currentframe == so.of) {
so.gotoAndPlay("out");
so.trans_base.play();
so.trans_base.my_back.play();
if (num < (map.length - 1)) {
num++;
cs = 0;
stage_passed = false;
} else {
removeMovieClip(game);
delete game.onEnterFrame;
stage_select();
submitInternalScore();
}
}
};
so.useHandCursor = false;
trace("pass stage");
flush_SO();
stage_passed = true;
do_sound(sssound);
}
}
function lose_life() {
is_paused = false;
la.length = 0;
cs = 0;
waiting = false;
flush_SO();
}
function build_map() {
var _local5 = map[num][1];
cl = num + 1;
waiting = false;
la.length = 0;
aa.length = 0;
lc = 0;
all_good = true;
good_count = 0;
var _local4 = 0;
while (_local4 < _local5.length) {
var _local3 = 0;
while (_local3 < _local5[0].length) {
var _local2 = game.attachMovie("tile", (("t" + _local4) + "_") + _local3, _local3 + (_local4 * _local5[0].length));
_local2._x = _local3 * tw;
_local2._y = _local4 * th;
_local2.my_x = _local3;
_local2.my_y = _local4;
_local2.gotoAndStop(_local5[_local4][_local3] + 1);
if (_local5[_local4][_local3] == 8) {
_local2.inside = true;
}
_local2.my_var = 0;
_local2.onRelease = function () {
press_tile(this.my_x, this.my_y);
};
_local3++;
}
_local4++;
}
count_keys();
var si = game.attachMovie("stage_intro", "si", 2000);
si._x = -game._x;
si._y = -game._y;
si.of = 10;
si.trans_text.cl_text = (si.trans_text.cl_text_shadow = "Level " + cl);
si.trans_text.pass_text = (si.trans_text.pass_text_shadow = "Password: " + pa[num]);
si.onRelease = function () {
if (si._currentframe == si.of) {
si.gotoAndPlay("out");
si.trans_base.play();
si.trans_base.my_back.play();
}
};
si.useHandCursor = false;
}
function count_keys() {
var _local3 = 0;
var _local2 = map[num][0];
var _local1 = 0;
while (_local1 < _local2.length) {
if ((_local2[_local1][1] == 11) || (_local2[_local1][1] == 12)) {
_local3++;
}
_local1++;
}
kc = _local3;
}
function enter_frame() {
if (text_waiting) {
if (game.my_message == undefined) {
do_message(waiting_message);
text_waiting = false;
}
}
if (waiting) {
check_keys();
} else {
if (bt <= 0) {
set_new_goal();
}
if (check_exit()) {
if (cs < (map[num][0].length - 1)) {
set_new_goal();
} else {
pass_stage();
}
}
}
if ((check_dead() && (la.length > 0)) || (!all_good)) {
lose_life();
}
var _local7 = 0;
while (_local7 < aa.length) {
var _local10 = game[(("t" + aa[_local7][1]) + "_") + aa[_local7][0]];
aa.splice(_local7, 1);
if (_local10._currentframe == 4) {
switch_targets(_local10);
} else {
_local10.gotoAndStop(2);
}
_local7++;
}
_local7 = 0;
while (_local7 < la.length) {
var _local1 = la[_local7];
var _local9 = false;
if (_local1[6]) {
var _local10 = game[(("t" + _local1[1]) + "_") + _local1[0]];
if (_local1[5] == 1) {
var _local5 = game.attachMovie("crosshair_bad", (("c" + _local7) + "_") + lc, (1000 + (_local7 * 100)) + lc);
} else if (_local1[5] == 2) {
var _local5 = game.attachMovie("crosshair_black", (("c" + _local7) + "_") + lc, (1000 + (_local7 * 100)) + lc);
} else {
var _local5 = game.attachMovie("crosshair", (("c" + _local7) + "_") + lc, (1000 + (_local7 * 100)) + lc);
}
switch (_local10._currentframe) {
case 1 :
case 2 :
case 8 :
if (_local1[2] == 1) {
if ((_local1[4] + ls) >= dist) {
switch (_local1[3]) {
case 0 :
var _local14 = game[(("t" + _local1[1]) + "_") + (_local1[0] + 1)];
_local1[0]++;
_local1[3] = 3;
break;
case 1 :
_local14 = game[(("t" + (_local1[1] + 1)) + "_") + _local1[0]];
_local1[1]++;
_local1[3] = 0;
break;
case 2 :
_local14 = game[(("t" + _local1[1]) + "_") + (_local1[0] - 1)];
_local1[0]--;
_local1[3] = 1;
break;
case 3 :
_local14 = game[(("t" + (_local1[1] - 1)) + "_") + _local1[0]];
_local1[1]--;
_local1[3] = 2;
break;
default :
trace("error d[3] 1");
}
_local1[2] = _local1[2] * -1;
_local1[4] = 0;
} else {
_local1[4] = _local1[4] + ls;
}
} else if ((_local1[4] + ls) >= dist) {
switch (_local1[3]) {
case 0 :
var _local14 = game[(("t" + _local1[1]) + "_") + (_local1[0] - 1)];
_local1[0]--;
_local1[3] = 1;
break;
case 1 :
_local14 = game[(("t" + (_local1[1] - 1)) + "_") + _local1[0]];
_local1[1]--;
_local1[3] = 2;
break;
case 2 :
_local14 = game[(("t" + _local1[1]) + "_") + (_local1[0] + 1)];
_local1[0]++;
_local1[3] = 3;
break;
case 3 :
_local14 = game[(("t" + (_local1[1] + 1)) + "_") + _local1[0]];
_local1[1]++;
_local1[3] = 0;
break;
default :
trace("error d[3] -1");
}
_local1[2] = _local1[2] * -1;
_local1[4] = 0;
} else {
_local1[4] = _local1[4] + ls;
}
break;
case 3 :
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error block");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
add_aa(_local10.my_x, _local10.my_y);
_local9 = true;
if (bt > 0) {
bt--;
}
if (!_local1[5]) {
add_score(10 * sv);
}
break;
case 4 :
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error block");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
if (bt > 0) {
bt--;
}
_local9 = true;
add_aa(_local10.my_x, _local10.my_y);
break;
case 6 :
if (!_local1[5]) {
add_score(100);
}
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error score");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
if (!_local1[5]) {
add_aa(_local10.my_x, _local10.my_y);
}
_local9 = true;
break;
case 9 :
case 13 :
if (_local1[5]) {
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error start");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
} else if (_local10.inside) {
if ((_local1[4] + ls) >= dist) {
switch (_local1[3]) {
case 0 :
if (_local1[2] == 1) {
var _local13 = game[(("t" + _local1[1]) + "_") + (_local1[0] + 1)];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[0]++;
_local1[3] = 3;
_local1[2] = _local1[2] * -1;
_local13.inside = true;
} else {
_local1[3] = 1;
}
} else {
var _local13 = game[(("t" + _local1[1]) + "_") + (_local1[0] - 1)];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[0]--;
_local1[3] = 1;
_local1[2] = _local1[2] * -1;
_local13.indside = true;
} else {
_local1[3] = 3;
}
}
break;
case 1 :
if (_local1[2] == 1) {
var _local13 = game[(("t" + (_local1[1] + 1)) + "_") + _local1[0]];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[1]++;
_local1[3] = 0;
_local1[2] = _local1[2] * -1;
_local13.inside = true;
} else {
_local1[3] = 2;
}
} else {
var _local13 = game[(("t" + (_local1[1] - 1)) + "_") + _local1[0]];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[1]--;
_local1[3] = 2;
_local1[2] = _local1[2] * -1;
_local13.inside = true;
} else {
_local1[3] = 0;
}
}
break;
case 2 :
if (_local1[2] == 1) {
var _local13 = game[(("t" + _local1[1]) + "_") + (_local1[0] - 1)];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[0]--;
_local1[3] = 1;
_local1[2] = _local1[2] * -1;
_local13.inside = true;
} else {
_local1[3] = 3;
}
} else {
var _local13 = game[(("t" + _local1[1]) + "_") + (_local1[0] + 1)];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[0]++;
_local1[3] = 3;
_local1[2] = _local1[2] * -1;
_local13.inside = true;
} else {
_local1[3] = 1;
}
}
break;
case 3 :
if (_local1[2] == 1) {
var _local13 = game[(("t" + (_local1[1] - 1)) + "_") + _local1[0]];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[1]--;
_local1[3] = 2;
_local1[2] = _local1[2] * -1;
_local13.inside = true;
} else {
_local1[3] = 0;
}
} else {
var _local13 = game[(("t" + (_local1[1] + 1)) + "_") + _local1[0]];
if ((_local13._currentframe == 9) || (_local13._currentframe == 13)) {
_local1[1]++;
_local1[3] = 0;
_local1[2] = _local1[2] * -1;
_local13.inside = true;
} else {
_local1[3] = 2;
}
}
break;
}
_local1[4] = 0;
} else {
_local1[4] = _local1[4] + ls;
}
} else {
_local1[4] = ls;
_local10.inside = true;
}
break;
case 10 :
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error key");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
if (!_local1[5]) {
add_aa(_local10.my_x, _local10.my_y);
}
_local9 = true;
break;
case 7 :
case 11 :
case 12 :
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error hard");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
_local9 = true;
break;
case 14 :
if (!_local1[5]) {
lives++;
}
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error score");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
if (!_local1[5]) {
add_aa(_local10.my_x, _local10.my_y);
}
break;
default :
if (_local1[5] == 2) {
switch (_local1[3]) {
case 0 :
_local1[1]--;
_local1[3] = 2;
break;
case 1 :
_local1[0]++;
_local1[3] = 3;
break;
case 2 :
_local1[1]++;
_local1[3] = 0;
break;
case 3 :
_local1[0]--;
_local1[3] = 1;
break;
default :
trace("error hard");
}
_local1[2] = _local1[2] * -1;
_local1[4] = ls;
} else {
if (_local1[5] == 1) {
add_score(100 * sv);
}
_local1[4] = 0;
_local1[6] = false;
}
}
game["px" + _local7] = _local1[0];
game["py" + _local7] = _local1[1];
var _local2 = _local1[4];
var _local3 = 0;
var _local4 = 0;
if (_local1[2] == 1) {
switch (_local1[3]) {
case 0 :
_local3 = (tw / 2) + _local2;
_local4 = _local2;
break;
case 1 :
_local3 = tw - _local2;
_local4 = (th / 2) + _local2;
break;
case 2 :
_local3 = (tw / 2) - _local2;
_local4 = th - _local2;
break;
case 3 :
_local3 = _local2;
_local4 = (th / 2) - _local2;
break;
}
} else {
switch (_local1[3]) {
case 0 :
_local3 = (tw / 2) - _local2;
_local4 = _local2;
break;
case 1 :
_local3 = tw - _local2;
_local4 = (th / 2) - _local2;
break;
case 2 :
_local3 = (tw / 2) + _local2;
_local4 = th - _local2;
break;
case 3 :
_local3 = _local2;
_local4 = (th / 2) + _local2;
break;
}
}
_local5._x = (_local1[0] * tw) + _local3;
_local5._y = (_local1[1] * th) + _local4;
if (!_local1[6]) {
laser_die(_local5._x, _local5._y, _local7);
}
if (_local9) {
bounce(_local5._x, _local5._y);
do_sound(bbbsound);
}
if (_local1[5]) {
if (game[(("t" + _local1[1]) + "_") + _local1[0]]._currentframe != 9) {
var _local8 = 0;
while (_local8 < la.length) {
var _local6 = la[_local8];
if (!_local6[5]) {
_local3 = 0;
_local4 = 0;
if (_local6[2] == 1) {
switch (_local6[3]) {
case 0 :
_local3 = (tw / 2) + _local2;
_local4 = _local2;
break;
case 1 :
_local3 = tw - _local2;
_local4 = (th / 2) + _local2;
break;
case 2 :
_local3 = (tw / 2) - _local2;
_local4 = th - _local2;
break;
case 3 :
_local3 = _local2;
_local4 = (th / 2) - _local2;
break;
}
} else {
switch (_local6[3]) {
case 0 :
_local3 = (tw / 2) - _local2;
_local4 = _local2;
break;
case 1 :
_local3 = tw - _local2;
_local4 = (th / 2) - _local2;
break;
case 2 :
_local3 = (tw / 2) + _local2;
_local4 = th - _local2;
break;
case 3 :
_local3 = _local2;
_local4 = (th / 2) + _local2;
break;
}
}
var _local12 = (_local6[0] * tw) + _local3;
var _local11 = (_local6[1] * th) + _local4;
if ((_local5._x == _local12) && (_local5._y == _local11)) {
_local10 = game[(("t" + _local1[1]) + "_") + _local1[0]];
if (!_local10.inside) {
laser_die(_local5._x, _local5._y, _local8);
}
}
}
_local8++;
}
}
}
}
_local7++;
}
lc++;
if (lc >= lf) {
lc = 0;
}
}
function bounce(bx, by) {
var _local1 = game.attachMovie("bounce_clip", "bounce_clip", game.getNextHighestDepth());
_local1._x = bx;
_local1._y = by;
}
function laser_die(lx, ly, lp) {
if (la[lp][5] == 1) {
var _local2 = game.attachMovie("explosion_bad", "exp" + lp, (1000 + (lp * 100)) + 50);
} else {
var _local2 = game.attachMovie("explosion", "exp" + lp, (1000 + (lp * 100)) + 50);
all_good = false;
}
_local2._x = lx;
_local2._y = ly;
la[lp][6] = false;
}
function add_aa(my_x, my_y) {
var _local1 = 0;
while (_local1 < aa.length) {
if ((aa[_local1][0] == my_x) && (aa[_local1][1] == my_y)) {
return(undefined);
}
_local1++;
}
aa.push([my_x, my_y]);
}
function set_start() {
if (num == 0) {
do_message(ma[1]);
}
var _local4 = map[num][1];
var _local3 = 0;
while (_local3 < _local4.length) {
var _local2 = 0;
while (_local2 < _local4[0].length) {
var _local1 = game[(("t" + _local3) + "_") + _local2];
if (_local1._currentframe == 9) {
_local1.gotoAndStop(2);
_local1.inside = false;
}
_local2++;
}
_local3++;
}
}
function set_exit() {
var _local2 = map[num][2];
var _local1 = 0;
while (_local1 < _local2.length) {
game[(("t" + _local2[_local1][1]) + "_") + _local2[_local1][0]].gotoAndStop(13);
_local1++;
}
}
function press_tile(my_x, my_y) {
if (!is_paused) {
var _local7 = game[(("t" + my_y) + "_") + my_x];
var _local8 = _local7._currentframe;
switch (_local8) {
case 2 :
var _local2 = 0;
while (_local2 < la.length) {
if ((la[_local2][0] == my_x) && (la[_local2][1] == my_y)) {
return(undefined);
}
_local2++;
}
if (mb > 0) {
var _local4 = map[num][1];
var _local3 = 0;
_local2 = 0;
while (_local2 < _local4.length) {
var _local1 = 0;
while (_local1 < _local4[0].length) {
if (game[(("t" + _local2) + "_") + _local1]._currentframe == 3) {
_local3++;
}
if (_local3 >= mb) {
return(undefined);
}
_local1++;
}
_local2++;
}
}
do_sound(bbbsound);
_local7.my_var++;
_local7.gotoAndStop(3);
break;
case 3 :
add_aa(my_x, my_y);
break;
case 9 :
set_start();
break;
}
}
}
function add_score(snum) {
score = score + snum;
addScore(snum);
}
function check_dead() {
var _local1 = 0;
while (_local1 < la.length) {
if (!la[_local1][5]) {
if (la[_local1][6]) {
return(false);
}
if (game["exp" + _local1]._x != undefined) {
return(false);
}
}
_local1++;
}
return(true);
}
function check_exit() {
var _local5 = 0;
var _local2 = 0;
while (_local2 < la.length) {
if (!la[_local2][5]) {
var _local3 = la[_local2];
var _local4 = game[(("t" + _local3[1]) + "_") + _local3[0]];
var _local1 = _local4._currentframe;
if (((((_local1 != 4) && (_local1 != 5)) && (_local1 != 9)) && (_local1 != 13)) && (_local1 != undefined)) {
return(false);
}
if (_local1 == 13) {
_local5++;
}
}
_local2++;
}
if (_local5 == good_count) {
return(true);
}
return(false);
}
function check_keys() {
var _local3 = map[num][1];
var _local2 = 0;
while (_local2 < _local3.length) {
var _local1 = 0;
while (_local1 < _local3[0].length) {
if (game[(("t" + _local2) + "_") + _local1]._currentframe == 10) {
return(undefined);
}
_local1++;
}
_local2++;
}
waiting = false;
}
function switch_targets(t) {
var _local1 = 0;
while (_local1 < t.ta.length) {
toggle_target(t.ta[_local1][0], t.ta[_local1][1]);
_local1++;
}
}
function toggle_target(tx, ty) {
var _local1 = game[(("t" + ty) + "_") + tx];
if (_local1._currentframe == 7) {
_local1.gotoAndStop(8);
} else {
_local1.gotoAndStop(7);
}
}
function do_message(mess) {
if (game.my_message == undefined) {
my_mess = mess;
var _local1 = game.attachMovie("my_message", "my_message", 1999);
_local1._x = -game._x;
} else {
end_message();
waiting_message = mess;
text_waiting = true;
}
}
function end_message() {
game.my_message.gotoAndPlay("out");
}
function update_speed(usv) {
sv = usv;
ls = sva[sv];
st = sta[sv];
speed_clip.gotoAndStop(sv + 1);
}
function add_bad(bx, by) {
if ((bx == undefined) || (by == undefined)) {
var _local3 = map[num][1];
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
var _local1 = 0;
while (_local1 < _local3[0].length) {
if ((game[(("t" + _local2) + "_") + _local1]._currentframe == 2) && (check_laser(_local1, _local2))) {
_local4.push([_local1, _local2]);
}
_local1++;
}
_local2++;
}
var _local5 = Math.floor(Math.random() * _local4.length);
bx = _local4[_local5][0];
by = _local4[_local5][1];
}
game[(("t" + by) + "_") + bx].gotoAndStop(5);
}
function add_key(kx, ky) {
if ((kx == undefined) || (ky == undefined)) {
var _local3 = map[num][1];
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
var _local1 = 0;
while (_local1 < _local3[0].length) {
if ((game[(("t" + _local2) + "_") + _local1]._currentframe == 2) && (check_laser(_local1, _local2))) {
_local4.push([_local1, _local2]);
}
_local1++;
}
_local2++;
}
var _local5 = Math.floor(Math.random() * _local4.length);
kx = _local4[_local5][0];
ky = _local4[_local5][1];
}
game[(("t" + ky) + "_") + kx].gotoAndStop(10);
}
function add_switch(sx, sy, st) {
game[(("t" + sy) + "_") + sx].gotoAndStop(4);
game[(("t" + sy) + "_") + sx].ta = st;
}
function add_points(px, py) {
if ((px == undefined) || (py == undefined)) {
var _local3 = map[num][1];
var _local4 = new Array();
var _local2 = 0;
while (_local2 < _local3.length) {
var _local1 = 0;
while (_local1 < _local3[0].length) {
if ((game[(("t" + _local2) + "_") + _local1]._currentframe == 2) && (check_laser(_local1, _local2))) {
_local4.push([_local1, _local2]);
}
_local1++;
}
_local2++;
}
var _local5 = Math.floor(Math.random() * _local4.length);
px = _local4[_local5][0];
py = _local4[_local5][1];
}
game[(("t" + py) + "_") + px].gotoAndStop(6);
}
function check_laser(lx, ly) {
var _local1 = 0;
while (_local1 < la.length) {
if ((la[_local1][0] == lx) && (la[_local1][1] == ly)) {
return(false);
}
_local1++;
}
return(true);
}
function add_laser(lx, ly, lr, bb) {
var _local2 = la.length;
if (bb == undefined) {
var _local1 = 0;
} else {
var _local1 = bb;
}
if (_local1 == 0) {
good_count++;
}
game["px" + _local2] = lx;
game["py" + _local2] = ly;
la.push([lx, ly, lr, 0, 0, _local1, true]);
}
function set_new_goal() {
var _local2 = map[num][0].length;
var _local1 = map[num][0][cs];
switch (_local1[1]) {
case 0 :
build_map();
break;
case 1 :
mc = _local1[2];
break;
case 2 :
add_laser(_local1[2], _local1[3], 1, _local1[4]);
break;
case 3 :
add_laser(_local1[2], _local1[3], -1, _local1[4]);
break;
case 4 :
set_exit();
break;
case 6 :
add_switch(_local1[2], _local1[3], _local1[4]);
break;
case 7 :
mb = _local1[2];
break;
case 8 :
add_bad(_local1[2], _local1[3]);
break;
case 9 :
add_points(_local1[2], _local1[3]);
break;
case 11 :
add_key(_local1[2], _local1[3]);
waiting = true;
break;
case 12 :
add_key(_local1[2], _local1[3]);
break;
case 13 :
do_message(ma[_local1[2]]);
break;
case 14 :
game[(("t" + _local1[3]) + "_") + _local1[2]].gotoAndStop(2);
break;
case 15 :
game[(("t" + _local1[3]) + "_") + _local1[2]].gotoAndStop(12);
break;
case 16 :
add_laser(_local1[2], _local1[3], 1, 1);
break;
case 17 :
add_laser(_local1[2], _local1[3], -1, 1);
break;
}
cs++;
if (cs >= _local2) {
return(undefined);
}
bt = _local1[0];
if (bt <= 0) {
if (waiting || ((_local1[0] == 0) && (cs >= (_local2 - 1)))) {
return(undefined);
}
set_new_goal();
}
}
var tw = 24;
var th = 24;
var dist = 12;
var is_paused = false;
var sound_on = true;
var num = 0;
var cl = 1;
var score = 0;
var bt = 0;
var mb = 144;
var mc = 0;
var la = new Array();
var sv = 1;
var sva = [1.2, 1.5, 2, 2.4];
var sta = ["Slow", "Normal", "Fast", "Very Fast"];
var ls = sva[sv];
var st = sta[sv];
var tsv = 0;
var lc = 0;
var lf = 20;
var bs = 1;
var aa = new Array();
var waiting = false;
var stage_passed = false;
var kc = 0;
var cs = 0;
var pa = new Array();
var ma = new Array();
ma[0] = "Click middle tile to release lasers. White tiles make blocks.";
ma[1] = "Orange tiles are keys. Collect them all.";
ma[2] = "Return to the highlighted tile to complete the stage.";
ma[3] = "Black switch tiles can change certain tiles";
ma[4] = "If a blue laser leaves the playing area, the stage is failed.";
ma[5] = "You may have to restart the stage if a laser is stuck";
ma[6] = "Metallic tiles may be affected by keys";
ma[7] = "Avoid colliding with red or black lasers.";
ma[8] = "Red lasers can be destroyed, black ones cannot.";
ma[9] = "Avoid red blocks. Black lasers are not affected by them.";
ma[10] = "Click to make blocks. Blocks affect laser direction.";
var unlocked = false;
var bounce_i = false;
var bounce_s = false;
var bounce_o = false;
var bounce_g = false;
var my_info = SharedObject.getLocal("bounce_squared");
if (my_info.getSize() == 0) {
resetScore();
my_info.data.score = 0;
my_info.data.sound_on = true;
my_info.data.sv = 1;
my_info.data.unlocked = false;
my_info.data.pass_array = [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
my_info.flush();
}
this._lockroot = true;
var my_cm = new ContextMenu();
my_cm.hideBuiltInItems();
this.menu = my_cm;
_root.kongregateServices.connect();
score = my_info.data.score;
sound_on = my_info.data.sound_on;
unlocked = my_info.data.unlocked;
pa = my_info.data.pass_array;
sv = my_info.data.sv;
update_speed(sv);
var loop_called = false;
var my_loop = new Sound();
my_loop.attachSound("my_loop");
var bbsound = new Sound();
bbsound.attachSound("Sound002.wav");
var bbbsound = new Sound();
bbbsound.attachSound("bbb.wav");
var bnsound = new Sound();
bnsound.attachSound("Sound003.wav");
var ppsound = new Sound();
ppsound.attachSound("putblock.wav");
var sssound = new Sound();
sssound.attachSound("sstart.wav");
var map = new Array();
map[0] = [[[0, 0], [0, 2, 6, 6], [0, 3, 6, 6], [0, 12, 3, 3], [0, 12, 3, 9], [0, 12, 9, 3], [0, 13, 0], [0, 11, 9, 9], [0, 13, 2], [0, 4]], [[10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10], [10, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 10], [10, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 10], [10, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 10], [10, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 10], [10, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 10], [10, 0, 0, 1, 0, 0, 8, 0, 0, 1, 0, 0, 10], [10, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 10], [10, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 10], [10, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 10], [10, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 10], [10, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 10], [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]], [[6, 6]]];
map[1] = [[[0, 0], [0, 2, 4, 4], [0, 2, 8, 8], [0, 13, 10], [0, 12, 8, 4], [0, 11, 4, 8], [0, 4]], [[1, 1, 1, 0, 10, 10, 10, 10, 10, 0, 1, 1, 1], [1, 0, 0, 0, 10, 1, 1, 1, 10, 0, 0, 0, 1], [1, 0, 10, 10, 10, 1, 1, 1, 10, 10, 10, 0, 1], [0, 0, 10, 1, 1, 1, 1, 1, 1, 1, 10, 0, 0], [1, 0, 10, 1, 8, 1, 10, 1, 1, 1, 10, 0, 1], [1, 0, 10, 1, 1, 1, 10, 1, 1, 1, 10, 0, 1], [1, 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 0, 1], [1, 0, 10, 1, 1, 1, 10, 1, 1, 1, 10, 0, 1], [1, 0, 10, 1, 1, 1, 10, 1, 8, 1, 10, 0, 1], [0, 0, 10, 1, 1, 1, 1, 1, 1, 1, 10, 0, 0], [1, 0, 10, 10, 10, 1, 1, 1, 10, 10, 10, 0, 1], [1, 0, 0, 0, 10, 1, 1, 1, 10, 0, 0, 0, 1], [1, 1, 1, 0, 10, 10, 10, 10, 10, 0, 1, 1, 1]], [[4, 4], [8, 8]]];
map[2] = [[[0, 0], [0, 2, 3, 3], [0, 2, 9, 9], [0, 12, 1, 1], [0, 12, 5, 1], [0, 12, 1, 5], [0, 12, 5, 5], [0, 12, 7, 7], [0, 12, 11, 7], [0, 12, 7, 11], [0, 11, 11, 11], [0, 4]], [[10, 10, 10, 10, 10, 10, 10, 0, 0, 0, 0, 0, 0], [10, 1, 1, 1, 1, 1, 10, 0, 1, 1, 1, 1, 0], [10, 1, 1, 1, 1, 1, 10, 0, 1, 0, 0, 1, 0], [10, 1, 1, 8, 1, 1, 10, 0, 1, 0, 0, 1, 0], [10, 1, 1, 1, 1, 1, 10, 0, 1, 1, 1, 1, 0], [10, 1, 1, 1, 1, 1, 10, 0, 0, 0, 0, 0, 0], [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10], [0, 0, 0, 0, 0, 0, 10, 1, 1, 1, 1, 1, 10], [0, 1, 1, 1, 1, 0, 10, 1, 1, 1, 1, 1, 10], [0, 1, 0, 0, 1, 0, 10, 1, 1, 8, 1, 1, 10], [0, 1, 0, 0, 1, 0, 10, 1, 1, 1, 1, 1, 10], [0, 1, 1, 1, 1, 0, 10, 1, 1, 1, 1, 1, 10], [0, 0, 0, 0, 0, 0, 10, 10, 10, 10, 10, 10, 10]], [[3, 3], [9, 9]]];
map[3] = [[[0, 0], [0, 2, 3, 3], [0, 2, 9, 9], [0, 6, 3, 9, [[1, 6], [2, 6], [3, 6], [4, 6], [5, 6], [7, 6], [8, 6], [9, 6], [10, 6], [11, 6]]], [0, 13, 3], [0, 11, 9, 3], [0, 4]], [[10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10], [10, 1, 1, 1, 1, 1, 10, 1, 1, 1, 1, 1, 10], [10, 1, 1, 1, 1, 1, 10, 1, 1, 1, 1, 1, 10], [10, 1, 1, 8, 1, 1, 10, 1, 1, 1, 1, 1, 10], [10, 1, 1, 1, 0, 0, 10, 0, 0, 1, 1, 1, 10], [10, 1, 1, 1, 0, 0, 10, 0, 0, 1, 1, 1, 10], [10, 7, 7, 7, 7, 7, 10, 6, 6, 6, 6, 6, 10], [10, 1, 1, 1, 0, 0, 10, 0, 0, 1, 1, 1, 10], [10, 1, 1, 1, 0, 0, 10, 0, 0, 1, 1, 1, 10], [10, 1, 1, 1, 1, 1, 10, 1, 1, 8, 1, 1, 10], [10, 1, 1, 1, 1, 1, 10, 1, 1, 1, 1, 1, 10], [10, 1, 1, 1, 1, 1, 10, 1, 1, 1, 1, 1, 10], [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]], [[3, 3], [9, 9]]];
map[4] = [[[0, 0], [0, 2, 6, 6], [0, 3, 6, 6], [0, 13, 4], [0, 12, 2, 2], [0, 12, 10, 2], [0, 12, 2, 10], [0, 11, 10, 10], [0, 4]], [[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, 0], [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, 0], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [0, 1, 0, 1, 0, 8, 8, 8, 0, 1, 0, 1, 0], [1, 0, 1, 0, 1, 8, 8, 8, 1, 0, 1, 0, 1], [0, 1, 0, 1, 0, 8, 8, 8, 0, 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, 0, 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, 0, 1, 0, 1, 0], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1]], [[5, 5], [6, 5], [7, 5], [5, 6], [6, 6], [7, 6], [5, 7], [6, 7], [7, 7]]];
map[5] = [[[0, 0], [0, 2, 6, 3], [0, 3, 6, 3], [0, 4]], [[0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 8, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0], [0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0]], [[6, 9]]];
map[6] = [[[0, 0], [0, 2, 1, 6], [0, 3, 11, 6], [0, 6, 6, 6, [[3, 0], [4, 0], [5, 0], [6, 0], [7, 0], [8, 0], [9, 0], [3, 1], [9, 1], [3, 2], [9, 2], [0, 3], [1, 3], [2, 3], [4, 3], [5, 3], [6, 3], [7, 3], [8, 3], [10, 3], [11, 3], [12, 3], [0, 4], [12, 4], [0, 5], [12, 5], [0, 6], [12, 6], [0, 7], [12, 7], [0, 8], [12, 8], [0, 9], [1, 9], [2, 9], [4, 9], [5, 9], [6, 9], [7, 9], [8, 9], [10, 9], [11, 9], [12, 9], [3, 4], [9, 4], [3, 5], [9, 5], [3, 6], [9, 6], [3, 7], [9, 7], [3, 8], [9, 8], [3, 10], [9, 10], [3, 11], [9, 11], [3, 12], [4, 12], [5, 12], [6, 12], [7, 12], [8, 12], [9, 12]]], [0, 13, 5], [0, 12, 6, 1], [0, 11, 6, 11], [0, 4]], [[1, 1, 0, 7, 7, 7, 7, 7, 7, 7, 0, 1, 1], [1, 1, 0, 7, 0, 1, 1, 1, 0, 7, 0, 1, 1], [0, 0, 0, 7, 0, 0, 1, 0, 0, 7, 0, 0, 0], [6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6], [6, 0, 0, 7, 0, 0, 1, 0, 0, 7, 0, 0, 6], [6, 8, 0, 7, 0, 1, 1, 1, 0, 7, 0, 8, 6], [6, 8, 1, 7, 1, 1, 1, 1, 1, 7, 1, 8, 6], [6, 8, 0, 7, 0, 1, 1, 1, 0, 7, 0, 8, 6], [6, 0, 0, 7, 0, 0, 1, 0, 0, 7, 0, 0, 6], [6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6, 6], [0, 0, 0, 7, 0, 0, 1, 0, 0, 7, 0, 0, 0], [1, 1, 0, 7, 0, 1, 1, 1, 0, 7, 0, 1, 1], [1, 1, 0, 7, 7, 7, 7, 7, 7, 7, 0, 1, 1]], [[1, 5], [11, 5], [1, 6], [11, 6], [1, 7], [11, 7]]];
map[7] = [[[0, 0], [0, 13, 6], [0, 2, 2, 2], [0, 2, 6, 6], [0, 15, 4, 2], [0, 15, 8, 2], [0, 15, 6, 4], [0, 15, 4, 6], [0, 15, 8, 6], [0, 15, 6, 8], [0, 11, 10, 2], [0, 15, 10, 4], [0, 15, 10, 8], [0, 15, 8, 10], [0, 14, 6, 4], [0, 15, 8, 2], [0, 14, 4, 2], [0, 15, 4, 10], [0, 11, 2, 10], [0, 14, 8, 2], [0, 15, 6, 4], [0, 14, 4, 6], [0, 14, 8, 6], [0, 15, 2, 8], [0, 14, 4, 10], [0, 14, 8, 10], [0, 14, 10, 8], [0, 4]], [[10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 1, 8, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 10, 1, 10, 10, 10, 1, 10, 10, 10, 1, 10, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 1, 1, 1, 1, 1, 8, 1, 1, 1, 1, 1, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 10, 1, 10, 10, 10, 1, 10, 10, 10, 1, 10, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]], [[6, 6]]];
map[8] = [[[0, 0], [0, 2, 3, 9], [0, 3, 3, 9], [0, 2, 2, 2, 1], [0, 2, 5, 5, 1], [0, 2, 8, 8, 1], [0, 13, 7], [0, 11, 8, 4], [0, 11, 3, 9], [0, 4]], [[1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1], [1, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 1], [0, 10, 0, 0, 1, 1, 1, 1, 1, 1, 1, 10, 0], [1, 10, 0, 0, 0, 1, 1, 1, 1, 1, 1, 10, 1], [1, 10, 1, 0, 0, 0, 1, 1, 1, 1, 1, 10, 1], [1, 10, 1, 1, 0, 0, 0, 1, 1, 1, 1, 10, 1], [0, 10, 8, 1, 1, 0, 0, 0, 1, 1, 1, 10, 0], [1, 10, 8, 8, 1, 1, 0, 0, 0, 1, 1, 10, 1], [1, 10, 8, 8, 8, 1, 1, 0, 0, 0, 1, 10, 1], [1, 10, 8, 8, 8, 8, 1, 1, 0, 0, 0, 10, 1], [0, 10, 8, 8, 8, 8, 8, 1, 1, 0, 0, 10, 0], [1, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 1], [1, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 1]], [[6, 2], [7, 2], [8, 2], [9, 2], [10, 2], [7, 3], [8, 3], [9, 3], [10, 3], [8, 4], [9, 4], [10, 4], [9, 5], [10, 5], [10, 6]]];
map[9] = [[[0, 0], [0, 2, 1, 1], [0, 2, 3, 1], [0, 2, 5, 4, 1], [0, 3, 7, 6, 2], [0, 13, 8], [0, 4]], [[10, 0, 10, 10, 10, 10, 10, 10, 10, 10, 10, 0, 10], [0, 8, 10, 8, 10, 0, 0, 0, 0, 0, 0, 0, 0], [10, 1, 10, 0, 10, 0, 10, 10, 10, 10, 10, 0, 10], [10, 1, 10, 1, 10, 0, 10, 0, 0, 0, 10, 0, 10], [10, 1, 10, 1, 10, 0, 10, 0, 10, 0, 10, 0, 10], [10, 1, 10, 1, 10, 1, 10, 0, 10, 0, 10, 0, 10], [10, 1, 10, 1, 10, 1, 10, 0, 10, 0, 10, 0, 10], [10, 1, 10, 1, 10, 1, 1, 1, 10, 0, 10, 0, 10], [10, 1, 10, 1, 10, 10, 10, 10, 10, 0, 10, 0, 10], [10, 1, 10, 1, 1, 1, 1, 1, 1, 1, 10, 0, 10], [10, 1, 10, 10, 10, 10, 10, 10, 10, 10, 10, 0, 10], [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0], [10, 1, 10, 10, 10, 10, 10, 10, 10, 10, 10, 1, 10]], [[5, 5], [5, 6], [5, 7], [6, 7], [7, 7]]];
map[10] = [[[0, 0], [0, 2, 6, 6], [0, 3, 6, 6], [0, 2, 3, 1, 1], [0, 3, 9, 1, 1], [0, 2, 3, 11, 1], [0, 3, 9, 11, 1], [0, 11, 1, 1], [0, 11, 1, 11], [0, 4]], [[1, 0, 1, 10, 0, 0, 0, 0, 0, 10, 1, 0, 1], [0, 1, 0, 0, 10, 1, 1, 1, 10, 0, 0, 1, 0], [1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1], [10, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 10], [0, 10, 0, 0, 1, 1, 1, 1, 1, 0, 0, 10, 0], [0, 1, 0, 0, 1, 8, 8, 8, 1, 0, 0, 1, 0], [0, 1, 0, 0, 1, 8, 8, 8, 1, 0, 0, 1, 0], [0, 1, 0, 0, 1, 8, 8, 8, 1, 0, 0, 1, 0], [0, 10, 0, 0, 1, 1, 1, 1, 1, 0, 0, 10, 0], [10, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 10], [1, 0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0, 1], [0, 1, 0, 0, 10, 1, 1, 1, 10, 0, 0, 1, 0], [1, 0, 1, 10, 0, 0, 0, 0, 0, 10, 1, 0, 1]], [[5, 5], [6, 5], [7, 5], [5, 6], [6, 6], [7, 6], [5, 7], [6, 7], [7, 7]]];
map[11] = [[[0, 0], [0, 2, 2, 2], [0, 2, 2, 8], [0, 6, 6, 9, [[4, 1], [4, 2], [4, 3], [4, 4], [4, 5], [4, 7], [4, 8], [4, 9], [4, 10], [4, 11]]], [0, 6, 6, 3, [[4, 1], [4, 2], [4, 3], [4, 4], [4, 5], [8, 7], [8, 8], [8, 9], [8, 10], [8, 11]]], [0, 6, 10, 9, [[8, 1], [8, 2], [8, 3], [8, 4], [8, 5], [4, 7], [4, 8], [4, 9], [4, 10], [4, 11]]], [0, 11, 10, 3], [0, 4]], [[10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10], [10, 8, 8, 8, 6, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 6, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 6, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 6, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 6, 1, 1, 1, 6, 1, 1, 1, 10], [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10], [10, 8, 8, 8, 7, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 7, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 7, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 7, 1, 1, 1, 6, 1, 1, 1, 10], [10, 8, 8, 8, 7, 1, 1, 1, 6, 1, 1, 1, 10], [10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10]], [[1, 1], [2, 1], [3, 1], [1, 2], [2, 2], [3, 2], [1, 3], [2, 3], [3, 3], [1, 4], [2, 4], [3, 4], [1, 5], [2, 5], [3, 5], [1, 7], [2, 7], [3, 7], [1, 8], [2, 8], [3, 8], [1, 9], [2, 9], [3, 9], [1, 10], [2, 10], [3, 10], [1, 11], [2, 11], [3, 11]]];
map[12] = [[[0, 0], [0, 2, 4, 2], [0, 3, 8, 2], [0, 3, 3, 5, 1], [0, 2, 9, 5, 1], [0, 15, 8, 4], [0, 15, 8, 8], [0, 11, 4, 10], [0, 14, 8, 4], [0, 14, 8, 8], [0, 15, 4, 4], [0, 15, 4, 8], [0, 11, 8, 10], [0, 14, 4, 4], [0, 14, 4, 8], [0, 4]], [[0, 1, 0, 10, 10, 10, 0, 10, 10, 10, 0, 1, 0], [1, 0, 10, 8, 8, 8, 10, 8, 8, 8, 10, 0, 1], [0, 1, 10, 8, 8, 8, 10, 8, 8, 8, 10, 1, 0], [1, 0, 10, 8, 8, 8, 10, 8, 8, 8, 10, 0, 1], [0, 1, 0, 10, 1, 10, 0, 10, 1, 10, 0, 1, 0], [1, 0, 10, 0, 0, 0, 10, 0, 0, 0, 10, 0, 1], [0, 1, 10, 0, 10, 0, 10, 0, 10, 0, 10, 1, 0], [1, 0, 10, 0, 0, 0, 10, 0, 0, 0, 10, 0, 1], [0, 1, 0, 10, 1, 10, 0, 10, 1, 10, 0, 1, 0], [1, 0, 10, 1, 1, 1, 10, 1, 1, 1, 10, 0, 1], [0, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 0], [1, 0, 10, 1, 1, 1, 10, 1, 1, 1, 10, 0, 1], [0, 1, 0, 10, 10, 10, 0, 10, 10, 10, 0, 1, 0]], [[3, 1], [4, 1], [5, 1], [7, 1], [8, 1], [9, 1], [3, 2], [4, 2], [5, 2], [7, 2], [8, 2], [9, 2], [3, 3], [4, 3], [5, 3], [7, 3], [8, 3], [9, 3]]];
map[13] = [[[0, 0], [0, 2, 1, 6], [0, 3, 11, 6], [0, 12, 6, 1], [0, 11, 6, 11], [0, 12, 1, 6], [0, 11, 11, 6], [0, 4]], [[0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0], [1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1], [1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1], [0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0], [8, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 8], [8, 8, 0, 1, 1, 0, 1, 0, 1, 1, 0, 8, 8], [0, 8, 8, 0, 1, 1, 0, 1, 1, 0, 8, 8, 0], [8, 8, 0, 1, 1, 0, 1, 0, 1, 1, 0, 8, 8], [8, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 8], [0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0], [1, 1, 0, 1, 1, 0, 1, 0, 1, 1, 0, 1, 1], [1, 0, 1, 1, 0, 1, 1, 1, 0, 1, 1, 0, 1], [0, 1, 1, 0, 1, 1, 0, 1, 1, 0, 1, 1, 0]], [[4, 0], [5, 0], [7, 0], [8, 0], [5, 1], [6, 1], [7, 1], [6, 2], [6, 10], [5, 11], [6, 11], [7, 11], [4, 12], [5, 12], [7, 12], [8, 12]]];
map[14] = [[[0, 0], [0, 2, 1, 1], [0, 3, 11, 1], [0, 2, 6, 5, 1], [0, 3, 6, 5, 2], [0, 12, 1, 11], [0, 11, 11, 11], [0, 4]], [[1, 1, 10, 0, 0, 0, 0, 0, 0, 0, 10, 1, 1], [1, 8, 1, 10, 0, 0, 0, 0, 0, 10, 1, 8, 1], [10, 1, 1, 1, 10, 0, 0, 0, 10, 1, 1, 1, 10], [0, 10, 1, 1, 1, 10, 0, 10, 1, 1, 1, 10, 0], [0, 0, 10, 1, 1, 1, 10, 1, 1, 1, 10, 0, 0], [0, 0, 0, 10, 1, 0, 0, 0, 1, 10, 0, 0, 0], [0, 0, 0, 0, 10, 0, 1, 0, 10, 0, 0, 0, 0], [0, 0, 0, 10, 1, 0, 0, 0, 1, 10, 0, 0, 0], [0, 0, 10, 1, 1, 1, 10, 1, 1, 1, 10, 0, 0], [0, 10, 1, 1, 1, 10, 0, 10, 1, 1, 1, 10, 0], [10, 1, 1, 1, 10, 0, 0, 0, 10, 1, 1, 1, 10], [1, 1, 1, 10, 0, 0, 0, 0, 0, 10, 1, 1, 1], [1, 1, 10, 0, 0, 0, 0, 0, 0, 0, 10, 1, 1]], [[1, 1], [11, 1]]];
map[15] = [[[0, 0], [0, 2, 2, 10], [0, 2, 4, 8], [0, 3, 6, 2, 2], [0, 13, 9], [0, 11, 10, 5], [0, 14, 8, 8], [0, 15, 4, 4], [0, 4]], [[4, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1], [1, 1, 4, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1], [1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1], [1, 1, 1, 1, 1, 1, 4, 0, 1, 0, 1, 0, 1], [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1], [1, 1, 1, 1, 8, 0, 1, 0, 11, 0, 1, 0, 1], [0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 1, 8, 0, 1, 0, 1, 0, 1, 0, 4, 0, 1], [0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1], [1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 4]], [[2, 6]]];
map[16] = [[[0, 0], [0, 2, 6, 2], [0, 2, 2, 6], [0, 3, 5, 5, 1], [0, 15, 4, 6], [0, 15, 8, 6], [0, 11, 6, 10], [0, 14, 4, 6], [0, 14, 8, 6], [0, 15, 6, 4], [0, 15, 6, 8], [0, 11, 10, 6], [0, 15, 4, 6], [0, 15, 8, 6], [0, 14, 6, 4], [0, 14, 6, 8], [0, 11, 6, 2], [0, 14, 4, 6], [0, 14, 8, 6], [0, 15, 6, 4], [0, 15, 6, 8], [0, 4]], [[10, 1, 10, 0, 0, 10, 10, 10, 0, 0, 10, 1, 10], [1, 1, 1, 0, 10, 8, 8, 8, 10, 0, 1, 1, 1], [10, 1, 10, 0, 10, 8, 8, 8, 10, 0, 10, 1, 10], [0, 0, 0, 0, 10, 8, 8, 8, 10, 0, 0, 0, 0], [0, 10, 10, 10, 0, 10, 1, 10, 0, 10, 10, 10, 0], [10, 8, 8, 8, 10, 0, 0, 0, 10, 1, 1, 1, 10], [10, 8, 8, 8, 1, 0, 10, 0, 1, 1, 1, 1, 10], [10, 8, 8, 8, 10, 0, 0, 0, 10, 1, 1, 1, 10], [0, 10, 10, 10, 0, 10, 1, 10, 0, 10, 10, 10, 0], [0, 0, 0, 0, 10, 1, 1, 1, 10, 0, 0, 0, 0], [10, 1, 10, 0, 10, 1, 1, 1, 10, 0, 10, 1, 10], [1, 1, 1, 0, 10, 1, 1, 1, 10, 0, 1, 1, 1], [10, 1, 10, 0, 0, 10, 10, 10, 0, 0, 10, 1, 10]], [[5, 1], [6, 1], [7, 1], [5, 2], [6, 2], [7, 2], [5, 3], [6, 3], [7, 3], [1, 5], [2, 5], [3, 5], [1, 6], [2, 6], [3, 6], [1, 7], [2, 7], [3, 7]]];
map[17] = [[[0, 0], [0, 2, 6, 6], [0, 3, 6, 6], [0, 12, 2, 2], [0, 11, 10, 10], [0, 4]], [[1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0], [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0], [1, 1, 1, 1, 4, 1, 1, 1, 1, 0, 0, 0, 0], [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 1, 0, 1, 0, 8, 0, 1, 0, 1, 0, 0], [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 4, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1], [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1], [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1]], [[6, 6]]];
map[18] = [[[0, 0], [0, 2, 6, 6], [0, 3, 6, 6], [0, 2, 4, 4, 1], [0, 3, 8, 4, 1], [0, 12, 6, 1], [0, 12, 1, 6], [0, 12, 11, 6], [0, 11, 6, 11], [0, 4]], [[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 1, 0, 0, 10, 1, 10, 1, 10, 0, 0, 1, 0], [0, 1, 0, 10, 0, 0, 0, 0, 0, 10, 0, 1, 0], [0, 1, 0, 1, 0, 10, 8, 10, 0, 1, 0, 1, 0], [0, 1, 0, 10, 0, 8, 8, 8, 0, 10, 0, 1, 0], [0, 1, 0, 1, 0, 10, 8, 10, 0, 1, 0, 1, 0], [0, 1, 0, 10, 0, 0, 0, 0, 0, 10, 0, 1, 0], [0, 1, 0, 0, 10, 1, 10, 1, 10, 0, 0, 1, 0], [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], [[6, 5], [5, 6], [6, 6], [7, 6], [6, 7]]];
map[19] = [[[0, 0], [0, 2, 6, 6], [0, 3, 6, 6], [0, 2, 6, 1, 1], [0, 3, 6, 1, 1], [0, 2, 6, 11, 1], [0, 3, 6, 11, 1], [0, 6, 2, 2, [[2, 8], [3, 9], [4, 10]]], [0, 6, 10, 10, [[2, 9], [3, 10]]], [0, 6, 1, 11, [[8, 2], [9, 3], [10, 4]]], [0, 11, 10, 2], [0, 4]], [[0, 0, 1, 0, 0, 0, 10, 0, 0, 0, 1, 0, 0], [0, 1, 1, 1, 0, 10, 0, 10, 0, 1, 1, 1, 0], [1, 1, 1, 1, 1, 0, 0, 0, 6, 1, 1, 1, 1], [0, 1, 1, 1, 0, 0, 1, 0, 0, 6, 1, 1, 0], [0, 0, 1, 0, 0, 1, 8, 1, 0, 0, 6, 0, 0], [0, 10, 0, 0, 1, 8, 8, 8, 1, 0, 0, 10, 0], [10, 0, 0, 1, 8, 8, 8, 8, 8, 1, 0, 0, 10], [0, 10, 0, 0, 1, 8, 8, 8, 1, 0, 0, 10, 0], [0, 0, 6, 0, 0, 1, 8, 1, 0, 0, 1, 0, 0], [0, 1, 6, 6, 0, 0, 1, 0, 0, 1, 1, 1, 0], [1, 1, 1, 6, 6, 0, 0, 0, 1, 1, 1, 1, 1], [0, 1, 1, 1, 0, 10, 0, 10, 0, 1, 1, 1, 0], [0, 0, 1, 0, 0, 0, 10, 0, 0, 0, 1, 0, 0]], [[6, 4], [5, 5], [6, 5], [7, 5], [4, 6], [5, 6], [6, 6], [7, 6], [8, 6], [5, 7], [6, 7], [7, 7], [6, 8]]];
map[20] = [[[0, 0], [0, 2, 6, 1], [0, 3, 6, 1], [0, 2, 3, 3, 1], [0, 3, 9, 3, 1], [0, 3, 5, 7, 1], [0, 2, 7, 7, 1], [0, 11, 10, 6], [0, 14, 10, 4], [0, 14, 9, 5], [0, 14, 8, 6], [0, 15, 6, 8], [0, 15, 7, 9], [0, 15, 8, 10], [0, 11, 6, 10], [0, 14, 6, 8], [0, 14, 7, 9], [0, 14, 8, 10], [0, 15, 4, 6], [0, 15, 3, 7], [0, 15, 2, 8], [0, 11, 2, 6], [0, 14, 4, 6], [0, 14, 3, 7], [0, 14, 2, 8], [0, 15, 4, 2], [0, 15, 5, 3], [0, 15, 6, 4], [0, 4]], [[0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0], [0, 0, 0, 0, 1, 8, 8, 8, 1, 0, 0, 0, 0], [0, 0, 0, 10, 1, 1, 8, 1, 1, 10, 0, 0, 0], [0, 0, 10, 0, 0, 1, 1, 1, 0, 0, 10, 0, 0], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 11, 1, 1], [1, 1, 1, 1, 0, 0, 10, 0, 0, 11, 1, 1, 1], [1, 1, 1, 1, 1, 10, 0, 10, 11, 1, 1, 1, 1], [1, 1, 1, 1, 0, 0, 10, 0, 0, 1, 1, 1, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [0, 0, 10, 0, 0, 1, 1, 1, 0, 0, 10, 0, 0], [0, 0, 0, 10, 1, 1, 1, 1, 1, 10, 0, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0]], [[5, 1], [6, 1], [7, 1], [6, 2]]];
map[21] = [[[0, 0], [0, 2, 2, 2], [0, 2, 10, 2], [0, 3, 1, 5, 1], [0, 3, 5, 5, 2], [0, 3, 9, 5, 1], [0, 15, 10, 4], [0, 11, 10, 10], [0, 14, 10, 4], [0, 15, 10, 8], [0, 11, 2, 10], [0, 14, 10, 8], [0, 4]], [[1, 10, 10, 10, 1, 10, 10, 10, 1, 10, 10, 10, 1], [10, 8, 8, 8, 10, 1, 1, 1, 10, 8, 8, 8, 10], [10, 8, 8, 8, 10, 1, 1, 1, 10, 8, 8, 8, 10], [10, 8, 8, 8, 10, 1, 1, 1, 10, 8, 8, 8, 10], [1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1], [10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10], [10, 0, 10, 1, 10, 1, 10, 1, 10, 1, 10, 0, 10], [10, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 10], [1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1, 10, 1], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [10, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 10], [1, 10, 10, 10, 1, 10, 10, 10, 1, 10, 10, 10, 1]], [[5, 1], [6, 1], [7, 1], [5, 2], [6, 2], [7, 2], [5, 3], [6, 3], [7, 3]]];
map[22] = [[[0, 0], [0, 2, 1, 1], [0, 3, 1, 1], [0, 2, 1, 4, 1], [0, 2, 1, 8, 1], [0, 3, 11, 4, 1], [0, 3, 11, 8, 1], [0, 11, 11, 11], [0, 11, 1, 11], [0, 11, 11, 1], [0, 4]], [[8, 8, 8, 1, 10, 1, 1, 1, 10, 1, 1, 1, 1], [8, 8, 8, 10, 0, 10, 1, 10, 0, 10, 1, 1, 1], [8, 8, 8, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 10, 0, 0, 1, 0, 0, 0, 1, 0, 0, 10, 1], [10, 0, 0, 1, 1, 10, 0, 10, 1, 1, 0, 0, 10], [1, 10, 0, 0, 10, 1, 10, 1, 10, 0, 0, 10, 1], [1, 1, 1, 0, 0, 10, 1, 10, 0, 0, 1, 1, 1], [1, 10, 0, 0, 10, 1, 10, 1, 10, 0, 0, 10, 1], [10, 0, 0, 1, 1, 10, 0, 10, 1, 1, 0, 0, 10], [1, 10, 0, 0, 1, 0, 0, 0, 1, 0, 0, 10, 1], [1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 1], [1, 1, 1, 10, 0, 10, 1, 10, 0, 10, 1, 1, 1], [1, 1, 1, 1, 10, 1, 1, 1, 10, 1, 1, 1, 1]], [[0, 0], [1, 0], [2, 0], [0, 1], [1, 1], [2, 1], [0, 2], [1, 2], [2, 2]]];
map[23] = [[[0, 0], [0, 2, 9, 3], [0, 3, 3, 9], [0, 2, 5, 5, 1], [0, 12, 9, 9], [0, 11, 3, 3], [0, 4]], [[0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 10, 1, 1, 1, 8, 1, 1, 1], [0, 0, 1, 1, 1, 10, 1, 1, 1, 8, 8, 1, 1], [0, 0, 1, 1, 1, 10, 1, 10, 1, 1, 1, 1, 1], [0, 0, 1, 1, 10, 0, 0, 0, 10, 10, 10, 0, 0], [0, 0, 1, 1, 1, 0, 10, 0, 1, 1, 1, 0, 0], [0, 0, 10, 10, 10, 0, 0, 0, 10, 1, 1, 0, 0], [1, 1, 1, 1, 1, 10, 1, 10, 1, 1, 1, 0, 0], [1, 1, 8, 8, 1, 1, 1, 10, 1, 1, 1, 0, 0], [1, 1, 1, 8, 1, 1, 1, 10, 1, 1, 1, 0, 0], [0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0], [0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]], [[9, 2], [9, 3], [10, 3], [2, 9], [3, 9], [3, 10]]];
stop();
Frame 2
function fireFire() {
new mx.transitions.Tween(mcKingLoader.fireLogoHolder, "_x", mx.transitions.easing.Regular.easeOut, mcKingLoader.fireLogoHolder._x, ((gameWidth / 2) - (mcKingLoader.dragonHolder._width / 2)) - 51, 1, true);
mcKingLoader.fireLogoHolder.play();
}
function showPlayBtn() {
mcKingLoader.mcPlay._x = (gameWidth / 2) - (mcKingLoader.mcPlay._width / 2);
mcKingLoader.mcPlay._y = mcKingLoader.fireLogoHolder._y + 210;
new mx.transitions.Tween(mcKingLoader.mcPlay, "_alpha", mx.transitions.easing.None.easeNone, 0, 100, 0.5, true);
mcKingLoader.mcPlay.onPress = btnOnPress;
mcKingLoader.mcPlay.onRollOver = btnOnOver;
mcKingLoader.mcPlay.onRollOut = (mcKingLoader.mcPlay.onDragOut = btnOnOut);
mcKingLoader.mcPlay.onRelease = mx.utils.Delegate.create(this, launchGame);
Delay.oneShot(this, showGlimmer, 1000);
}
function showGlimmer() {
bell.start();
mcKingLoader.mcGlim._x = mcKingLoader.fireLogoHolder_.x - mcKingLoader.mcGlim._width;
mcKingLoader.mcGlim._y = mcKingLoader.fireLogoHolder._y + 112;
var _local2 = mcKingLoader.fireLogoHolder._x - mcKingLoader.mcGlim._width;
var _local3 = (mcKingLoader.fireLogoHolder._x + mcKingLoader.fireLogoHolder._width) - 80;
var _local1 = new mx.transitions.Tween(mcKingLoader.mcGlim, "_x", mx.transitions.easing.None.easeNone, _local2, _local3, 0.5, true);
_local1.onMotionFinished = glimmerDone;
}
function glimmerDone() {
mcKingLoader.mcGlim._visible = false;
}
function btnOnOver() {
var _local2 = this;
_local2.gotoAndStop("over");
}
function btnOnOut() {
var _local2 = this;
_local2.gotoAndStop("idle");
}
function btnOnPress() {
var _local2 = this;
_local2.gotoAndStop("down");
}
function launchGame() {
gotoAndStop (3);
}
stop();
mcKingLoader.dragonHolder.attachMovie("mcDragon", "newDragon", 1);
mcKingLoader.fireLogoHolder.stop();
mcKingLoader.dragonHolder.stop();
mcKingLoader._x = (mcKingLoader._y = 0);
mcKingLoader.bg._width = gameWidth;
mcKingLoader.bg._height = gameHeight;
mcKingLoader.bg.onRelease = function () {
if (!isHome) {
openKingPage(LINK_TYPE_LOADER_MOVIE);
}
};
mcKingLoader.fireLogoHolder._x = (gameWidth - mcKingLoader.fireLogoHolder._width) - 90;
mcKingLoader.fireLogoHolder._y = ((gameHeight / 2) - (mcKingLoader.fireLogoHolder._height / 2)) - 60;
mcKingLoader.dragonHolder._x = gameWidth - mcKingLoader.dragonHolder._width;
mcKingLoader.dragonHolder._y = (gameHeight / 2) - (mcKingLoader.dragonHolder._height / 2);
mcKingLoader.mcPlay._alpha = 0;
mcKingLoader.mcPlay.useHandCursor = true;
var bell = new Sound();
bell.attachSound("sfxBell");
mcKingLoader.initAnimDriver(30, false);
trace("StartAnim");
mcKingLoader.dragonHolder.play();
Frame 3
if (sound_on) {
start_loop();
} else {
mute_button.gotoAndStop("off");
}
Instance of Symbol 400 MovieClip "logo" in Frame 4
onClipEvent (load) {
this.onRelease = function () {
if (this._currentframe == 1) {
this.play();
_root.bounce_i = true;
_root.check_unlock();
}
};
}
Frame 5
if (!sound_on) {
sound_clip.nextFrame();
}
Instance of Symbol 400 MovieClip "logo" in Frame 5
onClipEvent (load) {
this.onRelease = function () {
if (this._currentframe == 1) {
this.play();
_root.bounce_o = true;
_root.check_unlock();
}
};
}
Instance of Symbol 400 MovieClip "logo" in Frame 7
onClipEvent (load) {
this.onRelease = function () {
if (this._currentframe == 1) {
_root.bounce_s = true;
_root.check_unlock();
this.play();
}
};
}
Instance of Symbol 400 MovieClip "logo" in Frame 8
onClipEvent (load) {
this.onRelease = function () {
if (this._currentframe == 1) {
this.play();
_root.bounce_g = true;
_root.check_unlock();
}
};
}
Symbol 13 MovieClip [mcDragon] Frame 1
Symbol 13 MovieClip [mcDragon] Frame 80
_root.fireFire();
Symbol 13 MovieClip [mcDragon] Frame 119
stop();
Symbol 19 MovieClip [diff_rollover] Frame 1
stop();
Symbol 49 MovieClip [tile] Frame 1
stop();
Symbol 52 MovieClip [crosshair_black] Frame 21
removeMovieClip(this);
Symbol 53 MovieClip [crosshair_bad] Frame 21
removeMovieClip(this);
Symbol 54 MovieClip [crosshair] Frame 21
removeMovieClip(this);
Instance of Symbol 58 MovieClip in Symbol 65 MovieClip [game_over_trans] Frame 1
/* no clip actions */
Symbol 65 MovieClip [game_over_trans] Frame 10
stop();
Instance of Symbol 58 MovieClip in Symbol 69 MovieClip [stage_outro] Frame 1
/* no clip actions */
Symbol 69 MovieClip [stage_outro] Frame 10
stop();
Symbol 69 MovieClip [stage_outro] Frame 21
removeMovieClip(this);
Instance of Symbol 58 MovieClip in Symbol 72 MovieClip [stage_intro] Frame 1
/* no clip actions */
Symbol 72 MovieClip [stage_intro] Frame 10
stop();
Symbol 72 MovieClip [stage_intro] Frame 21
removeMovieClip(this);
Symbol 77 MovieClip [explosion_bad] Frame 30
removeMovieClip(this);
Symbol 77 MovieClip [explosion_bad] Frame 31
trace("not");
Symbol 110 MovieClip Frame 1
stop();
Symbol 113 Button
on (release) {
_root.sound_on = true;
sound_clip.gotoAndStop(1);
}
Symbol 114 Button
on (release) {
_root.sound_on = false;
sound_clip.gotoAndStop(2);
}
Symbol 124 MovieClip Frame 15
stop();
Symbol 126 Button
on (release) {
_root.unpause_game();
}
Symbol 132 MovieClip [mp0] Frame 1
stop();
Symbol 137 MovieClip [mp1] Frame 1
stop();
Symbol 142 MovieClip [mp2] Frame 1
stop();
Symbol 147 MovieClip [mp3] Frame 1
stop();
Symbol 152 MovieClip [mp4] Frame 1
stop();
Symbol 157 MovieClip [mp5] Frame 1
stop();
Symbol 162 MovieClip [mp6] Frame 1
stop();
Symbol 167 MovieClip [mp7] Frame 1
stop();
Symbol 172 MovieClip [mp8] Frame 1
stop();
Symbol 177 MovieClip [mp9] Frame 1
stop();
Symbol 182 MovieClip [mp10] Frame 1
stop();
Symbol 187 MovieClip [mp11] Frame 1
stop();
Symbol 192 MovieClip [mp12] Frame 1
stop();
Symbol 197 MovieClip [mp13] Frame 1
stop();
Symbol 202 MovieClip [mp14] Frame 1
stop();
Symbol 207 MovieClip [mp15] Frame 1
stop();
Symbol 212 MovieClip [mp16] Frame 1
stop();
Symbol 217 MovieClip [mp17] Frame 1
stop();
Symbol 222 MovieClip [mp18] Frame 1
stop();
Symbol 227 MovieClip [mp19] Frame 1
stop();
Symbol 232 MovieClip [mp20] Frame 1
stop();
Symbol 237 MovieClip [mp21] Frame 1
stop();
Symbol 242 MovieClip [mp22] Frame 1
stop();
Symbol 247 MovieClip [mp23] Frame 1
stop();
Symbol 249 MovieClip [bounce_clip] Frame 15
this.removeMovieClip();
Symbol 255 MovieClip [my_message] Frame 12
stop();
Symbol 255 MovieClip [my_message] Frame 24
this.removeMovieClip();
Symbol 260 MovieClip [explosion] Frame 42
removeMovieClip(this);
Symbol 263 MovieClip [muteButton] Frame 1
stop();
Symbol 512 MovieClip [__Packages.md5] Frame 0
class md5
{
function md5 (b64pad, chrsz) {
if (b64pad != undefined) {
this.b64pad = b64pad;
}
if (((chrsz != undefined) && (chrsz == 8)) || (chrsz == 16)) {
this.chrsz = chrsz;
}
}
function hash(s) {
return(hex_md5(s));
}
function hex_md5(s) {
return(binl2hex(core_md5(str2binl(s), s.length * chrsz)));
}
function b64_md5(s) {
return(binl2b64(core_md5(str2binl(s), s.length * chrsz)));
}
function str_md5(s) {
return(binl2str(core_md5(str2binl(s), s.length * chrsz)));
}
function hex_hmac_md5(key, data) {
return(binl2hex(core_hmac_md5(key, data)));
}
function b64_hmac_md5(key, data) {
return(binl2b64(core_hmac_md5(key, data)));
}
function str_hmac_md5(key, data) {
return(binl2str(core_hmac_md5(key, data)));
}
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));
}
function md5_ff(a, b, c, d, x, s, t) {
return(md5_cmn((b & c) | ((~b) & d), a, b, x, s, t));
}
function md5_gg(a, b, c, d, x, s, t) {
return(md5_cmn((b & d) | (c & (~d)), a, b, x, s, t));
}
function md5_hh(a, b, c, d, x, s, t) {
return(md5_cmn((b ^ c) ^ d, a, b, x, s, t));
}
function md5_ii(a, b, c, d, x, s, t) {
return(md5_cmn(c ^ (b | (~d)), a, b, x, s, t));
}
function core_md5(x, len) {
x[len >> 5] = x[len >> 5] | (128 << (len % 32));
x[(((len + 64) >>> 9) << 4) + 14] = len;
var _local5 = 1732584193 /* 0x67452301 */;
var _local4 = -271733879;
var _local3 = -1732584194;
var _local2 = 271733878 /* 0x10325476 */;
var _local6 = 0;
while (_local6 < x.length) {
var _local11 = _local5;
var _local10 = _local4;
var _local9 = _local3;
var _local8 = _local2;
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 0], 7, -680876936);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 1], 12, -389564586);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 2], 17, 606105819);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 3], 22, -1044525330);
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 4], 7, -176418897);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 5], 12, 1200080426);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 6], 17, -1473231341);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 7], 22, -45705983);
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 8], 7, 1770035416);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 9], 12, -1958414417);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 10], 17, -42063);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 11], 22, -1990404162);
_local5 = md5_ff(_local5, _local4, _local3, _local2, x[_local6 + 12], 7, 1804603682);
_local2 = md5_ff(_local2, _local5, _local4, _local3, x[_local6 + 13], 12, -40341101);
_local3 = md5_ff(_local3, _local2, _local5, _local4, x[_local6 + 14], 17, -1502002290);
_local4 = md5_ff(_local4, _local3, _local2, _local5, x[_local6 + 15], 22, 1236535329);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 1], 5, -165796510);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 6], 9, -1069501632);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 11], 14, 643717713);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 0], 20, -373897302);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 5], 5, -701558691);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 10], 9, 38016083);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 15], 14, -660478335);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 4], 20, -405537848);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 9], 5, 568446438);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 14], 9, -1019803690);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 3], 14, -187363961);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 8], 20, 1163531501);
_local5 = md5_gg(_local5, _local4, _local3, _local2, x[_local6 + 13], 5, -1444681467);
_local2 = md5_gg(_local2, _local5, _local4, _local3, x[_local6 + 2], 9, -51403784);
_local3 = md5_gg(_local3, _local2, _local5, _local4, x[_local6 + 7], 14, 1735328473);
_local4 = md5_gg(_local4, _local3, _local2, _local5, x[_local6 + 12], 20, -1926607734);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 5], 4, -378558);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 8], 11, -2022574463);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 11], 16, 1839030562);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 14], 23, -35309556);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 1], 4, -1530992060);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 4], 11, 1272893353);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 7], 16, -155497632);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 10], 23, -1094730640);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 13], 4, 681279174);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 0], 11, -358537222);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 3], 16, -722521979);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 6], 23, 76029189);
_local5 = md5_hh(_local5, _local4, _local3, _local2, x[_local6 + 9], 4, -640364487);
_local2 = md5_hh(_local2, _local5, _local4, _local3, x[_local6 + 12], 11, -421815835);
_local3 = md5_hh(_local3, _local2, _local5, _local4, x[_local6 + 15], 16, 530742520);
_local4 = md5_hh(_local4, _local3, _local2, _local5, x[_local6 + 2], 23, -995338651);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 0], 6, -198630844);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 7], 10, 1126891415);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 14], 15, -1416354905);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 5], 21, -57434055);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 12], 6, 1700485571);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 3], 10, -1894986606);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 10], 15, -1051523);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 1], 21, -2054922799);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 8], 6, 1873313359);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 15], 10, -30611744);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 6], 15, -1560198380);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 13], 21, 1309151649);
_local5 = md5_ii(_local5, _local4, _local3, _local2, x[_local6 + 4], 6, -145523070);
_local2 = md5_ii(_local2, _local5, _local4, _local3, x[_local6 + 11], 10, -1120210379);
_local3 = md5_ii(_local3, _local2, _local5, _local4, x[_local6 + 2], 15, 718787259);
_local4 = md5_ii(_local4, _local3, _local2, _local5, x[_local6 + 9], 21, -343485551);
_local5 = safe_add(_local5, _local11);
_local4 = safe_add(_local4, _local10);
_local3 = safe_add(_local3, _local9);
_local2 = safe_add(_local2, _local8);
_local6 = _local6 + 16;
}
return(Array(_local5, _local4, _local3, _local2));
}
function core_hmac_md5(key, data) {
var _local3 = new Array(str2binl(key));
if (_local3.length > 16) {
_local3 = core_md5(_local3, key.length * chrsz);
}
var _local4 = new Array(16);
var _local5 = new Array(16);
var _local2 = 0;
while (_local2 < 16) {
_local4[_local2] = _local3[_local2] ^ 909522486;
_local5[_local2] = _local3[_local2] ^ 1549556828;
_local2++;
}
var _local6 = new Array(core_md5(_local4.concat(str2binl(data)), 512 + (data.length * chrsz)));
return(core_md5(_local5.concat(_local6), 640));
}
function safe_add(x, y) {
var _local1 = new Number((x & 65535) + (y & 65535));
var _local2 = new Number(((x >> 16) + (y >> 16)) + (_local1 >> 16));
return((_local2 << 16) | (_local1 & 65535));
}
function bit_rol(num, cnt) {
return((num << cnt) | (num >>> (32 - cnt)));
}
function str2binl(str) {
var _local4 = new Array();
var _local5 = (1 << chrsz) - 1;
var _local2 = 0;
while (_local2 < (str.length * chrsz)) {
_local4[_local2 >> 5] = _local4[_local2 >> 5] | ((str.charCodeAt(_local2 / chrsz) & _local5) << (_local2 % 32));
_local2 = _local2 + chrsz;
}
return(_local4);
}
function binl2str(bin) {
var _local4 = new String("");
var _local5 = (1 << chrsz) - 1;
var _local2 = 0;
while (_local2 < (bin.length * 32)) {
_local4 = _local4 + String.fromCharCode((bin[_local2 >> 5] >>> (_local2 % 32)) & _local5);
_local2 = _local2 + chrsz;
}
return(_local4);
}
function binl2hex(binarray) {
var _local3 = "0123456789abcdef";
var _local4 = new String("");
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);
}
function binl2b64(binarray) {
var _local7 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
var _local5 = new String("");
var _local3 = 0;
while (_local3 < (binarray.length * 4)) {
var _local6 = ((((binarray[_local3 >> 2] >> (8 * (_local3 % 4))) & 255) << 16) | (((binarray[(_local3 + 1) >> 2] >> (8 * ((_local3 + 1) % 4))) & 255) << 8)) | ((binarray[(_local3 + 2) >> 2] >> (8 * ((_local3 + 2) % 4))) & 255);
var _local2 = 0;
while (_local2 < 4) {
if (((_local3 * 8) + (_local2 * 6)) > (binarray.length * 32)) {
_local5 = _local5 + b64pad;
} else {
_local5 = _local5 + _local7.charAt((_local6 >> (6 * (3 - _local2))) & 63);
}
_local2++;
}
_local3 = _local3 + 3;
}
return(_local5);
}
var b64pad = new String("");
var chrsz = new Number(8);
}
Symbol 513 MovieClip [__Packages.Particle] Frame 0
class Particle
{
var _stageWidth, _stageHeight, clip, _xVel, _yVel;
function Particle (libParticle, xpos, ypos, stageWidth, stageHeight) {
_stageWidth = stageWidth;
_stageHeight = stageHeight;
clip = libParticle;
clip._x = xpos;
clip._y = ypos;
}
function setVel(xvel, yvel) {
_xVel = xvel;
_yVel = yvel;
}
function setSize(size) {
clip._width = size;
clip._height = size;
}
function setAlphaDecr(val) {
_alphaDecr = val;
}
function update() {
clip._x = clip._x + _xVel;
clip._y = clip._y + _yVel;
clip._alpha = clip._alpha - _alphaDecr;
}
function destroy() {
removeMovieClip(clip);
}
var _alphaDecr = 0;
}
Symbol 514 MovieClip [__Packages.mx.transitions.OnEnterFrameBeacon] Frame 0
class mx.transitions.OnEnterFrameBeacon
{
function OnEnterFrameBeacon () {
}
static function init() {
var _local4 = _global.MovieClip;
if (!_root.__OnEnterFrameBeacon) {
mx.transitions.BroadcasterMX.initialize(_local4);
var _local3 = _root.createEmptyMovieClip("__OnEnterFrameBeacon", 9876);
_local3.onEnterFrame = function () {
_global.MovieClip.broadcastMessage("onEnterFrame");
};
}
}
static var version = "1.1.0.52";
}
Symbol 515 MovieClip [__Packages.mx.transitions.BroadcasterMX] Frame 0
class mx.transitions.BroadcasterMX
{
var _listeners;
function BroadcasterMX () {
}
static function initialize(o, dontCreateArray) {
if (o.broadcastMessage != undefined) {
delete o.broadcastMessage;
}
o.addListener = mx.transitions.BroadcasterMX.prototype.addListener;
o.removeListener = mx.transitions.BroadcasterMX.prototype.removeListener;
if (!dontCreateArray) {
o._listeners = new Array();
}
}
function addListener(o) {
removeListener(o);
if (broadcastMessage == undefined) {
broadcastMessage = mx.transitions.BroadcasterMX.prototype.broadcastMessage;
}
return(_listeners.push(o));
}
function removeListener(o) {
var _local2 = _listeners;
var _local3 = _local2.length;
while (_local3--) {
if (_local2[_local3] == o) {
_local2.splice(_local3, 1);
if (!_local2.length) {
broadcastMessage = undefined;
}
return(true);
}
}
return(false);
}
function broadcastMessage() {
var _local5 = String(arguments.shift());
var _local4 = _listeners.concat();
var _local6 = _local4.length;
var _local3 = 0;
while (_local3 < _local6) {
_local4[_local3][_local5].apply(_local4[_local3], arguments);
_local3++;
}
}
static var version = "1.1.0.52";
}
Symbol 516 MovieClip [__Packages.mx.transitions.Tween] Frame 0
class mx.transitions.Tween
{
var obj, prop, begin, useSeconds, _listeners, addListener, prevTime, _time, looping, _duration, broadcastMessage, isPlaying, _fps, prevPos, _pos, change, _intervalID, _startTime;
function Tween (obj, prop, func, begin, finish, duration, useSeconds) {
mx.transitions.OnEnterFrameBeacon.init();
if (!arguments.length) {
return;
}
this.obj = obj;
this.prop = prop;
this.begin = begin;
position = (begin);
this.duration = (duration);
this.useSeconds = useSeconds;
if (func) {
this.func = func;
}
this.finish = (finish);
_listeners = [];
addListener(this);
start();
}
function set time(t) {
prevTime = _time;
if (t > duration) {
if (looping) {
rewind(t - _duration);
update();
broadcastMessage("onMotionLooped", this);
} else {
if (useSeconds) {
_time = _duration;
update();
}
stop();
broadcastMessage("onMotionFinished", this);
}
} else if (t < 0) {
rewind();
update();
} else {
_time = t;
update();
}
//return(time);
}
function get time() {
return(_time);
}
function set duration(d) {
_duration = (((d == null) || (d <= 0)) ? (_global.Infinity) : (d));
//return(duration);
}
function get duration() {
return(_duration);
}
function set FPS(fps) {
var _local2 = isPlaying;
stopEnterFrame();
_fps = fps;
if (_local2) {
startEnterFrame();
}
//return(FPS);
}
function get FPS() {
return(_fps);
}
function set position(p) {
setPosition(p);
//return(position);
}
function setPosition(p) {
prevPos = _pos;
obj[prop] = (_pos = p);
broadcastMessage("onMotionChanged", this, _pos);
updateAfterEvent();
}
function get position() {
return(getPosition());
}
function getPosition(t) {
if (t == undefined) {
t = _time;
}
return(func(t, begin, change, _duration));
}
function set finish(f) {
change = f - begin;
//return(finish);
}
function get finish() {
return(begin + change);
}
function continueTo(finish, duration) {
begin = position;
this.finish = (finish);
if (duration != undefined) {
this.duration = (duration);
}
start();
}
function yoyo() {
continueTo(begin, time);
}
function startEnterFrame() {
if (_fps == undefined) {
_global.MovieClip.addListener(this);
} else {
_intervalID = setInterval(this, "onEnterFrame", 1000 / _fps);
}
isPlaying = true;
}
function stopEnterFrame() {
if (_fps == undefined) {
_global.MovieClip.removeListener(this);
} else {
clearInterval(_intervalID);
}
isPlaying = false;
}
function start() {
rewind();
startEnterFrame();
broadcastMessage("onMotionStarted", this);
}
function stop() {
stopEnterFrame();
broadcastMessage("onMotionStopped", this);
}
function resume() {
fixTime();
startEnterFrame();
broadcastMessage("onMotionResumed", this);
}
function rewind(t) {
_time = ((t == undefined) ? 0 : (t));
fixTime();
update();
}
function fforward() {
time = (_duration);
fixTime();
}
function nextFrame() {
if (useSeconds) {
time = ((getTimer() - _startTime) / 1000);
} else {
time = (_time + 1);
}
}
function onEnterFrame() {
nextFrame();
}
function prevFrame() {
if (!useSeconds) {
time = (_time - 1);
}
}
function toString() {
return("[Tween]");
}
function fixTime() {
if (useSeconds) {
_startTime = getTimer() - (_time * 1000);
}
}
function update() {
position = (getPosition(_time));
}
static var version = "1.1.0.52";
static var __initBeacon = mx.transitions.OnEnterFrameBeacon.init();
static var __initBroadcaster = mx.transitions.BroadcasterMX.initialize(mx.transitions.Tween.prototype, true);
function func(t, b, c, d) {
return(((c * t) / d) + b);
}
}
Symbol 517 MovieClip [__Packages.Delay] Frame 0
class Delay
{
var m_fn, m_param, m_context, m_delay, m_started, m_timerId;
function Delay (context, fn, delay) {
m_fn = fn;
m_param = new Array();
var _local3 = 3;
while (_local3 < arguments.length) {
m_param.push(arguments[_local3]);
_local3++;
}
m_context = context;
m_delay = delay;
m_started = getTimer();
m_timerId = setInterval(mx.utils.Delegate.create(this, onEvent), delay);
}
function onEvent() {
if (getTimer() >= (m_delay + m_started)) {
clearInterval(m_timerId);
m_fn.apply(m_context, m_param);
m_fn = undefined;
m_param = undefined;
}
}
static function oneShot(context, fn, delay) {
var _local3 = new Delay(context, fn, delay);
_local3.m_param = new Array();
var _local2 = 3;
while (_local2 < arguments.length) {
_local3.m_param.push(arguments[_local2]);
_local2++;
}
}
}
Symbol 518 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 519 MovieClip [__Packages.mx.transitions.easing.Regular] Frame 0
class mx.transitions.easing.Regular
{
function Regular () {
}
static function easeIn(t, b, c, d) {
t = t / d;
return(((c * t) * t) + b);
}
static function easeOut(t, b, c, d) {
t = t / d;
return((((-c) * t) * (t - 2)) + b);
}
static function easeInOut(t, b, c, d) {
t = t / (d / 2);
if (t < 1) {
return((((c / 2) * t) * t) + b);
}
t--;
return((((-c) / 2) * ((t * (t - 2)) - 1)) + b);
}
static var version = "1.1.0.52";
}
Symbol 520 MovieClip [__Packages.mx.transitions.easing.None] Frame 0
class mx.transitions.easing.None
{
function None () {
}
static function easeNone(t, b, c, d) {
return(((c * t) / d) + b);
}
static function easeIn(t, b, c, d) {
return(((c * t) / d) + b);
}
static function easeOut(t, b, c, d) {
return(((c * t) / d) + b);
}
static function easeInOut(t, b, c, d) {
return(((c * t) / d) + b);
}
static var version = "1.1.0.52";
}
Symbol 521 MovieClip [__Packages.AnimDriver] Frame 0
class AnimDriver extends MovieClip
{
var fps, pauseOffset, gotoAndStop, loop, startTime, onEnterFrame, _totalframes;
function AnimDriver () {
super();
}
function initAnimDriver(p_fps) {
fps = p_fps;
pauseOffset = 0;
}
function playAnim(p_frame, p_loop) {
gotoAndStop(p_frame);
loop = p_loop;
startTime = getTimer();
onEnterFrame = mx.utils.Delegate.create(this, updateAnim);
}
function disableAnim() {
onEnterFrame = undefined;
}
function jumpTo(p_frame) {
stopAnim();
playAnim(p_frame);
}
function pauseAnim() {
pauseOffset = getTimer();
onEnterFrame = undefined;
}
function stopAnim() {
startTime = 1;
onEnterFrame = undefined;
}
function updateAnim() {
var _local3 = getTimer();
var _local4 = (1 / fps) * 1000;
var _local2 = Math.round(((_local3 - startTime) / _local4) + 1);
if (_local2 >= _totalframes) {
startTime = _local3;
_local2 = _totalframes;
if (!loop) {
stopAnim();
}
}
gotoAndStop(_local2);
}
}
Symbol 276 MovieClip Frame 73
stop();
_root.showPlayBtn();
Symbol 288 MovieClip Frame 1
stop();
Symbol 289 MovieClip [KingLoader] Frame 1
#initclip 11
Object.registerClass("KingLoader", AnimDriver);
#endinitclip
Symbol 300 MovieClip Frame 21
stop();
Symbol 303 Button
on (release) {
stage_select();
}
Symbol 315 MovieClip Frame 25
stop();
Symbol 316 Button
on (release) {
gotoAndStop ("instructions");
}
Symbol 326 MovieClip Frame 17
stop();
Symbol 327 Button
on (release) {
gotoAndStop ("credits");
}
Symbol 337 MovieClip Frame 15
stop();
Symbol 338 Button
on (release) {
do_options();
}
Symbol 352 MovieClip Frame 25
stop();
Symbol 354 Button
on (release) {
openSignLink();
}
Symbol 366 MovieClip Frame 21
stop();
Symbol 367 Button
on (release) {
openHighscoresLink();
}
Symbol 379 MovieClip Frame 21
stop();
Symbol 380 Button
on (release) {
openOtherGamesLink();
}
Symbol 382 Button
on (release) {
openAddToWebsiteLink();
}
Symbol 383 Button
on (release) {
openKingPage();
}
Symbol 384 Button
on (release) {
toggle_sound();
}
Symbol 391 MovieClip Frame 9
stop();
Symbol 392 Button
on (release) {
gotoAndStop ("main_menu");
}
Symbol 394 MovieClip Frame 28
stop();
Symbol 395 MovieClip Frame 41
stop();
Symbol 396 MovieClip Frame 23
stop();
Symbol 397 MovieClip Frame 41
stop();
Symbol 398 MovieClip Frame 19
stop();
Symbol 399 MovieClip Frame 27
stop();
Symbol 400 MovieClip Frame 1
stop();
Symbol 417 MovieClip Frame 1
stop();
Symbol 420 Button
on (release) {
_root.sv = 0;
_root.update_speed(sv);
}
Symbol 421 Button
on (release) {
_root.sv = 1;
_root.update_speed(sv);
}
Symbol 422 Button
on (release) {
_root.sv = 2;
_root.update_speed(sv);
}
Symbol 423 Button
on (release) {
if (!sound_on) {
toggle_sound();
}
}
Symbol 424 Button
on (release) {
if (sound_on) {
toggle_sound();
}
}
Symbol 441 MovieClip Frame 1
stop();
Symbol 444 MovieClip Frame 1
stop();
Symbol 445 MovieClip Frame 1
stop();
Symbol 464 MovieClip Frame 21
stop();
Symbol 465 Button
on (release) {
pause_game();
}
Symbol 476 MovieClip Frame 19
stop();
Symbol 477 Button
on (release) {
_root.end_game();
}
Symbol 487 MovieClip Frame 15
stop();
Symbol 488 Button
on (release) {
all_good = false;
}
Symbol 510 MovieClip Frame 23
stop();
Symbol 511 Button
on (release) {
submitInternalScore();
}