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

namespace XftWeapon
{
	// Token: 0x020003E9 RID: 1001
	public class XWeaponTrail : MonoBehaviour
	{
		// Token: 0x17002A5D RID: 10845
		// (get) Token: 0x06007C0E RID: 31758 RVA: 0x001FA8D8 File Offset: 0x001F8AD8
		public unsafe float UpdateInterval
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_get_UpdateInterval_Public_get_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x17002A5E RID: 10846
		// (get) Token: 0x06007C0F RID: 31759 RVA: 0x001FA928 File Offset: 0x001F8B28
		public unsafe Vector3 CurHeadPos
		{
			[CallerCount(0)]
			[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619869, XrefRangeEnd = 619871, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_get_CurHeadPos_Public_get_Vector3_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x17002A5F RID: 10847
		// (get) Token: 0x06007C10 RID: 31760 RVA: 0x001FA978 File Offset: 0x001F8B78
		public unsafe float TrailWidth
		{
			[CallerCount(0)]
			get
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_get_TrailWidth_Public_get_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				return *IL2CPP.il2cpp_object_unbox(intPtr);
			}
		}

		// Token: 0x06007C11 RID: 31761 RVA: 0x001FA9C8 File Offset: 0x001F8BC8
		[CallerCount(10)]
		[CachedScanResults(RefRangeStart = 619912, RefRangeEnd = 619922, XrefRangeStart = 619871, XrefRangeEnd = 619912, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Init()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_Init_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C12 RID: 31762 RVA: 0x001FAA0C File Offset: 0x001F8C0C
		[CallerCount(13)]
		[CachedScanResults(RefRangeStart = 619942, RefRangeEnd = 619955, XrefRangeStart = 619922, XrefRangeEnd = 619942, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Activate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_Activate_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C13 RID: 31763 RVA: 0x001FAA50 File Offset: 0x001F8C50
		[CallerCount(4)]
		[CachedScanResults(RefRangeStart = 619959, RefRangeEnd = 619963, XrefRangeStart = 619955, XrefRangeEnd = 619959, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Deactivate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_Deactivate_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C14 RID: 31764 RVA: 0x001FAA94 File Offset: 0x001F8C94
		[CallerCount(12)]
		[CachedScanResults(RefRangeStart = 619963, RefRangeEnd = 619975, XrefRangeStart = 619963, XrefRangeEnd = 619963, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void StopSmoothly(float fadeTime)
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			checked
			{
				IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
				*ptr = ref fadeTime;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_StopSmoothly_Public_Void_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}
		}

		// Token: 0x06007C15 RID: 31765 RVA: 0x001FAAE8 File Offset: 0x001F8CE8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619975, XrefRangeEnd = 619976, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnEnable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_OnEnable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C16 RID: 31766 RVA: 0x001FAB2C File Offset: 0x001F8D2C
		[CallerCount(4)]
		[CachedScanResults(RefRangeStart = 619959, RefRangeEnd = 619963, XrefRangeStart = 619959, XrefRangeEnd = 619963, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDisable()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_OnDisable_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C17 RID: 31767 RVA: 0x001FAB70 File Offset: 0x001F8D70
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619976, XrefRangeEnd = 620002, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Update()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_Update_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C18 RID: 31768 RVA: 0x001FABB4 File Offset: 0x001F8DB4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620002, XrefRangeEnd = 620003, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void LateUpdate()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_LateUpdate_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C19 RID: 31769 RVA: 0x001FABF8 File Offset: 0x001F8DF8
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620003, XrefRangeEnd = 620004, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDestroy()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_OnDestroy_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C1A RID: 31770 RVA: 0x001FAC3C File Offset: 0x001F8E3C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620004, XrefRangeEnd = 620005, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void Start()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_Start_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C1B RID: 31771 RVA: 0x001FAC80 File Offset: 0x001F8E80
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620005, XrefRangeEnd = 620025, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void OnDrawGizmos()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_OnDrawGizmos_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C1C RID: 31772 RVA: 0x001FACC4 File Offset: 0x001F8EC4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620025, XrefRangeEnd = 620031, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void InitSpline()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_InitSpline_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C1D RID: 31773 RVA: 0x001FAD08 File Offset: 0x001F8F08
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 620043, RefRangeEnd = 620045, XrefRangeStart = 620031, XrefRangeEnd = 620043, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void RefreshSpline()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_RefreshSpline_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C1E RID: 31774 RVA: 0x001FAD4C File Offset: 0x001F8F4C
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 620050, RefRangeEnd = 620052, XrefRangeStart = 620045, XrefRangeEnd = 620050, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void UpdateVertex()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_UpdateVertex_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C1F RID: 31775 RVA: 0x001FAD90 File Offset: 0x001F8F90
		[CallerCount(2)]
		[CachedScanResults(RefRangeStart = 620053, RefRangeEnd = 620055, XrefRangeStart = 620052, XrefRangeEnd = 620053, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void UpdateIndices()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_UpdateIndices_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C20 RID: 31776 RVA: 0x001FADD4 File Offset: 0x001F8FD4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620055, XrefRangeEnd = 620060, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void UpdateHeadElem()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_UpdateHeadElem_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C21 RID: 31777 RVA: 0x001FAE18 File Offset: 0x001F9018
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620060, XrefRangeEnd = 620064, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void UpdateFade()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_UpdateFade_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C22 RID: 31778 RVA: 0x001FAE5C File Offset: 0x001F905C
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620064, XrefRangeEnd = 620080, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void RecordCurElem()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_RecordCurElem_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C23 RID: 31779 RVA: 0x001FAEA0 File Offset: 0x001F90A0
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620080, XrefRangeEnd = 620100, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void InitOriginalElements()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_InitOriginalElements_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C24 RID: 31780 RVA: 0x001FAEE4 File Offset: 0x001F90E4
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620100, XrefRangeEnd = 620109, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void InitMeshObj()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr_InitMeshObj_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C25 RID: 31781 RVA: 0x001FAF28 File Offset: 0x001F9128
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 620109, XrefRangeEnd = 620128, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe XWeaponTrail()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06007C26 RID: 31782 RVA: 0x001FAF74 File Offset: 0x001F9174
		// Note: this type is marked as 'beforefieldinit'.
		static XWeaponTrail()
		{
			Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "XftWeapon", "XWeaponTrail");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr);
			XWeaponTrail.NativeFieldInfoPtr_Version = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "Version");
			XWeaponTrail.NativeFieldInfoPtr_UseWith2D = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "UseWith2D");
			XWeaponTrail.NativeFieldInfoPtr_SortingLayerName = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "SortingLayerName");
			XWeaponTrail.NativeFieldInfoPtr_SortingOrder = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "SortingOrder");
			XWeaponTrail.NativeFieldInfoPtr_PointStart = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "PointStart");
			XWeaponTrail.NativeFieldInfoPtr_PointEnd = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "PointEnd");
			XWeaponTrail.NativeFieldInfoPtr_MaxFrame = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "MaxFrame");
			XWeaponTrail.NativeFieldInfoPtr_Granularity = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "Granularity");
			XWeaponTrail.NativeFieldInfoPtr_Fps = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "Fps");
			XWeaponTrail.NativeFieldInfoPtr_MyColor = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "MyColor");
			XWeaponTrail.NativeFieldInfoPtr_MyMaterial = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "MyMaterial");
			XWeaponTrail.NativeFieldInfoPtr_mTrailWidth = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mTrailWidth");
			XWeaponTrail.NativeFieldInfoPtr_mHeadElem = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mHeadElem");
			XWeaponTrail.NativeFieldInfoPtr_mSnapshotList = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mSnapshotList");
			XWeaponTrail.NativeFieldInfoPtr_mElemPool = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mElemPool");
			XWeaponTrail.NativeFieldInfoPtr_mSpline = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mSpline");
			XWeaponTrail.NativeFieldInfoPtr_mFadeT = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mFadeT");
			XWeaponTrail.NativeFieldInfoPtr_mIsFading = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mIsFading");
			XWeaponTrail.NativeFieldInfoPtr_mFadeTime = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mFadeTime");
			XWeaponTrail.NativeFieldInfoPtr_mElapsedTime = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mElapsedTime");
			XWeaponTrail.NativeFieldInfoPtr_mFadeElapsedime = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mFadeElapsedime");
			XWeaponTrail.NativeFieldInfoPtr_mMeshObj = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mMeshObj");
			XWeaponTrail.NativeFieldInfoPtr_mVertexPool = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mVertexPool");
			XWeaponTrail.NativeFieldInfoPtr_mVertexSegment = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mVertexSegment");
			XWeaponTrail.NativeFieldInfoPtr_mInited = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mInited");
			XWeaponTrail.NativeFieldInfoPtr_mActivated = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "mActivated");
			XWeaponTrail.NativeMethodInfoPtr_get_UpdateInterval_Public_get_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672714);
			XWeaponTrail.NativeMethodInfoPtr_get_CurHeadPos_Public_get_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672715);
			XWeaponTrail.NativeMethodInfoPtr_get_TrailWidth_Public_get_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672716);
			XWeaponTrail.NativeMethodInfoPtr_Init_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672717);
			XWeaponTrail.NativeMethodInfoPtr_Activate_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672718);
			XWeaponTrail.NativeMethodInfoPtr_Deactivate_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672719);
			XWeaponTrail.NativeMethodInfoPtr_StopSmoothly_Public_Void_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672720);
			XWeaponTrail.NativeMethodInfoPtr_OnEnable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672721);
			XWeaponTrail.NativeMethodInfoPtr_OnDisable_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672722);
			XWeaponTrail.NativeMethodInfoPtr_Update_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672723);
			XWeaponTrail.NativeMethodInfoPtr_LateUpdate_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672724);
			XWeaponTrail.NativeMethodInfoPtr_OnDestroy_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672725);
			XWeaponTrail.NativeMethodInfoPtr_Start_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672726);
			XWeaponTrail.NativeMethodInfoPtr_OnDrawGizmos_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672727);
			XWeaponTrail.NativeMethodInfoPtr_InitSpline_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672728);
			XWeaponTrail.NativeMethodInfoPtr_RefreshSpline_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672729);
			XWeaponTrail.NativeMethodInfoPtr_UpdateVertex_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672730);
			XWeaponTrail.NativeMethodInfoPtr_UpdateIndices_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672731);
			XWeaponTrail.NativeMethodInfoPtr_UpdateHeadElem_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672732);
			XWeaponTrail.NativeMethodInfoPtr_UpdateFade_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672733);
			XWeaponTrail.NativeMethodInfoPtr_RecordCurElem_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672734);
			XWeaponTrail.NativeMethodInfoPtr_InitOriginalElements_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672735);
			XWeaponTrail.NativeMethodInfoPtr_InitMeshObj_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672736);
			XWeaponTrail.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, 100672737);
		}

		// Token: 0x06007C27 RID: 31783 RVA: 0x0000351C File Offset: 0x0000171C
		public XWeaponTrail(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17002A43 RID: 10819
		// (get) Token: 0x06007C28 RID: 31784 RVA: 0x001FB38C File Offset: 0x001F958C
		// (set) Token: 0x06007C29 RID: 31785 RVA: 0x001FB3AC File Offset: 0x001F95AC
		public unsafe static string Version
		{
			get
			{
				IntPtr intPtr;
				IL2CPP.il2cpp_field_static_get_value(XWeaponTrail.NativeFieldInfoPtr_Version, (void*)(&intPtr));
				return IL2CPP.Il2CppStringToManaged(intPtr);
			}
			set
			{
				IL2CPP.il2cpp_field_static_set_value(XWeaponTrail.NativeFieldInfoPtr_Version, IL2CPP.ManagedStringToIl2Cpp(value));
			}
		}

		// Token: 0x17002A44 RID: 10820
		// (get) Token: 0x06007C2A RID: 31786 RVA: 0x001FB3C4 File Offset: 0x001F95C4
		// (set) Token: 0x06007C2B RID: 31787 RVA: 0x001FB3EC File Offset: 0x001F95EC
		public unsafe bool UseWith2D
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_UseWith2D);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_UseWith2D)) = value;
			}
		}

		// Token: 0x17002A45 RID: 10821
		// (get) Token: 0x06007C2C RID: 31788 RVA: 0x001FB410 File Offset: 0x001F9610
		// (set) Token: 0x06007C2D RID: 31789 RVA: 0x001FB439 File Offset: 0x001F9639
		public unsafe string SortingLayerName
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_SortingLayerName);
				return IL2CPP.Il2CppStringToManaged(*intPtr);
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_SortingLayerName), IL2CPP.ManagedStringToIl2Cpp(value));
			}
		}

		// Token: 0x17002A46 RID: 10822
		// (get) Token: 0x06007C2E RID: 31790 RVA: 0x001FB460 File Offset: 0x001F9660
		// (set) Token: 0x06007C2F RID: 31791 RVA: 0x001FB488 File Offset: 0x001F9688
		public unsafe int SortingOrder
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_SortingOrder);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_SortingOrder)) = value;
			}
		}

		// Token: 0x17002A47 RID: 10823
		// (get) Token: 0x06007C30 RID: 31792 RVA: 0x001FB4AC File Offset: 0x001F96AC
		// (set) Token: 0x06007C31 RID: 31793 RVA: 0x001FB4E0 File Offset: 0x001F96E0
		public unsafe Transform PointStart
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_PointStart);
				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(XWeaponTrail.NativeFieldInfoPtr_PointStart), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A48 RID: 10824
		// (get) Token: 0x06007C32 RID: 31794 RVA: 0x001FB508 File Offset: 0x001F9708
		// (set) Token: 0x06007C33 RID: 31795 RVA: 0x001FB53C File Offset: 0x001F973C
		public unsafe Transform PointEnd
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_PointEnd);
				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(XWeaponTrail.NativeFieldInfoPtr_PointEnd), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A49 RID: 10825
		// (get) Token: 0x06007C34 RID: 31796 RVA: 0x001FB564 File Offset: 0x001F9764
		// (set) Token: 0x06007C35 RID: 31797 RVA: 0x001FB58C File Offset: 0x001F978C
		public unsafe int MaxFrame
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_MaxFrame);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_MaxFrame)) = value;
			}
		}

		// Token: 0x17002A4A RID: 10826
		// (get) Token: 0x06007C36 RID: 31798 RVA: 0x001FB5B0 File Offset: 0x001F97B0
		// (set) Token: 0x06007C37 RID: 31799 RVA: 0x001FB5D8 File Offset: 0x001F97D8
		public unsafe int Granularity
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_Granularity);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_Granularity)) = value;
			}
		}

		// Token: 0x17002A4B RID: 10827
		// (get) Token: 0x06007C38 RID: 31800 RVA: 0x001FB5FC File Offset: 0x001F97FC
		// (set) Token: 0x06007C39 RID: 31801 RVA: 0x001FB624 File Offset: 0x001F9824
		public unsafe float Fps
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_Fps);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_Fps)) = value;
			}
		}

		// Token: 0x17002A4C RID: 10828
		// (get) Token: 0x06007C3A RID: 31802 RVA: 0x001FB648 File Offset: 0x001F9848
		// (set) Token: 0x06007C3B RID: 31803 RVA: 0x001FB670 File Offset: 0x001F9870
		public unsafe Color MyColor
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_MyColor);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_MyColor)) = value;
			}
		}

		// Token: 0x17002A4D RID: 10829
		// (get) Token: 0x06007C3C RID: 31804 RVA: 0x001FB694 File Offset: 0x001F9894
		// (set) Token: 0x06007C3D RID: 31805 RVA: 0x001FB6C8 File Offset: 0x001F98C8
		public unsafe Material MyMaterial
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_MyMaterial);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Material(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_MyMaterial), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A4E RID: 10830
		// (get) Token: 0x06007C3E RID: 31806 RVA: 0x001FB6F0 File Offset: 0x001F98F0
		// (set) Token: 0x06007C3F RID: 31807 RVA: 0x001FB718 File Offset: 0x001F9918
		public unsafe float mTrailWidth
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mTrailWidth);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mTrailWidth)) = value;
			}
		}

		// Token: 0x17002A4F RID: 10831
		// (get) Token: 0x06007C40 RID: 31808 RVA: 0x001FB73C File Offset: 0x001F993C
		// (set) Token: 0x06007C41 RID: 31809 RVA: 0x001FB770 File Offset: 0x001F9970
		public unsafe XWeaponTrail.Element mHeadElem
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mHeadElem);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new XWeaponTrail.Element(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mHeadElem), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A50 RID: 10832
		// (get) Token: 0x06007C42 RID: 31810 RVA: 0x001FB798 File Offset: 0x001F9998
		// (set) Token: 0x06007C43 RID: 31811 RVA: 0x001FB7CC File Offset: 0x001F99CC
		public unsafe List<XWeaponTrail.Element> mSnapshotList
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mSnapshotList);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new List<XWeaponTrail.Element>(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mSnapshotList), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A51 RID: 10833
		// (get) Token: 0x06007C44 RID: 31812 RVA: 0x001FB7F4 File Offset: 0x001F99F4
		// (set) Token: 0x06007C45 RID: 31813 RVA: 0x001FB828 File Offset: 0x001F9A28
		public unsafe XWeaponTrail.ElementPool mElemPool
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mElemPool);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new XWeaponTrail.ElementPool(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mElemPool), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A52 RID: 10834
		// (get) Token: 0x06007C46 RID: 31814 RVA: 0x001FB850 File Offset: 0x001F9A50
		// (set) Token: 0x06007C47 RID: 31815 RVA: 0x001FB884 File Offset: 0x001F9A84
		public unsafe Spline mSpline
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mSpline);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new Spline(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mSpline), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A53 RID: 10835
		// (get) Token: 0x06007C48 RID: 31816 RVA: 0x001FB8AC File Offset: 0x001F9AAC
		// (set) Token: 0x06007C49 RID: 31817 RVA: 0x001FB8D4 File Offset: 0x001F9AD4
		public unsafe float mFadeT
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mFadeT);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mFadeT)) = value;
			}
		}

		// Token: 0x17002A54 RID: 10836
		// (get) Token: 0x06007C4A RID: 31818 RVA: 0x001FB8F8 File Offset: 0x001F9AF8
		// (set) Token: 0x06007C4B RID: 31819 RVA: 0x001FB920 File Offset: 0x001F9B20
		public unsafe bool mIsFading
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mIsFading);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mIsFading)) = value;
			}
		}

		// Token: 0x17002A55 RID: 10837
		// (get) Token: 0x06007C4C RID: 31820 RVA: 0x001FB944 File Offset: 0x001F9B44
		// (set) Token: 0x06007C4D RID: 31821 RVA: 0x001FB96C File Offset: 0x001F9B6C
		public unsafe float mFadeTime
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mFadeTime);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mFadeTime)) = value;
			}
		}

		// Token: 0x17002A56 RID: 10838
		// (get) Token: 0x06007C4E RID: 31822 RVA: 0x001FB990 File Offset: 0x001F9B90
		// (set) Token: 0x06007C4F RID: 31823 RVA: 0x001FB9B8 File Offset: 0x001F9BB8
		public unsafe float mElapsedTime
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mElapsedTime);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mElapsedTime)) = value;
			}
		}

		// Token: 0x17002A57 RID: 10839
		// (get) Token: 0x06007C50 RID: 31824 RVA: 0x001FB9DC File Offset: 0x001F9BDC
		// (set) Token: 0x06007C51 RID: 31825 RVA: 0x001FBA04 File Offset: 0x001F9C04
		public unsafe float mFadeElapsedime
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mFadeElapsedime);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mFadeElapsedime)) = value;
			}
		}

		// Token: 0x17002A58 RID: 10840
		// (get) Token: 0x06007C52 RID: 31826 RVA: 0x001FBA28 File Offset: 0x001F9C28
		// (set) Token: 0x06007C53 RID: 31827 RVA: 0x001FBA5C File Offset: 0x001F9C5C
		public unsafe GameObject mMeshObj
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mMeshObj);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new GameObject(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mMeshObj), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A59 RID: 10841
		// (get) Token: 0x06007C54 RID: 31828 RVA: 0x001FBA84 File Offset: 0x001F9C84
		// (set) Token: 0x06007C55 RID: 31829 RVA: 0x001FBAB8 File Offset: 0x001F9CB8
		public unsafe VertexPool mVertexPool
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mVertexPool);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new VertexPool(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mVertexPool), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A5A RID: 10842
		// (get) Token: 0x06007C56 RID: 31830 RVA: 0x001FBAE0 File Offset: 0x001F9CE0
		// (set) Token: 0x06007C57 RID: 31831 RVA: 0x001FBB14 File Offset: 0x001F9D14
		public unsafe VertexPool.VertexSegment mVertexSegment
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mVertexSegment);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new VertexPool.VertexSegment(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mVertexSegment), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17002A5B RID: 10843
		// (get) Token: 0x06007C58 RID: 31832 RVA: 0x001FBB3C File Offset: 0x001F9D3C
		// (set) Token: 0x06007C59 RID: 31833 RVA: 0x001FBB64 File Offset: 0x001F9D64
		public unsafe bool mInited
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mInited);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mInited)) = value;
			}
		}

		// Token: 0x17002A5C RID: 10844
		// (get) Token: 0x06007C5A RID: 31834 RVA: 0x001FBB88 File Offset: 0x001F9D88
		// (set) Token: 0x06007C5B RID: 31835 RVA: 0x001FBBB0 File Offset: 0x001F9DB0
		public unsafe bool mActivated
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mActivated);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.NativeFieldInfoPtr_mActivated)) = value;
			}
		}

		// Token: 0x0400534F RID: 21327
		private static readonly IntPtr NativeFieldInfoPtr_Version;

		// Token: 0x04005350 RID: 21328
		private static readonly IntPtr NativeFieldInfoPtr_UseWith2D;

		// Token: 0x04005351 RID: 21329
		private static readonly IntPtr NativeFieldInfoPtr_SortingLayerName;

		// Token: 0x04005352 RID: 21330
		private static readonly IntPtr NativeFieldInfoPtr_SortingOrder;

		// Token: 0x04005353 RID: 21331
		private static readonly IntPtr NativeFieldInfoPtr_PointStart;

		// Token: 0x04005354 RID: 21332
		private static readonly IntPtr NativeFieldInfoPtr_PointEnd;

		// Token: 0x04005355 RID: 21333
		private static readonly IntPtr NativeFieldInfoPtr_MaxFrame;

		// Token: 0x04005356 RID: 21334
		private static readonly IntPtr NativeFieldInfoPtr_Granularity;

		// Token: 0x04005357 RID: 21335
		private static readonly IntPtr NativeFieldInfoPtr_Fps;

		// Token: 0x04005358 RID: 21336
		private static readonly IntPtr NativeFieldInfoPtr_MyColor;

		// Token: 0x04005359 RID: 21337
		private static readonly IntPtr NativeFieldInfoPtr_MyMaterial;

		// Token: 0x0400535A RID: 21338
		private static readonly IntPtr NativeFieldInfoPtr_mTrailWidth;

		// Token: 0x0400535B RID: 21339
		private static readonly IntPtr NativeFieldInfoPtr_mHeadElem;

		// Token: 0x0400535C RID: 21340
		private static readonly IntPtr NativeFieldInfoPtr_mSnapshotList;

		// Token: 0x0400535D RID: 21341
		private static readonly IntPtr NativeFieldInfoPtr_mElemPool;

		// Token: 0x0400535E RID: 21342
		private static readonly IntPtr NativeFieldInfoPtr_mSpline;

		// Token: 0x0400535F RID: 21343
		private static readonly IntPtr NativeFieldInfoPtr_mFadeT;

		// Token: 0x04005360 RID: 21344
		private static readonly IntPtr NativeFieldInfoPtr_mIsFading;

		// Token: 0x04005361 RID: 21345
		private static readonly IntPtr NativeFieldInfoPtr_mFadeTime;

		// Token: 0x04005362 RID: 21346
		private static readonly IntPtr NativeFieldInfoPtr_mElapsedTime;

		// Token: 0x04005363 RID: 21347
		private static readonly IntPtr NativeFieldInfoPtr_mFadeElapsedime;

		// Token: 0x04005364 RID: 21348
		private static readonly IntPtr NativeFieldInfoPtr_mMeshObj;

		// Token: 0x04005365 RID: 21349
		private static readonly IntPtr NativeFieldInfoPtr_mVertexPool;

		// Token: 0x04005366 RID: 21350
		private static readonly IntPtr NativeFieldInfoPtr_mVertexSegment;

		// Token: 0x04005367 RID: 21351
		private static readonly IntPtr NativeFieldInfoPtr_mInited;

		// Token: 0x04005368 RID: 21352
		private static readonly IntPtr NativeFieldInfoPtr_mActivated;

		// Token: 0x04005369 RID: 21353
		private static readonly IntPtr NativeMethodInfoPtr_get_UpdateInterval_Public_get_Single_0;

		// Token: 0x0400536A RID: 21354
		private static readonly IntPtr NativeMethodInfoPtr_get_CurHeadPos_Public_get_Vector3_0;

		// Token: 0x0400536B RID: 21355
		private static readonly IntPtr NativeMethodInfoPtr_get_TrailWidth_Public_get_Single_0;

		// Token: 0x0400536C RID: 21356
		private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_0;

		// Token: 0x0400536D RID: 21357
		private static readonly IntPtr NativeMethodInfoPtr_Activate_Public_Void_0;

		// Token: 0x0400536E RID: 21358
		private static readonly IntPtr NativeMethodInfoPtr_Deactivate_Public_Void_0;

		// Token: 0x0400536F RID: 21359
		private static readonly IntPtr NativeMethodInfoPtr_StopSmoothly_Public_Void_Single_0;

		// Token: 0x04005370 RID: 21360
		private static readonly IntPtr NativeMethodInfoPtr_OnEnable_Private_Void_0;

		// Token: 0x04005371 RID: 21361
		private static readonly IntPtr NativeMethodInfoPtr_OnDisable_Private_Void_0;

		// Token: 0x04005372 RID: 21362
		private static readonly IntPtr NativeMethodInfoPtr_Update_Private_Void_0;

		// Token: 0x04005373 RID: 21363
		private static readonly IntPtr NativeMethodInfoPtr_LateUpdate_Private_Void_0;

		// Token: 0x04005374 RID: 21364
		private static readonly IntPtr NativeMethodInfoPtr_OnDestroy_Private_Void_0;

		// Token: 0x04005375 RID: 21365
		private static readonly IntPtr NativeMethodInfoPtr_Start_Private_Void_0;

		// Token: 0x04005376 RID: 21366
		private static readonly IntPtr NativeMethodInfoPtr_OnDrawGizmos_Private_Void_0;

		// Token: 0x04005377 RID: 21367
		private static readonly IntPtr NativeMethodInfoPtr_InitSpline_Private_Void_0;

		// Token: 0x04005378 RID: 21368
		private static readonly IntPtr NativeMethodInfoPtr_RefreshSpline_Private_Void_0;

		// Token: 0x04005379 RID: 21369
		private static readonly IntPtr NativeMethodInfoPtr_UpdateVertex_Private_Void_0;

		// Token: 0x0400537A RID: 21370
		private static readonly IntPtr NativeMethodInfoPtr_UpdateIndices_Private_Void_0;

		// Token: 0x0400537B RID: 21371
		private static readonly IntPtr NativeMethodInfoPtr_UpdateHeadElem_Private_Void_0;

		// Token: 0x0400537C RID: 21372
		private static readonly IntPtr NativeMethodInfoPtr_UpdateFade_Private_Void_0;

		// Token: 0x0400537D RID: 21373
		private static readonly IntPtr NativeMethodInfoPtr_RecordCurElem_Private_Void_0;

		// Token: 0x0400537E RID: 21374
		private static readonly IntPtr NativeMethodInfoPtr_InitOriginalElements_Private_Void_0;

		// Token: 0x0400537F RID: 21375
		private static readonly IntPtr NativeMethodInfoPtr_InitMeshObj_Private_Void_0;

		// Token: 0x04005380 RID: 21376
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x020003EA RID: 1002
		public class Element : Il2CppSystem.Object
		{
			// Token: 0x17002A62 RID: 10850
			// (get) Token: 0x06007C5C RID: 31836 RVA: 0x001FBBD4 File Offset: 0x001F9DD4
			public unsafe Vector3 Pos
			{
				[CallerCount(2)]
				[CachedScanResults(RefRangeStart = 619821, RefRangeEnd = 619823, XrefRangeStart = 619821, XrefRangeEnd = 619821, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.Element.NativeMethodInfoPtr_get_Pos_Public_get_Vector3_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06007C5D RID: 31837 RVA: 0x001FBC24 File Offset: 0x001F9E24
			[CallerCount(4)]
			[CachedScanResults(RefRangeStart = 619824, RefRangeEnd = 619828, XrefRangeStart = 619823, XrefRangeEnd = 619824, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe Element(Vector3 start, Vector3 end)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr))
			{
				IntPtr* ptr;
				checked
				{
					ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref start;
				}
				ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref end;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.Element.NativeMethodInfoPtr__ctor_Public_Void_Vector3_Vector3_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06007C5E RID: 31838 RVA: 0x001FBC94 File Offset: 0x001F9E94
			[CallerCount(1664)]
			[CachedScanResults(RefRangeStart = 7711, RefRangeEnd = 9375, XrefRangeStart = 7711, XrefRangeEnd = 9375, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe Element()
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr))
			{
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.Element.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
			}

			// Token: 0x06007C5F RID: 31839 RVA: 0x001FBCE0 File Offset: 0x001F9EE0
			// Note: this type is marked as 'beforefieldinit'.
			static Element()
			{
				Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "Element");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr);
				XWeaponTrail.Element.NativeFieldInfoPtr_PointStart = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr, "PointStart");
				XWeaponTrail.Element.NativeFieldInfoPtr_PointEnd = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr, "PointEnd");
				XWeaponTrail.Element.NativeMethodInfoPtr_get_Pos_Public_get_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr, 100672739);
				XWeaponTrail.Element.NativeMethodInfoPtr__ctor_Public_Void_Vector3_Vector3_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr, 100672740);
				XWeaponTrail.Element.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.Element>.NativeClassPtr, 100672741);
			}

			// Token: 0x06007C60 RID: 31840 RVA: 0x0000A74C File Offset: 0x0000894C
			public Element(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17002A60 RID: 10848
			// (get) Token: 0x06007C61 RID: 31841 RVA: 0x001FBD70 File Offset: 0x001F9F70
			// (set) Token: 0x06007C62 RID: 31842 RVA: 0x001FBD98 File Offset: 0x001F9F98
			public unsafe Vector3 PointStart
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.Element.NativeFieldInfoPtr_PointStart);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.Element.NativeFieldInfoPtr_PointStart)) = value;
				}
			}

			// Token: 0x17002A61 RID: 10849
			// (get) Token: 0x06007C63 RID: 31843 RVA: 0x001FBDBC File Offset: 0x001F9FBC
			// (set) Token: 0x06007C64 RID: 31844 RVA: 0x001FBDE4 File Offset: 0x001F9FE4
			public unsafe Vector3 PointEnd
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.Element.NativeFieldInfoPtr_PointEnd);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.Element.NativeFieldInfoPtr_PointEnd)) = value;
				}
			}

			// Token: 0x04005381 RID: 21377
			private static readonly IntPtr NativeFieldInfoPtr_PointStart;

			// Token: 0x04005382 RID: 21378
			private static readonly IntPtr NativeFieldInfoPtr_PointEnd;

			// Token: 0x04005383 RID: 21379
			private static readonly IntPtr NativeMethodInfoPtr_get_Pos_Public_get_Vector3_0;

			// Token: 0x04005384 RID: 21380
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Vector3_Vector3_0;

			// Token: 0x04005385 RID: 21381
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
		}

		// Token: 0x020003EB RID: 1003
		public class ElementPool : Il2CppSystem.Object
		{
			// Token: 0x17002A65 RID: 10853
			// (get) Token: 0x06007C65 RID: 31845 RVA: 0x001FBE08 File Offset: 0x001FA008
			// (set) Token: 0x06007C66 RID: 31846 RVA: 0x001FBE58 File Offset: 0x001FA058
			public unsafe int CountAll
			{
				[CallerCount(0)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.ElementPool.NativeMethodInfoPtr_get_CountAll_Public_get_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
				[CallerCount(5)]
				[CachedScanResults(RefRangeStart = 9375, RefRangeEnd = 9380, XrefRangeStart = 9375, XrefRangeEnd = 9380, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				set
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					checked
					{
						IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
						*ptr = ref value;
						IntPtr intPtr2;
						IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.ElementPool.NativeMethodInfoPtr_set_CountAll_Private_set_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
						Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					}
				}
			}

			// Token: 0x17002A66 RID: 10854
			// (get) Token: 0x06007C67 RID: 31847 RVA: 0x001FBEAC File Offset: 0x001FA0AC
			public unsafe int CountActive
			{
				[CallerCount(0)]
				[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619828, XrefRangeEnd = 619829, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.ElementPool.NativeMethodInfoPtr_get_CountActive_Public_get_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x17002A67 RID: 10855
			// (get) Token: 0x06007C68 RID: 31848 RVA: 0x001FBEFC File Offset: 0x001FA0FC
			public unsafe int CountInactive
			{
				[CallerCount(0)]
				[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 619829, XrefRangeEnd = 619830, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
				get
				{
					IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IntPtr* ptr = null;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.ElementPool.NativeMethodInfoPtr_get_CountInactive_Public_get_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
					return *IL2CPP.il2cpp_object_unbox(intPtr);
				}
			}

			// Token: 0x06007C69 RID: 31849 RVA: 0x001FBF4C File Offset: 0x001FA14C
			[CallerCount(1)]
			[CachedScanResults(RefRangeStart = 619845, RefRangeEnd = 619846, XrefRangeStart = 619830, XrefRangeEnd = 619845, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe ElementPool(int preCount)
				: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr))
			{
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = ref preCount;
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.ElementPool.NativeMethodInfoPtr__ctor_Public_Void_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06007C6A RID: 31850 RVA: 0x001FBFAC File Offset: 0x001FA1AC
			[CallerCount(2)]
			[CachedScanResults(RefRangeStart = 619851, RefRangeEnd = 619853, XrefRangeStart = 619846, XrefRangeEnd = 619851, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe XWeaponTrail.Element Get()
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IntPtr* ptr = null;
				IntPtr intPtr2;
				IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.ElementPool.NativeMethodInfoPtr_Get_Public_Element_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
				Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				IntPtr intPtr3 = intPtr;
				return (intPtr3 != 0) ? new XWeaponTrail.Element(intPtr3) : null;
			}

			// Token: 0x06007C6B RID: 31851 RVA: 0x001FC004 File Offset: 0x001FA204
			[CallerCount(2)]
			[CachedScanResults(RefRangeStart = 619867, RefRangeEnd = 619869, XrefRangeStart = 619853, XrefRangeEnd = 619867, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
			public unsafe void Release(XWeaponTrail.Element element)
			{
				IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				checked
				{
					IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
					*ptr = IL2CPP.Il2CppObjectBaseToPtr(element);
					IntPtr intPtr2;
					IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(XWeaponTrail.ElementPool.NativeMethodInfoPtr_Release_Public_Void_Element_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
					Il2CppException.RaiseExceptionIfNecessary(intPtr2);
				}
			}

			// Token: 0x06007C6C RID: 31852 RVA: 0x001FC060 File Offset: 0x001FA260
			// Note: this type is marked as 'beforefieldinit'.
			static ElementPool()
			{
				Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<XWeaponTrail>.NativeClassPtr, "ElementPool");
				IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr);
				XWeaponTrail.ElementPool.NativeFieldInfoPtr__stack = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, "_stack");
				XWeaponTrail.ElementPool.NativeFieldInfoPtr__CountAll_k__BackingField = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, "<CountAll>k__BackingField");
				XWeaponTrail.ElementPool.NativeMethodInfoPtr_get_CountAll_Public_get_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, 100672742);
				XWeaponTrail.ElementPool.NativeMethodInfoPtr_set_CountAll_Private_set_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, 100672743);
				XWeaponTrail.ElementPool.NativeMethodInfoPtr_get_CountActive_Public_get_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, 100672744);
				XWeaponTrail.ElementPool.NativeMethodInfoPtr_get_CountInactive_Public_get_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, 100672745);
				XWeaponTrail.ElementPool.NativeMethodInfoPtr__ctor_Public_Void_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, 100672746);
				XWeaponTrail.ElementPool.NativeMethodInfoPtr_Get_Public_Element_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, 100672747);
				XWeaponTrail.ElementPool.NativeMethodInfoPtr_Release_Public_Void_Element_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<XWeaponTrail.ElementPool>.NativeClassPtr, 100672748);
			}

			// Token: 0x06007C6D RID: 31853 RVA: 0x0000A74C File Offset: 0x0000894C
			public ElementPool(IntPtr pointer)
				: base(pointer)
			{
			}

			// Token: 0x17002A63 RID: 10851
			// (get) Token: 0x06007C6E RID: 31854 RVA: 0x001FC140 File Offset: 0x001FA340
			// (set) Token: 0x06007C6F RID: 31855 RVA: 0x001FC174 File Offset: 0x001FA374
			public unsafe Stack<XWeaponTrail.Element> _stack
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.ElementPool.NativeFieldInfoPtr__stack);
					IntPtr intPtr2 = *intPtr;
					return (intPtr2 != 0) ? new Stack<XWeaponTrail.Element>(intPtr2) : null;
				}
				set
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
					IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.ElementPool.NativeFieldInfoPtr__stack), IL2CPP.Il2CppObjectBaseToPtr(value));
				}
			}

			// Token: 0x17002A64 RID: 10852
			// (get) Token: 0x06007C70 RID: 31856 RVA: 0x001FC19C File Offset: 0x001FA39C
			// (set) Token: 0x06007C71 RID: 31857 RVA: 0x001FC1C4 File Offset: 0x001FA3C4
			public unsafe int _CountAll_k__BackingField
			{
				get
				{
					IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.ElementPool.NativeFieldInfoPtr__CountAll_k__BackingField);
					return *intPtr;
				}
				set
				{
					*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(XWeaponTrail.ElementPool.NativeFieldInfoPtr__CountAll_k__BackingField)) = value;
				}
			}

			// Token: 0x04005386 RID: 21382
			private static readonly IntPtr NativeFieldInfoPtr__stack;

			// Token: 0x04005387 RID: 21383
			private static readonly IntPtr NativeFieldInfoPtr__CountAll_k__BackingField;

			// Token: 0x04005388 RID: 21384
			private static readonly IntPtr NativeMethodInfoPtr_get_CountAll_Public_get_Int32_0;

			// Token: 0x04005389 RID: 21385
			private static readonly IntPtr NativeMethodInfoPtr_set_CountAll_Private_set_Void_Int32_0;

			// Token: 0x0400538A RID: 21386
			private static readonly IntPtr NativeMethodInfoPtr_get_CountActive_Public_get_Int32_0;

			// Token: 0x0400538B RID: 21387
			private static readonly IntPtr NativeMethodInfoPtr_get_CountInactive_Public_get_Int32_0;

			// Token: 0x0400538C RID: 21388
			private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_Int32_0;

			// Token: 0x0400538D RID: 21389
			private static readonly IntPtr NativeMethodInfoPtr_Get_Public_Element_0;

			// Token: 0x0400538E RID: 21390
			private static readonly IntPtr NativeMethodInfoPtr_Release_Public_Void_Element_0;
		}
	}
}
