Frame 1
var game = 0;
i = 1;
while (i < 145) {
removeMovieClip("block" + i);
i++;
}
stop();
Frame 2
i = 0;
while (i < 145) {
removeMovieClip("deathblock" + i);
i++;
}
Frame 3
var tscore = 0;
var score = 0;
var drops = 0;
var lscore = 0;
stop();
Instance of Symbol 180 MovieClip [listener] in Frame 3
onClipEvent (load) {
var chain = 1;
var cscore = 0;
var gameover = 0;
var stage = 2;
var arrayno = 1;
var wait = 0;
var speed = 0;
var colour = 0;
var y = 0;
var x = 0;
var temp = 0;
var tempx = 0;
var tempy = 0;
var greycount = 0;
var countdown = 25;
var movies = new Array();
var fmovies = new Array();
var oldmoving = new Array();
var floatwait = 0;
var point = new Array(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, 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, 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, 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);
point[0] = 9;
point[68] = (point[57] = (point[47] = (point[38] = (point[30] = (point[23] = (point[17] = (point[12] = (point[8] = (point[5] = (point[9] = (point[14] = (point[20] = (point[27] = (point[35] = (point[44] = (point[54] = (point[65] = (point[77] = 7))))))))))))))))));
point[13] = (point[18] = (point[19] = (point[24] = (point[25] = (point[26] = (point[31] = (point[32] = (point[33] = (point[34] = (point[39] = (point[40] = (point[41] = (point[42] = (point[43] = (point[48] = (point[49] = (point[50] = (point[51] = (point[52] = (point[53] = (point[58] = (point[59] = (point[60] = (point[61] = (point[62] = (point[63] = (point[64] = (point[69] = (point[70] = (point[71] = (point[72] = (point[73] = (point[74] = (point[75] = (point[76] = (point[80] = (point[81] = (point[82] = (point[83] = (point[85] = (point[86] = (point[87] = (point[88] = (point[91] = (point[92] = (point[93] = (point[96] = (point[97] = (point[98] = (point[101] = (point[102] = (point[106] = (point[107] = (point[110] = (point[115] = 5)))))))))))))))))))))))))))))))))))))))))))))))))))))));
if (_root.game == 1) {
point[84] = (point[94] = (point[95] = (point[103] = (point[104] = (point[105] = (point[112] = (point[113] = (point[120] = 5))))))));
}
var r2 = 21.2132034355964;
var r2_2 = (r2 * 2);
var r2_3 = (r2 * 3);
var r2_4 = (r2 * 4);
var r2_5 = (r2 * 5);
var r2_6 = (r2 * 6);
var r2_7 = (r2 * 7);
var r2_8 = (r2 * 8);
var r2_9 = (r2 * 9);
var r2_10 = (r2 * 10);
var r2_11 = (r2 * 11);
var xpoint = new Array(0, 0, -1, 1, -2, 0, 2, -3, -1, 1, 3, -4, -2, 0, 2, 4, -5, -3, -1, 1, 3, 5, -6, -4, -2, 0, 2, 4, 6, -7, -5, -3, -1, 1, 3, 5, 7, -8, -6, -4, -2, 0, 2, 4, 6, 8, -9, -7, -5, -3, -1, 1, 3, 5, 7, 9, -10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10, -11, -9, -7, -5, -3, -1, 1, 3, 5, 7, 9, 11, -10, -8, -6, -4, -2, 0, 2, 4, 6, 8, 10, -9, -7, -5, -3, -1, 1, 3, 5, 7, 9, -8, -6, -4, -2, 0, 2, 4, 6, 8, -7, -5, -3, -1, 1, 3, 5, 7, -6, -4, -2, 0, 2, 4, 6, -5, -3, -1, 1, 3, 5, -4, -2, 0, 2, 4, -3, -1, 1, 3, -2, 0, 2, -1, 1, 0);
var ypoint = new Array(0, 0, 1, 1, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 5, 6, 6, 6, 6, 6, 6, 6, 7, 7, 7, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 8, 8, 8, 8, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15, 15, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 17, 17, 18, 18, 18, 18, 18, 19, 19, 19, 19, 20, 20, 20, 21, 21, 22);
i = 0;
while (i < xpoint.length) {
xpoint[i] = xpoint[i] * r2;
ypoint[i] = ypoint[i] * r2;
i++;
}
var botleft = new Array(0, 0, 0, 1, 0, 2, 3, 0, 4, 5, 6, 0, 7, 8, 9, 10, 0, 11, 12, 13, 14, 15, 0, 16, 17, 18, 19, 20, 21, 0, 22, 23, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 35, 36, 0, 37, 38, 39, 40, 41, 42, 43, 44, 45, 0, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 0, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 90, 91, 92, 93, 94, 95, 96, 97, 98, 100, 101, 102, 103, 104, 105, 106, 107, 109, 110, 111, 112, 113, 114, 115, 117, 118, 119, 120, 121, 122, 124, 125, 126, 127, 128, 130, 131, 132, 133, 135, 136, 137, 139, 140, 142);
var botright = new Array(0, 0, 1, 0, 2, 3, 0, 4, 5, 6, 0, 7, 8, 9, 10, 0, 11, 12, 13, 14, 15, 0, 16, 17, 18, 19, 20, 21, 0, 22, 23, 24, 25, 26, 27, 28, 0, 29, 30, 31, 32, 33, 34, 35, 36, 0, 37, 38, 39, 40, 41, 42, 43, 44, 45, 0, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 0, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 0, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 91, 92, 93, 94, 95, 96, 97, 98, 99, 101, 102, 103, 104, 105, 106, 107, 108, 110, 111, 112, 113, 114, 115, 116, 118, 119, 120, 121, 122, 123, 125, 126, 127, 128, 129, 131, 132, 133, 134, 136, 137, 138, 140, 141, 143);
var topleft = new Array(0, 2, 4, 5, 7, 8, 9, 11, 12, 13, 14, 16, 17, 18, 19, 20, 22, 23, 24, 25, 26, 27, 29, 30, 31, 32, 33, 34, 35, 37, 38, 39, 40, 41, 42, 43, 44, 46, 47, 48, 49, 50, 51, 52, 53, 54, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 0, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 0, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 0, 100, 101, 102, 103, 104, 105, 106, 107, 108, 0, 109, 110, 111, 112, 113, 114, 115, 116, 0, 117, 118, 119, 120, 121, 122, 123, 0, 124, 125, 126, 127, 128, 129, 0, 130, 131, 132, 133, 134, 0, 135, 136, 137, 138, 0, 139, 140, 141, 0, 142, 143, 0, 144);
var topright = new Array(0, 3, 5, 6, 8, 9, 10, 12, 13, 14, 15, 17, 18, 19, 20, 21, 23, 24, 25, 26, 27, 28, 30, 31, 32, 33, 34, 35, 36, 38, 39, 40, 41, 42, 43, 44, 45, 47, 48, 49, 50, 51, 52, 53, 54, 55, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 0, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 0, 100, 101, 102, 103, 104, 105, 106, 107, 108, 0, 109, 110, 111, 112, 113, 114, 115, 116, 0, 117, 118, 119, 120, 121, 122, 123, 0, 124, 125, 126, 127, 128, 129, 0, 130, 131, 132, 133, 134, 0, 135, 136, 137, 138, 0, 139, 140, 141, 0, 142, 143, 0, 144, 0);
var below = new Array(0, 0, 0, 0, 0, 1, 0, 0, 2, 3, 0, 0, 4, 5, 6, 0, 0, 7, 8, 9, 10, 0, 0, 11, 12, 13, 14, 15, 0, 0, 16, 17, 18, 19, 20, 21, 0, 0, 22, 23, 24, 25, 26, 27, 28, 0, 0, 29, 30, 31, 32, 33, 34, 35, 36, 0, 0, 37, 38, 39, 40, 41, 42, 43, 44, 45, 0, 0, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 0, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 80, 81, 82, 83, 84, 85, 86, 87, 88, 91, 92, 93, 94, 95, 96, 97, 98, 101, 102, 103, 104, 105, 106, 107, 110, 111, 112, 113, 114, 115, 118, 119, 120, 121, 122, 125, 126, 127, 128, 131, 132, 133, 136, 137, 140);
var left = new Array(0, 0, 0, 2, 0, 4, 5, 0, 7, 8, 9, 0, 11, 12, 13, 14, 0, 16, 17, 18, 19, 20, 0, 22, 23, 24, 25, 26, 27, 0, 29, 30, 31, 32, 33, 34, 35, 0, 37, 38, 39, 40, 41, 42, 43, 44, 0, 46, 47, 48, 49, 50, 51, 52, 53, 54, 0, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 0, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 0, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 0, 90, 91, 92, 93, 94, 95, 96, 97, 98, 0, 100, 101, 102, 103, 104, 105, 106, 107, 0, 109, 110, 111, 112, 113, 114, 115, 0, 117, 118, 119, 120, 121, 122, 0, 124, 125, 126, 127, 128, 0, 130, 131, 132, 133, 0, 135, 136, 137, 0, 139, 140, 0, 142, 0);
var right = new Array(0, 0, 3, 0, 5, 6, 0, 8, 9, 10, 0, 12, 13, 14, 15, 0, 17, 18, 19, 20, 21, 0, 23, 24, 25, 26, 27, 28, 0, 30, 31, 32, 33, 34, 35, 36, 0, 38, 39, 40, 41, 42, 43, 44, 45, 0, 47, 48, 49, 50, 51, 52, 53, 54, 55, 0, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 0, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 0, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 0, 91, 92, 93, 94, 95, 96, 97, 98, 99, 0, 101, 102, 103, 104, 105, 106, 107, 108, 0, 110, 111, 112, 113, 114, 115, 116, 0, 118, 119, 120, 121, 122, 123, 0, 125, 126, 127, 128, 129, 0, 131, 132, 133, 134, 0, 136, 137, 138, 0, 140, 141, 0, 143, 0, 0);
var above = new Array(0, 5, 8, 9, 12, 13, 14, 17, 18, 19, 20, 23, 24, 25, 26, 27, 30, 31, 32, 33, 34, 35, 38, 39, 40, 41, 42, 43, 44, 47, 48, 49, 50, 51, 52, 53, 54, 57, 58, 59, 60, 61, 62, 63, 64, 65, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 0, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 0, 0, 100, 101, 102, 103, 104, 105, 106, 107, 108, 0, 0, 109, 110, 111, 112, 113, 114, 115, 116, 0, 0, 117, 118, 119, 120, 121, 122, 123, 0, 0, 124, 125, 126, 127, 128, 129, 0, 0, 130, 131, 132, 133, 134, 0, 0, 135, 136, 137, 138, 0, 0, 139, 140, 141, 0, 0, 142, 143, 0, 0, 144, 0, 0, 0, 0);
}
onClipEvent (mouseUp) {
if (stage == 1.5) {
temp = 0;
if (colour < 8) {
if ((x == (225 - r2_8)) && (point[80] == 0)) {
temp = 80;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_7)) && (point[91] == 0)) {
temp = 91;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_6)) && (point[101] == 0)) {
temp = 101;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_5)) && (point[110] == 0)) {
temp = 110;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_4)) && (point[118] == 0)) {
temp = 118;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_3)) && (point[125] == 0)) {
temp = 125;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_2)) && (point[131] == 0)) {
temp = 131;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2)) && (point[136] == 0)) {
temp = 136;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == 225) && (point[140] == 0)) {
temp = 140;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2)) && (point[137] == 0)) {
temp = 137;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_2)) && (point[133] == 0)) {
temp = 133;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_3)) && (point[128] == 0)) {
temp = 128;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_4)) && (point[122] == 0)) {
temp = 122;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_5)) && (point[115] == 0)) {
temp = 115;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_6)) && (point[107] == 0)) {
temp = 107;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_7)) && (point[98] == 0)) {
temp = 98;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_8)) && (point[88] == 0)) {
temp = 88;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
} else {
if ((x == (225 - r2_8)) && (point[100] == 0)) {
temp = 100;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_7)) && (point[109] == 0)) {
temp = 109;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_6)) && (point[117] == 0)) {
temp = 117;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_5)) && (point[124] == 0)) {
temp = 124;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_4)) && (point[130] == 0)) {
temp = 130;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_3)) && (point[135] == 0)) {
temp = 135;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2_2)) && (point[139] == 0)) {
temp = 139;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 - r2)) && (point[142] == 0)) {
temp = 142;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == 225) && (point[144] == 0)) {
temp = 144;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2)) && (point[143] == 0)) {
temp = 143;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_2)) && (point[141] == 0)) {
temp = 141;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_3)) && (point[138] == 0)) {
temp = 138;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_4)) && (point[134] == 0)) {
temp = 134;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_5)) && (point[129] == 0)) {
temp = 129;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_6)) && (point[123] == 0)) {
temp = 123;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_7)) && (point[116] == 0)) {
temp = 116;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
if ((x == (225 + r2_8)) && (point[108] == 0)) {
temp = 108;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
}
}
if (temp > 0) {
if (colour < 8) {
if ((point[botright[temp]] == 0) && (point[botleft[temp]] == 0)) {
temp = 0;
}
} else if ((point[botright[temp]] > 0) || (point[botleft[temp]] > 0)) {
temp = 0;
}
}
if (temp > 0) {
point[temp] = colour;
removeMovieClip("guideline");
wait = 0;
speed = 1;
stage = 1.75;
}
}
}
onClipEvent (enterFrame) {
if (stage == 1) {
if (floatwait > 0) {
floatwait--;
} else {
if (chain > 1) {
chain++;
}
_root.lscore = 10 * (cscore * chain);
_root.tscore = _root.tscore + (10 * (cscore * chain));
cscore = 0;
chain = 0;
i = 0;
while (i < movies.length) {
removeMovieClip("block" + movies[i]);
i++;
}
movies.length = 0;
i = 0;
while (i < fmovies.length) {
removeMovieClip("block" + fmovies[i]);
i++;
}
fmovies.length = 0;
i = 1;
while (i < 145) {
if (point[i] == 1) {
duplicateMovieClip (block_orig, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[i]);
setProperty("block" + i, _y , 550 - ypoint[i]);
movies.push(i);
}
if (point[i] == 2) {
duplicateMovieClip (blueblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[i]);
setProperty("block" + i, _y , 550 - ypoint[i]);
movies.push(i);
}
if (point[i] == 3) {
duplicateMovieClip (greenblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[i]);
setProperty("block" + i, _y , 550 - ypoint[i]);
movies.push(i);
}
if (point[i] == 4) {
duplicateMovieClip (yelblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[i]);
setProperty("block" + i, _y , 550 - ypoint[i]);
movies.push(i);
}
if (point[i] == 7) {
duplicateMovieClip (fixedblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[i]);
setProperty("block" + i, _y , 550 - ypoint[i]);
movies.push(i);
}
if (point[i] == 5) {
duplicateMovieClip (heartblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[i]);
setProperty("block" + i, _y , 550 - ypoint[i]);
movies.push(i);
}
i++;
}
if (_root.game == 1) {
if (((gameover == 1) || (colour == 5)) || ((((greycount + 1) / countdown) != Math.floor((greycount + 1) / countdown)) && (point[140] > 0))) {
wait = 0;
stage = 6;
} else {
colour = Math.floor(Math.random() * 4) + 1;
greycount++;
if ((greycount / countdown) == Math.floor(greycount / countdown)) {
countdown--;
_root.drops = countdown;
colour = 8;
} else {
_root.drops = countdown - (greycount - (Math.floor(greycount / countdown) * countdown));
}
if (colour == 1) {
duplicateMovieClip (nredblock, "newblock", i);
}
if (colour == 2) {
duplicateMovieClip (nblueblock, "newblock", i);
}
if (colour == 3) {
duplicateMovieClip (ngreenblock, "newblock", i);
}
if (colour == 4) {
duplicateMovieClip (nyelblock, "newblock", i);
}
if (colour == 5) {
duplicateMovieClip (nheartblock, "newblock", i);
}
if (colour == 8) {
duplicateMovieClip (ncrystalblock, "newblock", i);
}
stage = 1.5;
y = 50;
setProperty("newblock", _y , y);
}
}
if (_root.game == 2) {
if ((gameover == 1) || (point[140] > 0)) {
wait = 0;
stage = 6;
} else {
_root.drops = Math.floor(100 * (0.666 * (Math.pow(2, greycount / 100) - 1))) / 1;
colour = Math.floor(Math.random() * 4) + 1;
if (Math.random() < (0.666 * (Math.pow(2, greycount / 100) - 1))) {
colour = 5;
}
if (greycount < 100) {
greycount++;
}
if (colour == 1) {
duplicateMovieClip (nredblock, "newblock", i);
}
if (colour == 2) {
duplicateMovieClip (nblueblock, "newblock", i);
}
if (colour == 3) {
duplicateMovieClip (ngreenblock, "newblock", i);
}
if (colour == 4) {
duplicateMovieClip (nyelblock, "newblock", i);
}
if (colour == 5) {
duplicateMovieClip (nheartblock, "newblock", i);
}
if (colour == 8) {
duplicateMovieClip (ncrystalblock, "newblock", i);
}
stage = 1.5;
y = 50;
setProperty("newblock", _y , y);
}
}
}
}
if (stage == 1.5) {
x = _xmouse;
this.createEmptyMovieClip("guideline", 1);
if (x < ((225 - r2_8) + (r2 / 2))) {
x = 225 - r2_8;
temp = 100;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2_8) + (r2 / 2))) && (x < ((225 - r2_7) + (r2 / 2)))) {
x = 225 - r2_7;
temp = 109;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2_7) + (r2 / 2))) && (x < ((225 - r2_6) + (r2 / 2)))) {
x = 225 - r2_6;
temp = 117;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2_6) + (r2 / 2))) && (x < ((225 - r2_5) + (r2 / 2)))) {
x = 225 - r2_5;
temp = 124;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2_5) + (r2 / 2))) && (x < ((225 - r2_4) + (r2 / 2)))) {
x = 225 - r2_4;
temp = 130;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2_4) + (r2 / 2))) && (x < ((225 - r2_3) + (r2 / 2)))) {
x = 225 - r2_3;
temp = 135;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2_3) + (r2 / 2))) && (x < ((225 - r2_2) + (r2 / 2)))) {
x = 225 - r2_2;
temp = 139;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2_2) + (r2 / 2))) && (x < ((225 - r2) + (r2 / 2)))) {
x = 225 - r2;
temp = 142;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 - r2) + (r2 / 2))) && (x < (225 + (r2 / 2)))) {
x = 225;
temp = 144;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > (225 + (r2 / 2))) && (x < ((225 + r2) + (r2 / 2)))) {
x = 225 + r2;
temp = 143;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 + r2) + (r2 / 2))) && (x < ((225 + r2_2) + (r2 / 2)))) {
x = 225 + r2_2;
temp = 141;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 + r2_2) + (r2 / 2))) && (x < ((225 + r2_3) + (r2 / 2)))) {
x = 225 + r2_3;
temp = 138;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 + r2_3) + (r2 / 2))) && (x < ((225 + r2_4) + (r2 / 2)))) {
x = 225 + r2_4;
temp = 134;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 + r2_4) + (r2 / 2))) && (x < ((225 + r2_5) + (r2 / 2)))) {
x = 225 + r2_5;
temp = 129;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 + r2_5) + (r2 / 2))) && (x < ((225 + r2_6) + (r2 / 2)))) {
x = 225 + r2_6;
temp = 123;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if ((x > ((225 + r2_6) + (r2 / 2))) && (x < ((225 + r2_7) + (r2 / 2)))) {
x = 225 + r2_7;
temp = 116;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
if (x > ((225 + r2_7) + (r2 / 2))) {
x = 225 + r2_8;
temp = 108;
while (((point[below[temp]] == 0) && (point[botleft[temp]] == 0)) && (point[botright[temp]] == 0)) {
temp = below[temp];
}
tempx = xpoint[temp];
guideline.moveTo(225 + tempx, 60);
tempy = ypoint[temp];
}
setProperty("newblock", _x , x);
if (colour < 8) {
if (((point[botright[temp]] == 0) && (point[botleft[temp]] == 0)) || (point[above[temp]] != 0)) {
guideline.lineStyle(3, 16711680, 100);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(215 + tempx, 535 - tempy);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(235 + tempx, 535 - tempy);
} else {
guideline.lineStyle(3, 0, 100);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(215 + tempx, 535 - tempy);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(235 + tempx, 535 - tempy);
}
} else if ((point[botright[temp]] > 0) || (point[botleft[temp]] > 0)) {
guideline.lineStyle(3, 16711680, 100);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(215 + tempx, 535 - tempy);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(235 + tempx, 535 - tempy);
} else {
guideline.lineStyle(3, 0, 100);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(215 + tempx, 535 - tempy);
guideline.lineTo(225 + tempx, 550 - tempy);
guideline.lineTo(235 + tempx, 535 - tempy);
}
}
if (stage == 1.75) {
var yy = 0;
wait++;
speed = speed + (0.012 * wait);
yy = newblock._y * speed;
if (yy > (550 - ypoint[temp])) {
newblock._y = 550 - ypoint[temp];
wait = 0;
stage = 2;
if (colour == 8) {
stage = 1.8;
wait = 38;
}
} else {
newblock._y = yy;
}
}
if (stage == 1.8) {
wait--;
if (wait == 0) {
stage = 1.9;
}
if (wait == 37) {
removeMovieClip("newblock");
duplicateMovieClip (crystalblock, "newblock", i);
setProperty("newblock", _x , 225 + xpoint[temp]);
setProperty("newblock", _y , 550 - ypoint[temp]);
if (point[below[temp]] == 1) {
newblock.gotoAndPlay(2);
}
if (point[below[temp]] == 2) {
newblock.gotoAndPlay(36);
}
if (point[below[temp]] == 3) {
newblock.gotoAndPlay(70);
}
if (point[below[temp]] == 4) {
newblock.gotoAndPlay(106);
}
if (point[below[temp]] == 5) {
newblock.gotoAndPlay(142);
}
colour = point[below[temp]];
point[below[temp]] = 0;
var movcount = 0;
i = 0;
while (i < movies.length) {
removeMovieClip("block" + movies[i]);
i++;
}
movies.length = 0;
i = 0;
while (i < 145) {
if (point[i] == 7) {
duplicateMovieClip (fixedblock, "block" + movcount, i);
setProperty("block" + movcount, _x , 225 + xpoint[i]);
setProperty("block" + movcount, _y , 550 - ypoint[i]);
movies.push(movcount);
movcount++;
}
if (point[i] == 5) {
duplicateMovieClip (heartblock, "block" + movcount, i);
setProperty("block" + movcount, _x , 225 + xpoint[i]);
setProperty("block" + movcount, _y , 550 - ypoint[i]);
movies.push(movcount);
movcount++;
}
if (point[i] == 1) {
duplicateMovieClip (block_orig, "block" + movcount, i);
setProperty("block" + movcount, _x , 225 + xpoint[i]);
setProperty("block" + movcount, _y , 550 - ypoint[i]);
movies.push(movcount);
movcount++;
}
if (point[i] == 2) {
duplicateMovieClip (blueblock, "block" + movcount, i);
setProperty("block" + movcount, _x , 225 + xpoint[i]);
setProperty("block" + movcount, _y , 550 - ypoint[i]);
movies.push(movcount);
movcount++;
}
if (point[i] == 3) {
duplicateMovieClip (greenblock, "block" + movcount, i);
setProperty("block" + movcount, _x , 225 + xpoint[i]);
setProperty("block" + movcount, _y , 550 - ypoint[i]);
movies.push(movcount);
movcount++;
}
if (point[i] == 4) {
duplicateMovieClip (yelblock, "block" + movcount, i);
setProperty("block" + movcount, _x , 225 + xpoint[i]);
setProperty("block" + movcount, _y , 550 - ypoint[i]);
movies.push(movcount);
movcount++;
}
i++;
}
}
}
if (stage == 1.9) {
actions.length = 0;
point2 = new Array(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, 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
i = 1;
while (i < 145) {
if (point[i] == colour) {
_root.score = _root.score + 50;
actions.push(i, point[i], 4);
point2[i] = 0;
if ((point[topleft[i]] == 5) || (point[topleft[i]] == 7)) {
actions.push(topleft[i], point[topleft[i]], 4);
point2[topleft[i]] = 0;
}
if ((point[topright[i]] == 5) || (point[topright[i]] == 7)) {
actions.push(topright[i], point[topright[i]], 4);
point2[topright[i]] = 0;
}
if ((point[botleft[i]] == 5) || (point[botleft[i]] == 7)) {
actions.push(botleft[i], point[botleft[i]], 4);
point2[botleft[i]] = 0;
}
if ((point[botright[i]] == 5) || (point[botright[i]] == 7)) {
actions.push(botright[i], point[botright[i]], 4);
point2[botright[i]] = 0;
}
} else if (point[i] > 0) {
if (((point[i] == 5) || (point[i] == 7)) && ((((point[botright[i]] == colour) || (point[botleft[i]] == colour)) || (point[topright[i]] == colour)) || (point[topleft[i]] == colour))) {
} else {
point2[i] = point[i];
actions.push(i, point2[i], 0);
}
}
i++;
}
_root.tscore = _root.tscore + _root.score;
_root.score = 0;
i = 1;
while (i < 145) {
point[i] = point2[i];
i++;
}
wait = 11;
stage = 5;
}
if (stage == 2) {
wait = 0;
var actions = new Array();
point2 = new Array(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, 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
moving = new 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, 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, 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, 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, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
i = 1;
while (i < 145) {
if (point[i] == 7) {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
if ((point[i] > 0) && (point[i] < 6)) {
if ((((point[botright[i]] > 0) && (point[left[i]] > 0)) && (((point[botright[left[i]]] > 0) || (point[below[left[i]]] > 0)) || (point[botleft[left[i]]] > 0))) || (((point[botleft[i]] > 0) && (point[right[i]] > 0)) && (((point[botleft[right[i]]] > 0) || (point[below[right[i]]] > 0)) || (point[botright[right[i]]] > 0)))) {
if ((moving[botright[i]] == 3) || (moving[botleft[i]] == 2)) {
if (moving[botright[i]] == 3) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
}
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else if (((point[botright[i]] == 0) && (point[botleft[i]] == 0)) && (point[below[i]] == 0)) {
wait = 1;
floatwait = 10;
actions.push(i, point[i], 1);
point[i] = 0;
} else if ((point[botright[i]] == 0) && (point[botleft[i]] == 0)) {
if (moving[below[i]] > 1) {
if (moving[below[i]] == 3) {
if (point[botright[i]] == 0) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else if (point[botleft[i]] == 0) {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else if ((oldmoving[topright[i]] == 2) || (oldmoving[topleft[i]] == 3)) {
if (oldmoving[topright[i]] == 2) {
if (point[botleft[i]] == 0) {
if ((((point[left[i]] > 0) && (point[below[left[i]]] == 0)) && (point[botleft[left[i]]] == 0)) && (point[botright[left[i]]] == 0)) {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
} else {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
}
} else if ((moving[botright[i]] == 3) || (moving[botleft[i]] == 2)) {
if (moving[botright[i]] == 3) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
}
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else if (point[botright[i]] == 0) {
if ((((point[right[i]] > 0) && (point[below[right[i]]] == 0)) && (point[botleft[right[i]]] == 0)) && (point[botright[right[i]]] == 0)) {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
} else {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
}
} else if ((moving[botright[i]] == 3) || (moving[botleft[i]] == 2)) {
if (moving[botright[i]] == 3) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
}
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else if (point[botright[i]] == 0) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else if (point[botleft[i]] == 0) {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
} else if ((moving[botright[i]] == 3) || (moving[botleft[i]] == 2)) {
if (moving[botright[i]] == 3) {
if ((point[right[i]] == 0) && (point[botleft[i]] > 0)) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else if ((moving[botright[i]] == 3) || (moving[botleft[i]] == 2)) {
if (moving[botright[i]] == 3) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
}
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else if ((point[left[i]] == 0) && (point[botright[i]] > 0)) {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
} else if ((moving[botright[i]] == 3) || (moving[botleft[i]] == 2)) {
if (moving[botright[i]] == 3) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
}
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
} else if ((moving[botright[i]] == 3) || (moving[botleft[i]] == 2)) {
if (moving[botright[i]] == 3) {
wait = 1;
point2[botright[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 3);
moving[i] = 3;
} else {
wait = 1;
point2[botleft[i]] = point[i];
point2[i] = 0;
actions.push(i, point[i], 2);
moving[i] = 2;
}
} else {
actions.push(i, point[i], 0);
point2[i] = point[i];
moving[i] = 1;
}
}
i++;
}
oldmoving = moving;
i = 1;
while (i < 145) {
point[i] = point2[i];
i++;
}
if (wait == 1) {
stage = 3;
wait = 11;
} else {
stage = 4;
}
}
if (stage == 3) {
wait--;
if (wait == 1) {
stage = 2;
}
if (wait == 10) {
removeMovieClip("newblock");
i = 0;
while (i < movies.length) {
removeMovieClip("block" + movies[i]);
i++;
}
movies.length = 0;
i = 0;
while (i < actions.length) {
if ((actions[i + 1] == 7) && (actions[i + 2] == 0)) {
duplicateMovieClip (fixedblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 5) && (actions[i + 2] == 0)) {
duplicateMovieClip (heartblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 1) && (actions[i + 2] == 0)) {
duplicateMovieClip (block_orig, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 2) && (actions[i + 2] == 0)) {
duplicateMovieClip (blueblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 3) && (actions[i + 2] == 0)) {
duplicateMovieClip (greenblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 4) && (actions[i + 2] == 0)) {
duplicateMovieClip (yelblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 5) && (actions[i + 2] == 2)) {
duplicateMovieClip (lheartblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 1) && (actions[i + 2] == 2)) {
duplicateMovieClip (lredblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 2) && (actions[i + 2] == 2)) {
duplicateMovieClip (lblueblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 3) && (actions[i + 2] == 2)) {
duplicateMovieClip (lgreenblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 4) && (actions[i + 2] == 2)) {
duplicateMovieClip (lyelblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 5) && (actions[i + 2] == 3)) {
duplicateMovieClip (rheartblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 1) && (actions[i + 2] == 3)) {
duplicateMovieClip (rredblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 2) && (actions[i + 2] == 3)) {
duplicateMovieClip (rblueblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 3) && (actions[i + 2] == 3)) {
duplicateMovieClip (rgreenblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 4) && (actions[i + 2] == 3)) {
duplicateMovieClip (ryelblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 5) && (actions[i + 2] == 1)) {
duplicateMovieClip (fheartblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
fmovies.push(i);
}
if ((actions[i + 1] == 1) && (actions[i + 2] == 1)) {
duplicateMovieClip (fredblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
fmovies.push(i);
}
if ((actions[i + 1] == 2) && (actions[i + 2] == 1)) {
duplicateMovieClip (fblueblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
fmovies.push(i);
}
if ((actions[i + 1] == 3) && (actions[i + 2] == 1)) {
duplicateMovieClip (fgreenblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
fmovies.push(i);
}
if ((actions[i + 1] == 4) && (actions[i + 2] == 1)) {
duplicateMovieClip (fyelblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
fmovies.push(i);
}
i = i + 3;
}
}
}
if (stage == 4) {
actions.length = 0;
hitarray = new Array();
duffarray = new Array();
i = 1;
while (i < 145) {
moveon = 1;
if (duffarray.length > 0) {
u = 0;
while (u < duffarray.length) {
if (duffarray[u] == i) {
moveon = 0;
}
u++;
}
}
if ((moveon == 1) && ((point[i] > 0) && (point[i] < 5))) {
temparray = new Array();
temparray[0] = i;
arrayno = 1;
point[i] = point[i] * 10;
var end = 0;
while (end == 0) {
target = temparray[arrayno - 1];
if ((point[topleft[target]] * 10) == point[target]) {
point[topleft[target]] = point[topleft[target]] * 10;
temparray.push(topleft[target]);
}
if ((point[topright[target]] * 10) == point[target]) {
point[topright[target]] = point[topright[target]] * 10;
temparray.push(topright[target]);
}
if ((point[botleft[target]] * 10) == point[target]) {
point[botleft[target]] = point[botleft[target]] * 10;
temparray.push(botleft[target]);
}
if ((point[botright[target]] * 10) == point[target]) {
point[botright[target]] = point[botright[target]] * 10;
temparray.push(botright[target]);
}
if (temparray.length == arrayno) {
if (temparray.length < 3) {
if (temparray.length != 0) {
if (temparray.length < 2) {
actions.push(temparray[0], point[temparray[0]] / 10, 0);
point[temparray[0]] = point[temparray[0]] / 10;
duffarray.push(temparray[0]);
} else {
actions.push(temparray[0], point[temparray[0]] / 10, 0);
actions.push(temparray[1], point[temparray[1]] / 10, 0);
point[temparray[0]] = point[temparray[0]] / 10;
point[temparray[1]] = point[temparray[1]] / 10;
duffarray.push(temparray[0]);
duffarray.push(temparray[1]);
}
}
} else {
chain++;
cscore = cscore + 10;
if (temparray.length > 3) {
cscore = cscore + ((temparray.length - 3) * 10);
}
stage = 5;
wait = 11;
explode = 1;
w = 0;
while (w < temparray.length) {
actions.push(temparray[w], point[temparray[w]] / 10, 4);
point[temparray[w]] = 0;
if ((point[topleft[temparray[w]]] == 5) || (point[topleft[temparray[w]]] == 7)) {
actions.push(topleft[temparray[w]], point[topleft[temparray[w]]], 4);
point[topleft[temparray[w]]] = 0;
cscore++;
}
if ((point[topright[temparray[w]]] == 5) || (point[topright[temparray[w]]] == 7)) {
actions.push(topright[temparray[w]], point[topright[temparray[w]]], 4);
point[topright[temparray[w]]] = 0;
cscore++;
}
if ((point[botleft[temparray[w]]] == 5) || (point[botleft[temparray[w]]] == 7)) {
actions.push(botleft[temparray[w]], point[botleft[temparray[w]]], 4);
point[botleft[temparray[w]]] = 0;
cscore++;
}
if ((point[botright[temparray[w]]] == 5) || (point[botright[temparray[w]]] == 7)) {
actions.push(botright[temparray[w]], point[botright[temparray[w]]], 4);
point[botright[temparray[w]]] = 0;
cscore++;
}
if (chain > 1) {
_root.score = (10 * cscore) * (chain + 1);
}
w++;
}
}
end = 1;
} else {
arrayno++;
}
}
}
i++;
}
i = 1;
while (i < 145) {
if ((point[i] == 7) || (point[i] == 5)) {
actions.push(i, point[i], 0);
}
i++;
}
if (stage == 4) {
stage = 1;
}
}
if (stage == 5) {
wait--;
if (wait == 1) {
stage = 2;
}
if (wait == 10) {
removeMovieClip("chainy");
if (chain == 2) {
duplicateMovieClip ("chain", "chainy", 3);
chainy.swapDepths(chainy._parent.getNextHighestDepth());
setProperty("chainy", _x , 398);
setProperty("chainy", _y , 370);
}
if (chain == 3) {
duplicateMovieClip ("chain3", "chainy", 3);
chainy.swapDepths(chainy._parent.getNextHighestDepth());
setProperty("chainy", _x , 398);
setProperty("chainy", _y , 370);
}
if (chain == 4) {
duplicateMovieClip ("chain4", "chainy", 3);
chainy.swapDepths(chainy._parent.getNextHighestDepth());
setProperty("chainy", _x , 398);
setProperty("chainy", _y , 370);
}
if (chain == 5) {
duplicateMovieClip ("chain5", "chainy", 3);
chainy.swapDepths(chainy._parent.getNextHighestDepth());
setProperty("chainy", _x , 398);
setProperty("chainy", _y , 370);
}
if (chain == 6) {
duplicateMovieClip ("chain6", "chainy", 3);
chainy.swapDepths(chainy._parent.getNextHighestDepth());
setProperty("chainy", _x , 398);
setProperty("chainy", _y , 370);
}
if (chain == 7) {
duplicateMovieClip ("chain7", "chainy", 3);
chainy.swapDepths(chainy._parent.getNextHighestDepth());
setProperty("chainy", _x , 398);
setProperty("chainy", _y , 370);
}
if (chain > 7) {
duplicateMovieClip ("chain8", "chainy", 3);
chainy.swapDepths(chainy._parent.getNextHighestDepth());
setProperty("chainy", _x , 398);
setProperty("chainy", _y , 370);
}
i = 0;
while (i < movies.length) {
removeMovieClip("block" + movies[i]);
i++;
}
removeMovieClip("newblock");
movies.length = 0;
i = 0;
while (i < actions.length) {
if ((actions[i + 1] == 7) && (actions[i + 2] == 0)) {
duplicateMovieClip (fixedblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 5) && (actions[i + 2] == 0)) {
duplicateMovieClip (heartblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 1) && (actions[i + 2] == 0)) {
duplicateMovieClip (block_orig, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 2) && (actions[i + 2] == 0)) {
duplicateMovieClip (blueblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 3) && (actions[i + 2] == 0)) {
duplicateMovieClip (greenblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 4) && (actions[i + 2] == 0)) {
duplicateMovieClip (yelblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 5) && (actions[i + 2] == 4)) {
duplicateMovieClip (eheartblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 7) && (actions[i + 2] == 4)) {
duplicateMovieClip (efixedblock, "deathblock" + i, i);
setProperty("deathblock" + i, _x , 225 + xpoint[actions[i]]);
setProperty("deathblock" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
gameover = 1;
point[actions[i]] = 7;
}
if ((actions[i + 1] == 1) && (actions[i + 2] == 4)) {
duplicateMovieClip (eredblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 2) && (actions[i + 2] == 4)) {
duplicateMovieClip (eblueblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 3) && (actions[i + 2] == 4)) {
duplicateMovieClip (egreenblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
if ((actions[i + 1] == 4) && (actions[i + 2] == 4)) {
duplicateMovieClip (eyelblock, "block" + i, i);
setProperty("block" + i, _x , 225 + xpoint[actions[i]]);
setProperty("block" + i, _y , 550 - ypoint[actions[i]]);
movies.push(i);
}
i = i + 3;
}
}
}
if (stage == 6) {
wait++;
if (wait == 139) {
removeMovieClip("newblock");
stage = 7;
}
var movey = 0;
while (movey == 0) {
if ((right[wait] > 0) && (left[wait] > 0)) {
if (((((point[right[right[wait]]] == 0) || (point[left[left[wait]]] == 0)) && ((left[left[left[wait]]] == 0) || (right[right[right[wait]]] == 0))) && (below[below[wait]] != 0)) && (above[above[wait]] != 0)) {
duplicateMovieClip (heartblock, "block" + wait, wait);
setProperty("block" + wait, _x , 225 + xpoint[wait]);
setProperty("block" + wait, _y , 550 - ypoint[wait]);
} else {
duplicateMovieClip (fixedblock, "block" + wait, wait);
setProperty("block" + wait, _x , 225 + xpoint[wait]);
setProperty("block" + wait, _y , 550 - ypoint[wait]);
}
}
if (right[wait] > 0) {
wait++;
} else {
movey = 1;
}
}
}
if (stage == 7) {
_root.gotoAndStop(4);
stage = 8;
}
}
Frame 4
stop();
Frame 5
stop();
Frame 6
stop();
Frame 7
stop();
Frame 8
stop();
Frame 9
stop();
Symbol 16 MovieClip [egreenblock] Frame 11
stop();
Symbol 26 MovieClip [eredblock] Frame 11
stop();
Symbol 48 MovieClip [eblueblock] Frame 11
stop();
Symbol 50 MovieClip [fyelblock] Frame 11
stop();
Symbol 52 MovieClip [fredblock] Frame 11
stop();
Symbol 54 MovieClip [fgreenblock] Frame 11
stop();
Symbol 56 MovieClip [fblueblock] Frame 11
stop();
Symbol 58 MovieClip [rblueblock] Frame 11
stop();
Symbol 59 MovieClip [rgreenblock] Frame 11
stop();
Symbol 60 MovieClip [rredblock] Frame 11
stop();
Symbol 61 MovieClip [ryelblock] Frame 11
stop();
Symbol 62 MovieClip [lyelblock] Frame 11
stop();
Symbol 63 MovieClip [lblueblock] Frame 11
stop();
Symbol 64 MovieClip [lgreenblock] Frame 11
stop();
Symbol 65 MovieClip [lredblock] Frame 11
stop();
Symbol 79 MovieClip Frame 11
stop();
Symbol 80 MovieClip Frame 11
stop();
Symbol 90 MovieClip Frame 11
stop();
Symbol 99 MovieClip Frame 40
stop();
Symbol 101 MovieClip Frame 11
stop();
Symbol 104 MovieClip Frame 68
stop();
Symbol 159 MovieClip Frame 35
stop();
Symbol 159 MovieClip Frame 69
stop();
Symbol 159 MovieClip Frame 105
stop();
Symbol 159 MovieClip Frame 141
stop();
Symbol 159 MovieClip Frame 177
stop();
Symbol 162 MovieClip Frame 68
stop();
Symbol 167 MovieClip Frame 68
stop();
Symbol 170 MovieClip Frame 68
stop();
Symbol 173 MovieClip Frame 68
stop();
Symbol 176 MovieClip Frame 68
stop();
Symbol 179 MovieClip Frame 68
stop();
Instance of Symbol 68 MovieClip [block] "block_orig" in Symbol 180 MovieClip [listener] Frame 1
/* no clip actions */
Symbol 187 Button
on (release) {
game = 1;
gotoAndPlay (2);
}
Symbol 190 Button
on (release) {
game = 2;
gotoAndPlay (2);
}
Symbol 193 Button
on (release) {
gotoAndStop (6);
}
Symbol 197 Button
on (release) {
getURL ("http://www.wassonline.com", "_blank");
}
Symbol 200 Button
on (release) {
getURL ("http://www.wassonline.com", "_blank");
}
Symbol 209 Button
on (release) {
getURL ("http://www.wassonline.com", "_blank");
}
Symbol 218 MovieClip Frame 1
if (_root.game == 2) {
gotoAndPlay (2);
} else {
stop();
}
Symbol 218 MovieClip Frame 2
stop();
Symbol 223 Button
on (release) {
gotoAndStop (1);
}
Symbol 225 Button
on (release) {
gotoAndStop (6);
}
Symbol 305 MovieClip Frame 45
_root.gotoAndStop(5);
stop();
Symbol 307 MovieClip Frame 15
stop();
Symbol 311 MovieClip Frame 15
stop();
Symbol 314 MovieClip Frame 15
stop();
Symbol 315 Button
on (release) {
gotoAndPlay (2);
}
Symbol 325 Button
on (release) {
nextFrame();
}
Symbol 332 Button
on (release) {
prevFrame();
}