Namespace UnityEngine.GameFoundation
Classes
AnalyticsDetailDefinition
AnalyticsDetailDefinition. Attach to a game item to have it automatically get tracked with analytics.
AudioClipAssetsDetailDefinition
CatalogManager
CategoryDefinition
CategoryDefinition describes a Category. CategoryDefinitions are usable across multiple systems, but each system is responsible for containing and managing its own Categories.
CurrencyDetailDefinition
CurrencyDetailDefinition. Attach to a GameItemDefinition to store the currency information.
DefaultCollectionDefinition
DefaultCollectionDefinitions contain preset values and rules for a Collection by using a CollectionDefinition. During runtime, it may be useful to refer back to the DefaultCollectionDefinition for the presets and rules, but the values cannot be changed at runtime (your system may, for example, bypass the presets, or calculate new values on the fly with modifiers).
DefaultItemDefinition
This class contains a pair of data, a GameItemDefinition Hash and an int for quantity. These are used to setup the DefaultItems in a CollectionDefinition.
GameFoundation
Manage the initialization and the persistence of the Game Foundation systems.
GameFoundationSettings
Game Foundation settings for runtime implementation and serialization.
GameItem
Common Fields found in BaseItem and BaseCollection. BaseItem and BaseCollection both inherit from this class.
GameItemCatalog
A Catalog for all GameItemDefinitions.
GameItemDefinition
Base class for both BaseItemDefinition and BaseCollectionDefinition. Holds Id, display name, DetailDefinitions etc.
Inventory
Contains a runtime list of InventoryItems as well as details which effect this Inventory.
InventoryCatalog
Definitions for InventoryItemDefinitions and InventoryDefinitions. The Catalog serves as a way to find references to Definitions, as needed.
InventoryDefinition
Describes preset values and rules for an Inventory. During runtime, it may be useful to refer back to the InventoryDefinition for the presets and rules, but the values cannot be changed at runtime. The InventoryDefinition is also responsible for creating Inventories based on preset properties.
InventoryItem
An InventoryItem that goes into an Inventory. InventoryItems should only exist inside Inventories.
InventoryItemDefinition
Preset values and rules for an InventoryItem. During runtime, it may be useful to refer back to the InventoryItemDefinition for the presets and rules, but the values cannot be changed at runtime. InventoryItemDefinitions are also used as factories to create InventoryItems.
InventoryManager
Manages all Inventories. Can subscribe to events relevant to Inventories and create and remove them here. InventoryManager also owns the main and wallet Inventories, as well as all other Inventories of InventoryItems. The InventoryManager can create Inventories from InventoryDefinitions or default Inventories as needed.
InventoryManager.InventoryManagerEvent
This is a Unity event that effects the entire InventoryManager
Payout
Represents a set of items to grant for a successful transaction.
PrefabAssetsDetailDefinition
Price
Represents the set of items that need to be paid with for a transaction.
PurchasableDetailDefinition
SpriteAssetsDetailDefinition
StatCatalog
Definitions for StatDefinitions. The Stat Catalog serves as a way to find references to Definitions, as needed.
StatDefinition
This is one entry in the list of possible stats an item could have.
StatDetailDefinition
Detail definition to establish that item uses certain stats, and also to set default values for those stats.
StatItem<T>
This is one record in the Stat Manager’s list of current Stats at runtime.
StatManager
Track of all runtime stats data and exposes methods for managing the data at runtime.
TransactionManager
Contains the main helper methods used for initiating and processing transactions.
TransactionReceipt
Contains a set of data to describe how a transaction occurred.
Wallet
Static helper class for dealing with the Wallet inventory.
Many methods are simply shortcuts for 'InventoryManager.wallet.xxx'.
Structs
InputItem
Represents a single item type and quantity to be used in a price.
OutputItem
Represents a single item type and quantity to give for a payout.
Interfaces
IDataAccessLayer
Contract for objects providing data to all Game Foundation's systems (GameItemLookup, InventoryManager, StatManager, ...). Note that usually they are also responsible for persisting these data.
IGameItemLookupDataLayer
Contract for objects providing data to the Game
IInventoryDataLayer
Contract for objects providing data to the Inventory
IStatDataLayer
Contract for objects providing data to the Stat
Enums
CurrencyDetailDefinition.CurrencySubType
Another level of refinement for describing/tracking a currency. Any currency type can be combined with any currency sub-type.
CurrencyDetailDefinition.CurrencyType
This better enables identifying and tracking different types of currency in your game.
StatDefinition.StatValueType
Enum to determine the value type for this StatDefinition
Delegates
InventoryManager.InventoryEvent
This is a delegate that takes in a single Inventory as the parameter
Payout.PayoutEvent
Simple callback delegate
TransactionManager.TransactionEvent
Simple callback delegate