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

// Token: 0x02000209 RID: 521
public class SoulSystem : Il2CppSystem.Object
{
	// Token: 0x06004EAE RID: 20142 RVA: 0x00138158 File Offset: 0x00136358
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549366, RefRangeEnd = 549367, XrefRangeStart = 549226, XrefRangeEnd = 549366, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Init(Transform soulRoot)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(soulRoot);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_Init_Public_Void_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06004EAF RID: 20143 RVA: 0x001381B4 File Offset: 0x001363B4
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549399, RefRangeEnd = 549400, XrefRangeStart = 549367, XrefRangeEnd = 549399, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void InitCollisionEffectPools(Il2CppStringArray effectNames = null)
	{
		if (effectNames == null)
		{
			effectNames = new Il2CppStringArray(0L);
		}
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(effectNames);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_InitCollisionEffectPools_Private_Void_Il2CppStringArray_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06004EB0 RID: 20144 RVA: 0x00138224 File Offset: 0x00136424
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549435, RefRangeEnd = 549436, XrefRangeStart = 549400, XrefRangeEnd = 549435, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void SetTimeScale(float timeScale)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref timeScale;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_SetTimeScale_Public_Void_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06004EB1 RID: 20145 RVA: 0x00138278 File Offset: 0x00136478
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549446, RefRangeEnd = 549447, XrefRangeStart = 549436, XrefRangeEnd = 549446, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CreateSoul(SoulSystem.SoulType type, Vector3 pos, int amount)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref type;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref pos;
		ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref amount;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_CreateSoul_Public_Void_SoulType_Vector3_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004EB2 RID: 20146 RVA: 0x001382F4 File Offset: 0x001364F4
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549484, RefRangeEnd = 549485, XrefRangeStart = 549447, XrefRangeEnd = 549484, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CreateHPSoul(Vector3 pos, int totalAmount)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref pos;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref totalAmount;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_CreateHPSoul_Private_Void_Vector3_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004EB3 RID: 20147 RVA: 0x0013835C File Offset: 0x0013655C
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549522, RefRangeEnd = 549523, XrefRangeStart = 549485, XrefRangeEnd = 549522, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CreateMPSoul(Vector3 pos, int totalAmount)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref pos;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref totalAmount;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_CreateMPSoul_Private_Void_Vector3_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004EB4 RID: 20148 RVA: 0x001383C4 File Offset: 0x001365C4
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549560, RefRangeEnd = 549561, XrefRangeStart = 549523, XrefRangeEnd = 549560, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CreateMoneySoul(Vector3 pos, int totalAmount)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref pos;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref totalAmount;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_CreateMoneySoul_Private_Void_Vector3_Int32_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004EB5 RID: 20149 RVA: 0x0013842C File Offset: 0x0013662C
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549588, RefRangeEnd = 549589, XrefRangeStart = 549561, XrefRangeEnd = 549588, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CreateEventSoul(Vector3 pos, Vector3 target, int num, SwitchDevice sd, Transform leadObject = null)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)5) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref pos;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref target;
		ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref num;
		ptr[checked(unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(sd);
		ptr[checked(unchecked((UIntPtr)4) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(leadObject);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_CreateEventSoul_Public_Void_Vector3_Vector3_Int32_SwitchDevice_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004EB6 RID: 20150 RVA: 0x001384D8 File Offset: 0x001366D8
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549617, RefRangeEnd = 549618, XrefRangeStart = 549589, XrefRangeEnd = 549617, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CreateEventSoul(Vector3 pos, Vector3 target, int num, SceneEvent openSceneEvent, Transform openSceneEventPos, Transform leadObject = null)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr;
		checked
		{
			ptr = stackalloc IntPtr[unchecked((UIntPtr)6) * (UIntPtr)sizeof(IntPtr)];
			*ptr = ref pos;
		}
		ptr[checked(unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref target;
		ptr[checked(unchecked((UIntPtr)2) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = ref num;
		ptr[checked(unchecked((UIntPtr)3) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(openSceneEvent);
		ptr[checked(unchecked((UIntPtr)4) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(openSceneEventPos);
		ptr[checked(unchecked((UIntPtr)5) * (UIntPtr)sizeof(IntPtr)) / (UIntPtr)sizeof(IntPtr)] = IL2CPP.Il2CppObjectBaseToPtr(leadObject);
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_CreateEventSoul_Public_Void_Vector3_Vector3_Int32_SceneEvent_Transform_Transform_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004EB7 RID: 20151 RVA: 0x0013859C File Offset: 0x0013679C
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 549618, XrefRangeEnd = 549623, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void CreateCollisionEffect(Soul soul)
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		checked
		{
			IntPtr* ptr = stackalloc IntPtr[unchecked((UIntPtr)1) * (UIntPtr)sizeof(IntPtr)];
			*ptr = IL2CPP.Il2CppObjectBaseToPtr(soul);
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_CreateCollisionEffect_Public_Void_Soul_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}
	}

	// Token: 0x06004EB8 RID: 20152 RVA: 0x001385F8 File Offset: 0x001367F8
	[CallerCount(2)]
	[CachedScanResults(RefRangeStart = 549638, RefRangeEnd = 549640, XrefRangeStart = 549623, XrefRangeEnd = 549638, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe float GetSceneMoney()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr_GetSceneMoney_Public_Single_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		return *IL2CPP.il2cpp_object_unbox(intPtr);
	}

	// Token: 0x06004EB9 RID: 20153 RVA: 0x00138648 File Offset: 0x00136848
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 549656, RefRangeEnd = 549657, XrefRangeStart = 549640, XrefRangeEnd = 549656, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe SoulSystem()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06004EBA RID: 20154 RVA: 0x00138693 File Offset: 0x00136893
	public void InitCollisionEffectPools(params string[] effectNames)
	{
		this.InitCollisionEffectPools(new Il2CppStringArray(effectNames));
	}

	// Token: 0x06004EBB RID: 20155 RVA: 0x001386A4 File Offset: 0x001368A4
	// Note: this type is marked as 'beforefieldinit'.
	static SoulSystem()
	{
		Il2CppClassPointerStore<SoulSystem>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "SoulSystem");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr);
		SoulSystem.NativeFieldInfoPtr_soulPoolMap = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "soulPoolMap");
		SoulSystem.NativeFieldInfoPtr_collisionEffectPools = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "collisionEffectPools");
		SoulSystem.NativeFieldInfoPtr_soulPoolRoot = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "soulPoolRoot");
		SoulSystem.NativeFieldInfoPtr_HP_COLLISION = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "HP_COLLISION");
		SoulSystem.NativeFieldInfoPtr_MP_COLLISION = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "MP_COLLISION");
		SoulSystem.NativeFieldInfoPtr_MONEY_COLLISION = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "MONEY_COLLISION");
		SoulSystem.NativeFieldInfoPtr_EVENT_COLLISION = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "EVENT_COLLISION");
		SoulSystem.NativeMethodInfoPtr_Init_Public_Void_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668463);
		SoulSystem.NativeMethodInfoPtr_InitCollisionEffectPools_Private_Void_Il2CppStringArray_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668464);
		SoulSystem.NativeMethodInfoPtr_SetTimeScale_Public_Void_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668465);
		SoulSystem.NativeMethodInfoPtr_CreateSoul_Public_Void_SoulType_Vector3_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668466);
		SoulSystem.NativeMethodInfoPtr_CreateHPSoul_Private_Void_Vector3_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668467);
		SoulSystem.NativeMethodInfoPtr_CreateMPSoul_Private_Void_Vector3_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668468);
		SoulSystem.NativeMethodInfoPtr_CreateMoneySoul_Private_Void_Vector3_Int32_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668469);
		SoulSystem.NativeMethodInfoPtr_CreateEventSoul_Public_Void_Vector3_Vector3_Int32_SwitchDevice_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668470);
		SoulSystem.NativeMethodInfoPtr_CreateEventSoul_Public_Void_Vector3_Vector3_Int32_SceneEvent_Transform_Transform_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668471);
		SoulSystem.NativeMethodInfoPtr_CreateCollisionEffect_Public_Void_Soul_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668472);
		SoulSystem.NativeMethodInfoPtr_GetSceneMoney_Public_Single_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668473);
		SoulSystem.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, 100668474);
	}

	// Token: 0x06004EBC RID: 20156 RVA: 0x0000A688 File Offset: 0x00008888
	public SoulSystem(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001C53 RID: 7251
	// (get) Token: 0x06004EBD RID: 20157 RVA: 0x00138850 File Offset: 0x00136A50
	// (set) Token: 0x06004EBE RID: 20158 RVA: 0x00138884 File Offset: 0x00136A84
	public unsafe Dictionary<string, SoulPool> soulPoolMap
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.NativeFieldInfoPtr_soulPoolMap);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Dictionary<string, SoulPool>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.NativeFieldInfoPtr_soulPoolMap), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001C54 RID: 7252
	// (get) Token: 0x06004EBF RID: 20159 RVA: 0x001388AC File Offset: 0x00136AAC
	// (set) Token: 0x06004EC0 RID: 20160 RVA: 0x001388E0 File Offset: 0x00136AE0
	public unsafe Il2CppReferenceArray<EffectPool> collisionEffectPools
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.NativeFieldInfoPtr_collisionEffectPools);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new Il2CppReferenceArray<EffectPool>(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.NativeFieldInfoPtr_collisionEffectPools), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001C55 RID: 7253
	// (get) Token: 0x06004EC1 RID: 20161 RVA: 0x00138908 File Offset: 0x00136B08
	// (set) Token: 0x06004EC2 RID: 20162 RVA: 0x0013893C File Offset: 0x00136B3C
	public unsafe Transform soulPoolRoot
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.NativeFieldInfoPtr_soulPoolRoot);
			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(SoulSystem.NativeFieldInfoPtr_soulPoolRoot), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x17001C56 RID: 7254
	// (get) Token: 0x06004EC3 RID: 20163 RVA: 0x00138964 File Offset: 0x00136B64
	// (set) Token: 0x06004EC4 RID: 20164 RVA: 0x00138984 File Offset: 0x00136B84
	public unsafe static string HP_COLLISION
	{
		get
		{
			IntPtr intPtr;
			IL2CPP.il2cpp_field_static_get_value(SoulSystem.NativeFieldInfoPtr_HP_COLLISION, (void*)(&intPtr));
			return IL2CPP.Il2CppStringToManaged(intPtr);
		}
		set
		{
			IL2CPP.il2cpp_field_static_set_value(SoulSystem.NativeFieldInfoPtr_HP_COLLISION, IL2CPP.ManagedStringToIl2Cpp(value));
		}
	}

	// Token: 0x17001C57 RID: 7255
	// (get) Token: 0x06004EC5 RID: 20165 RVA: 0x0013899C File Offset: 0x00136B9C
	// (set) Token: 0x06004EC6 RID: 20166 RVA: 0x001389BC File Offset: 0x00136BBC
	public unsafe static string MP_COLLISION
	{
		get
		{
			IntPtr intPtr;
			IL2CPP.il2cpp_field_static_get_value(SoulSystem.NativeFieldInfoPtr_MP_COLLISION, (void*)(&intPtr));
			return IL2CPP.Il2CppStringToManaged(intPtr);
		}
		set
		{
			IL2CPP.il2cpp_field_static_set_value(SoulSystem.NativeFieldInfoPtr_MP_COLLISION, IL2CPP.ManagedStringToIl2Cpp(value));
		}
	}

	// Token: 0x17001C58 RID: 7256
	// (get) Token: 0x06004EC7 RID: 20167 RVA: 0x001389D4 File Offset: 0x00136BD4
	// (set) Token: 0x06004EC8 RID: 20168 RVA: 0x001389F4 File Offset: 0x00136BF4
	public unsafe static string MONEY_COLLISION
	{
		get
		{
			IntPtr intPtr;
			IL2CPP.il2cpp_field_static_get_value(SoulSystem.NativeFieldInfoPtr_MONEY_COLLISION, (void*)(&intPtr));
			return IL2CPP.Il2CppStringToManaged(intPtr);
		}
		set
		{
			IL2CPP.il2cpp_field_static_set_value(SoulSystem.NativeFieldInfoPtr_MONEY_COLLISION, IL2CPP.ManagedStringToIl2Cpp(value));
		}
	}

	// Token: 0x17001C59 RID: 7257
	// (get) Token: 0x06004EC9 RID: 20169 RVA: 0x00138A0C File Offset: 0x00136C0C
	// (set) Token: 0x06004ECA RID: 20170 RVA: 0x00138A2C File Offset: 0x00136C2C
	public unsafe static string EVENT_COLLISION
	{
		get
		{
			IntPtr intPtr;
			IL2CPP.il2cpp_field_static_get_value(SoulSystem.NativeFieldInfoPtr_EVENT_COLLISION, (void*)(&intPtr));
			return IL2CPP.Il2CppStringToManaged(intPtr);
		}
		set
		{
			IL2CPP.il2cpp_field_static_set_value(SoulSystem.NativeFieldInfoPtr_EVENT_COLLISION, IL2CPP.ManagedStringToIl2Cpp(value));
		}
	}

	// Token: 0x04003394 RID: 13204
	private static readonly IntPtr NativeFieldInfoPtr_soulPoolMap;

	// Token: 0x04003395 RID: 13205
	private static readonly IntPtr NativeFieldInfoPtr_collisionEffectPools;

	// Token: 0x04003396 RID: 13206
	private static readonly IntPtr NativeFieldInfoPtr_soulPoolRoot;

	// Token: 0x04003397 RID: 13207
	private static readonly IntPtr NativeFieldInfoPtr_HP_COLLISION;

	// Token: 0x04003398 RID: 13208
	private static readonly IntPtr NativeFieldInfoPtr_MP_COLLISION;

	// Token: 0x04003399 RID: 13209
	private static readonly IntPtr NativeFieldInfoPtr_MONEY_COLLISION;

	// Token: 0x0400339A RID: 13210
	private static readonly IntPtr NativeFieldInfoPtr_EVENT_COLLISION;

	// Token: 0x0400339B RID: 13211
	private static readonly IntPtr NativeMethodInfoPtr_Init_Public_Void_Transform_0;

	// Token: 0x0400339C RID: 13212
	private static readonly IntPtr NativeMethodInfoPtr_InitCollisionEffectPools_Private_Void_Il2CppStringArray_0;

	// Token: 0x0400339D RID: 13213
	private static readonly IntPtr NativeMethodInfoPtr_SetTimeScale_Public_Void_Single_0;

	// Token: 0x0400339E RID: 13214
	private static readonly IntPtr NativeMethodInfoPtr_CreateSoul_Public_Void_SoulType_Vector3_Int32_0;

	// Token: 0x0400339F RID: 13215
	private static readonly IntPtr NativeMethodInfoPtr_CreateHPSoul_Private_Void_Vector3_Int32_0;

	// Token: 0x040033A0 RID: 13216
	private static readonly IntPtr NativeMethodInfoPtr_CreateMPSoul_Private_Void_Vector3_Int32_0;

	// Token: 0x040033A1 RID: 13217
	private static readonly IntPtr NativeMethodInfoPtr_CreateMoneySoul_Private_Void_Vector3_Int32_0;

	// Token: 0x040033A2 RID: 13218
	private static readonly IntPtr NativeMethodInfoPtr_CreateEventSoul_Public_Void_Vector3_Vector3_Int32_SwitchDevice_Transform_0;

	// Token: 0x040033A3 RID: 13219
	private static readonly IntPtr NativeMethodInfoPtr_CreateEventSoul_Public_Void_Vector3_Vector3_Int32_SceneEvent_Transform_Transform_0;

	// Token: 0x040033A4 RID: 13220
	private static readonly IntPtr NativeMethodInfoPtr_CreateCollisionEffect_Public_Void_Soul_0;

	// Token: 0x040033A5 RID: 13221
	private static readonly IntPtr NativeMethodInfoPtr_GetSceneMoney_Public_Single_0;

	// Token: 0x040033A6 RID: 13222
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

	// Token: 0x0200020A RID: 522
	public enum SoulType
	{
		// Token: 0x040033A8 RID: 13224
		HP,
		// Token: 0x040033A9 RID: 13225
		MP,
		// Token: 0x040033AA RID: 13226
		Money,
		// Token: 0x040033AB RID: 13227
		Event
	}

	// Token: 0x0200020B RID: 523
	[ObfuscatedName("SoulSystem/<>c__DisplayClass9_0")]
	public sealed class __c__DisplayClass9_0 : Il2CppSystem.Object
	{
		// Token: 0x06004ECB RID: 20171 RVA: 0x00138A44 File Offset: 0x00136C44
		[CallerCount(1642)]
		[CachedScanResults(RefRangeStart = 7417, RefRangeEnd = 9059, XrefRangeStart = 7417, XrefRangeEnd = 9059, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe __c__DisplayClass9_0()
			: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr))
		{
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.__c__DisplayClass9_0.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06004ECC RID: 20172 RVA: 0x00138A90 File Offset: 0x00136C90
		[CallerCount(0)]
		[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 549214, XrefRangeEnd = 549226, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
		public unsafe void _InitCollisionEffectPools_b__0()
		{
			IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IntPtr* ptr = null;
			IntPtr intPtr2;
			IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(SoulSystem.__c__DisplayClass9_0.NativeMethodInfoPtr__InitCollisionEffectPools_b__0_Internal_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
			Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		}

		// Token: 0x06004ECD RID: 20173 RVA: 0x00138AD4 File Offset: 0x00136CD4
		// Note: this type is marked as 'beforefieldinit'.
		static __c__DisplayClass9_0()
		{
			Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr = IL2CPP.GetIl2CppNestedType(Il2CppClassPointerStore<SoulSystem>.NativeClassPtr, "<>c__DisplayClass9_0");
			IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr);
			SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr_order = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr, "order");
			SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr_request = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr, "request");
			SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr___4__this = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr, "<>4__this");
			SoulSystem.__c__DisplayClass9_0.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr, 100668475);
			SoulSystem.__c__DisplayClass9_0.NativeMethodInfoPtr__InitCollisionEffectPools_b__0_Internal_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<SoulSystem.__c__DisplayClass9_0>.NativeClassPtr, 100668476);
		}

		// Token: 0x06004ECE RID: 20174 RVA: 0x0000A688 File Offset: 0x00008888
		public __c__DisplayClass9_0(IntPtr pointer)
			: base(pointer)
		{
		}

		// Token: 0x17001C5A RID: 7258
		// (get) Token: 0x06004ECF RID: 20175 RVA: 0x00138B64 File Offset: 0x00136D64
		// (set) Token: 0x06004ED0 RID: 20176 RVA: 0x00138B8C File Offset: 0x00136D8C
		public unsafe int order
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr_order);
				return *intPtr;
			}
			set
			{
				*(IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr_order)) = value;
			}
		}

		// Token: 0x17001C5B RID: 7259
		// (get) Token: 0x06004ED1 RID: 20177 RVA: 0x00138BB0 File Offset: 0x00136DB0
		// (set) Token: 0x06004ED2 RID: 20178 RVA: 0x00138BE4 File Offset: 0x00136DE4
		public unsafe AssetSoulRequest request
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr_request);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new AssetSoulRequest(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr_request), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x17001C5C RID: 7260
		// (get) Token: 0x06004ED3 RID: 20179 RVA: 0x00138C0C File Offset: 0x00136E0C
		// (set) Token: 0x06004ED4 RID: 20180 RVA: 0x00138C40 File Offset: 0x00136E40
		public unsafe SoulSystem __4__this
		{
			get
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr___4__this);
				IntPtr intPtr2 = *intPtr;
				return (intPtr2 != 0) ? new SoulSystem(intPtr2) : null;
			}
			set
			{
				IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
				IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(SoulSystem.__c__DisplayClass9_0.NativeFieldInfoPtr___4__this), IL2CPP.Il2CppObjectBaseToPtr(value));
			}
		}

		// Token: 0x040033AC RID: 13228
		private static readonly IntPtr NativeFieldInfoPtr_order;

		// Token: 0x040033AD RID: 13229
		private static readonly IntPtr NativeFieldInfoPtr_request;

		// Token: 0x040033AE RID: 13230
		private static readonly IntPtr NativeFieldInfoPtr___4__this;

		// Token: 0x040033AF RID: 13231
		private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;

		// Token: 0x040033B0 RID: 13232
		private static readonly IntPtr NativeMethodInfoPtr__InitCollisionEffectPools_b__0_Internal_Void_0;
	}
}
