At the moment the contracts sit in the stage they're linked to, and we see all contracts of the current stage (and only of the current stage). I'm not sure at the moment if we'd like to see the smaller contracts of previous stages when we switch to a later one. Clearing everything not completed may be frustrating but at the same those contracts may simply be irrelevant.
We'll probably need at least four states to any contract in order to determine visibility:
not available yet
available
in progress
completed
(An additionnal failed state may be interesting, as well as something in betweeen available and unavailable : visible but greyed out if some condition is unmet)
Instead of grouping the contracts inside each stage object, maybe a better structure would be to have a big list of all contracts, and then filter them out in each of the four states, depending on properties like stage or other factors (if you've met a specific npc, if you have a specific upgrade in your base, etc.)
At the moment the contracts sit in the stage they're linked to, and we see all contracts of the current stage (and only of the current stage). I'm not sure at the moment if we'd like to see the smaller contracts of previous stages when we switch to a later one. Clearing everything not completed may be frustrating but at the same those contracts may simply be irrelevant.
We'll probably need at least four states to any contract in order to determine visibility:
(An additionnal failed state may be interesting, as well as something in betweeen available and unavailable : visible but greyed out if some condition is unmet)
Instead of grouping the contracts inside each stage object, maybe a better structure would be to have a big list of all contracts, and then filter them out in each of the four states, depending on properties like stage or other factors (if you've met a specific npc, if you have a specific upgrade in your base, etc.)