DeleteComponentsInChildrenWizard

From Unify Community Wiki
(Difference between revisions)
Jump to: navigation, search
m (Reverted edits by Joseph05408 (Talk); changed back to last version by T)
m (Text replace - "</csharp>" to "</syntaxhighlight>")
 
(One intermediate revision by one user not shown)
Line 13: Line 13:
 
== C# - DeleteComponentsInChildrenWizard.cs ==
 
== C# - DeleteComponentsInChildrenWizard.cs ==
  
<csharp>using UnityEngine;
+
<syntaxhighlight lang="csharp">using UnityEngine;
 
using UnityEditor;
 
using UnityEditor;
 
using System.Collections;
 
using System.Collections;
Line 50: Line 50:
 
       }
 
       }
 
     }
 
     }
}</csharp>
+
}</syntaxhighlight>
  
 
[[Category: Wizard]]
 
[[Category: Wizard]]

Latest revision as of 20:45, 10 January 2012

Author: Timo (T)

[edit] Description

This Wizard helps to delete a special type of components which are attached to the children of the selected Gameobject.

[edit] Usage

You must place the script in a folder named Editor in your projects Assets folder for it to work properly.

Launch the Wizard and fill in the string of the type you want to delete.

[edit] C# - DeleteComponentsInChildrenWizard.cs

using UnityEngine;
using UnityEditor;
using System.Collections;
 
 
public class DeleteComponentsInChildrenWizard : ScriptableWizard
{
    public string typeString;
 
    [MenuItem ( "GameObject/Delete Components in Children Wizard" )]
    static void DoSet()
    {
        ScriptableWizard.DisplayWizard("Set the string of type", typeof(DeleteComponentsInChildrenWizard), "Set");
    }
 
    void OnWizardUpdate()
    {
        helpString = "Set the string of the Component type you want to delete:";
    }
 
    void OnWizardCreate()
    {
    	DeleteChildren();
    }
 
    void DeleteChildren()
    {
        	Transform[] allTransforms = Selection.GetTransforms( SelectionMode.Deep ); //Get all Children
 
       	foreach( Transform eachTransform in allTransforms )
       	{
       		if ( eachTransform.GetComponent ( typeString ) != null )
       		{
       			Object.DestroyImmediate ( eachTransform.GetComponent (  typeString ) );
       		}
       	}
    }
}
Personal tools
Namespaces

Variants
Actions
Navigation
Extras
Toolbox