Как можно создать задание в игре?
===================================

 Всем привет, вот я пишу сейчас некоторую игру. И я задался вопросом, как можно организовать отслеживание и выполнение задание пользователем.   

Приведу пример, у меня есть ведро и ручей. Человеку нужно набрать для выполнения задание 5 ведер, но набор воды происходит в отдельном кусочке кода, и вот как отслеживать выполнения задания идей нету.  

Можно просто привести логику в виде текста, ну или какой то схемы.  

Буду рад, спасибо заранее. 

 Задание (квест) - это слушатель действий игрока. Как только игрок совершает определенное действие, меняются текущие условия задания. В Вашем движке должен быть некий middleware, который будет слушать все действия и все активные задания и когда условия задания будут выполнены, он его отметит как завершенное и больше слушать его не будет. Когда игрок будет набирать воду, у вас в коде должно изменяться состояние задания.   

  

Через этот middleware должны будут проходить все действия пользователя, а ядро уже, по их типу, будет определять "тип" действия (набор воды) и изменять состояние задания.   

  

Я вижу это так. Остальные могут меня поправить. 

 Согласен с человеком выше.   

  

Я бы сделал событийно-ориентированную реализацию данной задачи.  

  

То бишь каждое событие (ну, не прям каждое, а только то, которое в теории может быть заданием) отправляло оповещение о своём совершении во внешний код, а там уже решать, прибавлять прогресс к чему-то или нет.