Something
jm56吧
全部回复
仅看楼主
level 13
auto_create_maps
var xx,yy,i,t,top,left,s;
global.mapsize=floor(room_width/32)*floor(room_height/32);
for( yy=0;yy<room_height;yy+=32)
{
yi = floor(yy/32);
for( xx=0;xx<room_width;xx+=32)
{
xi = floor(xx/32);
global.map[yi,xi]=0;
t = tile_layer_find(100,xx,yy);
if( t>=0 ) global.map[yi,xi]=1;
}
}
for( i=0;i<=yi;i+=1)
{
for( j=0;j<=xi;j+=1)
{
if( i==0 )
{
if(j==0)
global.mapvalue[i,j] = 4*global.map[i,j+1]+8*global.map[i+1,j];
else
{
if(j==xi)
global.mapvalue[i,j] = 1*global.map[i,j-1]+8*global.map[i+1,j];
else
global.mapvalue[i,j] = 1*global.map[i,j-1]+4*global.map[i,j+1]+8*global.map[i+1,j];
}
}
else
{
if(i==yi)
{
if(j==0)
global.mapvalue[i,j] = 2*global.map[i-1,j]+4*global.map[i,j+1];
else
{
if(j==xi)
global.mapvalue[i,j] = 1*global.map[i,j-1]+2*global.map[i-1,j];
else
global.mapvalue[i,j] = 1*global.map[i,j-1]+2*global.map[i-1,j]+4*global.map[i,j+1];
}
}
else
{
if(j==0)
global.mapvalue[i,j] = 2*global.map[i-1,j]+4*global.map[i,j+1]+8*global.map[i+1,j];
else
{
if(j==xi)
global.mapvalue[i,j] = 1*global.map[i,j-1]+2*global.map[i-1,j]+8*global.map[i+1,j];
else
global.mapvalue[i,j] = 1*global.map[i,j-1]+2*global.map[i-1,j]+4*global.map[i,j+1]+8*global.map[i+1,j];
}
}
}
}
}
for( i=0;i<=yi;i+=1)
{
for( j=0;j<=xi;j+=1)
{
if(global.map[i,j]==1)
tile_add(background, 32*global.mapvalue[i,j], 0, 32, 32, 32*j, 32*i, 10);
tile = tile_layer_find(100, 32*j+16, 32*i+16);
if (tile != -1)
{
tile_delete(tile);
}
}
}
2014年11月23日 00点11分 1
1