Merge pull request #136 from an-anime-team/next

Release 1.5.5
This commit is contained in:
Observer KRypt0n_ 2024-05-08 20:05:28 +02:00 committed by GitHub
commit e409fb2eb5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
22 changed files with 901 additions and 468 deletions

View file

@ -27,7 +27,7 @@ jobs:
- name: Install dependencies - name: Install dependencies
run: | run: |
apt update apt update
apt install -y build-essential libgtk-4-dev libadwaita-1-dev git curl apt install -y build-essential libgtk-4-dev libadwaita-1-dev git curl cmake
- uses: dtolnay/rust-toolchain@stable - uses: dtolnay/rust-toolchain@stable
with: with:

View file

@ -6,7 +6,7 @@ on:
paths: [ "src/**" ] paths: [ "src/**" ]
release: release:
types: [published] types: [ published ]
workflow_dispatch: workflow_dispatch:
@ -26,7 +26,7 @@ jobs:
- name: Install dependencies - name: Install dependencies
run: | run: |
apt update apt update
apt install -y build-essential libgtk-4-dev libadwaita-1-dev git curl apt install -y build-essential libgtk-4-dev libadwaita-1-dev git curl cmake
- uses: dtolnay/rust-toolchain@stable - uses: dtolnay/rust-toolchain@stable
with: with:

View file

@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
### Added
- Added Czech
## [1.5.4] - 27.03.2024 ## [1.5.4] - 27.03.2024
### Changed ### Changed

895
Cargo.lock generated

File diff suppressed because it is too large Load diff

View file

@ -19,7 +19,7 @@ glib-build-tools = "0.19"
[dependencies.anime-launcher-sdk] [dependencies.anime-launcher-sdk]
git = "https://github.com/an-anime-team/anime-launcher-sdk" git = "https://github.com/an-anime-team/anime-launcher-sdk"
tag = "1.12.8" tag = "1.12.10"
features = ["all", "star-rail", "star-rail-patch"] features = ["all", "star-rail", "star-rail-patch"]
# path = "../anime-launcher-sdk" # ! for dev purposes only # path = "../anime-launcher-sdk" # ! for dev purposes only
@ -36,7 +36,7 @@ whatadistro = "0.1.0"
serde_json = "1.0" serde_json = "1.0"
anyhow = "1.0" anyhow = "1.0"
lazy_static = "1.4.0" lazy_static = "1.4.0"
cached = { version = "0.49", features = ["proc_macro"] } cached = { version = "0.51", features = ["proc_macro"] }
md-5 = { version = "0.10", features = ["asm"] } md-5 = { version = "0.10", features = ["asm"] }
enum-ordinalize = "4.3" enum-ordinalize = "4.3"
@ -46,4 +46,4 @@ tracing-subscriber = "0.3"
fluent-templates = "0.9" fluent-templates = "0.9"
unic-langid = "0.9" unic-langid = "0.9"
human-panic = "1.2.2" human-panic = "2.0.0"

View file

