22 lines
531 B
C#
22 lines
531 B
C#
|
using System.Collections;
|
||
|
using System.Collections.Generic;
|
||
|
using UnityEngine;
|
||
|
|
||
|
namespace BITKit
|
||
|
{
|
||
|
public static class GameObjectExtensions
|
||
|
{
|
||
|
public static T GetOrAddComponent<T>(this GameObject gameObject) where T : Component
|
||
|
{
|
||
|
return gameObject.TryGetComponent<T>(out var t) ? t : gameObject.AddComponent<T>();
|
||
|
}
|
||
|
public static T RemoveComponent<T>(this GameObject gameObject) where T : Component
|
||
|
{
|
||
|
var t = gameObject.GetComponent<T>();
|
||
|
if (t is null) return null;
|
||
|
Object.Destroy(t);
|
||
|
return t;
|
||
|
}
|
||
|
}
|
||
|
}
|