using UnityEngine;
namespace FirstGearGames.Utilities.Objects
{
public static class Layers
{
///
/// Converts a layer mask to a layer number.
///
///
///
public static int LayerMaskToLayerNumber(LayerMask mask)
{
return LayerValueToLayerNumber(mask.value);
}
///
/// Converts a layer value int to a layer int.
///
///
///
public static int LayerValueToLayerNumber(int bitmask)
{
int result = bitmask > 0 ? 0 : 31;
while (bitmask > 1)
{
bitmask = bitmask >> 1;
result++;
}
return result;
}
///
/// Returns if a LayerMask contains a specified layer.
///
/// LayerMask to check for layer in.
/// Layer to check within LayerMask.
///
public static bool ContainsLayer(LayerMask layerMask, int layer)
{
return (layerMask == (layerMask | (1 << layer)));
}
}
}