I make saveGame function and I have 6 slots for saving. How can I say, to which slot should I save data? Should I create variables for each of 6 slots ?
private int currentActiveSlot;
private int latestSaveSlot;
const int _numberOfSlots = 7;
string[] dateTime = new string[_numberOfSlots];
int[] actNumber = new int[_numberOfSlots];
int[] stepNumber = new int[_numberOfSlots];
int[] transformPositionX = new int[_numberOfSlots];
int[] transformPositionY = new int[_numberOfSlots];
int[] transformPositionZ = new int[_numberOfSlots];
int[] transformRotationX = new int[_numberOfSlots];
int[] transformRotationY = new int[_numberOfSlots];
int[] transformRotationZ = new int[_numberOfSlots];
int[] task1Completed = new int[_numberOfSlots];
int[] task2Completed = new int[_numberOfSlots];
int[] task3Completed = new int[_numberOfSlots];
int[] task4Completed = new int[_numberOfSlots];
int[] task5Completed = new int[_numberOfSlots];
void Start()
{
latestSaveSlot = PlayerPrefs.GetInt("latestSaveSlot");
}
public void ButtonSave()
{
// How to say, to which slot should I save?
latestSaveSlot = currentActiveSlot;
PlayerPrefs.SetString("date time", "");
PlayerPrefs.SetInt("act number", 0);
PlayerPrefs.SetInt("step number", 0);
//..
PlayerPrefs.SetInt("latestSaveSlot", latestSaveSlot);
PlayerPrefs.SetString("sceneName", SceneManager.GetActiveScene().name);
PlayerPrefs.Save();
dateTime[latestSaveSlot] = PlayerPrefs.GetString("date time");
}
public void ButtonLoad()
{
dateTime[currentActiveSlot] = PlayerPrefs.GetString("date time");
actNumber[currentActiveSlot] = PlayerPrefs.GetInt("act number");
stepNumber[currentActiveSlot] = PlayerPrefs.GetInt("step number");
//..
}