Hi,
thanks for the bump, we need them
use Hashtables for clues, as you can better organise a clue using a reference and as the value, you either have a bool which tells you if this clue is available to the player or not, or the value of the clue what ever that is.
then, yes, indeed, you have then two problems, saving it and using it.
Saving it between sessions means using playerprefs indeed. no other way around, other than saving on a server online.
Using it can be done in different fashion, I would avoid global variables or keep it to the bare minimum, for example, only have as a global variable the gameobject responsible for the clues and have the hashtable on that gameobject.
you can also, tag the clue gameobject and have each fsm find it when they start, then you don't need the global variable at all.
each of your level features that need to act in different ways depending on clues will refer to that clue gameobject and query its hashtable for a specific clue value and act accordingly, that's all.
Let me know if that is not clarifying your vision on how to progress with this. we'll go more in details.
Bye,
Jean