protected bool HasCollisions(uint targetX, uint targetY, Item item)
{
for (var x = targetX; x < targetX + item.Data.Width; ++x)
{
for (var y = targetY; y < targetY + item.Data.Height; ++y)
{
if (x > _width - 1 || y > _height - 1)
continue;
if (_map[x, y] != null)
return true;
}
}
return false;
}