There are three scriptable objects that should be configured for feature-proper behavior.
DataBinding, GraphicsData, and State.
DataBinding
Days To End - text that will be displayed in the timer frame.
Golden Pass Text - text that will be displayed in activated frame after actictivate
enabled.
Safe Reward Id - id for safe reward. If a safe reward is enabled when the user collects
it, it will be automatically added to collected IDs in the State. Because each reward
must be collected only once.
Items - config for each step(item) on the vertical progress bar.
Index - a number that is displayed in the center of diamonds.
Diamonds To Collect - the amount of currency that the user should collect to complete
the item(step)
Free Reward Id - id that will be added to The collected IDs list
Paid Reward Id - id that will be added to The collected IDs list
Free Reward Text - Free Reward Text - text that will be displayed at the free icon.
Free Reward Icon - an icon that will be displayed as a free reward icon.
Paid Reward Text - Free Reward Text - text that will be displayed at the paid(activated)
icon.
Free Reward Icon - the icon that will be displayed as a paid(activated) reward icon.
GraphicsData
Scriptable Object that is responsible for holding the uxml documents that correspond to
different types of Battle Pass.
Type of Battle Pass
Main panel
Item(step) that spawns between the first and the last.
The first step(item) that spawns first to the vertical progress bar. It's a unique
Item.
The last step(item) spawns first to the vertical progress bar. It's a unique Item.
The save uxml document will spawn if a Safe reward is enabled.
State
Amount of currency that the user has at the moment before the feature is opened.
Amount of currency that the user saw last time the feature was opened. If the current
amount is more than the last seen amount it enables the progress animation.
Displays info about the user activated paid access.
Type of Battle Pass.
All collected rewards ids, that the user collected. It includes free, paid, and safe.
With this flag you could regulate should a user has a safe reward or not.