using System; namespace Framework.Services { /// In what scope a service will live public enum Scope { /// The instance remains around until the scene changes /// /// Useful for things that should be reset when the scene changes, such /// as enemy coordinators, scene event managers, crowd directors, etc. /// Scene = 0, /// The instance remains for one playthrough /// /// This would be used for components that need to remain available when /// moving between scenes, but get destroyed when quitting to the main /// menu. A typical case would be a component that stores the inventory /// of the player. /// Session = 1, /// One instance that exists for as long as the game runs /// /// For game-wide services that are kept around regardless of what the player /// does. Components storing the game's key bindings, achievements and such /// would be ideal candidates for this. /// Global = 2 } } // namespace Framework.Services