//Methods public static void Add(GameObject gameObject, IOnOnCollisionStay self) { var ocs = gameObject.GetComponent <OnCollisionStayer>(); if (ocs == null) { ocs = gameObject.AddComponent <OnCollisionStayer>(); } ocs.onOnCollisionStay += self.OnOnCollisionStay; }
public static void Remove(GameObject gameObject, IOnOnCollisionStay self) { var ocs = gameObject.GetComponent <OnCollisionStayer>(); if (ocs != null) { ocs.onOnCollisionStay -= self.OnOnCollisionStay; if (ocs.onOnCollisionStay == null) { Destroy(ocs); } } }