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

// Token: 0x0200035F RID: 863
public class DynamicBoneColliderBase : MonoBehaviour
{
	// Token: 0x06007185 RID: 29061 RVA: 0x001CC4DC File Offset: 0x001CA6DC
	[CallerCount(5585)]
	[CachedScanResults(RefRangeStart = 24, RefRangeEnd = 5609, XrefRangeStart = 24, XrefRangeEnd = 5609, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe virtual void Collide(ref Vector3 particlePosition, float particleRadius)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = &particlePosition;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref particleRadius;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(IL2CPP.il2cpp_object_get_virtual_method(IL2CPP.Il2CppObjectBaseToPtr(this), DynamicBoneColliderBase.NativeMethodInfoPtr_Collide_Public_Virtual_New_Void_byref_Vector3_Single_0), IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06007186 RID: 29062 RVA: 0x001CC550 File Offset: 0x001CA750
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 585650, XrefRangeEnd = 585652, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe DynamicBoneColliderBase()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(DynamicBoneColliderBase.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06007187 RID: 29063 RVA: 0x001CC59C File Offset: 0x001CA79C
	// Note: this type is marked as 'beforefieldinit'.
	static DynamicBoneColliderBase()
	{
		Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "DynamicBoneColliderBase");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr);
		DynamicBoneColliderBase.NativeFieldInfoPtr_m_Direction = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr, "m_Direction");
		DynamicBoneColliderBase.NativeFieldInfoPtr_m_Center = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr, "m_Center");
		DynamicBoneColliderBase.NativeFieldInfoPtr_m_Bound = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr, "m_Bound");
		DynamicBoneColliderBase.NativeMethodInfoPtr_Collide_Public_Virtual_New_Void_byref_Vector3_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr, 100671731);
		DynamicBoneColliderBase.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<DynamicBoneColliderBase>.NativeClassPtr, 100671732);
	}

	// Token: 0x06007188 RID: 29064 RVA: 0x0000351C File Offset: 0x0000171C
	public DynamicBoneColliderBase(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17002729 RID: 10025
	// (get) Token: 0x06007189 RID: 29065 RVA: 0x001CC630 File Offset: 0x001CA830
	// (set) Token: 0x0600718A RID: 29066 RVA: 0x001CC658 File Offset: 0x001CA858
	public unsafe DynamicBoneColliderBase.Direction m_Direction
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DynamicBoneColliderBase.NativeFieldInfoPtr_m_Direction);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DynamicBoneColliderBase.NativeFieldInfoPtr_m_Direction)) = value;
		}
	}

	// Token: 0x1700272A RID: 10026
	// (get) Token: 0x0600718B RID: 29067 RVA: 0x001CC67C File Offset: 0x001CA87C
	// (set) Token: 0x0600718C RID: 29068 RVA: 0x001CC6A4 File Offset: 0x001CA8A4
	public unsafe Vector3 m_Center
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DynamicBoneColliderBase.NativeFieldInfoPtr_m_Center);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DynamicBoneColliderBase.NativeFieldInfoPtr_m_Center)) = value;
		}
	}

	// Token: 0x1700272B RID: 10027
	// (get) Token: 0x0600718D RID: 29069 RVA: 0x001CC6C8 File Offset: 0x001CA8C8
	// (set) Token: 0x0600718E RID: 29070 RVA: 0x001CC6F0 File Offset: 0x001CA8F0
	public unsafe DynamicBoneColliderBase.Bound m_Bound
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DynamicBoneColliderBase.NativeFieldInfoPtr_m_Bound);
			return *intPtr;
		}
		set
		{
			*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(DynamicBoneColliderBase.NativeFieldInfoPtr_m_Bound)) = value;
		}
	}

	// Token: 0x04004B48 RID: 19272
	private static readonly IntPtr NativeFieldInfoPtr_m_Direction;

	// Token: 0x04004B49 RID: 19273
	private static readonly IntPtr NativeFieldInfoPtr_m_Center;

	// Token: 0x04004B4A RID: 19274
	private static readonly IntPtr NativeFieldInfoPtr_m_Bound;

	// Token: 0x04004B4B RID: 19275
	private static readonly IntPtr NativeMethodInfoPtr_Collide_Public_Virtual_New_Void_byref_Vector3_Single_0;

	// Token: 0x04004B4C RID: 19276
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

	// Token: 0x02000360 RID: 864
	public enum Direction
	{
		// Token: 0x04004B4E RID: 19278
		X,
		// Token: 0x04004B4F RID: 19279
		Y,
		// Token: 0x04004B50 RID: 19280
		Z
	}

	// Token: 0x02000361 RID: 865
	public enum Bound
	{
		// Token: 0x04004B52 RID: 19282
		Outside,
		// Token: 0x04004B53 RID: 19283
		Inside
	}
}
