// allow spawning of archetype objects static void checkArchetype(GameObject newObject, GameObject original) { // special archetype component for spawnable scene objects stObject stobject = newObject.GetComponent <stObject>(); if (stobject != null && stobject.myArchetype != null) { newObject.SetActive(true); } }
void DestroyParticle() { stObject obj = GetComponent <stObject>(); if (obj != null) { obj.Remove(); } else { Destroy(gameObject); } }
/// <summary> /// remove an object using st remove behaviors /// works on non st objects as normal destroy /// </summary> /// <param name="obj">Object to remove.</param> /// <param name="delay">Seconds to delay removal. Negative means immediately. Zero is at end of frame.</param> public static void Remove(GameObject obj, float delay = -1) { stObject stobject = obj.GetComponent <stObject>(); if (stobject != null) { stobject.Remove(delay); } else { Object.Destroy(obj); } }