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

// Token: 0x02000321 RID: 801
public class GameSaveTest : MonoBehaviour
{
	// Token: 0x06006D40 RID: 27968 RVA: 0x001BB9F8 File Offset: 0x001B9BF8
	[CallerCount(0)]
	[CachedScanResults(RefRangeStart = 0, RefRangeEnd = 0, XrefRangeStart = 582994, XrefRangeEnd = 583009, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe void Test()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(GameSaveTest.NativeMethodInfoPtr_Test_Private_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006D41 RID: 27969 RVA: 0x001BBA3C File Offset: 0x001B9C3C
	[CallerCount(63)]
	[CachedScanResults(RefRangeStart = 222154, RefRangeEnd = 222217, XrefRangeStart = 222154, XrefRangeEnd = 222217, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe GameSaveTest()
		: this(IL2CPP.il2cpp_object_new(Il2CppClassPointerStore<GameSaveTest>.NativeClassPtr))
	{
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(GameSaveTest.NativeMethodInfoPtr__ctor_Public_Void_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
	}

	// Token: 0x06006D42 RID: 27970 RVA: 0x001BBA88 File Offset: 0x001B9C88
	// Note: this type is marked as 'beforefieldinit'.
	static GameSaveTest()
	{
		Il2CppClassPointerStore<GameSaveTest>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "GameSaveTest");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<GameSaveTest>.NativeClassPtr);
		GameSaveTest.NativeFieldInfoPtr_gameSaveLegacy = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GameSaveTest>.NativeClassPtr, "gameSaveLegacy");
		GameSaveTest.NativeFieldInfoPtr_gameSave = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GameSaveTest>.NativeClassPtr, "gameSave");
		GameSaveTest.NativeMethodInfoPtr_Test_Private_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<GameSaveTest>.NativeClassPtr, 100671388);
		GameSaveTest.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<GameSaveTest>.NativeClassPtr, 100671389);
	}

	// Token: 0x06006D43 RID: 27971 RVA: 0x0000351C File Offset: 0x0000171C
	public GameSaveTest(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x170025DB RID: 9691
	// (get) Token: 0x06006D44 RID: 27972 RVA: 0x001BBB08 File Offset: 0x001B9D08
	// (set) Token: 0x06006D45 RID: 27973 RVA: 0x001BBB3C File Offset: 0x001B9D3C
	public unsafe GameSaveLegacy gameSaveLegacy
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveTest.NativeFieldInfoPtr_gameSaveLegacy);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new GameSaveLegacy(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveTest.NativeFieldInfoPtr_gameSaveLegacy), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x170025DC RID: 9692
	// (get) Token: 0x06006D46 RID: 27974 RVA: 0x001BBB64 File Offset: 0x001B9D64
	// (set) Token: 0x06006D47 RID: 27975 RVA: 0x001BBB98 File Offset: 0x001B9D98
	public unsafe GameSave gameSave
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveTest.NativeFieldInfoPtr_gameSave);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new GameSave(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveTest.NativeFieldInfoPtr_gameSave), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x040048AA RID: 18602
	private static readonly IntPtr NativeFieldInfoPtr_gameSaveLegacy;

	// Token: 0x040048AB RID: 18603
	private static readonly IntPtr NativeFieldInfoPtr_gameSave;

	// Token: 0x040048AC RID: 18604
	private static readonly IntPtr NativeMethodInfoPtr_Test_Private_Void_0;

	// Token: 0x040048AD RID: 18605
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
