GameObjectExtension.cs 679 B

1234567891011121314151617181920212223242526272829
  1. using System.Collections;
  2. using System.Collections.Generic;
  3. using UnityEngine;
  4. public static class GameObjectExtension
  5. {
  6. public static T GetOrAddComponent<T>(this Component gameObject) where T : Component
  7. {
  8. var trigger = gameObject.GetComponent<T>();
  9. if (!trigger)
  10. {
  11. trigger = gameObject.gameObject.AddComponent<T>();
  12. }
  13. return trigger;
  14. }
  15. public static T GetOrAddComponent<T>(this GameObject gameObject) where T : Component
  16. {
  17. var trigger = gameObject.GetComponent<T>();
  18. if (!trigger)
  19. {
  20. trigger = gameObject.AddComponent<T>();
  21. }
  22. return trigger;
  23. }
  24. }