Add BST tutorial scene and menu flow #11
Open
+8,928
−188
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Adds a real BST tutorial that runs in its own scene using the same gameplay stack as a normal level (TreeRhythmController, Score HUD, falling notes, synthwave), then hands off to the selected song.
This PR stacks on
feature/player-vs-bot. Merge the bot PR first, or retarget this PR tomainafter that lands.Player flow
File guide
Tutorial runtime
Assets/Tutorial/TutorialController.cs: steps the lesson, drives tutorial mode on TreeRhythmController, updates side guide panelsAssets/Tutorial/TutorialSceneController.cs: exits to GameScene (or P2 tutorial reload, or Menu if no song)Assets/Tutorial/TutorialRuntimeBootstrap.cs: loads lesson assets from Resources and switches the scene controller into tutorial modeAssets/Tutorial/TutorialBootstrapRefs.cs+Assets/Resources/TutorialBootstrapRefs.asset: play-mode safe asset bundle (no AssetDatabase at runtime)Assets/Tutorial/TutorialAssetPaths.cs: canonical editor paths for setup toolsAssets/Tutorial/TutorialLessonConfig.cs+DefaultTutorialLesson.asset: starting tree, insert value, step copyAssets/Tutorial/TutorialGuideStyle.cs+DefaultTutorialGuideStyle.asset: editable panel layout, type sizes, colors, labelsAssets/Tutorial/TutorialLayoutBuilder.cs/TutorialUILayout.cs: builds and caches left/right guide panelsAssets/Tutorial/TutorialInputLabels.cs: binding display strings from the active player's Input System mapAssets/Tutorial/TutorialPresentationGuards.cs: keeps sky off and restores the GameScene hit bar if the scene save drops itAssets/Tutorial/TutorialSampleSession.cs/TutorialSampleBootstrap.cs: seeds a sample session for direct Tutorial playAssets/Tutorial/Editor/TutorialEditorTools.cs: Rhythm setup, validate, and sample play menusAssets/Scenes/Tutorial.unity: authored tutorial scene (GameScene-like stack)Assets/ScriptableObjects/Tutorial/TutorialMetronomeBeatmap.asset: metronome chartMenu wiring
Assets/Menu/MenuSceneController.cs: StartTutorialFromSongSelect / tutorial scene loadAssets/Menu/TitleScreen/TitleScreenController.cs: Tutorial? prompt after mode / bot tierAssets/Menu/Data/MenuTutorialPromptTree.csandTutorialPromptState.cs: alternate prompt helpers (live path is the title BST Yes/No)GameSession.WantsTutorialGameplay support
Assets/Integration/TreeRhythmController.cs: ConfigureTutorial, metronome mode, tutorial events, P1/P2 input swap for sequential lessonsAssets/Session/GameSession.cs: WantsTutorial and per-player tutorial completion flagsDocs
AI/components/Tutorial.mdplus changelog and index updatesTest plan