#include <acknex.h>
#include <default.c>
//
var voxel_size = 64; // hier fur den abstand ;)
typedef struct VOXEL
{
ENTITY * front; // x-
ENTITY * back; // x+
ENTITY * left; // y+
ENTITY * right; // y-
ENTITY * top; // z+
ENTITY * bottom; // z-
} VOXEL;
VOXEL * VoxelStructure[20][20][20]; // 2D array
void create_voxel()
{
int x, y, z;
for(x = 0; x < 6; x++)
{
for(y = 0; y < 6; y++)
{
for(z = 0; z < 6; z++)
{
VoxelStructure[x][y][z] = sys_malloc(sizeof(VOXEL));
VoxelStructure[x][y][z].front = ent_create("brick02.pcx" , vector(voxel_size * x + 32, voxel_size * y, voxel_size * z), NULL); // seite erstellen
VoxelStructure[x][y][z].front.pan = 180;// winkel setzen
VoxelStructure[x][y][z].back = ent_create("brick02.pcx" , vector(voxel_size * x - 32, voxel_size * y, voxel_size * z), NULL); // seite erstellen
VoxelStructure[x][y][z].back.pan = -180; // winkel setzen
VoxelStructure[x][y][z].left = ent_create( "brick02.pcx" , vector(voxel_size * x, voxel_size * y + 32, voxel_size * z), NULL); // seite erstellen
VoxelStructure[x][y][z].left.pan = 90; // winkel setzen
VoxelStructure[x][y][z].right = ent_create( "brick02.pcx", vector(voxel_size * x, voxel_size * y - 32, voxel_size * z), NULL); // seite erstellen
VoxelStructure[x][y][z].right.pan = -90; // winkel setzen
VoxelStructure[x][y][z].top = ent_create( "brick02.pcx", vector(voxel_size * x, voxel_size * y, voxel_size * z + 32), NULL); // seite erstellen
VoxelStructure[x][y][z].top.tilt = 90; // winkel setzen
VoxelStructure[x][y][z].bottom = ent_create( "brick02.pcx", vector(voxel_size * x, voxel_size * y, voxel_size * z - 32), NULL); // seite erstellen
VoxelStructure[x][y][z].bottom.tilt = 270; // winkel setzen
}
}
}
}
void main()
{
wait(1);
video_set(sys_metrics(0) * 0.75, sys_metrics(1) * 0.75, 0, 2);
fps_max = 60;
max_entities = 48000;
level_load("");
wait(1); // warten bis der level geladen ist, kann sonst probleme auf langsamen rechnern / gro?en leveln geben
create_voxel();
}