This commit is contained in:
niko
2026-06-04 11:42:34 +02:00
parent f39ba70a9f
commit e720b98cd1
7488 changed files with 2493818 additions and 0 deletions
@@ -0,0 +1,76 @@
using System;
using UnityEngine;
namespace ProBuilder2.Common
{
// Token: 0x02000033 RID: 51
public class pb_MonoBehaviourSingleton<T> : MonoBehaviour where T : MonoBehaviour
{
// Token: 0x17000017 RID: 23
// (get) Token: 0x06000155 RID: 341 RVA: 0x0000E840 File Offset: 0x0000CC40
public static T instance
{
get
{
if (pb_MonoBehaviourSingleton<T>.nullableInstance == null)
{
pb_MonoBehaviourSingleton<T>._instance = new GameObject
{
name = typeof(T).ToString()
}.AddComponent<T>();
}
return (T)((object)pb_MonoBehaviourSingleton<T>._instance);
}
}
// Token: 0x17000018 RID: 24
// (get) Token: 0x06000156 RID: 342 RVA: 0x0000E898 File Offset: 0x0000CC98
public static T nullableInstance
{
get
{
if (pb_MonoBehaviourSingleton<T>._instance == null)
{
T[] array = Resources.FindObjectsOfTypeAll<T>();
if (array != null && array.Length > 0)
{
pb_MonoBehaviourSingleton<T>._instance = array[0];
for (int i = 1; i < array.Length; i++)
{
global::UnityEngine.Object.DestroyImmediate(array[i]);
}
}
}
return (T)((object)pb_MonoBehaviourSingleton<T>._instance);
}
}
// Token: 0x06000157 RID: 343 RVA: 0x0000E90A File Offset: 0x0000CD0A
public static bool Valid()
{
return pb_MonoBehaviourSingleton<T>.nullableInstance != null;
}
// Token: 0x06000158 RID: 344 RVA: 0x0000E91C File Offset: 0x0000CD1C
public virtual void Awake()
{
if (pb_MonoBehaviourSingleton<T>._instance == null)
{
pb_MonoBehaviourSingleton<T>._instance = this;
}
else
{
global::UnityEngine.Object.Destroy(this);
}
}
// Token: 0x06000159 RID: 345 RVA: 0x0000E93F File Offset: 0x0000CD3F
public virtual void OnEnable()
{
pb_MonoBehaviourSingleton<T>._instance = this;
}
// Token: 0x04000131 RID: 305
private static MonoBehaviour _instance;
}
}