127 lines
3.9 KiB
C#
127 lines
3.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Cpp2IlInjected;
|
|
using Newtonsoft.Json;
|
|
|
|
// Token: 0x0200012E RID: 302
|
|
[Token(Token = "0x200012E")]
|
|
public class GameSave
|
|
{
|
|
// Token: 0x17000068 RID: 104
|
|
// (get) Token: 0x06000F28 RID: 3880 RVA: 0x000240FC File Offset: 0x000222FC
|
|
[Token(Token = "0x17000068")]
|
|
[JsonIgnore]
|
|
public bool IsStandardMode
|
|
{
|
|
[Token(Token = "0x6000F28")]
|
|
[Address(RVA = "0x50D960", Offset = "0x50C160", VA = "0x18050D960")]
|
|
get
|
|
{
|
|
return this.basic.difficulty == GameDifficulty.Standard;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06000F29 RID: 3881 RVA: 0x00024120 File Offset: 0x00022320
|
|
[Token(Token = "0x6000F29")]
|
|
[Address(RVA = "0x50D690", Offset = "0x50BE90", VA = "0x18050D690")]
|
|
[JsonConstructor]
|
|
public GameSave()
|
|
{
|
|
GameSaveBasicData gameSaveBasicData = new GameSaveBasicData();
|
|
this.basic = gameSaveBasicData;
|
|
PlayerStatsData playerStatsData = new PlayerStatsData();
|
|
this.stats = playerStatsData;
|
|
GamePropertyData gamePropertyData = new GamePropertyData();
|
|
this.props = gamePropertyData;
|
|
StageFlagData stageFlagData = new StageFlagData();
|
|
this.flags = stageFlagData;
|
|
TutorialTipData tutorialTipData = new TutorialTipData();
|
|
this.tips = tutorialTipData;
|
|
base..ctor();
|
|
}
|
|
|
|
// Token: 0x06000F2A RID: 3882 RVA: 0x00024178 File Offset: 0x00022378
|
|
[Token(Token = "0x6000F2A")]
|
|
[Address(RVA = "0x50D7D0", Offset = "0x50BFD0", VA = "0x18050D7D0")]
|
|
public GameSave(int dataIndex, GameDifficulty difficulty)
|
|
{
|
|
GameSaveBasicData gameSaveBasicData = new GameSaveBasicData();
|
|
this.basic = gameSaveBasicData;
|
|
PlayerStatsData playerStatsData = new PlayerStatsData();
|
|
this.stats = playerStatsData;
|
|
GamePropertyData gamePropertyData = new GamePropertyData();
|
|
this.props = gamePropertyData;
|
|
StageFlagData stageFlagData = new StageFlagData();
|
|
this.flags = stageFlagData;
|
|
TutorialTipData tutorialTipData = new TutorialTipData();
|
|
this.tips = tutorialTipData;
|
|
base..ctor();
|
|
GameSaveBasicData gameSaveBasicData2 = this.basic;
|
|
this.dataVersion = (int)((ulong)46L);
|
|
gameSaveBasicData2.dataIndex = dataIndex;
|
|
this.basic.difficulty = difficulty;
|
|
this.UpdateSaveTimeStamp();
|
|
}
|
|
|
|
// Token: 0x06000F2B RID: 3883 RVA: 0x00024204 File Offset: 0x00022404
|
|
[Token(Token = "0x6000F2B")]
|
|
[Address(RVA = "0x50D510", Offset = "0x50BD10", VA = "0x18050D510")]
|
|
public void OnBeatingGame(BeatingGameData data)
|
|
{
|
|
GameSaveBasicData gameSaveBasicData = this.basic;
|
|
gameSaveBasicData.stage = (GameStage)((ulong)1L);
|
|
gameSaveBasicData.savePoint = (int)((ulong)4294967295L);
|
|
Dictionary<GameStage, List<int>> dictionary = new Dictionary();
|
|
gameSaveBasicData.savePointMap = dictionary;
|
|
int num = gameSaveBasicData.gameCleared;
|
|
gameSaveBasicData.showTeleportMenu = false;
|
|
if (num < 99)
|
|
{
|
|
num++;
|
|
gameSaveBasicData.gameCleared = num;
|
|
}
|
|
this.stats.OnBeatingGame(data);
|
|
this.props.OnBeatingGame(data);
|
|
this.flags.OnBeatingGame();
|
|
this.UpdateSaveTimeStamp();
|
|
}
|
|
|
|
// Token: 0x06000F2C RID: 3884 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6000F2C")]
|
|
[Address(RVA = "0x50D610", Offset = "0x50BE10", VA = "0x18050D610")]
|
|
public void UpdateSaveTimeStamp()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x040019BE RID: 6590
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x40019BE")]
|
|
public int dataVersion;
|
|
|
|
// Token: 0x040019BF RID: 6591
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x40019BF")]
|
|
public GameSaveBasicData basic;
|
|
|
|
// Token: 0x040019C0 RID: 6592
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x40019C0")]
|
|
public PlayerStatsData stats;
|
|
|
|
// Token: 0x040019C1 RID: 6593
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x40019C1")]
|
|
public GamePropertyData props;
|
|
|
|
// Token: 0x040019C2 RID: 6594
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x40019C2")]
|
|
public StageFlagData flags;
|
|
|
|
// Token: 0x040019C3 RID: 6595
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x40019C3")]
|
|
public TutorialTipData tips;
|
|
}
|