GameScene: Difference between revisions
no edit summary
imported>Leoetlino |
imported>Leoetlino No edit summary |
||
Line 173: | Line 173: | ||
* Status 0: | * Status 0: | ||
** Start loading | ** Start loading | ||
***Finish startup logo (Switch) | ***Finish startup logo (Switch)<ref>0x71007AF6F8</ref> | ||
***If the state string is set to 初回シーケンス, clear the Resource system cache ("ClearAllCaches"). | ***If the state string is set to 初回シーケンス, clear the Resource system cache ("ClearAllCaches")<ref>0x71007AFBDC</ref>. | ||
***Debug stuff. | ***Debug stuff<ref>0x71007AFDE4</ref>. | ||
***E3 Demo stuff. | ***E3 Demo stuff<ref>0x71007AFEF4</ref>. | ||
***Show the Fade screen (loading screen) if the state string does ''not'' end with "Viewer" or is ''not'' any of the following strings: 1st, 2nd, Presentation, TitleMenu, 初回シーケンス, StartupSaveCheckStage | ***Show the Fade screen (loading screen) if the state string does ''not''<ref>0x71007AFF08</ref> end with "Viewer" or is ''not'' any of the following strings: 1st, 2nd, Presentation, TitleMenu, 初回シーケンス, StartupSaveCheckStage | ||
**** And then show the FadeStatus and the LoadSaveIcon screens. | **** And then show the FadeStatus<ref>0x71007AFFC4</ref> and the LoadSaveIcon screens<ref>0x71007AFFCC</ref>. | ||
****Otherwise, only open the Fade screen but do not show loading progress. | ****Otherwise, only open the Fade screen but do not show loading progress<ref>See function at 0x71007B0C60</ref>. | ||
***StageSelect stuff. | ***StageSelect stuff<ref>0x71007B0000</ref>. | ||
***Stop "resource compaction" and wait for it to be stopped. | ***Stop "resource compaction" and wait for it to be stopped<ref>0x71007B00B4 (stop compaction) to 0x71007B010C (end of the busy loop)</ref>. | ||
***If the stage string starts with CDungeon or MainFieldDungeonStage, start loading the associated DungeonPack. | ***If the stage string starts with CDungeon<ref>0x71007B0124</ref> or MainFieldDungeonStage<ref>0x71007B0160</ref>, start loading the associated DungeonPack<ref>0x71007B0190</ref>. | ||
***BaseProcMgr: start ActorCreate initializer thread. | ***BaseProcMgr: start ActorCreate initializer thread<ref>0x71011BF1C4</ref>{{check}}. | ||
***FadeProgress: reset internal state, set progress to 0% and mark loading as active. | ***FadeProgress: reset internal state<ref>0x71007B01D4</ref>, set progress to 0%<ref>0x71007B01E0</ref> and mark loading as active<ref>0x71007B01E8</ref>. | ||
* Status 2: | * Status 2: | ||
**If the GameScene state machine's current state is StageSelect or NewSave, do something involving LayerMgrTask and the Renderer.{{check}} | **If the GameScene state machine's current state is StageSelect or NewSave, do something involving LayerMgrTask and the Renderer.{{check}} | ||
Line 191: | Line 191: | ||
* Status 0xb: | * Status 0xb: | ||
** Set GameScene's isNewSave property. | ** Set GameScene's isNewSave property. | ||
** Reset status to 0 | ** Reset status to 0. | ||
** Change GameScene state to StageTransition. | ** Change GameScene state to StageTransition<ref>0x71007B1058</ref>. | ||
** Set stage status to "NeedsGeneration". | ** Set stage status to "NeedsGeneration" (2)<ref>0x71007B105C</ref>. | ||
== Stage generation == | == Stage generation == | ||
Line 246: | Line 246: | ||
* Step 13 | * Step 13 | ||
== References == | |||
<references/> | <references/> | ||
[[Category:Internals]] | [[Category:Internals]] | ||
[[Category:Subsystems (BotW)]] | [[Category:Subsystems (BotW)]] |