1,158
edits
(clarifications) |
(update translation units) |
||
Line 1: | Line 1: | ||
<languages/> | <languages/> | ||
<!--T:1--> | <!--T:1--> | ||
{{Subsystem infobox|name=WorldMgr|init_addr_switch150=00000071010F2920|is_name_official=1|description=Manages world state (time, blood moons, climates, weather, etc.)}} | {{Subsystem infobox|name=WorldMgr|init_addr_switch150=00000071010F2920|is_name_official=1|description=Manages world state (time, blood moons, climates, weather, etc.)}} | ||
Line 11: | Line 10: | ||
== WorldMgr == <!--T:4--> | == WorldMgr == <!--T:4--> | ||
=== Sub-managers === | === Sub-managers === | ||
Sub-managers are created in WorldMgr::init (0x71010F43C0) and inserted into a pointer array (@WorldMgr+0x5c0). All names below are unofficial. | Sub-managers are created in WorldMgr::init (0x71010F43C0) and inserted into a pointer array (@WorldMgr+0x5c0). All names below are unofficial. | ||
Line 19: | Line 19: | ||
! ID !! Description | ! ID !! Description | ||
|- | |- | ||
| 0 || TimeMgr: Handles time, blood moons, Lord of the Mountain. | | 0 || <translate>TimeMgr: Handles time, blood moons, Lord of the Mountain.</translate> | ||
|- | |- | ||
| 1 || CloudPrMgr: Handles cloud procedural generation. | | 1 || <translate>CloudPrMgr: Handles cloud procedural generation.</translate> | ||
|- | |- | ||
| 2 || ShootingStarMgr: Manages shooting stars and (in 1.3.3+) special shooting stars for the Xenoblade 2 quest. | | 2 || <translate>ShootingStarMgr: Manages shooting stars and (in 1.3.3+) special shooting stars for the Xenoblade 2 quest.</translate> | ||
|- | |- | ||
| 3 || WeatherMgr: Handles "rain splash" and climate weathers. | | 3 || <translate>WeatherMgr: Handles "rain splash" and climate weathers.</translate> | ||
|- | |- | ||
| 4 || TempMgr: Handles world temperature{{check}}. | | 4 || <translate>TempMgr: Handles world temperature{{check}}.</translate> | ||
|- | |- | ||
| 5 || ? | | 5 || ? | ||
|- | |- | ||
| 6 || SkyMgr: Handles sky and fog{{check}}. Holds the configuration for all EnvPalettes, EnvAttributes, WeatherInfluences, Remains palettes, Indoor palettes and dungeon fogs. | | 6 || <translate>SkyMgr: Handles sky and fog{{check}}. Holds the configuration for all EnvPalettes, EnvAttributes, WeatherInfluences, Remains palettes, Indoor palettes and dungeon fogs.</translate> | ||
|- | |- | ||
| 7 || DofMgr: Handles depth of field{{check}}. Holds depth of field related parameters. | | 7 || <translate>DofMgr: Handles depth of field{{check}}. Holds depth of field related parameters.</translate> | ||
|- | |- | ||
| 8 || ? | | 8 || ? | ||
Line 72: | Line 72: | ||
! Mode !! Description | ! Mode !! Description | ||
|- | |- | ||
| 0 || If Demo103_0 or Demo997_0 have been played, and if there is no active event (cutscene): | | 0 || <translate>If Demo103_0 or Demo997_0 have been played, and if there is no active event (cutscene): | ||
* Add (0.0083333 * elapsed frames) to the Time of Day timer. Effectively, this means that 1 in-game minute = 1 real-life second. | * Add (0.0083333 * elapsed frames) to the Time of Day timer. Effectively, this means that 1 in-game minute = 1 real-life second. | ||
* If the timer is >= 360.0, which means that a day has passed, the game subtracts 360 from the timer and then performs midnight checks. | * If the timer is >= 360.0, which means that a day has passed, the game subtracts 360 from the timer and then performs midnight checks. | ||
* If FindDungeon_Activated is false (if the player hasn't received the ''The Isolated Plateau'' quest) and if the current time is >= 165.0 (11:00), the time is forcefully set to 11:00. Effectively, this means that time will not get past 11:00 until the Great Plateau Tower is activated and the Old Man cutscene is triggered. | * If FindDungeon_Activated is false (if the player hasn't received the ''The Isolated Plateau'' quest) and if the current time is >= 165.0 (11:00), the time is forcefully set to 11:00. Effectively, this means that time will not get past 11:00 until the Great Plateau Tower is activated and the Old Man cutscene is triggered. | ||
* The Blood Moon timer is updated too. | * The Blood Moon timer is updated too.</translate> | ||
|- | |- | ||
| 1, 13, 35 || Freeze time to 04:00 | | 1, 13, 35 || Freeze time to 04:00 | ||
Line 126: | Line 126: | ||
| 32 || Freeze time to 23:00 | | 32 || Freeze time to 23:00 | ||
|- | |- | ||
| 34 || | | 34 ||<translate> | ||
* Add (0.0083333 * elapsed frames) to the Time of Day timer. | * Add (0.0083333 * elapsed frames) to the Time of Day timer. | ||
* If the timer is >= 360.0, which means that a day has passed, the game subtracts 360 from the timer. | * If the timer is >= 360.0, which means that a day has passed, the game subtracts 360 from the timer. | ||
Line 132: | Line 132: | ||
<!--T:14--> | <!--T:14--> | ||
'''Note''': In this state, the blood moon timer is never updated and its value is never checked either. | '''Note''': In this state, the blood moon timer is never updated and its value is never checked either. | ||
</translate> | |||
|} | |} | ||
Line 204: | Line 205: | ||
| 00:00 || 04:00 || 7 || NightB || Night_B | | 00:00 || 04:00 || 7 || NightB || Night_B | ||
|} | |} | ||
Note: all intervals include the start time and exclude the end time. | Note: all intervals include the start time and exclude the end time. | ||
Line 273: | Line 275: | ||
[[Category:Internals]] | [[Category:Internals]] | ||
[[Category:Subsystems (BotW)]] | [[Category:Subsystems (BotW)]] | ||