- Home /
How to add all PlayerPrefs to a list?
I ran into an issue whilst making a game where I need to add all player preferences to a list of floats, I have made a PlayerPref list of all the movements the player has made at what time so something like: 0NoMovement = 3.35s 1LeftMovement = 2.2s 2RightMovement = 6.7s And so on. Now I need to move these to a list in a simple way, Right now the only way I can think of is having a for loop inside a for loop, and as most of you probably know that isn't very good... Now I feel this would be the best way to make a ghost but if you have any better ways that would also be appreciated. Thanks in advance AliquidHacker
Answer by Dinosaurs · Aug 31, 2015 at 04:31 AM
There's nothing wrong with nesting for loops; however, storing every move a player makes as a string in PlayerPrefs is probably not the best way to store that data. I do not know your needs, but it seems like it would be much better to create a simple struct to store the data, for example:
public enum Direction
{
None,
Up,
Down,
Left,
Right,
}
public struct PlayerMove
{
public int Index;
public float Time;
public Direction MoveDirection;
}
List<PlayerMove> recentMoves;
If you need to save that info between sessions, you could also look into using ArrayPrefs http://wiki.unity3d.com/index.php/ArrayPrefs2 to save more complex data to player prefs.
Thank you very much, I'll try that it will probably be a lot better as you just said.
Your answer
Follow this Question
Related Questions
Making a bubble level (not a game but work tool) 1 Answer
Distribute terrain in zones 3 Answers
Multiple Cars not working 1 Answer
Saving Rotation of Sprite 1 Answer
RTS Camera Rotation and Movement 0 Answers