127 lines
3.9 KiB
C#
127 lines
3.9 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using Cpp2IlInjected;
|
|
using Newtonsoft.Json;
|
|
|
|
// Token: 0x02000129 RID: 297
|
|
[Token(Token = "0x2000129")]
|
|
public class GameSave
|
|
{
|
|
// Token: 0x17000064 RID: 100
|
|
// (get) Token: 0x06000F10 RID: 3856 RVA: 0x00023B8C File Offset: 0x00021D8C
|
|
[Token(Token = "0x17000064")]
|
|
[JsonIgnore]
|
|
public bool IsStandardMode
|
|
{
|
|
[Token(Token = "0x6000F10")]
|
|
[Address(RVA = "0x54A320", Offset = "0x549120", VA = "0x18054A320")]
|
|
get
|
|
{
|
|
return this.basic.difficulty == GameDifficulty.Standard;
|
|
}
|
|
}
|
|
|
|
// Token: 0x06000F11 RID: 3857 RVA: 0x00023BB0 File Offset: 0x00021DB0
|
|
[Token(Token = "0x6000F11")]
|
|
[Address(RVA = "0x54A050", Offset = "0x548E50", VA = "0x18054A050")]
|
|
[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: 0x06000F12 RID: 3858 RVA: 0x00023C08 File Offset: 0x00021E08
|
|
[Token(Token = "0x6000F12")]
|
|
[Address(RVA = "0x54A190", Offset = "0x548F90", VA = "0x18054A190")]
|
|
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: 0x06000F13 RID: 3859 RVA: 0x00023C94 File Offset: 0x00021E94
|
|
[Token(Token = "0x6000F13")]
|
|
[Address(RVA = "0x549ED0", Offset = "0x548CD0", VA = "0x180549ED0")]
|
|
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: 0x06000F14 RID: 3860 RVA: 0x000020D3 File Offset: 0x000002D3
|
|
[Token(Token = "0x6000F14")]
|
|
[Address(RVA = "0x549FD0", Offset = "0x548DD0", VA = "0x180549FD0")]
|
|
public void UpdateSaveTimeStamp()
|
|
{
|
|
throw new AnalysisFailedException("CPP2IL failed to recover any usable IL for this method.");
|
|
}
|
|
|
|
// Token: 0x04001993 RID: 6547
|
|
[FieldOffset(Offset = "0x10")]
|
|
[Token(Token = "0x4001993")]
|
|
public int dataVersion;
|
|
|
|
// Token: 0x04001994 RID: 6548
|
|
[FieldOffset(Offset = "0x18")]
|
|
[Token(Token = "0x4001994")]
|
|
public GameSaveBasicData basic;
|
|
|
|
// Token: 0x04001995 RID: 6549
|
|
[FieldOffset(Offset = "0x20")]
|
|
[Token(Token = "0x4001995")]
|
|
public PlayerStatsData stats;
|
|
|
|
// Token: 0x04001996 RID: 6550
|
|
[FieldOffset(Offset = "0x28")]
|
|
[Token(Token = "0x4001996")]
|
|
public GamePropertyData props;
|
|
|
|
// Token: 0x04001997 RID: 6551
|
|
[FieldOffset(Offset = "0x30")]
|
|
[Token(Token = "0x4001997")]
|
|
public StageFlagData flags;
|
|
|
|
// Token: 0x04001998 RID: 6552
|
|
[FieldOffset(Offset = "0x38")]
|
|
[Token(Token = "0x4001998")]
|
|
public TutorialTipData tips;
|
|
}
|