Как правильно организовать зависимость поведения программы от большого числа произошедших ранее событий?
Вопрос собственно в следующем - допустим у нас есть игра, где каждое последующее событие зависит от того, какие решения мы приняли раньше. Так вот, как правильно организовать такую зависимость? Вариант с простой проверкой глобальных флагов кажется слишком простым, чтобы быть правильным.