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

// Token: 0x02000307 RID: 775
public class PassiveEventDetector : Il2CppSystem.Object
{
	// Token: 0x060065A5 RID: 26021 RVA: 0x0019C954 File Offset: 0x0019AB54
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 575215, XrefRangeEnd = 575220, 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: 0x060065A6 RID: 26022 RVA: 0x0019C9B0 File Offset: 0x0019ABB0
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 575220, XrefRangeEnd = 575224, 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: 0x060065A7 RID: 26023 RVA: 0x0019C9F4 File Offset: 0x0019ABF4
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 575233, RefRangeEnd = 575234, XrefRangeStart = 575224, XrefRangeEnd = 575233, 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: 0x060065A8 RID: 26024 RVA: 0x0019CA48 File Offset: 0x0019AC48
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 575234, XrefRangeEnd = 575235, 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: 0x060065A9 RID: 26025 RVA: 0x0019CA8C File Offset: 0x0019AC8C
	[CallerCount(2)]
	[CachedScanResults(RefRangeStart = 575239, RefRangeEnd = 575241, XrefRangeStart = 575235, XrefRangeEnd = 575239, 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: 0x060065AA RID: 26026 RVA: 0x0019CADC File Offset: 0x0019ACDC
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 7321, RefRangeEnd = 7322, XrefRangeStart = 7321, XrefRangeEnd = 7322, 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: 0x060065AB RID: 26027 RVA: 0x0019CB34 File Offset: 0x0019AD34
	[CallerCount(10)]
	[CachedScanResults(RefRangeStart = 575242, RefRangeEnd = 575252, XrefRangeStart = 575241, XrefRangeEnd = 575242, 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: 0x060065AC RID: 26028 RVA: 0x0019CB84 File Offset: 0x0019AD84
	[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: 0x060065AD RID: 26029 RVA: 0x0019CBD4 File Offset: 0x0019ADD4
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 575252, XrefRangeEnd = 575257, 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: 0x060065AE RID: 26030 RVA: 0x0019CC20 File Offset: 0x0019AE20
	// 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, 100670817);
		PassiveEventDetector.NativeMethodInfoPtr_Detect_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670818);
		PassiveEventDetector.NativeMethodInfoPtr_UpdateNearestEventTarget_Private_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670819);
		PassiveEventDetector.NativeMethodInfoPtr_Clear_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670820);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventType_Public_PassiveEventType_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670821);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventTarget_Public_PassiveEvent_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670822);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventScript_Public_T_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670823);
		PassiveEventDetector.NativeMethodInfoPtr_GetEventTargetID_Public_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670824);
		PassiveEventDetector.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<PassiveEventDetector>.NativeClassPtr, 100670825);
	}

	// Token: 0x060065AF RID: 26031 RVA: 0x0000A688 File Offset: 0x00008888
	public PassiveEventDetector(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x1700231D RID: 8989
	// (get) Token: 0x060065B0 RID: 26032 RVA: 0x0019CD7C File Offset: 0x0019AF7C
	// (set) Token: 0x060065B1 RID: 26033 RVA: 0x0019CDB0 File Offset: 0x0019AFB0
	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: 0x1700231E RID: 8990
	// (get) Token: 0x060065B2 RID: 26034 RVA: 0x0019CDD8 File Offset: 0x0019AFD8
	// (set) Token: 0x060065B3 RID: 26035 RVA: 0x0019CE00 File Offset: 0x0019B000
	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: 0x1700231F RID: 8991
	// (get) Token: 0x060065B4 RID: 26036 RVA: 0x0019CE24 File Offset: 0x0019B024
	// (set) Token: 0x060065B5 RID: 26037 RVA: 0x0019CE58 File Offset: 0x0019B058
	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: 0x17002320 RID: 8992
	// (get) Token: 0x060065B6 RID: 26038 RVA: 0x0019CE80 File Offset: 0x0019B080
	// (set) Token: 0x060065B7 RID: 26039 RVA: 0x0019CEA8 File Offset: 0x0019B0A8
	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: 0x17002321 RID: 8993
	// (get) Token: 0x060065B8 RID: 26040 RVA: 0x0019CECC File Offset: 0x0019B0CC
	// (set) Token: 0x060065B9 RID: 26041 RVA: 0x0019CF00 File Offset: 0x0019B100
	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: 0x17002322 RID: 8994
	// (get) Token: 0x060065BA RID: 26042 RVA: 0x0019CF28 File Offset: 0x0019B128
	// (set) Token: 0x060065BB RID: 26043 RVA: 0x0019CF46 File Offset: 0x0019B146
	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: 0x040043C1 RID: 17345
	private static readonly IntPtr NativeFieldInfoPtr_source;

	// Token: 0x040043C2 RID: 17346
	private static readonly IntPtr NativeFieldInfoPtr_eventTargetID;

	// Token: 0x040043C3 RID: 17347
	private static readonly IntPtr NativeFieldInfoPtr_eventTarget;

	// Token: 0x040043C4 RID: 17348
	private static readonly IntPtr NativeFieldInfoPtr_layerMask;

	// Token: 0x040043C5 RID: 17349
	private static readonly IntPtr NativeFieldInfoPtr_hitColliders;

	// Token: 0x040043C6 RID: 17350
	private static readonly IntPtr NativeFieldInfoPtr_SEARCH_RADIUS;

	// Token: 0x040043C7 RID: 17351
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_Transform_0;

	// Token: 0x040043C8 RID: 17352
	private static readonly IntPtr NativeMethodInfoPtr_Detect_Public_Void_0;

	// Token: 0x040043C9 RID: 17353
	private static readonly IntPtr NativeMethodInfoPtr_UpdateNearestEventTarget_Private_Void_Int32_0;

	// Token: 0x040043CA RID: 17354
	private static readonly IntPtr NativeMethodInfoPtr_Clear_Public_Void_0;

	// Token: 0x040043CB RID: 17355
	private static readonly IntPtr NativeMethodInfoPtr_GetEventType_Public_PassiveEventType_0;

	// Token: 0x040043CC RID: 17356
	private static readonly IntPtr NativeMethodInfoPtr_GetEventTarget_Public_PassiveEvent_0;

	// Token: 0x040043CD RID: 17357
	private static readonly IntPtr NativeMethodInfoPtr_GetEventScript_Public_T_0;

	// Token: 0x040043CE RID: 17358
	private static readonly IntPtr NativeMethodInfoPtr_GetEventTargetID_Public_Int32_0;

	// Token: 0x040043CF RID: 17359
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

	// Token: 0x02000308 RID: 776
	private sealed class MethodInfoStoreGeneric_GetEventScript_Public_T_0<T>
	{
		// Token: 0x040043D0 RID: 17360
		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)) }))));
	}
}
