GameDataMgr: Difference between revisions

imported>Leoetlino
imported>Leoetlino
Line 71: Line 71:


== Reset process ==
== Reset process ==
All game data flags for which <code>(1 << resetType) & resetFlags</code> is true are reset to their initial values.
TriggerParam::reset processes up to 1024 flags at a time. The function returns the number of remaining flags to reset and flag 0x08 (GameDataMgr::Flags_NeedReset) is only cleared when all flags have been reset.
== bool and s32 flags with reset type 3 ==
bool and s32 flags with reset type 3, and with a flag name hash that is listed in ShopAreaInfo (in [[ShopGameDataInfo.byml]]) receive special treatment.
If:
* the player is in none of the shop areas that are associated with the flag (or in the Dealer's area for area-less flags); or if the player is not on MainField
* '''and''', for items with the <code>Arrow</code> tag: if the player has fewer than {itemSaleRevivalCount} arrows in their inventory
Then:
* The flag is reset to its initial value.
* For bool flags: All associated sold out flags are reset to their initial values.


[[Category: Internals]]
[[Category: Internals]]
[[Category: Subsystems (BotW)]]
[[Category: Subsystems (BotW)]]
Anonymous user