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

namespace Obi
{
	// Token: 0x0200054E RID: 1358
	public class ObiClothPicker : MonoBehaviour
	{
		// Token: 0x06009943 RID: 39235 RVA: 0x0027766C File Offset: 0x0027586C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644857, XrefRangeEnd = 644861, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void add_OnParticlePicked(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_add_OnParticlePicked_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009944 RID: 39236 RVA: 0x002776C8 File Offset: 0x002758C8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644861, XrefRangeEnd = 644865, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void remove_OnParticlePicked(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_remove_OnParticlePicked_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009945 RID: 39237 RVA: 0x00277724 File Offset: 0x00275924
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644865, XrefRangeEnd = 644869, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void add_OnParticleHeld(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_add_OnParticleHeld_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009946 RID: 39238 RVA: 0x00277780 File Offset: 0x00275980
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644869, XrefRangeEnd = 644873, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void remove_OnParticleHeld(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_remove_OnParticleHeld_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009947 RID: 39239 RVA: 0x002777DC File Offset: 0x002759DC
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644873, XrefRangeEnd = 644877, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void add_OnParticleDragged(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_add_OnParticleDragged_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009948 RID: 39240 RVA: 0x00277838 File Offset: 0x00275A38
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644877, XrefRangeEnd = 644881, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void remove_OnParticleDragged(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_remove_OnParticleDragged_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06009949 RID: 39241 RVA: 0x00277894 File Offset: 0x00275A94
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644881, XrefRangeEnd = 644885, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void add_OnParticleReleased(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_add_OnParticleReleased_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x0600994A RID: 39242 RVA: 0x002778F0 File Offset: 0x00275AF0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644885, XrefRangeEnd = 644889, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void remove_OnParticleReleased(EventHandler<ObiClothPicker.ParticlePickEventArgs> value)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(value);
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_remove_OnParticleReleased_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x170033C8 RID: 13256
		// (get) Token: 0x0600994B RID: 39243 RVA: 0x0027794C File Offset: 0x00275B4C
		public unsafe ObiClothBase Cloth
		{
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 11311, RefRangeEnd = 11312, XrefRangeStart = 11311, XrefRangeEnd = 11312, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_get_Cloth_Public_get_ObiClothBase_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new ObiClothBase(intPtr3) : null;
			}
		}

		// Token: 0x0600994C RID: 39244 RVA: 0x002779A4 File Offset: 0x00275BA4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644889, XrefRangeEnd = 644894, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Awake()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_Awake_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600994D RID: 39245 RVA: 0x002779E8 File Offset: 0x00275BE8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644894, XrefRangeEnd = 644930, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnEnable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_OnEnable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600994E RID: 39246 RVA: 0x00277A2C File Offset: 0x00275C2C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644930, XrefRangeEnd = 644942, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_OnDisable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x0600994F RID: 39247 RVA: 0x00277A70 File Offset: 0x00275C70
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 644942, XrefRangeEnd = 645006, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Cloth_Solver_OnFrameBegin(Il2CppSystem.Object sender, EventArgs e)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr;
			checked
			{
				ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
				*ptr = IL2CPP.Il2CppObjectBaseToPtr(sender);
			}
			ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(e);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr_Cloth_Solver_OnFrameBegin_Private_Void_Object_EventArgs_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009950 RID: 39248 RVA: 0x00277AE4 File Offset: 0x00275CE4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 645006, XrefRangeEnd = 645008, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe ObiClothPicker()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06009951 RID: 39249 RVA: 0x00277B30 File Offset: 0x00275D30
		// Note: this type is marked as 'beforefieldinit'.
		static ObiClothPicker()
		{
			Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "Obi", "ObiClothPicker");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr);
			ObiClothPicker.NativeFieldInfoPtr_OnParticlePicked = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "OnParticlePicked");
			ObiClothPicker.NativeFieldInfoPtr_OnParticleHeld = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "OnParticleHeld");
			ObiClothPicker.NativeFieldInfoPtr_OnParticleDragged = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "OnParticleDragged");
			ObiClothPicker.NativeFieldInfoPtr_OnParticleReleased = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "OnParticleReleased");
			ObiClothPicker.NativeFieldInfoPtr_meshCollider = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "meshCollider");
			ObiClothPicker.NativeFieldInfoPtr_cloth = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "cloth");
			ObiClothPicker.NativeFieldInfoPtr_currentCollisionMesh = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "currentCollisionMesh");
			ObiClothPicker.NativeFieldInfoPtr_lastMousePos = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "lastMousePos");
			ObiClothPicker.NativeFieldInfoPtr_pickedParticleIndex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "pickedParticleIndex");
			ObiClothPicker.NativeFieldInfoPtr_pickedParticleDepth = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "pickedParticleDepth");
			ObiClothPicker.NativeMethodInfoPtr_add_OnParticlePicked_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675258);
			ObiClothPicker.NativeMethodInfoPtr_remove_OnParticlePicked_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675259);
			ObiClothPicker.NativeMethodInfoPtr_add_OnParticleHeld_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675260);
			ObiClothPicker.NativeMethodInfoPtr_remove_OnParticleHeld_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675261);
			ObiClothPicker.NativeMethodInfoPtr_add_OnParticleDragged_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675262);
			ObiClothPicker.NativeMethodInfoPtr_remove_OnParticleDragged_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675263);
			ObiClothPicker.NativeMethodInfoPtr_add_OnParticleReleased_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675264);
			ObiClothPicker.NativeMethodInfoPtr_remove_OnParticleReleased_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675265);
			ObiClothPicker.NativeMethodInfoPtr_get_Cloth_Public_get_ObiClothBase_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675266);
			ObiClothPicker.NativeMethodInfoPtr_Awake_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675267);
			ObiClothPicker.NativeMethodInfoPtr_OnEnable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675268);
			ObiClothPicker.NativeMethodInfoPtr_OnDisable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675269);
			ObiClothPicker.NativeMethodInfoPtr_Cloth_Solver_OnFrameBegin_Private_Void_Object_EventArgs_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675270);
			ObiClothPicker.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, 100675271);
		}

		// Token: 0x06009952 RID: 39250 RVA: 0x0000351C File Offset: 0x0000171C
		public ObiClothPicker(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x170033BE RID: 13246
		// (get) Token: 0x06009953 RID: 39251 RVA: 0x00277D40 File Offset: 0x00275F40
		// (set) Token: 0x06009954 RID: 39252 RVA: 0x00277D74 File Offset: 0x00275F74
		public unsafe EventHandler<ObiClothPicker.ParticlePickEventArgs> OnParticlePicked
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticlePicked);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new EventHandler<ObiClothPicker.ParticlePickEventArgs>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticlePicked), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170033BF RID: 13247
		// (get) Token: 0x06009955 RID: 39253 RVA: 0x00277D9C File Offset: 0x00275F9C
		// (set) Token: 0x06009956 RID: 39254 RVA: 0x00277DD0 File Offset: 0x00275FD0
		public unsafe EventHandler<ObiClothPicker.ParticlePickEventArgs> OnParticleHeld
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticleHeld);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new EventHandler<ObiClothPicker.ParticlePickEventArgs>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticleHeld), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170033C0 RID: 13248
		// (get) Token: 0x06009957 RID: 39255 RVA: 0x00277DF8 File Offset: 0x00275FF8
		// (set) Token: 0x06009958 RID: 39256 RVA: 0x00277E2C File Offset: 0x0027602C
		public unsafe EventHandler<ObiClothPicker.ParticlePickEventArgs> OnParticleDragged
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticleDragged);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new EventHandler<ObiClothPicker.ParticlePickEventArgs>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticleDragged), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170033C1 RID: 13249
		// (get) Token: 0x06009959 RID: 39257 RVA: 0x00277E54 File Offset: 0x00276054
		// (set) Token: 0x0600995A RID: 39258 RVA: 0x00277E88 File Offset: 0x00276088
		public unsafe EventHandler<ObiClothPicker.ParticlePickEventArgs> OnParticleReleased
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticleReleased);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new EventHandler<ObiClothPicker.ParticlePickEventArgs>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_OnParticleReleased), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170033C2 RID: 13250
		// (get) Token: 0x0600995B RID: 39259 RVA: 0x00277EB0 File Offset: 0x002760B0
		// (set) Token: 0x0600995C RID: 39260 RVA: 0x00277EE4 File Offset: 0x002760E4
		public unsafe MeshCollider meshCollider
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_meshCollider);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new MeshCollider(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_meshCollider), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170033C3 RID: 13251
		// (get) Token: 0x0600995D RID: 39261 RVA: 0x00277F0C File Offset: 0x0027610C
		// (set) Token: 0x0600995E RID: 39262 RVA: 0x00277F40 File Offset: 0x00276140
		public unsafe ObiClothBase cloth
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_cloth);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new ObiClothBase(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_cloth), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170033C4 RID: 13252
		// (get) Token: 0x0600995F RID: 39263 RVA: 0x00277F68 File Offset: 0x00276168
		// (set) Token: 0x06009960 RID: 39264 RVA: 0x00277F9C File Offset: 0x0027619C
		public unsafe Mesh currentCollisionMesh
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_currentCollisionMesh);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Mesh(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_currentCollisionMesh), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x170033C5 RID: 13253
		// (get) Token: 0x06009961 RID: 39265 RVA: 0x00277FC4 File Offset: 0x002761C4
		// (set) Token: 0x06009962 RID: 39266 RVA: 0x00277FEC File Offset: 0x002761EC
		public unsafe Vector3 lastMousePos
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_lastMousePos);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_lastMousePos)) = value;
			}
		}

		// Token: 0x170033C6 RID: 13254
		// (get) Token: 0x06009963 RID: 39267 RVA: 0x00278010 File Offset: 0x00276210
		// (set) Token: 0x06009964 RID: 39268 RVA: 0x00278038 File Offset: 0x00276238
		public unsafe int pickedParticleIndex
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_pickedParticleIndex);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_pickedParticleIndex)) = value;
			}
		}

		// Token: 0x170033C7 RID: 13255
		// (get) Token: 0x06009965 RID: 39269 RVA: 0x0027805C File Offset: 0x0027625C
		// (set) Token: 0x06009966 RID: 39270 RVA: 0x00278084 File Offset: 0x00276284
		public unsafe float pickedParticleDepth
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_pickedParticleDepth);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.NativeFieldInfoPtr_pickedParticleDepth)) = value;
			}
		}

		// Token: 0x0400664F RID: 26191
		private static readonly IntPtr NativeFieldInfoPtr_OnParticlePicked;

		// Token: 0x04006650 RID: 26192
		private static readonly IntPtr NativeFieldInfoPtr_OnParticleHeld;

		// Token: 0x04006651 RID: 26193
		private static readonly IntPtr NativeFieldInfoPtr_OnParticleDragged;

		// Token: 0x04006652 RID: 26194
		private static readonly IntPtr NativeFieldInfoPtr_OnParticleReleased;

		// Token: 0x04006653 RID: 26195
		private static readonly IntPtr NativeFieldInfoPtr_meshCollider;

		// Token: 0x04006654 RID: 26196
		private static readonly IntPtr NativeFieldInfoPtr_cloth;

		// Token: 0x04006655 RID: 26197
		private static readonly IntPtr NativeFieldInfoPtr_currentCollisionMesh;

		// Token: 0x04006656 RID: 26198
		private static readonly IntPtr NativeFieldInfoPtr_lastMousePos;

		// Token: 0x04006657 RID: 26199
		private static readonly IntPtr NativeFieldInfoPtr_pickedParticleIndex;

		// Token: 0x04006658 RID: 26200
		private static readonly IntPtr NativeFieldInfoPtr_pickedParticleDepth;

		// Token: 0x04006659 RID: 26201
		private static readonly IntPtr NativeMethodInfoPtr_add_OnParticlePicked_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x0400665A RID: 26202
		private static readonly IntPtr NativeMethodInfoPtr_remove_OnParticlePicked_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x0400665B RID: 26203
		private static readonly IntPtr NativeMethodInfoPtr_add_OnParticleHeld_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x0400665C RID: 26204
		private static readonly IntPtr NativeMethodInfoPtr_remove_OnParticleHeld_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x0400665D RID: 26205
		private static readonly IntPtr NativeMethodInfoPtr_add_OnParticleDragged_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x0400665E RID: 26206
		private static readonly IntPtr NativeMethodInfoPtr_remove_OnParticleDragged_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x0400665F RID: 26207
		private static readonly IntPtr NativeMethodInfoPtr_add_OnParticleReleased_Public_add_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x04006660 RID: 26208
		private static readonly IntPtr NativeMethodInfoPtr_remove_OnParticleReleased_Public_rem_Void_EventHandler_1_ParticlePickEventArgs_0;

		// Token: 0x04006661 RID: 26209
		private static readonly IntPtr NativeMethodInfoPtr_get_Cloth_Public_get_ObiClothBase_0;

		// Token: 0x04006662 RID: 26210
		private static readonly IntPtr NativeMethodInfoPtr_Awake_Private_Void_0;

		// Token: 0x04006663 RID: 26211
		private static readonly IntPtr NativeMethodInfoPtr_OnEnable_Private_Void_0;

		// Token: 0x04006664 RID: 26212
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Private_Void_0;

		// Token: 0x04006665 RID: 26213
		private static readonly IntPtr NativeMethodInfoPtr_Cloth_Solver_OnFrameBegin_Private_Void_Object_EventArgs_0;

		// Token: 0x04006666 RID: 26214
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x0200054F RID: 1359
		public class ParticlePickEventArgs : EventArgs
		{
			// Token: 0x06009967 RID: 39271 RVA: 0x002780A8 File Offset: 0x002762A8
			[CallerCount(4)]
			[CachedScanResults(RefRangeStart = 644853, RefRangeEnd = 644857, XrefRangeStart = 644849, XrefRangeEnd = 644853, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe ParticlePickEventArgs(int particleIndex, Vector3 mouseDelta)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<ObiClothPicker.ParticlePickEventArgs>.NativeClassPtr))
			{
				IntPtr* ptr;
				checked
				{
					ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref particleIndex;
				}
				ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref mouseDelta;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(ObiClothPicker.ParticlePickEventArgs.NativeMethodInfoPtr__ctor_Public_Void_Int32_Vector3_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06009968 RID: 39272 RVA: 0x00278118 File Offset: 0x00276318
			// Note: this type is marked as 'beforefieldinit'.
			static ParticlePickEventArgs()
			{
				Il2CppClassPointerStore<ObiClothPicker.ParticlePickEventArgs>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<ObiClothPicker>.NativeClassPtr, "ParticlePickEventArgs");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<ObiClothPicker.ParticlePickEventArgs>.NativeClassPtr);
				ObiClothPicker.ParticlePickEventArgs.NativeFieldInfoPtr_particleIndex = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker.ParticlePickEventArgs>.NativeClassPtr, "particleIndex");
				ObiClothPicker.ParticlePickEventArgs.NativeFieldInfoPtr_mouseDelta = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<ObiClothPicker.ParticlePickEventArgs>.NativeClassPtr, "mouseDelta");
				ObiClothPicker.ParticlePickEventArgs.NativeMethodInfoPtr__ctor_Public_Void_Int32_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<ObiClothPicker.ParticlePickEventArgs>.NativeClassPtr, 100675272);
			}

			// Token: 0x06009969 RID: 39273 RVA: 0x0025A573 File Offset: 0x00258773
			public ParticlePickEventArgs(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x170033C9 RID: 13257
			// (get) Token: 0x0600996A RID: 39274 RVA: 0x00278180 File Offset: 0x00276380
			// (set) Token: 0x0600996B RID: 39275 RVA: 0x002781A8 File Offset: 0x002763A8
			public unsafe int particleIndex
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.ParticlePickEventArgs.NativeFieldInfoPtr_particleIndex);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.ParticlePickEventArgs.NativeFieldInfoPtr_particleIndex)) = value;
				}
			}

			// Token: 0x170033CA RID: 13258
			// (get) Token: 0x0600996C RID: 39276 RVA: 0x002781CC File Offset: 0x002763CC
			// (set) Token: 0x0600996D RID: 39277 RVA: 0x002781F4 File Offset: 0x002763F4
			public unsafe Vector3 mouseDelta
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.ParticlePickEventArgs.NativeFieldInfoPtr_mouseDelta);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(ObiClothPicker.ParticlePickEventArgs.NativeFieldInfoPtr_mouseDelta)) = value;
				}
			}

			// Token: 0x04006667 RID: 26215
			private static readonly IntPtr NativeFieldInfoPtr_particleIndex;

			// Token: 0x04006668 RID: 26216
			private static readonly IntPtr NativeFieldInfoPtr_mouseDelta;

			// Token: 0x04006669 RID: 26217
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_Vector3_0;
		}
	}
}
