git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@1299 c06c8d41-db1a-0410-9941-cceddc491573
YYHCM4CUN6G5PFWPGOYMDYX4P3SGNYUT5SZK5AUWUL2G7RULQJDAC
// XXX TODO: fractalisation
// Fractalisation
// LAVA is a placeholder for cells which will become shallow water
// at the end of the current iteration.
// WATER_STUCK is a placeholder for last iteration's generated water.
replace_in_grid(margin, margin, GXM-margin, GYM-margin,
DNGN_SHALLOW_WATER, DNGN_WATER_STUCK);
for ( int i = 0; i < 6; ++i )
{
for ( int x = margin; x < GXM - margin; ++x )
{
for ( int y = margin; y < GYM - margin; ++y )
{
if ( grd[x][y] == DNGN_DEEP_WATER )
{
int badness = count_neighbours(x, y, DNGN_WATER_STUCK);
if ( random2(badness) >= 2 && coinflip() )
grd[x][y] = DNGN_LAVA;
}
}
}
replace_in_grid(margin, margin, GXM-margin, GYM-margin,
DNGN_LAVA, DNGN_WATER_STUCK);
}
replace_in_grid(margin, margin, GXM-margin, GYM-margin,
DNGN_WATER_STUCK, DNGN_SHALLOW_WATER);