LayerA dropdown selector for layer. Allowed type:
-
string: to pick a layer name -
int: to pick a layer number. (use1 << intto get the mask value) -
LayerMask: to pick a single layer into theLayerMask -
Allow Multiple: No
Note: want a bitmask layer selector? Unity already has it. Just use public LayerMask myLayerMask;
using SaintsField; [Layer] public string layerString; [Layer] public int layerInt; // Unity supports multiple layer selector public LayerMask myLayerMask; [Layer] // But you can enforce a single layer picker instead public LayerMask singleLayerMask;

It can work with ShowInInspector
[ShowInInspector, Layer] private int layerIntRaw { get => layerInt; set => layerInt = value; }

It can work with ShowInInspector/Button parameters and return value
[ShowInInspector] private (int i, string s, LayerMask mask) Layer([Layer] int layerI, [Layer] string layerS, [Layer] LayerMask layerMask) { return (layerI, layerS, layerMask); } [Button] private (int i, string s, LayerMask mask) Layer([Layer] int layerI, [Layer] string layerS, [Layer] LayerMask layerMask) { return (layerI, layerS, layerMask); }
