EventSettings
IEventSettings
IEventSettings is a globally accessible object that provides Milestone Reward mapping capabilities for an IEventContent. Each IEventContent requires a corresponding IEventSettings object. The IEventService collects and uses these objects to manage reward claiming across different Contents.
Important
The IEventSettings must always be loaded so that it is globally accessible from all Contents. Using this smaller subset of data allows you to safely unload IEventContent when the player is in a different content while still supporting reward claiming and event displays.
Relationships
IEventSettings - This interface defines methods to use for completing IMilestone objects, claiming IReward objects as well as properties for IEventSettingsData and IEventSettingsSavedData.
IEventSettingsData - This interface defines a list of MilestoneRewardPair objects, an
eventContentId
which refers to its associated IEventContent, auniqueEventContentId
which is this event's unique id, an associated IContent where rewards can be claimed, and a method to return the mapped IReward of an IMilestone.IEventSettingsSavedData - This interface defines properties to serialize completed IMilestone ids and track if rewards have been claimed. It also contains information on all the milestones completion time and whether it has been actually completed or not in milestoneCompletionInfo.
See EventContent for more information on the rest of this diagram.
Note
The Projection Service documentation contains information on how we calculate an estimation to the completion time of an IMilestone that is then stored in the milestoneCompletionInfo.