With the fundamentals of the dependency graph covered, we will now take a look at the high-level class diagram (Figure 4), which describes the new classes and relationships for implementing the quest system:
The left-half of this class diagram represents the notification propagation via the observer pattern. For instance, when the player entity selects a quest item or walks over a designated quest task area, those notifications bubble up to the
PlayerHUD, which is an observer for those
ComponentEvent notifications. Depending on the type of notification trigger, this will get passed to the
QuestUI to update ...