@ -43,7 +43,7 @@ instead of the actual name of the game, to avoid search engine parsing.
| Distribution | Format | Wiki | Source | | Distribution | Format | Wiki | Source |
| - | - | - | - | | - | - | - | - |
| Fedora | Flatpak | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-any-distribution-flatpak) | - | | Any | Flatpak | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-any-distribution-flatpak) | - |
| Arch Linux, Manjaro | AUR | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-arch-linux-aur) | [the-honkers-railway-launcher-bin](https://aur.archlinux.org/packages/the-honkers-railway-launcher-bin) | | Arch Linux, Manjaro | AUR | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-arch-linux-aur) | [the-honkers-railway-launcher-bin](https://aur.archlinux.org/packages/the-honkers-railway-launcher-bin) |
| Fedora, OpenSUSE | RPM | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-fedora-rpm) | [HRL](https://build.opensuse.org/repositories/home:Maroxy:AAT-Apps/HRL) | | Fedora, OpenSUSE | RPM | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-fedora-rpm) | [HRL](https://build.opensuse.org/repositories/home:Maroxy:AAT-Apps/HRL) |
| Gentoo | ebuild | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-gentoo-linux-ebuild) | [gentoo-ebuilds](https://github.com/an-anime-team/gentoo-ebuilds) | | Gentoo | ebuild | [link](https://github.com/an-anime-team/the-honkers-railway-launcher/wiki/Installation#-gentoo-linux-ebuild) | [gentoo-ebuilds](https://github.com/an-anime-team/gentoo-ebuilds) |

View file

@ -33,3 +33,4 @@ id-id = Indonesia
vi-vn = Tiếng Việt vi-vn = Tiếng Việt
uk-ua = Українська uk-ua = Українська
th-th = ไทย th-th = ไทย
cs-cz = Čeština

View file

@ -0,0 +1,20 @@
components = Komponenty
components-description = Spravovat verze Wine a DXVK
selected-version = Současně používaná verze
recommended-only = Pouze doporučené
wine-version = Verze Wine
wine-recommended-description = Zobrazovat pouze doporučená vydaní Wine
wine-options = Možnosti Wine
wine-use-shared-libraries = Používat sdílené knihovny Wine
wine-use-shared-libraries-description = Nastaví LD_LIBRARY_PATH aby se systémové knihovny načítaly ze zvolené verze Wine
gstreamer-use-shared-libraries = Používat sdílené knihovny gstreamer
gstreamer-use-shared-libraries-description = Nastaví GST_PLUGIN_PATH aby se komponenty gstreamer načítaly ze zvolené verze Wine
dxvk-version = DXVK verze
dxvk-selection-disabled = Výběr DXVK je vypnutý kvůli vašemu nastavení Wine skupin
dxvk-recommended-description = Zobrazovat pouze doporučená vydaní DXVK

View file

@ -0,0 +1,57 @@
game-settings-description = Spravujte nastavení hry a účtu
sandbox-settings-description = Izolovat hru v bubblewrap sandboxu, podobně jak to dělá Flatpak
environment-settings-description = Specifikovat proměné prostředí a příkaz pro spuštění hry
wine = Wine
synchronization = Synchronizace
wine-sync-description = Technologie použitá na synchronizaci vnitřních procesů Wine
language = Jazyk
wine-lang-description = Jazyk který bude nastaven ve Wine prostředí. Může opravit problémy s rozložením klávesnice
system = Systém
borderless-window = Okno bez okrajů
virtual-desktop = Virtuální plocha
map-drive-c = Připojení jednotky C:
map-drive-c-description = Automaticky udělá symlink složky drive_c z Wine prefixu na dosdevices
map-game-folder = Připojení složky se hrou
map-game-folder-description = Automaticky udělá symlink složky se hrou na dosdevices
game = Hra
hud = HUD
fsr = FSR
fsr-description = Škáluje hru na velikost vašeho monitoru. Aby jste tuto funkci použili vyberte nižší rozlišení v nastavení hry a stiskněte Alt+Enter
ultra-quality = Ultra kvalita
quality = Kvalita
balanced = Vyváženě
performance = Výkon
gamemode = Herní režim
gamemode-description = Nastaví hře vyšší prioritu než zbytek procesů
gamescope = Gamescope
gamescope-description = Gamescope je nástroj od firmy Valve který umožňuje hře běžet v izolované instanci Xwayland, podporuje GPU od AMD, Intel, a Nvidia
discord-rpc = Discord RPC
discord-rpc-description = Discord RPC Discord RPC poskytuje informace o hře kterou hrajete Discordu aby to viděli vaši přátelé
icon = Ikona
title = Titulek
description = Popis
fps-unlocker = FPS Odemykač
fps-unlocker-description = Odstraní limit FPS pomocí úpravy paměti hry. Může být detekováno anti-cheatem
enabled = Povoleno
fps-unlocker-interval = Přepisovací interval
fps-unlocker-interval-description = Prodleva v milisekundách mezi přepisováním FPS limitu. Přepisování je nutné aby si to hra neresetovala
window-mode = Režim v okně
borderless = Celá obrazovka v okně
popup = Popup
fullscreen = Celá obrazovka

View file

@ -0,0 +1,7 @@
environment = Běhové prostředí
game-command = Spouštěcí příkaz
game-command-description = Příkaz určený ke spuštění hry. Zástupný symbol %command% je generován launcherem, například: gamemoderun '%command%'
new-variable = Nová proměnná
name = Jméno
value = Hodnota
add = Přidat

View file

@ -0,0 +1,66 @@
launcher-folder-opening-error = Nepodařilo se otevřít složku launcheru
game-folder-opening-error = Nepodařilo se otevřít složku se hrou
config-file-opening-error = Nepodařilo se otevřít konfigurační soubor
debug-file-opening-error = Nepodařilo se otevřít debugovací soubor
wish-url-search-failed = Nebyla nalezena žádná adresa URL wishů
wish-url-opening-error = Nepodařilo se otevřít URL wishů
wine-run-error = Nepodařilo se spustit {$executable} pomocí Wine
game-launching-failed = Nepodařilo se spustit hru
failed-get-selected-wine = Nepodařilo se získat vybranou verzi Wine
downloading-failed = Stahování selhalo
unpacking-failed = Rozbalování selhalo
kill-game-process-failed = Nepodařilo se zabít proces hry
game-file-repairing-error = Nepodařilo se opravit soubory hry
integrity-files-getting-error = Nepodařilo se získat soubory integrity
background-downloading-failed = Nepodařila se stáhnout tapeta
components-index-sync-failed = Nepodařilo se synchronizovat seznam komponent
components-index-verify-failed = Nepodařilo se ověřit seznam komponent
config-update-error = Nepodařilo se uložit konfiguraci
wine-prefix-update-failed = Nepodařilo se aktualizovat Wine prefix
dxvk-install-failed = Nepodařilo se nainstalovat DXVK
voice-package-deletion-error = Nepodařilo se odstranit Dabing
game-diff-finding-error = Nepodařilo se najít herní diff
patch-info-fetching-error = Informace o opravě se nepodařilo načíst
launcher-state-updating-error = Aktualizace stavu spouštěče se nezdařila
package-not-available = Balíček není dostupný: {$package}
wine-download-error = Nepodařilo se stáhnout Wine
wine-unpack-errror = Nepodařilo se rozbalit Wine
wine-install-failed = Nepodařilo se nainstalovat Wine
dxvk-download-error = Nepodařilo se stáhnout DXVK
dxvk-unpack-error = Nepodařilo se rozbalit DXVK
dxvk-apply-error = Nepodařilo se nainstalovat DXVK
downloaded-wine-list-failed = Nepodařilo se zobrazit seznam Wine verzí
patch-sync-failed = Synchronizace složky patchů se nezdařila
patch-state-check-failed = Nepodařilo se zkontrolovat stav složky patchů
game-patching-error = Nepodařilo se patchnout hru
# Disable telemetry
telemetry-servers-disabling-error = Nepodařilo se vypnout servery s telemetrií
# Sandbox
documentation-url-open-failed = Nepodařilo se otevřít adresu URL dokumentace
# Game
game-session-add-failed = Přidání herní relace se nezdařilo
game-session-update-failed = Aktualizace herní relace se nezdařila
game-session-remove-failed = Odebrání herní relace se nezdařilo
game-session-set-current-failed = Nastavení aktuální herní relace se nezdařilo
game-session-apply-failed = Nepodařilo se použít herní relaci
# Enhancements
discord-rpc-icons-fetch-failed = Ikony Discord RPC se nepodařilo načíst
discord-rpc-icon-download-failed = Ikonu Discord RPC se nepodařilo stáhnout

View file

@ -0,0 +1,65 @@
welcome = Vítejte
welcome-page-message =
Ahoj! Vítej v An Anime Game Launcheru
Než budete moci hru spustit, musíme připravit nějaké věci a stáhnout výchozí komponenty
tos-violation-warning = Upozornění na porušení smluvních podmínek
tos-violation-warning-message =
Tento spouštěč je neoficiální nástroj, který nijak nesouvisí se společností {company-name} ani {company-alter-name}.
Tento nástroj je navržen tak, aby usnadnil hraní {game-name} na Linuxu, a byl vytvořen s jediným účelem nainstalovat a spustit hru s menšími problémy.
Činí tak pomocí stávajících komponent a zjednodušuje práci uživatele.
Některé zde použité komponenty však pravděpodobně porušují smluvní podmínky {company-name} pro {game-name}.
Pokud používáte tento spouštěč, váš hráčský účet může být označen jako nesplňující TOS podle {company-name}/{company-alter-name}.
Pokud k tomu dojde a váš účet by porušil TOS, {company-name}/{company-alter-name} si může dělat, co chce. Včetně zákazu.
Pokud chápete riziko pokusu hrát hru neoficiálně, pokračujte stisknutím OK
tos-dialog-title = Jste si jisti, že rozumíte tomu, co chceme říci?
tos-dialog-message =
1. Nezveřejňujte žádné informace o tomto projektu
2. Nezneužívejte projekt používáním nějakých modifikovaných klientů a podobně
3. Na otázky se ptejte na našem discord nebo matrix serveru
dependencies = Závislosti
missing-dependencies-title = Chybí vám závislosti!
missing-dependencies-message = Před pokračováním v procesu instalace musíte do systému nainstalovat některé balíčky
default-paths = Výchozí cesty
choose-default-paths = Vybrat výchozí cesty
show-all-folders = Vím, co dělám
show-all-folders-subtitle = Zobrazit další nastavení výběru cesty. Udělej jak říkám...
runners-folder = Složka spouštěčů
dxvks-folder = Složka DXVK
wine-prefix-folder = Složka Wine prefixů
global-game-installation-folder = Instalační složka globální verze hry
chinese-game-installation-folder = Instalační složka čínské verze hry
fps-unlocker-folder = Složka odemykače FPS
components-index = Seznam komponent
patch-folder = Složka patchů
temp-folder = Složka dočasných souborů
migrate = Migrovat
select-voice-packages = Vyberte dabingy
download-components = Stáhnout komponenty
download-dxvk = Stáhnout DXVK
apply-dxvk = Aplikovat DXVK
finish = Dokončit
finish-title = Všechno je hotovo!
finish-message = Všechny základní komponenty byly staženy. Nyní můžete restartovat launcher a stáhnout hru. Vítejte v klubu!

View file

@ -0,0 +1,7 @@
game-sessions = Herní relace
active-sessions = Aktivní relace
active-session-description = Aktuálně vybraná herní relace. Aktualizace po každém spuštění hry
update-session = Aktualizujte relaci pomocí aktuálních hodnot registru ve Wine prefixu
delete-session = Smazat relaci

View file

@ -0,0 +1,16 @@
game-resolution = Rozlišení hry
gamescope-resolution = Rozlišení Gamescope
upscaling = Škálování
integer-scaling = Integerové škálování
integer-scaling-description = Změní každý pixel na čtvercovou nebo obdélníkovou skupinu celočíselného počtu pixelů stejné barvy. Zabraňuje ztrátě ostrosti při škálování Full HD na 4K
gamescope-fsr-description = Technika upscalingu s otevřeným zdrojovým kódem vyvinutá společností AMD pro lepší kvalitu škálování
nis-description = Technika škálování s otevřeným zdrojovým kódem vyvinutá společností Nvidia jako nezávislá, nenáročná alternativa k jejich proprietárnímu řešení DLSS, což znamená, že funguje na grafických procesorech AMD a Intel a také na GPU Nvidia.
other-settings = Další nastavení
framerate-limit = FPS limit
unfocused-framerate-limit = FPS limit při nečinosti
force-grab-cursor = Vynutit uchopení kurzoru
force-grab-cursor-description = Vždy používejte relativní režim myši namísto překlápění v závislosti na viditelnosti kurzoru. Kurzor myši bude ve hře správně vycentrován

View file

@ -0,0 +1,70 @@
appearance = Vzhled
modern = Moderní
classic = Klasický
update-background = Aktualizovat tapetu
update-background-description = Stáhněte si oficiální tapetu pro launcher. Můžete jej zakázat, abyste místo toho použili svůj vlastní obrázek jako tapetu
launcher-language = Jazyk launcheru
launcher-language-description = Platí po restartu
game-edition = Verze hry
global = Světová (Global)
china = Čínská (China)
game-environment = Herní prostředí
game-environment-description = Získejte specifické funkce, jako jsou další platební metody
game-voiceovers = Herní dabingy
game-voiceovers-description = Seznam stažených dabingů, můžete je přepínat ve hře
english = Anglický
japanese = Japonský
korean = Korejský
chinese = Čínský
migrate-installation = Přesunout instalaci
migrate-installation-description = Otevřete speciální okno, kde můžete změnit instalační složku hry
repair-game = Opravit hru
status = Stav
game-version = Verze hry
game-not-installed = není nainstalována
game-predownload-available = Je k dispozici předběžné stažení aktualizace hry: {$old} -> {$new}
game-update-available = Aktualizace hry k dispozici: {$old} -> {$new}
game-outdated = Hra je příliš zastaralá a nelze ji aktualizovat. Nejnovější verze: {$latest}
player-patch-version = Verze patche
player-patch-version-description = Hlavní patch, který vám umožní hrát hru na Linuxu
patch-not-available = Patch není dostupný
patch-not-available-tooltip = Servery s Patchem nejsou dostupné
patch-outdated = Zastaralý ({$current})
patch-outdated-tooltip = Patch je zastaralý: {$current} -> {$latest}
patch-preparation = Příprava
patch-preparation-tooltip = Patch je ve vývoji
patch-testing-tooltip = Předběžné vydání patche je dostupné
patch-not-applied-tooltip = Patch není aplikovaný
apply-main-patch = Aplikovat hlavní patch
apply-main-patch-description = Experimentální. Vypnutím této možnosti vám umožní spustit hru bez použití patche. To nemusí fungovat nebo vyžaduje ruční úpravy souborů. Použijte, pokud víte, co děláte
disable-mhypbase = Vypnout mhypbase
disable-mhypbase-description = Experimentální. Pokud je povoleno, launcher deaktivuje mhypbase.dll během aplikace hlavního patche, což je v současnosti ekvivalent xlua patch. Zlepšuje výkon a snižuje využití procesoru
ask-superuser-permissions = Požádat o oprávnění superuživatele
ask-superuser-permissions-description = Launcher je použije k automatické aktualizaci vašeho souboru hostitelů. V edici flatpak to není potřeba
launcher-behavior = Chování launcheru
launcher-behavior-description = Jak se má launcher chovat když je hra spuštěna
wine-tools = Nástroje Wine
command-line = Příkazová řádka
registry-editor = Editor registru
explorer = Prohlížeč souborů
task-manager = Správce úloh
configuration = Nastavení
debugger = Debugger

View file

@ -0,0 +1,76 @@
custom = Vlastní
none = Žádný
default = Výchozí
details = Detaily
options = Možnosti
width = Šířka
height = Výška
# Menu items
launcher-folder = Složka launcheru
game-folder = Složka hry
config-file = Konfigurační soubor
debug-file = Debugovací soubor
wish-url = Otevřít přání
about = info
close = Zavřít
hide = Schovat
nothing = Nic
save = Uložit
continue = Pokračovat
resume = Obnovit
exit = Opustit
check = Zkontrolovat
restart = Restartovat
agree = Souhlasit
loading-data = Načítám data
downloading-background-picture = Stahuji tapetu
updating-components-index = Aktualizuji seznam komponent
loading-game-version = Načítám verzi hry
loading-patch-status = Načítám stav patche
loading-launcher-state = Načítám stav launcheru
loading-launcher-state--game = Načítám stav launcheru: ověřuji verzi hry
loading-launcher-state--voice = Načítám stav launcheru: ověřuji dabing - {$locale}
loading-launcher-state--patch = Načítám stav launcheru: ověřuji nainstalovaný patch
checking-free-space = Kontroluji volné místo
downloading = Stahuji
updating-permissions = Aktualizuji oprávnění
unpacking = Rozbaluji
verifying-files = Kontroluji soubory
repairing-files = Opravuji soubory
migrating-folders = Přemisťuji složky
applying-hdiff = Aplikuji hdiff patche
removing-outdated = Odstraňuji staré soubory
components-index-updated = Seznam komponent byl aktualizován
launch = Hrát
migrate-folders = Přemístit složky
migrate-folders-tooltip = Aktualizovat strukturu složek hry
apply-patch = Aplikovat patch
disable-telemetry = Vypnout telemetrii
download-wine = Stáhnout Wine
create-prefix = Vytvořit Wine prefix
update = Aktualizovat
download = Stáhnout
predownload-update = Předbězně stáhnout aktualizaci {$version} ({$size})
kill-game-process = Zabít procesy hry
main-window--patch-unavailable-tooltip = Opravné servery jsou nedostupné a launcher nemůže ověřit stav oprav hry. Hru smíte spustit pouze na vlastní nebezpečí
main-window--patch-outdated-tooltip = Patch je zastaralý nebo ve stavu přípravy, takže není k dispozici pro použití. Vraťte se později, abyste viděli jeho stav
main-window--version-outdated-tooltip = Verze je příliš zastaralá a nelze ji aktualizovat
preferences = Nastavení
general = Obecné
enhancements = Vylepšení

View file

@ -0,0 +1,28 @@
sandbox = Sandbox
sandbox-description = Provozovat hru v izolovaném prostředí, zabrání jí v přístupu k vašim osobním údajům
enable-sandboxing = Povolit sandbox
enable-sandboxing-description = Provozovat hru v kopii vašeho souborového systému
hide-home-directory = Skrýt domovskou složku
hide-home-directory-description = Izolovat vaše složky /home, /var/home/$USER, a $HOME
hostname = Hostname
additional-arguments = Další argumenty
private-directories = Soukromé složky
private-directories-description = Tyto složky budou nahrazeny prázdným virtuálním souborovým systémem (tmpfs) a jejich původní obsah nebude dostupný pro hru v sandboxu
path = Cesta
shared-directories = Sdílené složky
shared-directories-description = Tyto adresáře budou symlink s adresáři ve vašem hostitelském systému
original-path = Původní cesta
new-path = Nová cesta
read-only = Pouze pro čtení
read-only-description = Neumožnit hře zapisovat do těchto složek
symlinks = Symlinky
symlinks-description = Vytvoří symlink pro propojení původní cesty s novou v sandboxu

View file

@ -28,7 +28,8 @@ pub const SUPPORTED_LANGUAGES: &[LanguageIdentifier] = &[
langid!("vi-vn"), langid!("vi-vn"),
langid!("nl-nl"), langid!("nl-nl"),
langid!("uk-ua"), langid!("uk-ua"),
langid!("th-th") langid!("th-th"),
langid!("cs-cz")
]; ];
pub static mut LANG: LanguageIdentifier = langid!("en-us"); pub static mut LANG: LanguageIdentifier = langid!("en-us");
@ -106,7 +107,7 @@ macro_rules! tr {
use fluent_templates::Loader; use fluent_templates::Loader;
#[allow(unused_unsafe)] #[allow(unused_unsafe)]
$crate::i18n::LOCALES.lookup(unsafe { &$crate::i18n::LANG }, $id) $crate::i18n::LOCALES.lookup(unsafe { $crate::i18n::LANG.as_ref() }, $id)
} }
}; };
@ -124,7 +125,7 @@ macro_rules! tr {
)* )*
#[allow(unused_unsafe)] #[allow(unused_unsafe)]
$crate::i18n::LOCALES.lookup_complete(unsafe { &$crate::i18n::LANG }, $id, Some(&args)) $crate::i18n::LOCALES.lookup_complete(unsafe { $crate::i18n::LANG.as_ref() }, $id, Some(&args))
} }
}; };
} }

