Saving game question.

Hi, Story :- I have researched saving game in Unity3D is not so easy as loading a level (hehe).I came to know about PlayerPrefs, the information is spread all over internet but its not very educational, so i thought checking Unity Support i read it and i was like 'WOOSH' it got over my head, so i was thinking that if someone can tell me how can i save game.

The real question :- Making a game for android and ios , wants to make levels like angry birds.. like defeated a level the next level opens up and scores are saved, now from the menu i can select which level i would like to play.

more ▼

asked Sep 20, 2011 at 10:48 AM

Anonymous 1 gravatar image

Anonymous 1
93 45 37 41

Do you want something like when you press play the game will load the first level or something like this?

Dec 07, 2011 at 03:53 PM bula

No, I think he is asking how could he save highscores to PlayerPrefs.

Dec 07, 2011 at 04:00 PM OrangeLightning

actually i want to save the highscore of the level + plus if the player beats the level the next level should open(that i can do) but it resets when the game closes and opens again

Dec 08, 2011 at 06:34 AM Anonymous 1

In that case you wont need to store the variable with PlayerPrefs, you can just use a float or int variable to display the highscore and a boolean variable to define whether the level has been completed. PlayerPrefs is used to save scores etc so that they will be remembered the next time you start the game again. Setting a highscore shouldn't be too hard - if you already have a scoring system then all you need to do is compare any new score with the highscore: if(Score > LevelHighScore){ LevelHighScore = Score; }

Dec 08, 2011 at 05:45 PM merry_christmas
(comments are locked)
10|3000 characters needed characters left

1 answer: sort voted first

You can use PlayerPrefs to store and check a variable:

 var completed = true;
 function OnLevelComplete() {
     // Save boolean using PlayerPrefs
     PlayerPrefs.SetInt("completed", completed?1:0);
 function IsLevelComplete() {
     // Get boolean using PlayerPrefs
     completed = PlayerPrefs.GetInt("completed")==1?true:false;

You may want to replace the boolean variable with a float using PlayerPrefs.SetFloat("level", LevelNumber); and PlayerPrefs.GetFloat("level");

more ▼

answered Dec 07, 2011 at 04:46 PM

merry_christmas gravatar image

4.2k 45 922 71

Got it , TY

Dec 09, 2011 at 02:34 PM Anonymous 1
(comments are locked)
10|3000 characters needed characters left
Your answer
toggle preview:

Up to 2 attachments (including images) can be used with a maximum of 524.3 kB each and 1.0 MB total.

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here



Answers and Comments



asked: Sep 20, 2011 at 10:48 AM

Seen: 2333 times

Last Updated: Dec 09, 2011 at 02:34 PM