SKYPIDAR,
gen_world. Create:
Код
grid_width=10; grid_height=10;
stepx=32; stepy=32;
gridWorld=ds_grid_create(grid_width,grid_height);
//Инициализация
var rand,obj,rand_image;
for(W=0;W!=grid_width;W+=1)
{
for(H=0;H!=grid_height;H+=1)
{
rand=irandom(10)
if (rand mod 10 ==0)
{
rand_image=irandom(Cell.image_number)
ds_grid_set_region(gridWorld,W,H,W+3,H+3,rand_image)
W=W+3; H=H+3;
}
else
{
rand_image=irandom(Cell.image_number)
ds_grid_set(gridWorld,25+W*stepx,25+H*stepy,rand_image)
}
}
}
//Создание
var current_cell;
for(W=0;W!=grid_width;W+=1)
for(H=0;H!=grid_height;H+=1)
{
current_cell=ds_grid_get(gridWorld,W,H)
obj=instance_create(25+W*stepx,25+H*stepy,Cell)
obj.image_index=current_cell;
}
Еще тут есть такой момент что может не распознать Cell.image_number
Это потому, если нет объекта клетки в комнате, поэтому и невидит
Код не проверял, но логика вроде понятная. Я бы сказал элементарная
Если что не понятно пиши)