Character Stats
Saving and loading CharacterStats.
Saving
SavableProfile mySavableData = myCharacterStats.CreateSavableData();Loading
myCharacterStats.SetData(mySavableData);Examples
With ESave Free
using Esper.ESave;
using Esper.Inventool;
using Esper.Inventool.DataManagement;
using UnityEngine;
public class CharacterSavingExample : MonoBehaviour
{
/// <summary>
/// The ID used to save and load the data.
/// </summary>
private const string dataID = "MyCharacter";
/// <summary>
/// The character stats component.
/// </summary>
private CharacterStats characterStats;
/// <summary>
/// The save state.
/// </summary>
private SaveState saveState;
private void Start()
{
saveFile = GetComponent<SaveFileSetup>().saveFile;
// Load the data on start
Load();
}
private void OnApplicationQuit()
{
// Save when exited play mode or the game
Save();
}
/// <summary>
/// Saves character data.
/// </summary>
private void Save()
{
var savableData = characterStats.CreateSavableData();
saveFile.AddOrUpdateData(dataID, savableData);
saveFile.Save();
}
/// <summary>
/// Loads character data if it exists.
/// </summary>
private void Load()
{
if (saveFile.HasData(dataID))
{
var savableData = saveFile.GetData<SavableProfile>(dataID);
characterStats.SetData(savableData);
}
}
}With ESave Pro
Last updated