void PaintTile(IsaacRoomLayout layout, int x, int z, int brushSize, IsaacRoomTileType tileType) { // TODO: Implement brush size var w = layout.Tiles.GetLength(0); var h = layout.Tiles.GetLength(1); if (x < 0 || x >= w || z < 0 || z >= h) { return; } var sx = x - Mathf.FloorToInt(brushSize / 2.0f); var sz = z - Mathf.FloorToInt(brushSize / 2.0f); for (int dx = 0; dx < brushSize; dx++) { for (int dz = 0; dz < brushSize; dz++) { var xx = sx + dx; var zz = sz + dz; SetTile(layout, xx, zz, w, h, IsaacRoomTileType.Floor); } } }
void SetTile(IsaacRoomLayout layout, int x, int z, int width, int height, IsaacRoomTileType tileType) { if (x < 0 || x >= width || z < 0 || z >= height) { return; } layout.Tiles[x, z].tileType = tileType; }
public void InitializeTiles(int width, int height, IsaacRoomTileType tileType) { Tiles = new IsaacRoomTile[width, height]; for (int x = 0; x < width; x++) { for (int z = 0; z < height; z++) { var tile = new IsaacRoomTile(); tile.tileType = tileType; Tiles[x, z] = tile; } } }