position | Rectangle on the screen to use for the field. |
label | Optional label in front of the field. |
layer | The layer shown in the field. |
style | Optional GUIStyle. |
int The layer selected by the user.
Make a layer selection field.
Layer field in an Editor Window.
// Change the Tag and/or the layer of the selected GameObjects.
class EditorGUITagLayerField extends EditorWindow {
var selectedTag : String = ""; var selectedLayer : int = 0;
@MenuItem("Examples/Tag - Layer for Selection") static function Init() { var window = GetWindow(EditorGUITagLayerField); window.position = Rect(0,0,350,70); window.Show(); }
function OnGUI() { selectedTag = EditorGUI.TagField( Rect(3,3,position.width/2 - 6, 20), "New Tag:", selectedTag); selectedLayer = EditorGUI.LayerField( Rect(position.width/2 + 3,3, position.width/2 - 6, 20), "New Layer:", selectedLayer);
if(Selection.activeGameObject) { if(GUI.Button(Rect(3,25,90,17),"Change Tags")) for(var go : GameObject in Selection.gameObjects) go.tag = selectedTag; if(GUI.Button(Rect(position.width-96, 25,90,17),"Change Layers")) for(var go : GameObject in Selection.gameObjects) go.layer = selectedLayer; } }
function OnInspectorUpdate() { Repaint(); } }