private void InitCloneObject() { if (this.m_ClonObject == null) { this.m_ClonObject = base.CreateGameObject(base.gameObject); NcEffectBehaviour.HideNcDelayActive(this.m_ClonObject); NcDuplicator component = this.m_ClonObject.GetComponent <NcDuplicator>(); if (component != null) { UnityEngine.Object.Destroy(component); } NcDelayActive component2 = this.m_ClonObject.GetComponent <NcDelayActive>(); if (component2 != null) { UnityEngine.Object.Destroy(component2); } Component[] components = base.transform.GetComponents <Component>(); for (int i = 0; i < components.Length; i++) { if (!(components[i] is Transform) && !(components[i] is NcDuplicator)) { UnityEngine.Object.Destroy(components[i]); } } NcEffectBehaviour.RemoveAllChildObject(base.gameObject, false); return; } }