x


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 '11 at 10:48 AM

Anonymous 1 gravatar image

Anonymous 1
98 16 18 22

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

Dec 07 '11 at 03:53 PM bula

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

Dec 07 '11 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 '11 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 '11 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 '11 at 04:46 PM

merry_christmas gravatar image

merry_christmas
4k 15 19 30

Got it , TY

Dec 09 '11 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

By RSS:

Answers

Answers and Comments

Topics:

x5366
x3918
x2150
x579
x175

asked: Sep 20 '11 at 10:48 AM

Seen: 1979 times

Last Updated: Dec 09 '11 at 02:34 PM