- Home /
how to give star score once per each level?
a day ago i came across a problem in my game which have many levels.each level have three objectives to complete and for completing each one you get one star and the total number of stars in all levels is saved as Totalstars.the problem was when that the player should only get the star once for each objective in each level and if he plays again the level he should not get a star for completing the same objective again. To do this i used the way in the bellow script which i wrote with my Beginners knowledge.some guys suggested using bools but i was unable to do so.In the bellow script i created an int value which is incremented once an objective is completed then when the level is played again the if statement returns false and totalstars does not get incremented.Now the only problem is when i go to the next level and complete the objective i want the totalstars to increase but they remain same.So how can i make it work seperately for each level?? plz help.Thanks.
void OnTriggerEnter2D (Collider2D Ball)
{
TotalStars.star1limit += 1; //gets incremented
EndGame.SetActive (true);
WinStar.SetActive (true);
PlayerPrefs.SetInt ("Level" + CurrentLevel.ToString () + "_win", 1);
deactive ();
COuntAndTime ();
if (TotalStars.star1limit < 2) { //if played second time it returns false
TotalStars.Totalstars += 1;
TotalStars.totstar.Save ();
}
}
Your answer
Follow this Question
Related Questions
How to give score only once for each level? 0 Answers
How to increment score by one, every time player moves the device face down ? 2 Answers
How to make PlayerPrefs delete if the player didn't touch game finish collider 1 Answer
How to alter c# script from a script in a different scene (i.e. display score in different scene) 2 Answers