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

// Token: 0x0200015E RID: 350
public class GameSaveVer46 : Object
{
	// Token: 0x06004331 RID: 17201 RVA: 0x0010A570 File Offset: 0x00108770
	[CallerCount(1)]
	[CachedScanResults(RefRangeStart = 556281, RefRangeEnd = 556282, XrefRangeStart = 556268, XrefRangeEnd = 556281, MetadataInitTokenRva = 0L, MetadataInitFlagRva = 0L)]
	public unsafe GameSave UpgradeVersion()
	{
		IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
		IntPtr* ptr = null;
		IntPtr intPtr2;
		IntPtr intPtr = IL2CPP.il2cpp_runtime_invoke(GameSaveVer46.NativeMethodInfoPtr_UpgradeVersion_Public_GameSave_0, IL2CPP.Il2CppObjectBaseToPtrNotNull(this), (void**)ptr, ref intPtr2);
		Il2CppException.RaiseExceptionIfNecessary(intPtr2);
		IntPtr intPtr3 = intPtr;
		return (intPtr3 != 0) ? new GameSave(intPtr3) : null;
	}

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

	// Token: 0x06004333 RID: 17203 RVA: 0x0010A614 File Offset: 0x00108814
	// Note: this type is marked as 'beforefieldinit'.
	static GameSaveVer46()
	{
		Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr = IL2CPP.GetIl2CppClass("Assembly-CSharp.dll", "", "GameSaveVer46");
		IL2CPP.il2cpp_runtime_class_init(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr);
		GameSaveVer46.NativeFieldInfoPtr_basic = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr, "basic");
		GameSaveVer46.NativeFieldInfoPtr_stats = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr, "stats");
		GameSaveVer46.NativeFieldInfoPtr_props = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr, "props");
		GameSaveVer46.NativeFieldInfoPtr_flags = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr, "flags");
		GameSaveVer46.NativeFieldInfoPtr_tips = IL2CPP.GetIl2CppField(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr, "tips");
		GameSaveVer46.NativeMethodInfoPtr_UpgradeVersion_Public_GameSave_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr, 100667544);
		GameSaveVer46.NativeMethodInfoPtr__ctor_Public_Void_0 = IL2CPP.GetIl2CppMethodByToken(Il2CppClassPointerStore<GameSaveVer46>.NativeClassPtr, 100667545);
	}

	// Token: 0x06004334 RID: 17204 RVA: 0x0000A74C File Offset: 0x0000894C
	public GameSaveVer46(IntPtr pointer)
		: base(pointer)
	{
	}

	// Token: 0x17001899 RID: 6297
	// (get) Token: 0x06004335 RID: 17205 RVA: 0x0010A6D0 File Offset: 0x001088D0
	// (set) Token: 0x06004336 RID: 17206 RVA: 0x0010A704 File Offset: 0x00108904
	public unsafe GameSaveBasicDataVer46 basic
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_basic);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new GameSaveBasicDataVer46(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_basic), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x1700189A RID: 6298
	// (get) Token: 0x06004337 RID: 17207 RVA: 0x0010A72C File Offset: 0x0010892C
	// (set) Token: 0x06004338 RID: 17208 RVA: 0x0010A760 File Offset: 0x00108960
	public unsafe PlayerStatsData stats
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_stats);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new PlayerStatsData(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_stats), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x1700189B RID: 6299
	// (get) Token: 0x06004339 RID: 17209 RVA: 0x0010A788 File Offset: 0x00108988
	// (set) Token: 0x0600433A RID: 17210 RVA: 0x0010A7BC File Offset: 0x001089BC
	public unsafe GamePropertyData props
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_props);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new GamePropertyData(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_props), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x1700189C RID: 6300
	// (get) Token: 0x0600433B RID: 17211 RVA: 0x0010A7E4 File Offset: 0x001089E4
	// (set) Token: 0x0600433C RID: 17212 RVA: 0x0010A818 File Offset: 0x00108A18
	public unsafe StageFlagData flags
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_flags);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new StageFlagData(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_flags), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x1700189D RID: 6301
	// (get) Token: 0x0600433D RID: 17213 RVA: 0x0010A840 File Offset: 0x00108A40
	// (set) Token: 0x0600433E RID: 17214 RVA: 0x0010A874 File Offset: 0x00108A74
	public unsafe TutorialTipData tips
	{
		get
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this) + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_tips);
			IntPtr intPtr2 = *intPtr;
			return (intPtr2 != 0) ? new TutorialTipData(intPtr2) : null;
		}
		set
		{
			IntPtr intPtr = IL2CPP.Il2CppObjectBaseToPtrNotNull(this);
			IL2CPP.il2cpp_gc_wbarrier_set_field(intPtr, intPtr + (IntPtr)IL2CPP.il2cpp_field_get_offset(GameSaveVer46.NativeFieldInfoPtr_tips), IL2CPP.Il2CppObjectBaseToPtr(value));
		}
	}

	// Token: 0x04002BF1 RID: 11249
	private static readonly IntPtr NativeFieldInfoPtr_basic;

	// Token: 0x04002BF2 RID: 11250
	private static readonly IntPtr NativeFieldInfoPtr_stats;

	// Token: 0x04002BF3 RID: 11251
	private static readonly IntPtr NativeFieldInfoPtr_props;

	// Token: 0x04002BF4 RID: 11252
	private static readonly IntPtr NativeFieldInfoPtr_flags;

	// Token: 0x04002BF5 RID: 11253
	private static readonly IntPtr NativeFieldInfoPtr_tips;

	// Token: 0x04002BF6 RID: 11254
	private static readonly IntPtr NativeMethodInfoPtr_UpgradeVersion_Public_GameSave_0;

	// Token: 0x04002BF7 RID: 11255
	private static readonly IntPtr NativeMethodInfoPtr__ctor_Public_Void_0;
}
