|
|
-
- local Layer = Layer
- local rawget = rawget
- local setmetatable = setmetatable
-
- local LayerMask = {}
-
- LayerMask.__index = function(t,k)
- return rawget(LayerMask, k)
- end
-
- LayerMask.__call = function(t,v)
- return LayerMask.New(v)
- end
-
- function LayerMask.New(value)
- local layer = {value = value or 0}
- setmetatable(layer, LayerMask)
- return layer
- end
-
- function LayerMask:Get()
- return self.value
- end
-
- function LayerMask.NameToLayer(name)
- return Layer[name]
- end
-
- function LayerMask.GetMask(...)
- local arg = {...}
- local value = 0
-
- for i = 1, #arg do
- local n = LayerMask.NameToLayer(arg[i])
-
- if n ~= 0 then
- value = value + 2 ^ n
- end
- end
-
- return value
- end
-
- UnityEngine.LayerMask = LayerMask
- setmetatable(LayerMask, LayerMask)
- return LayerMask
-
-
-
|