class ScoreBoard
{
// Constructor that takes points and number of records, this constructor will be called if the user doesnt insert the name, and will assing the name to unknown
public ScoreBoard(int points, int numberOfRecords)
{
playerName = "unknown";
playerPoints = points;
numberOfSaves = numberOfRecords + 1;
}
// Constructor that takes all the arguments, this constructor will set the name, points and number of records
public ScoreBoard(string name, int points, int numberOfRecords)
{
playerName = name;
playerPoints = points;
numberOfSaves = numberOfRecords +1;
}
//Create a read only variable called playername
public string playerName { get; }
//Create a read only variable called Player points
public int playerPoints { get; }
//Create a read only variable called number of saves
public int numberOfSaves { get; }
}
//create this player score
ScoreBoard playerScore;
[SerializeField]
//save the text box that will get the name of the player
Text TextNameOfPlayer;
public void CallerOfSetPlayerScore(int points)
{
//call the function
SetPlayerScore(points, TextNameOfPlayer.text);
}
//this function add the points, name, to the player
private void SetPlayerScore(int playerPoints_, string playerName_ = "unknown")
{
//give the currect values of this player score
playerScore = new ScoreBoard(playerName_, 50, PlayerPrefs.GetInt("NumberOfItems"));
}
//this function will load all the points stored
public void LoadPlayerScores()
{
//do a loop trought all the scores
for (int i = 0; i < PlayerPrefs.GetInt("NumberOfItems") + 1; i++)
{
Debug.Log(PlayerPrefs.GetString("Name" + i));
Debug.Log(PlayerPrefs.GetInt("Points" + i));
}
}
//this function will save all the points
public void SavePlayerScore()
{
//this will set all the variables with nameN (the n is the number of all the saves +1) so it will create a new player pref because it has a number at the end making is name different from the older prefs
PlayerPrefs.SetString("Name" + playerScore.numberOfSaves, playerScore.playerName);
PlayerPrefs.SetInt("Points" + playerScore.numberOfSaves, playerScore.playerPoints);
PlayerPrefs.SetInt("NumberOfItems", playerScore.numberOfSaves);
PlayerPrefs.Save();
}
Preview:
downloadDownload PNG
downloadDownload JPEG
downloadDownload SVG
Tip: You can change the style, width & colours of the snippet with the inspect tool before clicking Download!
Click to optimize width for Twitter