var ctx;
var pixels;
var w = 212 * 2;
var h = 120 * 2;
var map = new Array(64 * 64 * 64);
var texmap = new Array(16 * 16 * 3 * 16);
function init() {
for ( var i = 1; i < 16; i++) {
var br = 255 - ((Math.random() * 96) | 0);
for ( var y = 0; y < 16 * 3; y++) {
for ( var x = 0; x < 16; x++) {
var color = 0x966C4A;
if (i == 4)
color = 0x7F7F7F;
if (i != 4 || ((Math.random() * 3) | 0) == 0) {
br = 255 - ((Math.random() * 96) | 0);
}
if ((i == 1 && y < (((x * x * 3 + x * 81) >>
2) & 3) + 18)) {
color = 0x6AAA40;
} else if ((i == 1 && y < (((x * x * 3 + x *
81) >> 2) & 3) + 19)) {
br = br * 2 / 3;
}
if (i == 7) {
color = 0x675231;
if (x > 0 && x < 15
&& ((y > 0 && y < 15) || (y >
32 && y < 47))) {
color = 0xBC9862;
var xd = (x - 7);
var yd = ((y & 15) - 7);
if (xd < 0)
xd = 1 - xd;
if (yd < 0)
yd = 1 - yd;
if (yd > xd)
xd = yd;
br = 196 - ((Math.random() * 32) | 0)
+ xd % 3 * 32;
} else if (((Math.random() * 2) | 0) == 0)
{
br = br * (150 - (x & 1) * 100) / 100;
}
}
if (i == 5) {
color = 0xB53A15;
if ((x + (y >> 2) * 4) % 8 == 0 || y % 4
== 0) {
color = 0xBCAFA5;
}
}
if (i == 9) {
color = 0x4040ff;
}
var brr = br;
if (y >= 32)
brr /= 2;
if (i == 8) {
color = 0x50D937;
if (((Math.random() * 2) | 0) == 0) {
color = 0;
brr = 255;
}
}
var col = (((color >> 16) & 0xff) * brr / 255)
<< 16
| (((color >> 8) & 0xff) * brr / 255)
<< 8
| (((color) & 0xff) * brr / 255);
texmap[x + y * 16 + i * 256 * 3] = col;
}
}
}
ctx = document.getElementById('game').getContext('2d');
for ( var x = 0; x < 64; x++) {
for ( var y = 0; y < 64; y++) {
for ( var z = 0; z < 64; z++) {
var i = z << 12 | y << 6 | x;
var yd = (y - 32.5) * 0.4;
var zd = (z - 32.5) * 0.4;
map[i] = (Math.random() * 16) | 0;
if (Math.random() > Math.sqrt(Math.sqrt(yd *