public static int GetAverageHeight(LogicIntArray2 tiles, int x0, int y0, int width, int height) { int sum = 0; int count = 0; for (int y = y0; y < tiles.height && y < y0 + height; ++y) { for (int x = x0; x < tiles.width && x < x0 + width; ++x) { ++count; sum += LogicTile.GetAltitude(tiles.Get(x, y)); } } if (count == 0) { return(0); } return(sum / count); }
public LogicIntArray2 CreateRoom(int width, int height, int tileHeight) { int tile = 0; tile = LogicTile.SetTerrain(tile, TerrainType.Dirt); tile = LogicTile.SetRoom(tile, 1); tile = LogicTile.SetAltitude(tile, tileHeight); LogicIntArray2 room = new LogicIntArray2(width, height, tile); /* * for (int y = 0; y < width; ++y) * { * for (int x = 0; x < width; ++x) * { * room.Set(x,y,tile); * } * }*/ return(room); }