View file

@ -52,7 +52,7 @@ impl SimpleComponent for AboutDialog {
]), ]),
add_credit_section: (Some("An Anime Team"), &[ add_credit_section: (Some("An Anime Team"), &[
"Nikita Podvirnyy https://github.com/krypt0nn", "Nikita Podvirnyi https://github.com/krypt0nn",
"Marie Piontek https://github.com/Mar0xy", "Marie Piontek https://github.com/Mar0xy",
"Luna Neff https://github.com/lunaneff", "Luna Neff https://github.com/lunaneff",
"Renaud Lepage https://github.com/cybik", "Renaud Lepage https://github.com/cybik",
@ -65,7 +65,7 @@ impl SimpleComponent for AboutDialog {
], ],
set_translator_credits: &[ set_translator_credits: &[
"Русский, English — Nikita Podvirnyy https://github.com/krypt0nn", "Русский, English — Nikita Podvirnyi https://github.com/krypt0nn",
"Deutsch — Marie Piontek https://github.com/Mar0xy", "Deutsch — Marie Piontek https://github.com/Mar0xy",
"Deutsch — @caem", "Deutsch — @caem",
"Français — @zeGolem https://github.com/zeGolem", "Français — @zeGolem https://github.com/zeGolem",
@ -84,7 +84,8 @@ impl SimpleComponent for AboutDialog {
"Indonesia — @yumekarisu https://github.com/yumekarisu", "Indonesia — @yumekarisu https://github.com/yumekarisu",
"Tiếng Việt — Nguyễn Hữu Chánh https://github.com/Chanhnh", "Tiếng Việt — Nguyễn Hữu Chánh https://github.com/Chanhnh",
"Українська — Іван Потієнко https://github.com/xxanqw", "Українська — Іван Потієнко https://github.com/xxanqw",
"ไทย — @thegooglerider https://github.com/TheGoogleRider2" "ไทย — @vbrabandt2005 https://github.com/vbrabandt2005",
"Čeština — @panmourovaty https://github.com/panmourovaty"
].join("\n"), ].join("\n"),
set_debug_info: &[ set_debug_info: &[
@ -99,11 +100,10 @@ impl SimpleComponent for AboutDialog {
set_release_notes_version: &APP_VERSION, set_release_notes_version: &APP_VERSION,
set_release_notes: &[ set_release_notes: &[
"<p>Changed</p>", "<p>Added</p>",
"<ul>", "<ul>",
"<li>Updated voiceovers sizes</li>", "<li>Added Czech</li>",
"<li>Updated game version parsing algorithm</li>",
"</ul>" "</ul>"
].join("\n"), ].join("\n"),

View file

@ -344,7 +344,8 @@ impl SimpleAsyncComponent for DefaultPathsApp {
self.game_china = result.join("HSR China"); // TODO change this self.game_china = result.join("HSR China"); // TODO change this
self.components = result.join("components"); self.components = result.join("components");
self.patch = result.join("patch"); self.patch = result.join("patch");
self.temp = result.clone();
self.temp.clone_from(&result);
self.launcher = result; self.launcher = result;
} }
@ -434,14 +435,15 @@ impl DefaultPathsApp {
pub fn update_config(&self) -> anyhow::Result<()> { pub fn update_config(&self) -> anyhow::Result<()> {
let mut config = Config::get()?; let mut config = Config::get()?;
config.game.wine.builds = self.runners.clone(); config.game.wine.builds.clone_from(&self.runners);
config.game.dxvk.builds = self.dxvks.clone(); config.game.dxvk.builds.clone_from(&self.dxvks);
config.game.wine.prefix = self.prefix.clone(); config.game.wine.prefix.clone_from(&self.prefix);
config.game.path.global = self.game_global.clone(); config.game.path.global.clone_from(&self.game_global);
config.game.path.china = self.game_china.clone(); config.game.path.china.clone_from(&self.game_china);
config.components.path = self.components.clone(); config.components.path.clone_from(&self.components);
config.patch.path = self.patch.clone(); config.patch.path.clone_from(&self.patch);
config.launcher.temp = Some(self.temp.clone());
config.launcher.temp = Some(self.temp.clone());
Config::update_raw(config) Config::update_raw(config)
} }

View file

@ -816,7 +816,7 @@ impl SimpleComponent for App {
let web_cache = String::from_utf8_lossy(&web_cache); let web_cache = String::from_utf8_lossy(&web_cache);
// https://webstatic-sea.[ho-yo-ver-se].com/hkrpg/event/e20211215gacha-v3/index.html?...... // https://webstatic-sea.[ho-yo-ver-se].com/hkrpg/event/e20211215gacha-v3/index.html?......
if let Some(url) = web_cache.lines().rev().find(|line| line.contains("gacha-v3/index.html")) { if let Some(url) = web_cache.lines().rev().find(|line| line.contains("gacha-v2/index.html") || line.contains("gacha-v3/index.html")) {
let url_begin_pos = url.find("https://").unwrap(); let url_begin_pos = url.find("https://").unwrap();
let url_end_pos = url_begin_pos + url[url_begin_pos..].find("\0\0\0\0").unwrap(); let url_end_pos = url_begin_pos + url[url_begin_pos..].find("\0\0\0\0").unwrap();

View file

@ -673,7 +673,7 @@ impl SimpleAsyncComponent for EnhancementsApp {
EnhancementsAppMsg::SetDiscordRpcIcon(index) => { EnhancementsAppMsg::SetDiscordRpcIcon(index) => {
if let Some(icon) = self.discord_rpc_icons.guard().get(index.current_index()) { if let Some(icon) = self.discord_rpc_icons.guard().get(index.current_index()) {
if let Ok(mut config) = Config::get() { if let Ok(mut config) = Config::get() {
config.launcher.discord_rpc.icon = icon.name.clone(); config.launcher.discord_rpc.icon.clone_from(&icon.name);
Config::update(config); Config::update(config);