1.6.2
- added support for PGR game sessions
This commit is contained in:
parent
d7aceb82bf
commit
7bd96bc81a
2 changed files with 7 additions and 19 deletions
|
@ -1,6 +1,6 @@
|
||||||
[package]
|
[package]
|
||||||
name = "anime-launcher-sdk"
|
name = "anime-launcher-sdk"
|
||||||
version = "1.6.1"
|
version = "1.6.2"
|
||||||
authors = ["Nikita Podvirnyy <suimin.tu.mu.ga.mi@gmail.com>"]
|
authors = ["Nikita Podvirnyy <suimin.tu.mu.ga.mi@gmail.com>"]
|
||||||
license = "GPL-3.0"
|
license = "GPL-3.0"
|
||||||
readme = "README.md"
|
readme = "README.md"
|
||||||
|
|
|
@ -11,7 +11,7 @@ use super::consts::launcher_dir;
|
||||||
|
|
||||||
/// Get default sessions file path
|
/// Get default sessions file path
|
||||||
///
|
///
|
||||||
/// `$HOME/.local/share/honkers-launcher/sessions.json`
|
/// `$HOME/.local/share/anime-borb-launcher/sessions.json`
|
||||||
#[inline]
|
#[inline]
|
||||||
pub fn sessions_file() -> anyhow::Result<PathBuf> {
|
pub fn sessions_file() -> anyhow::Result<PathBuf> {
|
||||||
launcher_dir().map(|dir| dir.join("sessions.json"))
|
launcher_dir().map(|dir| dir.join("sessions.json"))
|
||||||
|
@ -19,11 +19,8 @@ pub fn sessions_file() -> anyhow::Result<PathBuf> {
|
||||||
|
|
||||||
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
|
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
|
||||||
pub struct SessionData {
|
pub struct SessionData {
|
||||||
// [Software\\miHoYo\\Honkai Impact 3rd]
|
// [Software\\kurogame\\PGR]
|
||||||
pub game_reg: String,
|
pub game_reg: String
|
||||||
|
|
||||||
// [Software\\miHoYoSDK]
|
|
||||||
pub sdk_reg: String
|
|
||||||
}
|
}
|
||||||
|
|
||||||
pub struct Sessions;
|
pub struct Sessions;
|
||||||
|
@ -53,18 +50,13 @@ impl SessionsExt for Sessions {
|
||||||
tracing::info!("Updating session '{name}' from prefix: {:?}", prefix.as_ref());
|
tracing::info!("Updating session '{name}' from prefix: {:?}", prefix.as_ref());
|
||||||
|
|
||||||
let mut new_session = Self::SessionData {
|
let mut new_session = Self::SessionData {
|
||||||
game_reg: String::new(),
|
game_reg: String::new()
|
||||||
sdk_reg: String::new()
|
|
||||||
};
|
};
|
||||||
|
|
||||||
for entry in std::fs::read_to_string(prefix.as_ref().join("user.reg"))?.split("\n\n") {
|
for entry in std::fs::read_to_string(prefix.as_ref().join("user.reg"))?.split("\n\n") {
|
||||||
if entry.starts_with("[Software\\\\miHoYo\\\\Honkai Impact 3rd]") {
|
if entry.starts_with("[Software\\\\kurogame\\\\PGR]") {
|
||||||
new_session.game_reg = entry.to_owned();
|
new_session.game_reg = entry.to_owned();
|
||||||
}
|
}
|
||||||
|
|
||||||
else if entry.starts_with("[Software\\\\miHoYoSDK]") {
|
|
||||||
new_session.sdk_reg = entry.to_owned();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
sessions.sessions.insert(name, new_session);
|
sessions.sessions.insert(name, new_session);
|
||||||
|
@ -84,14 +76,10 @@ impl SessionsExt for Sessions {
|
||||||
let entries: String = std::fs::read_to_string(prefix.as_ref().join("user.reg"))?
|
let entries: String = std::fs::read_to_string(prefix.as_ref().join("user.reg"))?
|
||||||
.split("\n\n")
|
.split("\n\n")
|
||||||
.map(|entry| {
|
.map(|entry| {
|
||||||
let new_entry = if entry.starts_with("[Software\\\\miHoYo\\\\Honkai Impact 3rd]") {
|
let new_entry = if entry.starts_with("[Software\\\\kurogame\\\\PGR]") {
|
||||||
session.game_reg.clone()
|
session.game_reg.clone()
|
||||||
}
|
}
|
||||||
|
|
||||||
else if entry.starts_with("[Software\\\\miHoYoSDK]") {
|
|
||||||
session.sdk_reg.clone()
|
|
||||||
}
|
|
||||||
|
|
||||||
else {
|
else {
|
||||||
entry.to_owned()
|
entry.to_owned()
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in a new issue