var Tile = require('../Tile'); var IsInLayerBounds = require('./IsInLayerBounds'); var RecalculateFacesAt = require('./RecalculateFacesAt'); var RemoveTileAt = function (tileX, tileY, replaceWithNull, recalculateFaces, layer){ if (replaceWithNull === undefined) { replaceWithNull = false ; } if (recalculateFaces === undefined) { recalculateFaces = true ; } if (!IsInLayerBounds(tileX, tileY, layer)) { return null ; } var tile = layer.data[tileY][tileX]; if (tile === null ) { return null ; } else { layer.data[tileY][tileX] = replaceWithNull? null : new Tile(layer, -1, tileX, tileY, tile.width, tile.height); } if (recalculateFaces && tile && tile.collides) { RecalculateFacesAt(tileX, tileY, layer); } return tile; } ; module.exports = RemoveTileAt;