feat: add vanilla Minecraft integration#430
feat: add vanilla Minecraft integration#430CompileRider wants to merge 4 commits intoCCBlueX:mainfrom
Conversation
1zun4
left a comment
There was a problem hiding this comment.
Thanks for your contribution. That's a great addition.
I will try it out when development on the Launcher continues and merge it into the next release of LiquidLauncher.
| std::fs::remove_file(&target).ok(); | ||
| std::fs::create_dir_all(&target)?; |
There was a problem hiding this comment.
Please make use of use std::fs; or use tokio::fs; instead of writing the whole path.
| Ok(()) | ||
| } | ||
|
|
||
| fn get_vanilla_minecraft_dir() -> Option<std::path::PathBuf> { |
There was a problem hiding this comment.
Please import PathBuf using use std::path::PathBuf; on the top of the file.
| launcher_data: &LauncherData<D>, | ||
| ) -> Result<()> { | ||
| let vanilla_dir = if !integration.custom_path.is_empty() { | ||
| let custom = std::path::PathBuf::from(&integration.custom_path); |
There was a problem hiding this comment.
Please import PathBuf using use std::path::PathBuf; on the top of the file.
| } | ||
| </script> | ||
|
|
||
| <div class="section-title">Vanilla Integration</div> |
There was a problem hiding this comment.
A colored section-title is something new to the design that we haven't used anywhere else. Please verify if this is something that we cannot design more consistent.
| bind:value={options.launcher.keepLauncherOpen} | ||
| /> | ||
|
|
||
| <VanillaIntegration {options} /> |
There was a problem hiding this comment.
The whole section for the Vanilla Integration takes up a lot of space. How does this look on the default window size? We might prefer the use of an additional tab. That would also remove the need for a section title.
|
Okay, I understand. Thank you for taking the time to respond to this PR. |
Add options to share data with any Minecraft installation: - Use vanilla worlds (saves) - Use vanilla resource packs - Use vanilla shader packs - Custom Minecraft directory selector Creates symlinks from LiquidLauncher gameDir to the selected Minecraft folders. Works with vanilla .minecraft, Prism Launcher, or any custom location. Example: Select your Minecraft directory, enable 'Use vanilla worlds', launch the game, and your worlds will appear in LiquidBounce. Safe: Only creates symlinks, never modifies original files. Disabling the option removes the symlink and restores separate folders. Also adds rust-toolchain.toml (nightly-2024-11-01) for easier compilation. Closes CCBlueX#237
Address code review feedback: - Import fs and PathBuf at top instead of inline paths - Use imported PathBuf in all locations
Summary
Implements feature request #237 - allows users to share data with any Minecraft installation.
Changes
How it works
Safe: Only creates symlinks, never modifies original files.
Screenshots
Closes #237