using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppInterop.Runtime.InteropTypes.Arrays;

// Token: 0x020001D8 RID: 472
public class EnemyDeadEvent : EnemyEvent
{
	// Token: 0x06004CEC RID: 19692 RVA: 0x0013346C File Offset: 0x0013166C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 571406, XrefRangeEnd = 571414, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void InitData(SceneEventManager SEM)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(SEM);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), EnemyDeadEvent.NativeMethodInfoPtr_InitData_Public_Virtual_Void_SceneEventManager_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06004CED RID: 19693 RVA: 0x001334D0 File Offset: 0x001316D0
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 571414, XrefRangeEnd = 571428, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe override void OpenEvent()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), EnemyDeadEvent.NativeMethodInfoPtr_OpenEvent_Public_Virtual_Void_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004CEE RID: 19694 RVA: 0x00133520 File Offset: 0x00131720
	[CallerCount(5)]
	[CachedScanResults(RefRangeStart = 569315, RefRangeEnd = 569320, XrefRangeStart = 569315, XrefRangeEnd = 569320, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe EnemyDeadEvent()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(EnemyDeadEvent.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004CEF RID: 19695 RVA: 0x0013356C File Offset: 0x0013176C
	// Note: this type is marked as 'beforefieldinit'.
	static EnemyDeadEvent()
	{
		Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "EnemyDeadEvent");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr);
		EnemyDeadEvent.NativeFieldInfoPtr_DeathOpenEvent = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr, "DeathOpenEvent");
		EnemyDeadEvent.NativeFieldInfoPtr_DeathReleaseEvent = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr, "DeathReleaseEvent");
		EnemyDeadEvent.NativeMethodInfoPtr_InitData_Public_Virtual_Void_SceneEventManager_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr, 100668482);
		EnemyDeadEvent.NativeMethodInfoPtr_OpenEvent_Public_Virtual_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr, 100668483);
		EnemyDeadEvent.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<EnemyDeadEvent>.NativeClassPtr, 100668484);
	}

	// Token: 0x06004CF0 RID: 19696 RVA: 0x00133600 File Offset: 0x00131800
	public EnemyDeadEvent(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001B87 RID: 7047
	// (get) Token: 0x06004CF1 RID: 19697 RVA: 0x0013360C File Offset: 0x0013180C
	// (set) Token: 0x06004CF2 RID: 19698 RVA: 0x00133640 File Offset: 0x00131840
	public unsafe Il2CppReferenceArray<SceneEvent> DeathOpenEvent
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(EnemyDeadEvent.NativeFieldInfoPtr_DeathOpenEvent);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Il2CppReferenceArray<SceneEvent>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(EnemyDeadEvent.NativeFieldInfoPtr_DeathOpenEvent), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001B88 RID: 7048
	// (get) Token: 0x06004CF3 RID: 19699 RVA: 0x00133668 File Offset: 0x00131868
	// (set) Token: 0x06004CF4 RID: 19700 RVA: 0x0013369C File Offset: 0x0013189C
	public unsafe Il2CppReferenceArray<SceneEvent> DeathReleaseEvent
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(EnemyDeadEvent.NativeFieldInfoPtr_DeathReleaseEvent);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Il2CppReferenceArray<SceneEvent>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(EnemyDeadEvent.NativeFieldInfoPtr_DeathReleaseEvent), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x040032F1 RID: 13041
	private static readonly IntPtr NativeFieldInfoPtr_DeathOpenEvent;

	// Token: 0x040032F2 RID: 13042
	private static readonly IntPtr NativeFieldInfoPtr_DeathReleaseEvent;

	// Token: 0x040032F3 RID: 13043
	private static readonly IntPtr NativeMethodInfoPtr_InitData_Public_Virtual_Void_SceneEventManager_0;

	// Token: 0x040032F4 RID: 13044
	private static readonly IntPtr NativeMethodInfoPtr_OpenEvent_Public_Virtual_Void_0;

	// Token: 0x040032F5 RID: 13045
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
