using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using UnityEngine;

// Token: 0x0200033D RID: 829
public class SelfDestruct : MonoBehaviour
{
	// Token: 0x06006F7F RID: 28543 RVA: 0x001C4C34 File Offset: 0x001C2E34
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 584340, XrefRangeEnd = 584345, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Start()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SelfDestruct.NativeMethodInfoPtr_Start_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006F80 RID: 28544 RVA: 0x001C4C78 File Offset: 0x001C2E78
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 584345, XrefRangeEnd = 584346, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe SelfDestruct()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<SelfDestruct>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SelfDestruct.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006F81 RID: 28545 RVA: 0x001C4CC4 File Offset: 0x001C2EC4
	// Note: this type is marked as 'beforefieldinit'.
	static SelfDestruct()
	{
		Il2CppClassPointerStore<SelfDestruct>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "SelfDestruct");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<SelfDestruct>.NativeClassPtr);
		SelfDestruct.NativeFieldInfoPtr_selfdestruct_in = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SelfDestruct>.NativeClassPtr, "selfdestruct_in");
		SelfDestruct.NativeMethodInfoPtr_Start_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SelfDestruct>.NativeClassPtr, 100671588);
		SelfDestruct.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SelfDestruct>.NativeClassPtr, 100671589);
	}

	// Token: 0x06006F82 RID: 28546 RVA: 0x0000351C File Offset: 0x0000171C
	public SelfDestruct(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17002684 RID: 9860
	// (get) Token: 0x06006F83 RID: 28547 RVA: 0x001C4D30 File Offset: 0x001C2F30
	// (set) Token: 0x06006F84 RID: 28548 RVA: 0x001C4D58 File Offset: 0x001C2F58
	public unsafe float selfdestruct_in
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SelfDestruct.NativeFieldInfoPtr_selfdestruct_in);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SelfDestruct.NativeFieldInfoPtr_selfdestruct_in)) = value;
		}
	}

	// Token: 0x04004A11 RID: 18961
	private static readonly IntPtr NativeFieldInfoPtr_selfdestruct_in;

	// Token: 0x04004A12 RID: 18962
	private static readonly IntPtr NativeMethodInfoPtr_Start_Private_Void_0;

	// Token: 0x04004A13 RID: 18963
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
