using System;
using Il2CppInterop.Common.Attributes;
using Il2CppInterop.Runtime;
using Il2CppInterop.Runtime.InteropTypes.Arrays;
using Il2CppSystem;
using Il2CppSystem.Reflection;
using UnityEngine;

// Token: 0x0200035B RID: 859
public class PassiveEventDetector : Il2CppSystem.Object
{
	// Token: 0x06006D4A RID: 27978 RVA: 0x001BC6AC File Offset: 0x001BA8AC
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 606473, XrefRangeEnd = 606478, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Init(Transform source)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(source);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr_Init_Public_Void_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006D4B RID: 27979 RVA: 0x001BC708 File Offset: 0x001BA908
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 606478, XrefRangeEnd = 606482, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Detect()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr_Detect_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006D4C RID: 27980 RVA: 0x001BC74C File Offset: 0x001BA94C
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 606491, RefRangeEnd = 606492, XrefRangeStart = 606482, XrefRangeEnd = 606491, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void UpdateNearestEventTarget(int hitAmount)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref hitAmount;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr_UpdateNearestEventTarget_Private_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06006D4D RID: 27981 RVA: 0x001BC7A0 File Offset: 0x001BA9A0
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 606492, XrefRangeEnd = 606493, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Clear()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr_Clear_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006D4E RID: 27982 RVA: 0x001BC7E4 File Offset: 0x001BA9E4
	[CallerCount(2)]
	[CachedScanResults(RefRangeStart = 606497, RefRangeEnd = 606499, XrefRangeStart = 606493, XrefRangeEnd = 606497, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe PassiveEvent.PassiveEventType GetEventType()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr_GetEventType_Public_PassiveEventType_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x06006D4F RID: 27983 RVA: 0x001BC834 File Offset: 0x001BAA34
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 7615, RefRangeEnd = 7616, XrefRangeStart = 7615, XrefRangeEnd = 7616, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe PassiveEvent GetEventTarget()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr_GetEventTarget_Public_PassiveEvent_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		IntPtr intPtr3 = intPtr;
		return (intPtr3 != 0) ? new PassiveEvent(intPtr3) : null;
	}

	// Token: 0x06006D50 RID: 27984 RVA: 0x001BC88C File Offset: 0x001BAA8C
	[CallerCount(11)]
	[CachedScanResults(RefRangeStart = 606500, RefRangeEnd = 606511, XrefRangeStart = 606499, XrefRangeEnd = 606500, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe T GetEventScript<T>() where T : MonoBehaviour
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.MethodInfoStoreGeneric_GetEventScript_Public_T_0<T>.Pointer, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return IL2CPP.PointerToValueGeneric<T>(intPtr, false, true);
	}

	// Token: 0x06006D51 RID: 27985 RVA: 0x001BC8DC File Offset: 0x001BAADC
	[CallerCount(0)]
	public unsafe int GetEventTargetID()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr_GetEventTargetID_Public_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x06006D52 RID: 27986 RVA: 0x001BC92C File Offset: 0x001BAB2C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 606511, XrefRangeEnd = 606516, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe PassiveEventDetector()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(PassiveEventDetector.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006D53 RID: 27987 RVA: 0x001BC978 File Offset: 0x001BAB78
	// Note: this type is marked as 'beforefieldinit'.
	static PassiveEventDetector()
	{
		Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "PassiveEventDetector");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr);
		PassiveEventDetector.NativeFieldInfoPtr_source = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, "source");
		PassiveEventDetector.NativeFieldInfoPtr_eventTargetID = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, "eventTargetID");
		PassiveEventDetector.NativeFieldInfoPtr_eventTarget = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, "eventTarget");
		PassiveEventDetector.NativeFieldInfoPtr_layerMask = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, "layerMask");
		PassiveEventDetector.NativeFieldInfoPtr_hitColliders = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, "hitColliders");
		PassiveEventDetector.NativeFieldInfoPtr_SEARCH_RADIUS = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, "SEARCH_RADIUS");
		PassiveEventDetector.NativeMethodInfoPtr_Init_Public_Void_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671472);
		PassiveEventDetector.NativeMethodInfoPtr_Detect_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671473);
		PassiveEventDetector.NativeMethodInfoPtr_UpdateNearestEventTarget_Private_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671474);
		PassiveEventDetector.NativeMethodInfoPtr_Clear_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671475);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventType_Public_PassiveEventType_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671476);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventTarget_Public_PassiveEvent_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671477);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventScript_Public_T_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671478);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventTargetID_Public_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671479);
		PassiveEventDetector.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100671480);
	}

	// Token: 0x06006D54 RID: 27988 RVA: 0x0000A74C File Offset: 0x0000894C
	public PassiveEventDetector(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x1700257D RID: 9597
	// (get) Token: 0x06006D55 RID: 27989 RVA: 0x001BCAD4 File Offset: 0x001BACD4
	// (set) Token: 0x06006D56 RID: 27990 RVA: 0x001BCB08 File Offset: 0x001BAD08
	public unsafe Transform source
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_source);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Transform(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_source), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x1700257E RID: 9598
	// (get) Token: 0x06006D57 RID: 27991 RVA: 0x001BCB30 File Offset: 0x001BAD30
	// (set) Token: 0x06006D58 RID: 27992 RVA: 0x001BCB58 File Offset: 0x001BAD58
	public unsafe int eventTargetID
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_eventTargetID);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_eventTargetID)) = value;
		}
	}

	// Token: 0x1700257F RID: 9599
	// (get) Token: 0x06006D59 RID: 27993 RVA: 0x001BCB7C File Offset: 0x001BAD7C
	// (set) Token: 0x06006D5A RID: 27994 RVA: 0x001BCBB0 File Offset: 0x001BADB0
	public unsafe PassiveEvent eventTarget
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_eventTarget);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new PassiveEvent(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_eventTarget), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17002580 RID: 9600
	// (get) Token: 0x06006D5B RID: 27995 RVA: 0x001BCBD8 File Offset: 0x001BADD8
	// (set) Token: 0x06006D5C RID: 27996 RVA: 0x001BCC00 File Offset: 0x001BAE00
	public unsafe LayerMask layerMask
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_layerMask);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_layerMask)) = value;
		}
	}

	// Token: 0x17002581 RID: 9601
	// (get) Token: 0x06006D5D RID: 27997 RVA: 0x001BCC24 File Offset: 0x001BAE24
	// (set) Token: 0x06006D5E RID: 27998 RVA: 0x001BCC58 File Offset: 0x001BAE58
	public unsafe Il2CppReferenceArray<Collider> hitColliders
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_hitColliders);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Il2CppReferenceArray<Collider>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(PassiveEventDetector.NativeFieldInfoPtr_hitColliders), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17002582 RID: 9602
	// (get) Token: 0x06006D5F RID: 27999 RVA: 0x001BCC80 File Offset: 0x001BAE80
	// (set) Token: 0x06006D60 RID: 28000 RVA: 0x001BCC9E File Offset: 0x001BAE9E
	public unsafe static float SEARCH_RADIUS
	{
		get
		{
			float num;
			IL2CPP.il2cpp_field_static_get_value(PassiveEventDetector.NativeFieldInfoPtr_SEARCH_RADIUS, (void*)(&num));
			return num;
		}
		set
		{
			IL2CPP.il2cpp_field_static_set_value(PassiveEventDetector.NativeFieldInfoPtr_SEARCH_RADIUS, (void*)(&value));
		}
	}

	// Token: 0x040048FA RID: 18682
	private static readonly IntPtr NativeFieldInfoPtr_source;

	// Token: 0x040048FB RID: 18683
	private static readonly IntPtr NativeFieldInfoPtr_eventTargetID;

	// Token: 0x040048FC RID: 18684
	private static readonly IntPtr NativeFieldInfoPtr_eventTarget;

	// Token: 0x040048FD RID: 18685
	private static readonly IntPtr NativeFieldInfoPtr_layerMask;

	// Token: 0x040048FE RID: 18686
	private static readonly IntPtr NativeFieldInfoPtr_hitColliders;

	// Token: 0x040048FF RID: 18687
	private static readonly IntPtr NativeFieldInfoPtr_SEARCH_RADIUS;

	// Token: 0x04004900 RID: 18688
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_Transform_0;

	// Token: 0x04004901 RID: 18689
	private static readonly IntPtr NativeMethodInfoPtr_Detect_Public_Void_0;

	// Token: 0x04004902 RID: 18690
	private static readonly IntPtr NativeMethodInfoPtr_UpdateNearestEventTarget_Private_Void_Int32_0;

	// Token: 0x04004903 RID: 18691
	private static readonly IntPtr NativeMethodInfoPtr_Clear_Public_Void_0;

	// Token: 0x04004904 RID: 18692
	private static readonly IntPtr NativeMethodInfoPtr_GetEventType_Public_PassiveEventType_0;

	// Token: 0x04004905 RID: 18693
	private static readonly IntPtr NativeMethodInfoPtr_GetEventTarget_Public_PassiveEvent_0;

	// Token: 0x04004906 RID: 18694
	private static readonly IntPtr NativeMethodInfoPtr_GetEventScript_Public_T_0;

	// Token: 0x04004907 RID: 18695
	private static readonly IntPtr NativeMethodInfoPtr_GetEventTargetID_Public_Int32_0;

	// Token: 0x04004908 RID: 18696
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

	// Token: 0x0200035C RID: 860
	private sealed class MethodInfoStoreGeneric_GetEventScript_Public_T_0<T>
	{
		// Token: 0x04004909 RID: 18697
		internal static IntPtr Pointer = IL2CPP.il2cpp_method_get_from_reflection(IL2CPP.Il2CppObjectBaseToPtrNotNull(new MethodInfo(IL2CPP.il2cpp_method_get_object(PassiveEventDetector.NativeMethodInfoPtr_GetEventScript_Public_T_0, Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr)).MakeGenericMethod(new Il2CppReferenceArray<Type>(new Type[] { Type.internal_from_handle(IL2CPP.il2cpp_class_get_type(Il2CppClassPointerStore<T>.NativeClassPtr)) }))));
	}
}
