391 lines
13 KiB
C#
391 lines
13 KiB
C#
using System;
|
|
using System.Runtime.CompilerServices;
|
|
using System.Runtime.InteropServices;
|
|
using System.Security;
|
|
using UnityEngine.Internal;
|
|
using UnityEngine.Scripting;
|
|
using UnityEngineInternal;
|
|
|
|
namespace UnityEngine
|
|
{
|
|
// Token: 0x020000D9 RID: 217
|
|
[RequiredByNativeCode]
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
public class Object
|
|
{
|
|
// Token: 0x06001008 RID: 4104
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private static extern Object Internal_CloneSingle(Object data);
|
|
|
|
// Token: 0x06001009 RID: 4105
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private static extern Object Internal_CloneSingleWithParent(Object data, Transform parent, bool worldPositionStays);
|
|
|
|
// Token: 0x0600100A RID: 4106 RVA: 0x000156C4 File Offset: 0x000138C4
|
|
private static Object Internal_InstantiateSingle(Object data, Vector3 pos, Quaternion rot)
|
|
{
|
|
return Object.INTERNAL_CALL_Internal_InstantiateSingle(data, ref pos, ref rot);
|
|
}
|
|
|
|
// Token: 0x0600100B RID: 4107
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private static extern Object INTERNAL_CALL_Internal_InstantiateSingle(Object data, ref Vector3 pos, ref Quaternion rot);
|
|
|
|
// Token: 0x0600100C RID: 4108 RVA: 0x000156E4 File Offset: 0x000138E4
|
|
private static Object Internal_InstantiateSingleWithParent(Object data, Transform parent, Vector3 pos, Quaternion rot)
|
|
{
|
|
return Object.INTERNAL_CALL_Internal_InstantiateSingleWithParent(data, parent, ref pos, ref rot);
|
|
}
|
|
|
|
// Token: 0x0600100D RID: 4109
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private static extern Object INTERNAL_CALL_Internal_InstantiateSingleWithParent(Object data, Transform parent, ref Vector3 pos, ref Quaternion rot);
|
|
|
|
// Token: 0x0600100E RID: 4110
|
|
[ThreadAndSerializationSafe]
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private static extern int GetOffsetOfInstanceIDInCPlusPlusObject();
|
|
|
|
// Token: 0x0600100F RID: 4111
|
|
[ThreadAndSerializationSafe]
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
private extern void EnsureRunningOnMainThread();
|
|
|
|
// Token: 0x06001010 RID: 4112
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void Destroy(Object obj, [DefaultValue("0.0F")] float t);
|
|
|
|
// Token: 0x06001011 RID: 4113 RVA: 0x00015704 File Offset: 0x00013904
|
|
[ExcludeFromDocs]
|
|
public static void Destroy(Object obj)
|
|
{
|
|
float num = 0f;
|
|
Object.Destroy(obj, num);
|
|
}
|
|
|
|
// Token: 0x06001012 RID: 4114
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void DestroyImmediate(Object obj, [DefaultValue("false")] bool allowDestroyingAssets);
|
|
|
|
// Token: 0x06001013 RID: 4115 RVA: 0x00015720 File Offset: 0x00013920
|
|
[ExcludeFromDocs]
|
|
public static void DestroyImmediate(Object obj)
|
|
{
|
|
bool flag = false;
|
|
Object.DestroyImmediate(obj, flag);
|
|
}
|
|
|
|
// Token: 0x06001014 RID: 4116
|
|
[TypeInferenceRule(TypeInferenceRules.ArrayOfTypeReferencedByFirstArgument)]
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern Object[] FindObjectsOfType(Type type);
|
|
|
|
// Token: 0x17000368 RID: 872
|
|
// (get) Token: 0x06001015 RID: 4117
|
|
// (set) Token: 0x06001016 RID: 4118
|
|
public extern string name
|
|
{
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
get;
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x06001017 RID: 4119
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void DontDestroyOnLoad(Object target);
|
|
|
|
// Token: 0x17000369 RID: 873
|
|
// (get) Token: 0x06001018 RID: 4120
|
|
// (set) Token: 0x06001019 RID: 4121
|
|
public extern HideFlags hideFlags
|
|
{
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
get;
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
set;
|
|
}
|
|
|
|
// Token: 0x0600101A RID: 4122
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern void DestroyObject(Object obj, [DefaultValue("0.0F")] float t);
|
|
|
|
// Token: 0x0600101B RID: 4123 RVA: 0x00015738 File Offset: 0x00013938
|
|
[ExcludeFromDocs]
|
|
public static void DestroyObject(Object obj)
|
|
{
|
|
float num = 0f;
|
|
Object.DestroyObject(obj, num);
|
|
}
|
|
|
|
// Token: 0x0600101C RID: 4124
|
|
[Obsolete("use Object.FindObjectsOfType instead.")]
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern Object[] FindSceneObjectsOfType(Type type);
|
|
|
|
// Token: 0x0600101D RID: 4125
|
|
[Obsolete("use Resources.FindObjectsOfTypeAll instead.")]
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public static extern Object[] FindObjectsOfTypeIncludingAssets(Type type);
|
|
|
|
// Token: 0x0600101E RID: 4126 RVA: 0x00015754 File Offset: 0x00013954
|
|
[Obsolete("Please use Resources.FindObjectsOfTypeAll instead")]
|
|
public static Object[] FindObjectsOfTypeAll(Type type)
|
|
{
|
|
return Resources.FindObjectsOfTypeAll(type);
|
|
}
|
|
|
|
// Token: 0x0600101F RID: 4127
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
public override extern string ToString();
|
|
|
|
// Token: 0x06001020 RID: 4128
|
|
[ThreadAndSerializationSafe]
|
|
[GeneratedByOldBindingsGenerator]
|
|
[MethodImpl(MethodImplOptions.InternalCall)]
|
|
internal static extern bool DoesObjectWithInstanceIDExist(int instanceID);
|
|
|
|
// Token: 0x06001021 RID: 4129 RVA: 0x00015770 File Offset: 0x00013970
|
|
[SecuritySafeCritical]
|
|
public unsafe int GetInstanceID()
|
|
{
|
|
int num;
|
|
if (this.m_CachedPtr == IntPtr.Zero)
|
|
{
|
|
num = 0;
|
|
}
|
|
else
|
|
{
|
|
if (Object.OffsetOfInstanceIDInCPlusPlusObject == -1)
|
|
{
|
|
Object.OffsetOfInstanceIDInCPlusPlusObject = Object.GetOffsetOfInstanceIDInCPlusPlusObject();
|
|
}
|
|
num = *(int*)(void*)new IntPtr(this.m_CachedPtr.ToInt64() + (long)Object.OffsetOfInstanceIDInCPlusPlusObject);
|
|
}
|
|
return num;
|
|
}
|
|
|
|
// Token: 0x06001022 RID: 4130 RVA: 0x000157D4 File Offset: 0x000139D4
|
|
public override int GetHashCode()
|
|
{
|
|
return base.GetHashCode();
|
|
}
|
|
|
|
// Token: 0x06001023 RID: 4131 RVA: 0x000157F0 File Offset: 0x000139F0
|
|
public override bool Equals(object other)
|
|
{
|
|
Object @object = other as Object;
|
|
return (!(@object == null) || other == null || other is Object) && Object.CompareBaseObjects(this, @object);
|
|
}
|
|
|
|
// Token: 0x06001024 RID: 4132 RVA: 0x00015838 File Offset: 0x00013A38
|
|
public static implicit operator bool(Object exists)
|
|
{
|
|
return !Object.CompareBaseObjects(exists, null);
|
|
}
|
|
|
|
// Token: 0x06001025 RID: 4133 RVA: 0x00015858 File Offset: 0x00013A58
|
|
private static bool CompareBaseObjects(Object lhs, Object rhs)
|
|
{
|
|
bool flag = lhs == null;
|
|
bool flag2 = rhs == null;
|
|
bool flag3;
|
|
if (flag2 && flag)
|
|
{
|
|
flag3 = true;
|
|
}
|
|
else if (flag2)
|
|
{
|
|
flag3 = !Object.IsNativeObjectAlive(lhs);
|
|
}
|
|
else if (flag)
|
|
{
|
|
flag3 = !Object.IsNativeObjectAlive(rhs);
|
|
}
|
|
else
|
|
{
|
|
flag3 = object.ReferenceEquals(lhs, rhs);
|
|
}
|
|
return flag3;
|
|
}
|
|
|
|
// Token: 0x06001026 RID: 4134 RVA: 0x000158BC File Offset: 0x00013ABC
|
|
private static bool IsNativeObjectAlive(Object o)
|
|
{
|
|
return o.GetCachedPtr() != IntPtr.Zero;
|
|
}
|
|
|
|
// Token: 0x06001027 RID: 4135 RVA: 0x000158E4 File Offset: 0x00013AE4
|
|
private IntPtr GetCachedPtr()
|
|
{
|
|
return this.m_CachedPtr;
|
|
}
|
|
|
|
// Token: 0x06001028 RID: 4136 RVA: 0x00015900 File Offset: 0x00013B00
|
|
[TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)]
|
|
public static Object Instantiate(Object original, Vector3 position, Quaternion rotation)
|
|
{
|
|
Object.CheckNullArgument(original, "The Object you want to instantiate is null.");
|
|
if (original is ScriptableObject)
|
|
{
|
|
throw new ArgumentException("Cannot instantiate a ScriptableObject with a position and rotation");
|
|
}
|
|
return Object.Internal_InstantiateSingle(original, position, rotation);
|
|
}
|
|
|
|
// Token: 0x06001029 RID: 4137 RVA: 0x00015940 File Offset: 0x00013B40
|
|
[TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)]
|
|
public static Object Instantiate(Object original, Vector3 position, Quaternion rotation, Transform parent)
|
|
{
|
|
Object @object;
|
|
if (parent == null)
|
|
{
|
|
@object = Object.Internal_InstantiateSingle(original, position, rotation);
|
|
}
|
|
else
|
|
{
|
|
Object.CheckNullArgument(original, "The Object you want to instantiate is null.");
|
|
@object = Object.Internal_InstantiateSingleWithParent(original, parent, position, rotation);
|
|
}
|
|
return @object;
|
|
}
|
|
|
|
// Token: 0x0600102A RID: 4138 RVA: 0x00015984 File Offset: 0x00013B84
|
|
[TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)]
|
|
public static Object Instantiate(Object original)
|
|
{
|
|
Object.CheckNullArgument(original, "The Object you want to instantiate is null.");
|
|
return Object.Internal_CloneSingle(original);
|
|
}
|
|
|
|
// Token: 0x0600102B RID: 4139 RVA: 0x000159AC File Offset: 0x00013BAC
|
|
[TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)]
|
|
public static Object Instantiate(Object original, Transform parent)
|
|
{
|
|
return Object.Instantiate(original, parent, false);
|
|
}
|
|
|
|
// Token: 0x0600102C RID: 4140 RVA: 0x000159CC File Offset: 0x00013BCC
|
|
[TypeInferenceRule(TypeInferenceRules.TypeOfFirstArgument)]
|
|
public static Object Instantiate(Object original, Transform parent, bool instantiateInWorldSpace)
|
|
{
|
|
Object @object;
|
|
if (parent == null)
|
|
{
|
|
@object = Object.Internal_CloneSingle(original);
|
|
}
|
|
else
|
|
{
|
|
Object.CheckNullArgument(original, "The Object you want to instantiate is null.");
|
|
@object = Object.Internal_CloneSingleWithParent(original, parent, instantiateInWorldSpace);
|
|
}
|
|
return @object;
|
|
}
|
|
|
|
// Token: 0x0600102D RID: 4141 RVA: 0x00015A0C File Offset: 0x00013C0C
|
|
public static T Instantiate<T>(T original) where T : Object
|
|
{
|
|
Object.CheckNullArgument(original, "The Object you want to instantiate is null.");
|
|
return (T)((object)Object.Internal_CloneSingle(original));
|
|
}
|
|
|
|
// Token: 0x0600102E RID: 4142 RVA: 0x00015A44 File Offset: 0x00013C44
|
|
public static T Instantiate<T>(T original, Vector3 position, Quaternion rotation) where T : Object
|
|
{
|
|
return (T)((object)Object.Instantiate(original, position, rotation));
|
|
}
|
|
|
|
// Token: 0x0600102F RID: 4143 RVA: 0x00015A6C File Offset: 0x00013C6C
|
|
public static T Instantiate<T>(T original, Vector3 position, Quaternion rotation, Transform parent) where T : Object
|
|
{
|
|
return (T)((object)Object.Instantiate(original, position, rotation, parent));
|
|
}
|
|
|
|
// Token: 0x06001030 RID: 4144 RVA: 0x00015A94 File Offset: 0x00013C94
|
|
public static T Instantiate<T>(T original, Transform parent) where T : Object
|
|
{
|
|
return Object.Instantiate<T>(original, parent, false);
|
|
}
|
|
|
|
// Token: 0x06001031 RID: 4145 RVA: 0x00015AB4 File Offset: 0x00013CB4
|
|
public static T Instantiate<T>(T original, Transform parent, bool worldPositionStays) where T : Object
|
|
{
|
|
return (T)((object)Object.Instantiate(original, parent, worldPositionStays));
|
|
}
|
|
|
|
// Token: 0x06001032 RID: 4146 RVA: 0x00015ADC File Offset: 0x00013CDC
|
|
public static T[] FindObjectsOfType<T>() where T : Object
|
|
{
|
|
return Resources.ConvertObjects<T>(Object.FindObjectsOfType(typeof(T)));
|
|
}
|
|
|
|
// Token: 0x06001033 RID: 4147 RVA: 0x00015B08 File Offset: 0x00013D08
|
|
public static T FindObjectOfType<T>() where T : Object
|
|
{
|
|
return (T)((object)Object.FindObjectOfType(typeof(T)));
|
|
}
|
|
|
|
// Token: 0x06001034 RID: 4148 RVA: 0x00015B34 File Offset: 0x00013D34
|
|
private static void CheckNullArgument(object arg, string message)
|
|
{
|
|
if (arg == null)
|
|
{
|
|
throw new ArgumentException(message);
|
|
}
|
|
}
|
|
|
|
// Token: 0x06001035 RID: 4149 RVA: 0x00015B44 File Offset: 0x00013D44
|
|
[TypeInferenceRule(TypeInferenceRules.TypeReferencedByFirstArgument)]
|
|
public static Object FindObjectOfType(Type type)
|
|
{
|
|
Object[] array = Object.FindObjectsOfType(type);
|
|
Object @object;
|
|
if (array.Length > 0)
|
|
{
|
|
@object = array[0];
|
|
}
|
|
else
|
|
{
|
|
@object = null;
|
|
}
|
|
return @object;
|
|
}
|
|
|
|
// Token: 0x06001036 RID: 4150 RVA: 0x00015B74 File Offset: 0x00013D74
|
|
public static bool operator ==(Object x, Object y)
|
|
{
|
|
return Object.CompareBaseObjects(x, y);
|
|
}
|
|
|
|
// Token: 0x06001037 RID: 4151 RVA: 0x00015B90 File Offset: 0x00013D90
|
|
public static bool operator !=(Object x, Object y)
|
|
{
|
|
return !Object.CompareBaseObjects(x, y);
|
|
}
|
|
|
|
// Token: 0x040001F3 RID: 499
|
|
private IntPtr m_CachedPtr;
|
|
|
|
// Token: 0x040001F4 RID: 500
|
|
internal static int OffsetOfInstanceIDInCPlusPlusObject = -1;
|
|
}
|
|
}
|