mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2026-04-11 08:42:55 +00:00
Compare commits
9 Commits
Canary-1.3
...
experiment
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e9824c9053 | ||
|
|
d2037da65f | ||
|
|
8fe7d54f85 | ||
|
|
b8f9f3e16a | ||
|
|
7b1c8717ef | ||
|
|
6122fa204f | ||
|
|
217fd90568 | ||
|
|
95157c0cfd | ||
|
|
8a3ccaafe3 |
@@ -55,6 +55,7 @@
|
||||
<PackageVersion Include="SkiaSharp" Version="2.88.9" />
|
||||
<PackageVersion Include="SkiaSharp.NativeAssets.Linux" Version="2.88.9" />
|
||||
<PackageVersion Include="SPB" Version="0.0.4-build32" />
|
||||
<PackageVersion Include="Starscript.Net" Version="1.0.36" />
|
||||
<PackageVersion Include="System.IO.Hashing" Version="9.0.2" />
|
||||
<PackageVersion Include="System.Management" Version="9.0.2" />
|
||||
<PackageVersion Include="UnicornEngine.Unicorn" Version="2.0.2-rc1-fb78016" />
|
||||
|
||||
@@ -223,7 +223,7 @@
|
||||
"ar_SA": "المُضيف (سريع)",
|
||||
"de_DE": "Host (schnell)",
|
||||
"el_GR": "Υπολογιστής (γρήγορο)",
|
||||
"en_US": "Host (Fast)",
|
||||
"en_US": "Host (fast)",
|
||||
"es_ES": "Host (rápido)",
|
||||
"fr_FR": "Hôte (rapide)",
|
||||
"he_IL": "מארח (מהיר)",
|
||||
@@ -248,7 +248,7 @@
|
||||
"ar_SA": "المضيف (غير مفحوص) (أسرع، غير آمن)",
|
||||
"de_DE": "Host ungeprüft (am schnellsten, unsicher)",
|
||||
"el_GR": "Χωρίς Ελέγχους (γρηγορότερο, μη ασφαλές)",
|
||||
"en_US": "Host Unchecked (Fastest, Unsafe)",
|
||||
"en_US": "Host Unchecked (fastest, unsafe)",
|
||||
"es_ES": "Host sin verificación (más rápido, inseguro)",
|
||||
"fr_FR": "Hôte non vérifié (plus rapide, non sécurisé)",
|
||||
"he_IL": "מארח לא מבוקר (המהיר ביותר, לא בטוח)",
|
||||
@@ -323,7 +323,7 @@
|
||||
"ar_SA": "_تحميل تطبيق من ملف",
|
||||
"de_DE": "Datei _öffnen",
|
||||
"el_GR": "_Φόρτωση Αρχείου Εφαρμογής",
|
||||
"en_US": "_Load Application from File",
|
||||
"en_US": "_Load Application From File",
|
||||
"es_ES": "_Cargar aplicación desde un archivo",
|
||||
"fr_FR": "_Charger une application à partir d’un fichier",
|
||||
"he_IL": "_טען יישום מקובץ",
|
||||
@@ -534,7 +534,7 @@
|
||||
"pl_PL": "_Wyjdź",
|
||||
"pt_BR": "_Sair",
|
||||
"ru_RU": "_Выход",
|
||||
"sv_SE": "_Avsluta",
|
||||
"sv_SE": "A_vsluta",
|
||||
"th_TH": "_ออก",
|
||||
"tr_TR": "_Çıkış",
|
||||
"uk_UA": "_Вихід",
|
||||
@@ -559,7 +559,7 @@
|
||||
"pl_PL": "_Opcje",
|
||||
"pt_BR": "_Opções",
|
||||
"ru_RU": "_Настройки",
|
||||
"sv_SE": "_Inställningar",
|
||||
"sv_SE": "I_nställningar",
|
||||
"th_TH": "_ตัวเลือก",
|
||||
"tr_TR": "_Seçenekler",
|
||||
"uk_UA": "_Параметри",
|
||||
@@ -582,7 +582,7 @@
|
||||
"ko_KR": "전체 화면 전환",
|
||||
"no_NO": "Fullskjermsvisning av/på",
|
||||
"pl_PL": "Przełącz na tryb pełnoekranowy",
|
||||
"pt_BR": "Mudar para Tela Cheia",
|
||||
"pt_BR": "_Mudar para Tela Cheia",
|
||||
"ru_RU": "Включить полноэкранный режим",
|
||||
"sv_SE": "Växla helskärm",
|
||||
"th_TH": "สลับเป็นโหมดเต็มหน้าจอ",
|
||||
@@ -657,7 +657,7 @@
|
||||
"ko_KR": "에뮬레이션 중지",
|
||||
"no_NO": "Stopp Emulering",
|
||||
"pl_PL": "Zatrzymaj emulację",
|
||||
"pt_BR": "Parar a Emulação",
|
||||
"pt_BR": "_Parar a Emulação",
|
||||
"ru_RU": "Остановить эмуляцию",
|
||||
"sv_SE": "Stoppa emulering",
|
||||
"th_TH": "หยุดการจำลอง",
|
||||
@@ -734,7 +734,7 @@
|
||||
"pl_PL": "_Akcje",
|
||||
"pt_BR": "_Ações",
|
||||
"ru_RU": "_Действия",
|
||||
"sv_SE": "_Åtgärder",
|
||||
"sv_SE": "Åt_gärder",
|
||||
"th_TH": "การดำเนินการ",
|
||||
"tr_TR": "_Eylemler",
|
||||
"uk_UA": "_Дії",
|
||||
@@ -748,7 +748,7 @@
|
||||
"ar_SA": "محاكاة رسالة الاستيقاظ",
|
||||
"de_DE": "Aufwachnachricht simulieren",
|
||||
"el_GR": "Προσομοίωση Μηνύματος Αφύπνισης",
|
||||
"en_US": "Simulate Wake-Up Message",
|
||||
"en_US": "Simulate Wake-up message",
|
||||
"es_ES": "Simular mensaje de reactivación",
|
||||
"fr_FR": "Simuler un message de réveil",
|
||||
"he_IL": "דמה הודעת השכמה",
|
||||
@@ -757,7 +757,7 @@
|
||||
"ko_KR": "웨이크업 메시지 시뮬레이션",
|
||||
"no_NO": "Simuler oppvåknings-melding",
|
||||
"pl_PL": "Symuluj wiadomość wybudzania",
|
||||
"pt_BR": "Simular Mensagem de Acordar o Console",
|
||||
"pt_BR": "_Simular Mensagem de Acordar o Console",
|
||||
"ru_RU": "Имитировать сообщение пробуждения",
|
||||
"sv_SE": "Simulera uppvakningsmeddelande",
|
||||
"th_TH": "จำลองข้อความปลุก",
|
||||
@@ -798,7 +798,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "Amiibo scannen (aus Bin-Datei)",
|
||||
"el_GR": "",
|
||||
"en_US": "Scan An Amiibo (from .bin)",
|
||||
"en_US": "Scan An Amiibo (From Bin)",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Scanner un Amiibo (à partir d'un .bin)",
|
||||
"he_IL": "",
|
||||
@@ -832,7 +832,7 @@
|
||||
"ko_KR": "펌웨어 설치",
|
||||
"no_NO": "Installer fastvare",
|
||||
"pl_PL": "Zainstaluj oprogramowanie",
|
||||
"pt_BR": "Instalar Firmware",
|
||||
"pt_BR": "_Instalar Firmware",
|
||||
"ru_RU": "Установка прошивки",
|
||||
"sv_SE": "Installera firmware",
|
||||
"th_TH": "ติดตั้งเฟิร์มแวร์",
|
||||
@@ -848,7 +848,7 @@
|
||||
"ar_SA": "تثبيت برنامج ثابت من XCI أو ZIP",
|
||||
"de_DE": "Firmware von einer XCI- oder einer ZIP-Datei installieren",
|
||||
"el_GR": "Εγκατάσταση Firmware από XCI ή ZIP",
|
||||
"en_US": "Install Firmware from XCI or ZIP",
|
||||
"en_US": "Install a firmware from XCI or ZIP",
|
||||
"es_ES": "Instalar firmware desde un archivo XCI o ZIP",
|
||||
"fr_FR": "Installer un firmware depuis un fichier XCI ou ZIP",
|
||||
"he_IL": "התקן קושחה מקובץ- ZIP/XCI",
|
||||
@@ -873,7 +873,7 @@
|
||||
"ar_SA": "تثبيت برنامج ثابت من مجلد",
|
||||
"de_DE": "Firmware aus einem Verzeichnis installieren",
|
||||
"el_GR": "Εγκατάσταση Firmware από τοποθεσία",
|
||||
"en_US": "Install Firmware from a Directory",
|
||||
"en_US": "Install a firmware from a directory",
|
||||
"es_ES": "Instalar firmware desde una carpeta",
|
||||
"fr_FR": "Installer un firmware à partir d’un dossier",
|
||||
"he_IL": "התקן קושחה מתוך תקייה",
|
||||
@@ -923,7 +923,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "Schlüssel aus KEYS oder ZIP installieren",
|
||||
"el_GR": "",
|
||||
"en_US": "Install Keys from KEYS or ZIP",
|
||||
"en_US": "Install keys from KEYS or ZIP",
|
||||
"es_ES": "Instalar keys de KEYS o ZIP",
|
||||
"fr_FR": "Installer des clés à partir de .KEYS ou .ZIP",
|
||||
"he_IL": "",
|
||||
@@ -948,7 +948,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "Schlüssel aus einem Verzeichnis installieren",
|
||||
"el_GR": "",
|
||||
"en_US": "Install Keys from a Directory",
|
||||
"en_US": "Install keys from a directory",
|
||||
"es_ES": "Instalar keys de un directorio",
|
||||
"fr_FR": "Installer des clés à partir d'un dossier",
|
||||
"he_IL": "",
|
||||
@@ -973,7 +973,7 @@
|
||||
"ar_SA": "إدارة أنواع الملفات",
|
||||
"de_DE": "Dateitypen verwalten",
|
||||
"el_GR": "Διαχείριση τύπων αρχείων",
|
||||
"en_US": "Manage File Types",
|
||||
"en_US": "Manage file types",
|
||||
"es_ES": "Administrar tipos de archivo",
|
||||
"fr_FR": "Gérer les types de fichiers",
|
||||
"he_IL": "ניהול סוגי קבצים",
|
||||
@@ -998,7 +998,7 @@
|
||||
"ar_SA": "تثبيت أنواع الملفات",
|
||||
"de_DE": "Dateitypen installieren",
|
||||
"el_GR": "Εγκαταστήσετε τύπους αρχείων.",
|
||||
"en_US": "Install File Types",
|
||||
"en_US": "Install file types",
|
||||
"es_ES": "Instalar tipos de archivo",
|
||||
"fr_FR": "Installer des types de fichiers",
|
||||
"he_IL": "סוגי קבצי התקנה",
|
||||
@@ -1023,7 +1023,7 @@
|
||||
"ar_SA": "إزالة أنواع الملفات",
|
||||
"de_DE": "Dateitypen deinstallieren",
|
||||
"el_GR": "Απεγκαταστήσετε τύπους αρχείων",
|
||||
"en_US": "Uninstall File Types",
|
||||
"en_US": "Uninstall file types",
|
||||
"es_ES": "Desinstalar tipos de archivo",
|
||||
"fr_FR": "Désinstaller des types de fichiers",
|
||||
"he_IL": "סוגי קבצי הסרה",
|
||||
@@ -1082,7 +1082,7 @@
|
||||
"ko_KR": "보기(_V)",
|
||||
"no_NO": "_Vis",
|
||||
"pl_PL": "",
|
||||
"pt_BR": "_Ver",
|
||||
"pt_BR": "Ver",
|
||||
"ru_RU": "_Вид",
|
||||
"sv_SE": "_Visa",
|
||||
"th_TH": "_มุมมอง",
|
||||
@@ -1257,7 +1257,7 @@
|
||||
"ko_KR": "업데이트 확인",
|
||||
"no_NO": "Se etter oppdateringer",
|
||||
"pl_PL": "Sprawdź aktualizacje",
|
||||
"pt_BR": "Verificar Atualizações",
|
||||
"pt_BR": "_Verificar Atualizações",
|
||||
"ru_RU": "Проверить наличие обновлений",
|
||||
"sv_SE": "Leta efter uppdateringar",
|
||||
"th_TH": "ตรวจสอบอัปเดต",
|
||||
@@ -1457,7 +1457,7 @@
|
||||
"ko_KR": "정보",
|
||||
"no_NO": "Om",
|
||||
"pl_PL": "O programie",
|
||||
"pt_BR": "Sobre",
|
||||
"pt_BR": "_Sobre",
|
||||
"ru_RU": "О программе",
|
||||
"sv_SE": "Om",
|
||||
"th_TH": "เกี่ยวกับ",
|
||||
@@ -1798,7 +1798,7 @@
|
||||
"ar_SA": "صيغة الملف",
|
||||
"de_DE": "Dateiformat",
|
||||
"el_GR": "Κατάληξη",
|
||||
"en_US": "File Ext.",
|
||||
"en_US": "File Ext",
|
||||
"es_ES": "Extensión",
|
||||
"fr_FR": "Extension du fichier",
|
||||
"he_IL": "סיומת קובץ",
|
||||
@@ -2142,6 +2142,31 @@
|
||||
"zh_TW": "開啟使用者存檔資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenUserSaveDirectoryToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح المجلد الذي يحتوي على حفظ المستخدم للتطبيق",
|
||||
"de_DE": "Öffnet das Verzeichnis, welches den Benutzer-Spielstand beinhaltet",
|
||||
"el_GR": "Ανοίγει την τοποθεσία που περιέχει την Αποθήκευση Χρήστη της εφαρμογής",
|
||||
"en_US": "Opens the directory which contains Application's User Save",
|
||||
"es_ES": "Abre la carpeta que contiene la partida guardada del usuario para esta aplicación",
|
||||
"fr_FR": "Ouvre le dossier contenant la sauvegarde utilisateur de l’application",
|
||||
"he_IL": "פותח את תקיית השמור של המשתמש ביישום הנוכחי",
|
||||
"it_IT": "Apre la cartella che contiene i dati di salvataggio dell'utente",
|
||||
"ja_JP": "アプリケーションのユーザセーブデータを格納するディレクトリを開きます",
|
||||
"ko_KR": "앱의 사용자 저장이 포함된 디렉터리 열기",
|
||||
"no_NO": "Åpner mappen som inneholder programmets bruker lagring",
|
||||
"pl_PL": "Otwiera katalog, który zawiera zapis użytkownika dla tej aplikacji",
|
||||
"pt_BR": "Abre o diretório que contém jogos salvos para o usuário atual",
|
||||
"ru_RU": "Открывает папку с пользовательскими сохранениями",
|
||||
"sv_SE": "Öppnar katalogen som innehåller applikationens användarsparade spel",
|
||||
"th_TH": "เปิดไดเร็กทอรี่ซึ่งมีการบันทึกข้อมูลของผู้ใช้แอปพลิเคชัน",
|
||||
"tr_TR": "Uygulamanın Kullanıcı Kaydı'nın bulunduğu dizini açar",
|
||||
"uk_UA": "Відкриває теку, яка містить збереження користувача",
|
||||
"zh_CN": "打开储存游戏用户存档的目录",
|
||||
"zh_TW": "開啟此應用程式的使用者存檔資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenDeviceSaveDirectory",
|
||||
"Translations": {
|
||||
@@ -2167,6 +2192,31 @@
|
||||
"zh_TW": "開啟裝置存檔資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenDeviceSaveDirectoryToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح المجلد الذي يحتوي على حفظ الجهاز للتطبيق",
|
||||
"de_DE": "Öffnet das Verzeichnis, welches den Geräte-Spielstände beinhaltet",
|
||||
"el_GR": "Ανοίγει την τοποθεσία που περιέχει την Αποθήκευση Συσκευής της εφαρμογής",
|
||||
"en_US": "Opens the directory which contains Application's Device Save",
|
||||
"es_ES": "Abre la carpeta que contiene la partida guardada del sistema para esta aplicación",
|
||||
"fr_FR": "Ouvre le dossier contenant la sauvegarde locale de l’application",
|
||||
"he_IL": "פותח את הספרייה המכילה את שמור המכשיר של היישום",
|
||||
"it_IT": "Apre la cartella che contiene i dati di salvataggio del dispositivo",
|
||||
"ja_JP": "アプリケーションのデバイスセーブデータを格納するディレクトリを開きます",
|
||||
"ko_KR": "앱의 장치 저장이 포함된 디렉터리 열기",
|
||||
"no_NO": "Åpner mappen som inneholder programmets lagringsenhet",
|
||||
"pl_PL": "Otwiera katalog, który zawiera zapis urządzenia dla tej aplikacji",
|
||||
"pt_BR": "Abre o diretório que contém saves do dispositivo para o usuário atual",
|
||||
"ru_RU": "Открывает папку, содержащую сохраненные устройства",
|
||||
"sv_SE": "Öppnar katalogen som innehåller applikationens sparade spel på enheten",
|
||||
"th_TH": "เปิดไดเรกทอรี่ซึ่งมีบันทึกข้อมูลของอุปกรณ์ในแอปพลิเคชัน",
|
||||
"tr_TR": "Uygulamanın Kullanıcı Cihaz Kaydı'nın bulunduğu dizini açar",
|
||||
"uk_UA": "Відкриває теку, яка містить збережені пристрої",
|
||||
"zh_CN": "打开储存游戏系统数据的目录",
|
||||
"zh_TW": "開啟此應用程式的裝置存檔資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenBcatSaveDirectory",
|
||||
"Translations": {
|
||||
@@ -2192,6 +2242,31 @@
|
||||
"zh_TW": "開啟 BCAT 存檔資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenBcatSaveDirectoryToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح المجلد الذي يحتوي على حفظ الـBCAT للتطبيق",
|
||||
"de_DE": "Öffnet das Verzeichnis, welches den BCAT-Cache des Spiels beinhaltet",
|
||||
"el_GR": "Ανοίγει την τοποθεσία που περιέχει την Αποθήκευση BCAT της εφαρμογής",
|
||||
"en_US": "Opens the directory which contains Application's BCAT Save",
|
||||
"es_ES": "Abrir la carpeta que contiene el guardado BCAT de esta aplicación",
|
||||
"fr_FR": "Ouvre le dossier contenant la sauvegarde BCAT de l’application",
|
||||
"he_IL": "פותח את תקיית שמור ה-BCAT של היישום",
|
||||
"it_IT": "Apre la cartella che contiene il salvataggio BCAT dell'applicazione",
|
||||
"ja_JP": "アプリケーションの BCAT セーブデータを格納するディレクトリを開きます",
|
||||
"ko_KR": "앱의 BCAT 저장이 포함된 디렉터리 열기",
|
||||
"no_NO": "Åpner mappen som inneholder programmets BCAT-lagring",
|
||||
"pl_PL": "Otwiera katalog, który zawiera zapis BCAT dla tej aplikacji",
|
||||
"pt_BR": "Abre o diretório que contém saves BCAT para o usuário atual",
|
||||
"ru_RU": "Открывает папку, содержащую сохраненные BCAT",
|
||||
"sv_SE": "Öppnar katalogen som innehåller applikationens BCAT-sparningar",
|
||||
"th_TH": "เปิดไดเรกทอรี่ซึ่งมีการบันทึกข้อมูลของ BCAT ในแอปพลิเคชัน",
|
||||
"tr_TR": "Uygulamanın Kullanıcı BCAT Kaydı'nın bulunduğu dizini açar",
|
||||
"uk_UA": "Відкриває теку, яка містить BCAT-збереження програми",
|
||||
"zh_CN": "打开储存游戏 BCAT 数据的目录",
|
||||
"zh_TW": "開啟此應用程式的 BCAT 存檔資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuManageTitleUpdates",
|
||||
"Translations": {
|
||||
@@ -2217,6 +2292,31 @@
|
||||
"zh_TW": "管理遊戲更新"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuManageTitleUpdatesToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح نافذة إدارة تحديث اللُعبة",
|
||||
"de_DE": "Öffnet den Spiel-Update-Manager",
|
||||
"el_GR": "Ανοίγει το παράθυρο διαχείρισης Ενημερώσεων Παιχνιδιού",
|
||||
"en_US": "Opens the Title Update management window",
|
||||
"es_ES": "Abrir la ventana de gestión de actualizaciones de esta aplicación",
|
||||
"fr_FR": "Ouvre la fenêtre de gestion des mises à jour du titre",
|
||||
"he_IL": "פותח את חלון מנהל עדכוני המשחקים",
|
||||
"it_IT": "Apre la finestra di gestione aggiornamenti del gioco",
|
||||
"ja_JP": "タイトルのアップデート管理ウインドウを開きます",
|
||||
"ko_KR": "타이틀 업데이트 관리 창 열기",
|
||||
"no_NO": "Åpner vinduet Tittel - Oppdateringskontroll",
|
||||
"pl_PL": "Otwiera okno zarządzania aktualizacjami danej aplikacji",
|
||||
"pt_BR": "Abre a janela de gerenciamento de atualizações",
|
||||
"ru_RU": "Открывает окно управления обновлениями приложения",
|
||||
"sv_SE": "Öppnar spelets hanteringsfönster för uppdateringar",
|
||||
"th_TH": "เปิดหน้าต่างการจัดการเวอร์ชั่นการอัพเดต",
|
||||
"tr_TR": "Oyun Güncelleme Yönetim Penceresini Açar",
|
||||
"uk_UA": "Відкриває меню керування оновленнями до гри (застосунку)",
|
||||
"zh_CN": "打开游戏更新管理窗口",
|
||||
"zh_TW": "開啟遊戲更新管理視窗"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuManageDlc",
|
||||
"Translations": {
|
||||
@@ -2242,6 +2342,31 @@
|
||||
"zh_TW": "管理 DLC"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuManageDlcToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح نافذة إدارة المحتوي الإضافي",
|
||||
"de_DE": "Öffnet den DLC-Manager",
|
||||
"el_GR": "Ανοίγει το παράθυρο διαχείρισης DLC",
|
||||
"en_US": "Opens the DLC management window",
|
||||
"es_ES": "Abrir la ventana de gestión del DLC",
|
||||
"fr_FR": "Ouvre la fenêtre de gestion des DLC",
|
||||
"he_IL": "פותח את חלון מנהל הרחבות המשחקים",
|
||||
"it_IT": "Apre la finestra di gestione dei DLC",
|
||||
"ja_JP": "DLC管理ウインドウを開きます",
|
||||
"ko_KR": "DLC 관리 창 열기",
|
||||
"no_NO": "Åpner DLC håndteringsvinduet",
|
||||
"pl_PL": "Otwiera okno zarządzania dodatkową zawartością",
|
||||
"pt_BR": "Abre a janela de gerenciamento de DLCs",
|
||||
"ru_RU": "Открывает окно управления DLC",
|
||||
"sv_SE": "Öppnar DLC-hanteringsfönstret",
|
||||
"th_TH": "เปิดหน้าต่างจัดการ DLC",
|
||||
"tr_TR": "DLC yönetim penceresini açar",
|
||||
"uk_UA": "Відкриває меню керування DLC",
|
||||
"zh_CN": "打开 DLC 管理窗口",
|
||||
"zh_TW": "開啟 DLC 管理視窗"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuCacheManagement",
|
||||
"Translations": {
|
||||
@@ -2323,7 +2448,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Purge PPTC Cache",
|
||||
"en_US": "Purge PPTC cache",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Purger le cache PPTC",
|
||||
"he_IL": "",
|
||||
@@ -2442,6 +2567,31 @@
|
||||
"zh_TW": "開啟 PPTC 資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuCacheManagementOpenPptcDirectoryToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح المجلد الذي يحتوي على ذاكرة التخزين المؤقت للترجمة المستمرة (PPTC) للتطبيق",
|
||||
"de_DE": "Öffnet das Verzeichnis, das den PPTC-Cache der Anwendung beinhaltet",
|
||||
"el_GR": "Ανοίγει την τοποθεσία που περιέχει τη προσωρινή μνήμη PPTC της εφαρμογής",
|
||||
"en_US": "Opens the directory which contains Application's PPTC cache",
|
||||
"es_ES": "Abrir la carpeta que contiene la caché de PPTC de esta aplicación",
|
||||
"fr_FR": "Ouvre le dossier contenant le cache PPTC de l’application",
|
||||
"he_IL": "פותח את התקייה של מטמון ה-PPTC של האפליקציה",
|
||||
"it_IT": "Apre la cartella che contiene la cache PPTC dell'applicazione",
|
||||
"ja_JP": "アプリケーションの PPTC キャッシュを格納するディレクトリを開きます",
|
||||
"ko_KR": "앱의 PPTC 캐시가 포함된 디렉터리 열기",
|
||||
"no_NO": "Åpner mappen som inneholder programmets PPTC cache",
|
||||
"pl_PL": "Otwiera katalog, który zawiera pamięć podręczną PPTC aplikacji",
|
||||
"pt_BR": "Abre o diretório contendo os arquivos do cache PPTC",
|
||||
"ru_RU": "Открывает папку, содержащую PPTC кэш приложений и игр",
|
||||
"sv_SE": "Öppnar katalogen som innehåller applikationens PPTC-cache",
|
||||
"th_TH": "เปิดไดเร็กทอรี่ของ แคช PPTC ในแอปพลิเคชัน",
|
||||
"tr_TR": "Uygulamanın PPTC Önbelleğinin bulunduğu dizini açar",
|
||||
"uk_UA": "Відкриває теку, яка містить PPTC кеш застосунку (гри)",
|
||||
"zh_CN": "打开储存游戏 PPTC 缓存文件的目录",
|
||||
"zh_TW": "開啟此應用程式的 PPTC 快取資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuCacheManagementOpenShaderCacheDirectory",
|
||||
"Translations": {
|
||||
@@ -2467,6 +2617,31 @@
|
||||
"zh_TW": "開啟著色器快取資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuCacheManagementOpenShaderCacheDirectoryToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح المجلد الذي يحتوي على ذاكرة المظللات المؤقتة للتطبيق",
|
||||
"de_DE": "Öffnet das Verzeichnis, das den Shader Cache der Anwendung beinhaltet",
|
||||
"el_GR": "Ανοίγει την τοποθεσία που περιέχει την προσωρινή μνήμη Shader της εφαρμογής",
|
||||
"en_US": "Opens the directory which contains Application's shader cache",
|
||||
"es_ES": "Abrir la carpeta que contiene la caché de sombreadores de esta aplicación",
|
||||
"fr_FR": "Ouvre le dossier contenant le cache des shaders de l’application",
|
||||
"he_IL": "פותח את תקיית מטמון ההצללות של היישום",
|
||||
"it_IT": "Apre la cartella che contiene la cache degli shader dell'applicazione",
|
||||
"ja_JP": "アプリケーションのシェーダーキャッシュを格納するディレクトリを開きます",
|
||||
"ko_KR": "앱의 셰이더 캐시가 포함된 디렉터리 열기",
|
||||
"no_NO": "Åpner mappen som inneholder Programmets shader cache",
|
||||
"pl_PL": "Otwiera katalog, który zawiera pamięć podręczną cieni aplikacji",
|
||||
"pt_BR": "Abre o diretório contendo os arquivos do cache de Shaders",
|
||||
"ru_RU": "Открывает папку, содержащую кэш шейдеров приложений и игр",
|
||||
"sv_SE": "Öppnar katalogen som innehåller applikationens shader cache",
|
||||
"th_TH": "เปิดไดเรกทอรี่ของ แคช แสงเงา ในแอปพลิเคชัน",
|
||||
"tr_TR": "Uygulamanın shader önbelleğinin bulunduğu dizini açar",
|
||||
"uk_UA": "Відкриває теку, яка містить кеш шейдерів застосунку (гри)",
|
||||
"zh_CN": "打开储存游戏着色器缓存文件的目录",
|
||||
"zh_TW": "開啟此應用程式的著色器快取資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuExtractData",
|
||||
"Translations": {
|
||||
@@ -2942,6 +3117,31 @@
|
||||
"zh_TW": "顯示遊戲資訊"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuShowGameDataToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Show stats & details about the currently selected game.",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Afficher les statistiques et les détails sur le jeu actuellement sélectionné.",
|
||||
"he_IL": "",
|
||||
"it_IT": "",
|
||||
"ja_JP": "",
|
||||
"ko_KR": "그리드 보기 레이아웃에서 누락된 현재 선택된 게임에 대한 다양한 정보를 표시합니다.",
|
||||
"no_NO": "Vis statistikk og detaljer om det valgte spillet.",
|
||||
"pl_PL": "",
|
||||
"pt_BR": "Exibe estatísticas e detalhes sobre o jogo selecionado.",
|
||||
"ru_RU": "Показывать статистику и подробную информацию о выбранной игре.",
|
||||
"sv_SE": "Visa statistik och detaljer om det aktuella spelet.",
|
||||
"th_TH": "",
|
||||
"tr_TR": "",
|
||||
"uk_UA": "Показати статистику та деталі обраної гри.",
|
||||
"zh_CN": "显示当前选定游戏的状态与详细信息。",
|
||||
"zh_TW": "顯示目前已選擇遊戲的狀態及詳細資訊。"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenModsDirectory",
|
||||
"Translations": {
|
||||
@@ -2967,6 +3167,31 @@
|
||||
"zh_TW": "開啟模組資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenModsDirectoryToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "يفتح المجلد الذي يحتوي على تعديلات(mods) التطبيق",
|
||||
"de_DE": "Öffnet das Verzeichnis, welches Mods für die Spiele beinhaltet",
|
||||
"el_GR": "",
|
||||
"en_US": "Opens the directory which contains Application's Mods",
|
||||
"es_ES": "Abre el directorio que contiene los Mods de la Aplicación.",
|
||||
"fr_FR": "Ouvre le dossier contenant les mods de l’application",
|
||||
"he_IL": "פותח את התיקייה שמכילה מודים של האפליקציה",
|
||||
"it_IT": "Apre la cartella che contiene le mod dell'applicazione",
|
||||
"ja_JP": "アプリケーションの Mod データを格納するディレクトリを開きます",
|
||||
"ko_KR": "앱의 모드가 포함된 디렉터리 열기",
|
||||
"no_NO": "Åpner mappen som inneholder programmets modifikasjoner",
|
||||
"pl_PL": "Otwiera katalog zawierający mody dla danej aplikacji",
|
||||
"pt_BR": "Abre a pasta que contém os mods da aplicação",
|
||||
"ru_RU": "Открывает папку, содержащую моды для приложений и игр",
|
||||
"sv_SE": "Öppnar katalogen som innehåller applikationens Mods",
|
||||
"th_TH": "เปิดไดเร็กทอรี่ Mods ของแอปพลิเคชัน",
|
||||
"tr_TR": "",
|
||||
"uk_UA": "Відкриває теку, яка містить модифікації застосунків (ігор)",
|
||||
"zh_CN": "打开存放游戏 MOD 的目录",
|
||||
"zh_TW": "開啟此應用程式模組的資料夾"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuOpenSdModsDirectory",
|
||||
"Translations": {
|
||||
@@ -2974,7 +3199,7 @@
|
||||
"de_DE": "Atmosphere-Mod-Verzeichnis öffnen",
|
||||
"el_GR": "",
|
||||
"en_US": "Open Atmosphere Mods Directory",
|
||||
"es_ES": "Abrir Directorio de Mods de Atmosphere",
|
||||
"es_ES": "Abrir Directorio de Mods de Atmosphere\n\n\n\n\n\n",
|
||||
"fr_FR": "Ouvrir le dossier des mods Atmosphère",
|
||||
"he_IL": "פתח תיקיית מודים של Atmosphere",
|
||||
"it_IT": "Apri la cartella delle mod Atmosphere",
|
||||
@@ -3050,7 +3275,7 @@
|
||||
"el_GR": "",
|
||||
"en_US": "Check and Trim XCI File to Save Disk Space",
|
||||
"es_ES": "Verificar y recortar archivo XCI para ahorrar espacio en disco",
|
||||
"fr_FR": "Vérifier et réduire le fichier XCI pour économiser de l’espace disque",
|
||||
"fr_FR": "Vérifier et découper le fichier XCI pour économiser de l’espace disque",
|
||||
"he_IL": "",
|
||||
"it_IT": "Controlla e riduci la dimensione del file XCI per risparmiare spazio su disco",
|
||||
"ja_JP": "",
|
||||
@@ -3773,7 +3998,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Show Original UI Style (Requires Restart)",
|
||||
"en_US": "Show Original UI Style (Requires restart)",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Afficher le style d’interface original (redémarrage requis)",
|
||||
"he_IL": "",
|
||||
@@ -3798,23 +4023,23 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Show the older Avalonia Ryujinx UI reminiscent of Ryujinx 1.1.1403. This is enabled by default on platforms that are not Windows.\n\nThe classic-style title bar is back and major window layout reworkings are reversed; such as the settings navigation placement above this tooltip.",
|
||||
"en_US": "Show the older Avalonia Ryujinx UI reminiscent of Ryujinx 1.1.1403. This is enabled by default on platforms that are not Windows.\nThe classic-style title bar is back and major window layout reworkings are reversed; such as the settings navigation placement above this tooltip.",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Afficher l’ancienne interface Avalonia Ryujinx, rappelant Ryujinx 1.1.1403. Cette option est activée par défaut sur les plateformes autres que Windows.\n\nLa barre de titre au style classique est de retour et les modifications majeures de la disposition des fenêtres sont annulées, comme le placement de la navigation des paramètres au-dessus de cette infobulle.",
|
||||
"fr_FR": "Afficher l’ancienne interface Avalonia Ryujinx, rappelant Ryujinx 1.1.1403. Cette option est activée par défaut sur les plateformes autres que Windows.\nLa barre de titre au style classique est de retour et les modifications majeures de la disposition des fenêtres sont annulées, comme le placement de la navigation des paramètres au-dessus de cette infobulle.",
|
||||
"he_IL": "",
|
||||
"it_IT": "",
|
||||
"ja_JP": "",
|
||||
"ko_KR": "Ryujinx 1.1.1403을 연상시키는 이전 Avalonia Ryujinx UI를 표시합니다. 이 기능은 윈도가 아닌 플랫폼에서는 기본적으로 활성화됩니다.\n\n 클래식 스타일의 타이틀 바가 돌아왔고 주요 창 레이아웃 변경 사항이 원래대로 적용됩니다. 이 툴팁 위의 설정 탐색 배치와 같은 경우입니다.",
|
||||
"no_NO": "Vis det eldre Avalonia Ryujinx-grensesnittet som minner om Ryujinx 1.1.1403. Dette er aktivert som standard på plattformer som ikke er Windows.\n\nTittellinjen i klassisk stil er tilbake, og store omarbeidinger av vindusoppsettet er reversert, for eksempel plasseringen av innstillingsnavigasjonen over dette verktøytipset.",
|
||||
"ko_KR": "Ryujinx 1.1.1403을 연상시키는 이전 Avalonia Ryujinx UI를 표시합니다. 이 기능은 윈도가 아닌 플랫폼에서는 기본적으로 활성화됩니다.\n 클래식 스타일의 타이틀 바가 돌아왔고 주요 창 레이아웃 변경 사항이 원래대로 적용됩니다. 이 툴팁 위의 설정 탐색 배치와 같은 경우입니다.",
|
||||
"no_NO": "Vis det eldre Avalonia Ryujinx-grensesnittet som minner om Ryujinx 1.1.1403. Dette er aktivert som standard på plattformer som ikke er Windows.\nTittellinjen i klassisk stil er tilbake, og store omarbeidinger av vindusoppsettet er reversert, for eksempel plasseringen av innstillingsnavigasjonen over dette verktøytipset.",
|
||||
"pl_PL": "",
|
||||
"pt_BR": "Mostrar a Interface Avalonia antiga do Ryujinx 1.1.1403. Esta versão é ativada por padrão nas plataformas que não sejam Windows.\n\nO estilo clássico da Barra de Título retorna e grande parte das mudanças do Layout de janela são revertidas; assim como as configurações de posicionamento da navegação acima dessa descrição.",
|
||||
"ru_RU": "Показать старый пользовательский интерфейс Avalonia Ryujinx, напоминающий Ryujinx 1.1.1403. Включено по умолчанию на платформах, отличных от Windows.\n\nСтрока заголовка в классическом стиле вернётся на место, а основные изменения в оформлении окна будут отменены; например, расположение навигации по настройкам над этой всплывающей подсказкой.",
|
||||
"sv_SE": "Visa det gamla Ryuijinx-gränssnittet baserat på Avalonia som påminner om version 1.1.1403. Detta är aktiverat som standard på plattformat som inte är Windows.\n\nDen klassiska titelfältet är tillbaka och de stora omarbetningarna av fönsterlayouten är omvända, till exempel placeringen av inställningsnavigeringen ovanför detta verktygstips.",
|
||||
"pt_BR": "Mostrar a Interface Avalonia antiga do Ryujinx 1.1.1403. Esta versão é ativada por padrão nas plataformas que não sejam Windows. \nO estilo clássico da Barra de Título retorna e grande parte das mudanças do Layout de janela são revertidas; assim como as configurações de posicionamento da navegação acima dessa descrição.",
|
||||
"ru_RU": "Показать старый пользовательский интерфейс Avalonia Ryujinx, напоминающий Ryujinx 1.1.1403. Включено по умолчанию на платформах, отличных от Windows.\nСтрока заголовка в классическом стиле вернётся на место, а основные изменения в оформлении окна будут отменены; например, расположение навигации по настройкам над этой всплывающей подсказкой.",
|
||||
"sv_SE": "Visa det gamla Ryuijinx-gränssnittet baserat på Avalonia som påminner om version 1.1.1403. Detta är aktiverat som standard på plattformat som inte är Windows.\nDen klassiska titelfältet är tillbaka och de stora omarbetningarna av fönsterlayouten är omvända, till exempel placeringen av inställningsnavigeringen ovanför detta verktygstips.",
|
||||
"th_TH": "",
|
||||
"tr_TR": "",
|
||||
"uk_UA": "Показати старий інтерфейс Avalonia Ryujinx, який був у Ryujinx 1.1.1403. Ця опція активна за замовчуванням на всіх інших, окрім Windows платформах.\n\nПовернеться класична панель заголовка, а всі суттєві зміни інтерфейсу будуть скасовані, зокрема горизонтальне розміщення навігації в налаштуваннях.",
|
||||
"zh_CN": "显示旧的类似 Ryujinx 1.1.1403 的 Avalonia Ryujinx UI。在非 Windows 平台上默认启用此选项。\n\n经典样式的标题栏已回归并且恢复了对窗口布局的重大重构;例如在工具提示上方放置设置导航。",
|
||||
"zh_TW": "顯示舊版 Ryujinx 1.1.1403 的 Avalonia UI 樣式。在非 Windows 平台預設啟用。\n\n經典樣式的標題欄已回歸,並且還原了對設定視窗佈局的大型重構:例如在工具提示上方設置導覽列。"
|
||||
"uk_UA": "Показати старий інтерфейс Avalonia Ryujinx, який був у Ryujinx 1.1.1403. Ця опція активна за замовчуванням на всіх інших, окрім Windows платформах.\nПовернеться класична панель заголовка, а всі суттєві зміни інтерфейсу будуть скасовані, зокрема горизонтальне розміщення навігації в налаштуваннях.",
|
||||
"zh_CN": "显示旧的类似 Ryujinx 1.1.1403 的 Avalonia Ryujinx UI。在非 Windows 平台上默认启用此选项。\n经典样式的标题栏已回归并且恢复了对窗口布局的重大重构;例如在工具提示上方放置设置导航。",
|
||||
"zh_TW": "顯示舊版 Ryujinx 1.1.1403 的 Avalonia UI 樣式。在非 Windows 平台預設啟用。\n經典樣式的標題欄已回歸,並且還原了對設定視窗佈局的大型重構:例如在工具提示上方設置導覽列。"
|
||||
}
|
||||
},
|
||||
{
|
||||
@@ -4845,24 +5070,24 @@
|
||||
{
|
||||
"ID": "SettingsTabSystemEnableLowPowerPptc",
|
||||
"Translations": {
|
||||
"ar_SA": "",
|
||||
"ar_SA": "Low-power PPTC",
|
||||
"de_DE": "Kleinleistungs-PPTC",
|
||||
"el_GR": "",
|
||||
"en_US": "Low-Power PPTC",
|
||||
"es_ES": "PPTC de bajo consumo",
|
||||
"fr_FR": "PPTC de faible puissance",
|
||||
"he_IL": "",
|
||||
"it_IT": "PPTC a basso consumo energetico",
|
||||
"ja_JP": "",
|
||||
"el_GR": "Low-power PPTC",
|
||||
"en_US": "Low-power PPTC cache",
|
||||
"es_ES": "Cache PPTC de bajo consumo",
|
||||
"fr_FR": "Cache PPTC de faible puissance",
|
||||
"he_IL": "Low-power PPTC",
|
||||
"it_IT": "Caricamento PPTC a basso consumo energetico",
|
||||
"ja_JP": "Low-power PPTC",
|
||||
"ko_KR": "저전력 PPTC 캐시",
|
||||
"no_NO": "PPTC med lavt strømforbruk",
|
||||
"pl_PL": "",
|
||||
"pt_BR": "PPTC com Baixo Consumo de Energia",
|
||||
"pl_PL": "Low-power PPTC",
|
||||
"pt_BR": "Cache PPTC com Baixo Consumo de Energia",
|
||||
"ru_RU": "PPTC с низким электропотреблением",
|
||||
"sv_SE": "PPTC med låg strömförbrukning",
|
||||
"th_TH": "PPTC แบบพลังงานตํ่า",
|
||||
"tr_TR": "",
|
||||
"uk_UA": "",
|
||||
"tr_TR": "Low-power PPTC",
|
||||
"uk_UA": "Low-power PPTC",
|
||||
"zh_CN": "低功耗 PPTC 加载",
|
||||
"zh_TW": "低功耗 PPTC"
|
||||
}
|
||||
@@ -4873,7 +5098,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Turbo Mode Multiplier:",
|
||||
"en_US": "Turbo Mode multiplier:",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Multiplicateur du Mode Turbo :",
|
||||
"he_IL": "",
|
||||
@@ -4923,7 +5148,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Turbo Mode is an emulator feature which effectively causes speed up or slow down when a game is not frame-rate sensitive.\nYou can toggle this feature in-game with a hotkey, configurable in Ryujinx Keyboard Hotkeys settings.\n\nLeave at 200 if unsure.",
|
||||
"en_US": "Turbo mode is an emulator feature which effectively causes speed up or slow down when a game is not frame-rate sensitive.\nYou can toggle this feature in-game with a hotkey, configurable in Ryujinx Keyboard Hotkeys settings.\n\nLeave at 200 if unsure.",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Le Mode Turbo est une fonctionnalité de l’émulateur qui permet d’accélérer ou de ralentir le jeu lorsque celui-ci n’est pas sensible au taux de rafraîchissement.\nVous pouvez activer ou désactiver cette fonction en jeu via un raccourci clavier, configurable dans les paramètres des raccourcis clavier de Ryujinx.\n\nLaissez à 200 si vous n’êtes pas sûr.",
|
||||
"he_IL": "",
|
||||
@@ -5121,23 +5346,23 @@
|
||||
"ID": "SettingsTabSystemHacksNote",
|
||||
"Translations": {
|
||||
"ar_SA": "قد يتسبب في عدم الاستقرار",
|
||||
"de_DE": "Kann Fehler verursachen",
|
||||
"el_GR": "Μπορεί να προκαλέσουν αστάθεια",
|
||||
"en_US": "May Cause Instability",
|
||||
"es_ES": "Pueden causar inestabilidad",
|
||||
"de_DE": " (Kann Fehler verursachen)",
|
||||
"el_GR": " (Μπορεί να προκαλέσουν αστάθεια)",
|
||||
"en_US": "May cause instability",
|
||||
"es_ES": " (Pueden causar inestabilidad)",
|
||||
"fr_FR": "Peut causer des instabilités",
|
||||
"he_IL": "עלול לגרום לאי יציבות",
|
||||
"it_IT": "Possono causare instabilità",
|
||||
"ja_JP": "挙動が不安定になる可能性があります",
|
||||
"ja_JP": " (挙動が不安定になる可能性があります)",
|
||||
"ko_KR": "불안정성을 유발할 수 있음",
|
||||
"no_NO": "Kan forårsake ustabilitet",
|
||||
"pl_PL": "Mogą powodować niestabilność",
|
||||
"pl_PL": " (mogą powodować niestabilność)",
|
||||
"pt_BR": "Pode causar instabilidade",
|
||||
"ru_RU": "Возможна нестабильная работа",
|
||||
"sv_SE": "Kan orsaka instabilitet",
|
||||
"th_TH": "อาจทำให้เกิดข้อผิดพลาดได้",
|
||||
"tr_TR": "Dengesizlik oluşturabilir",
|
||||
"uk_UA": "Може викликати нестабільність",
|
||||
"tr_TR": " (dengesizlik oluşturabilir)",
|
||||
"uk_UA": " (може викликати нестабільність)",
|
||||
"zh_CN": "会导致模拟器不稳定",
|
||||
"zh_TW": "可能導致模擬器不穩定"
|
||||
}
|
||||
@@ -5148,7 +5373,7 @@
|
||||
"ar_SA": "استخدام تخطيط الذاكرة البديل (المطورين)",
|
||||
"de_DE": "DRAM Größe:",
|
||||
"el_GR": "Μέγεθος DRAM:",
|
||||
"en_US": "DRAM Size:",
|
||||
"en_US": "DRAM size:",
|
||||
"es_ES": "Tamaño DRAM:",
|
||||
"fr_FR": "Taille de la DRAM :",
|
||||
"he_IL": "השתמש בפריסת זיכרון חלופית (נועד למפתחים)",
|
||||
@@ -5323,7 +5548,7 @@
|
||||
"ar_SA": "تخطي مربع حوار 'إدارة الملفات الشخصية للمستخدم'",
|
||||
"de_DE": "Überspringen des Dialogs 'Benutzerprofile verwalten'",
|
||||
"el_GR": "Παράκαμψη διαλόγου 'Διαχείριση Προφίλ _Χρηστών'",
|
||||
"en_US": "Skip Dialog 'Manage User Profiles'",
|
||||
"en_US": "Skip dialog 'Manage User Profiles'",
|
||||
"es_ES": "Omitir el diálogo 'Gestionar perfiles de usuario'",
|
||||
"fr_FR": "Ignorer la boîte de dialogue « Gérer les profils utilisateur »",
|
||||
"he_IL": "דילוג על הדיאלוג 'נהל פרופילי משתמש'",
|
||||
@@ -5598,7 +5823,7 @@
|
||||
"ar_SA": "مخصص (لا ينصح به)",
|
||||
"de_DE": "Benutzerdefiniert (nicht empfohlen)",
|
||||
"el_GR": "Προσαρμοσμένο (Δεν συνιστάται)",
|
||||
"en_US": "Custom (Not Recommended)",
|
||||
"en_US": "Custom (Not recommended)",
|
||||
"es_ES": "Personalizada (no recomendado)",
|
||||
"fr_FR": "Personnalisée (non recommandée)",
|
||||
"he_IL": "מותאם אישית (לא מומלץ)",
|
||||
@@ -5698,7 +5923,7 @@
|
||||
"ar_SA": "4x (2880p/4320p) (لا ينصح به)",
|
||||
"de_DE": "4x (2880p/4320p) (Nicht empfohlen)",
|
||||
"el_GR": "",
|
||||
"en_US": "4x (2880p/4320p) (Not Recommended)",
|
||||
"en_US": "4x (2880p/4320p) (Not recommended)",
|
||||
"es_ES": "4x (2880p/4320p) (no recomendado)",
|
||||
"fr_FR": "x4 (2880p/4320p) (non recommandé)",
|
||||
"he_IL": "4x (2880p/4320p) (לא מומלץ)",
|
||||
@@ -6273,7 +6498,7 @@
|
||||
"ar_SA": "تحذير: سوف يقلل من الأداء",
|
||||
"de_DE": "ACHTUNG: Wird die Leistung reduzieren",
|
||||
"el_GR": "ΠΡΟΕΙΔΟΠΟΙΗΣΗ: Θα μειώσει την απόδοση",
|
||||
"en_US": "WARNING: Will Reduce Performance",
|
||||
"en_US": "WARNING: Will reduce performance",
|
||||
"es_ES": "ADVERTENCIA: Reducirá el rendimiento",
|
||||
"fr_FR": "ATTENTION : Réduira les performances",
|
||||
"he_IL": "אזהרה: יפחית ביצועים",
|
||||
@@ -7195,7 +7420,7 @@
|
||||
{
|
||||
"ID": "ControllerSettingsControllerTypeJoyConRight",
|
||||
"Translations": {
|
||||
"ar_SA": "جوي كون اليمين",
|
||||
"ar_SA": " جوي كون اليمين",
|
||||
"de_DE": "Rechter Joy-Con",
|
||||
"el_GR": "Δεξί JoyCon",
|
||||
"en_US": "JoyCon Right",
|
||||
@@ -8448,7 +8673,7 @@
|
||||
"ar_SA": "استخدام الحركة المتوافقة مع CemuHook",
|
||||
"de_DE": "CemuHook kompatible Bewegungssteuerung",
|
||||
"el_GR": "Κίνηση συμβατή με CemuHook",
|
||||
"en_US": "Use CemuHook Compatible Motion",
|
||||
"en_US": "Use CemuHook compatible motion",
|
||||
"es_ES": "Usar movimiento compatible con CemuHook",
|
||||
"fr_FR": "Utiliser la détection de mouvements compatible CemuHook",
|
||||
"he_IL": "השתמש בתנועת CemuHook תואמת ",
|
||||
@@ -11232,7 +11457,7 @@
|
||||
"ko_KR": "좌측 트리거 1",
|
||||
"no_NO": "Venstre utløser 1",
|
||||
"pl_PL": "",
|
||||
"pt_BR": "Gatilho Esquerdo 1",
|
||||
"pt_BR": " Gatilho Esquerdo 1",
|
||||
"ru_RU": "Левый триггер 1",
|
||||
"sv_SE": "Vänster avtryckare 1",
|
||||
"th_TH": "",
|
||||
@@ -11498,7 +11723,7 @@
|
||||
"ar_SA": "اختر اسم مستعار",
|
||||
"de_DE": "Wähle einen Spitznamen",
|
||||
"el_GR": "Επιλέξτε ψευδώνυμο",
|
||||
"en_US": "Choose a Nickname",
|
||||
"en_US": "Choose a nickname",
|
||||
"es_ES": "Escoge un apodo",
|
||||
"fr_FR": "Choisir un pseudo",
|
||||
"he_IL": "בחרו כינוי",
|
||||
@@ -11548,7 +11773,7 @@
|
||||
"ar_SA": "اختر صورة الملف الشخصي",
|
||||
"de_DE": "Wähle ein Profilbild aus",
|
||||
"el_GR": "Επιλέξτε μία Εικόνα Προφίλ",
|
||||
"en_US": "Choose a Profile Image",
|
||||
"en_US": "Choose a profile Image",
|
||||
"es_ES": "Elige una imagen de perfil",
|
||||
"fr_FR": "Choisir l'image du profil",
|
||||
"he_IL": "בחרו תמונת פרופיל",
|
||||
@@ -11773,7 +11998,7 @@
|
||||
"ar_SA": "اختر اسم الملف الشخصي",
|
||||
"de_DE": "Wähle den Profilnamen",
|
||||
"el_GR": "Επιλογή Ονόματος Προφίλ",
|
||||
"en_US": "Choose a Profile Name",
|
||||
"en_US": "Choose the Profile Name",
|
||||
"es_ES": "Introducir nombre de perfil",
|
||||
"fr_FR": "Choisir un nom de profil",
|
||||
"he_IL": "בחרו את שם הפרופיל",
|
||||
@@ -12100,7 +12325,7 @@
|
||||
"el_GR": "Απόκρυψη UI",
|
||||
"en_US": "Hide UI",
|
||||
"es_ES": "Ocultar interfaz",
|
||||
"fr_FR": "Masquer l'interface",
|
||||
"fr_FR": "Masquer l'interface utilisateur",
|
||||
"he_IL": "הסתר ממשק משתמש ",
|
||||
"it_IT": "Nascondi l'interfaccia",
|
||||
"ja_JP": "UIを隠す",
|
||||
@@ -12167,6 +12392,31 @@
|
||||
"zh_TW": "加入/移除為我的最愛"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "GameListContextMenuToggleFavoriteToolTip",
|
||||
"Translations": {
|
||||
"ar_SA": "تبديل الحالة المفضلة للعبة",
|
||||
"de_DE": "Aktiviert den Favoriten-Status des Spiels",
|
||||
"el_GR": "Εναλλαγή της Κατάστασης Αγαπημένο του Παιχνιδιού",
|
||||
"en_US": "Toggle Favorite status of Game",
|
||||
"es_ES": "Marca o desmarca el juego como favorito",
|
||||
"fr_FR": "Basculer le statut favori du jeu",
|
||||
"he_IL": "למתג סטטוס העדפה של משחק",
|
||||
"it_IT": "Segna il gioco come preferito",
|
||||
"ja_JP": "ゲームをお気に入りに含めるかどうかを切り替えます",
|
||||
"ko_KR": "게임의 즐겨찾기 상태 전환",
|
||||
"no_NO": "Vis/Skjul favorittstatus for spillet",
|
||||
"pl_PL": "Przełącz status Ulubionej Gry",
|
||||
"pt_BR": "Marca ou desmarca o jogo como favorito",
|
||||
"ru_RU": "Добавляет игру в избранное и помечает звёздочкой",
|
||||
"sv_SE": "Växla favoritstatus för spelet",
|
||||
"th_TH": "สลับสถานะเกมที่ชื่นชอบ",
|
||||
"tr_TR": "Oyunu Favorilere Ekle/Çıkar",
|
||||
"uk_UA": "Додати або вилучити гру з обраних",
|
||||
"zh_CN": "切换游戏的收藏状态",
|
||||
"zh_TW": "切換遊戲的我的最愛狀態"
|
||||
}
|
||||
},
|
||||
{
|
||||
"ID": "SettingsTabGeneralTheme",
|
||||
"Translations": {
|
||||
@@ -13400,7 +13650,7 @@
|
||||
"el_GR": "Επιτυχής εγκατάσταση τύπων αρχείων!",
|
||||
"en_US": "Successfully installed file types!",
|
||||
"es_ES": "¡Tipos de archivos instalados con éxito!",
|
||||
"fr_FR": "Types de fichiers installés avec succès !",
|
||||
"fr_FR": "Types de fichiers installés avec succès!",
|
||||
"he_IL": "סוגי קבצים הותקנו בהצלחה!",
|
||||
"it_IT": "Tipi di file installati con successo!",
|
||||
"ja_JP": "ファイル形式のインストールに成功しました!",
|
||||
@@ -13450,7 +13700,7 @@
|
||||
"el_GR": "Επιτυχής απεγκατάσταση τύπων αρχείων!",
|
||||
"en_US": "Successfully uninstalled file types!",
|
||||
"es_ES": "¡Tipos de archivos desinstalados con éxito!",
|
||||
"fr_FR": "Types de fichiers désinstallés avec succès !",
|
||||
"fr_FR": "Types de fichiers désinstallés avec succès!",
|
||||
"he_IL": "סוגי קבצים הוסרו בהצלחה!",
|
||||
"it_IT": "Tipi di file disinstallati con successo!",
|
||||
"ja_JP": "ファイル形式のアンインストールに成功しました!",
|
||||
@@ -13650,7 +13900,7 @@
|
||||
"el_GR": "",
|
||||
"en_US": "{0}: {1}",
|
||||
"es_ES": "",
|
||||
"fr_FR": "{0} : {1}",
|
||||
"fr_FR": "",
|
||||
"he_IL": "",
|
||||
"it_IT": "",
|
||||
"ja_JP": "",
|
||||
@@ -14205,7 +14455,7 @@
|
||||
"it_IT": "\n\nVuoi continuare?",
|
||||
"ja_JP": "\n\n続けてよろしいですか?",
|
||||
"ko_KR": "\n\n계속하시겠습니까?",
|
||||
"no_NO": "\n\nVil du fortsette?",
|
||||
"no_NO": "Vil du fortsette?",
|
||||
"pl_PL": "\n\nCzy chcesz kontynuować?",
|
||||
"pt_BR": "\n\nDeseja continuar?",
|
||||
"ru_RU": "\n\nПродолжить?",
|
||||
@@ -16348,7 +16598,7 @@
|
||||
"ar_SA": "يجعل وضع تركيب بالمنصة النظام الذي تمت محاكاته بمثابة جهاز نينتندو سويتش الذي تم تركيبه بالمنصة. يؤدي هذا إلى تحسين الدقة الرسومية في معظم الألعاب. على العكس من ذلك، سيؤدي تعطيل هذا إلى جعل النظام الذي تمت محاكاته يعمل كجهاز نينتندو سويتش محمول، مما يقلل من جودة الرسومات.\n\nقم بتكوين عناصر تحكم اللاعب 1 إذا كنت تخطط لاستخدام وضع تركيب بالمنصة؛ قم بتكوين عناصر التحكم المحمولة إذا كنت تخطط لاستخدام الوضع المحمول.\n\nاتركه مشغل إذا لم تكن متأكدا.",
|
||||
"de_DE": "Im gedockten Modus verhält sich das emulierte System wie eine Nintendo Switch im TV Modus. Dies verbessert die grafische Qualität der meisten Spiele. Umgekehrt führt die Deaktivierung dazu, dass sich das emulierte System wie eine Nintendo Switch im Handheld Modus verhält, was die Grafikqualität beeinträchtigt.\n\nKonfiguriere das Eingabegerät für Spieler 1, um im Docked Modus zu spielen; konfiguriere das Controllerprofil via der Handheld Option, wenn geplant wird den Handheld Modus zu nutzen.\n\nIm Zweifelsfall AN lassen.",
|
||||
"el_GR": "Ενεργοποιήστε ή απενεργοποιήστε τη λειτουργία σύνδεσης",
|
||||
"en_US": "Docked mode makes the emulated system behave as a docked Nintendo Switch. This improves graphical fidelity in most games. Conversely, disabling this will make the emulated system behave as a handheld Nintendo Switch, reducing graphics quality.\n\nConfigure Player 1 controls if planning to use docked mode; configure handheld controls if planning to use handheld mode.\n\nLeave ON if unsure.",
|
||||
"en_US": "Docked mode makes the emulated system behave as a docked Nintendo Switch. This improves graphical fidelity in most games. Conversely, disabling this will make the emulated system behave as a handheld Nintendo Switch, reducing graphics quality.\n\nConfigure player 1 controls if planning to use docked mode; configure handheld controls if planning to use handheld mode.\n\nLeave ON if unsure.",
|
||||
"es_ES": "El modo dock o modo TV hace que la consola emulada se comporte como una Nintendo Switch en su dock. Esto mejora la calidad gráfica en la mayoría de los juegos. Del mismo modo, si lo desactivas, el sistema emulado se comportará como una Nintendo Switch en modo portátil, reduciendo la cálidad de los gráficos.\n\nConfigura los controles de \"Jugador\" 1 si planeas jugar en modo dock/TV; configura los controles de \"Portátil\" si planeas jugar en modo portátil.\n\nActívalo si no sabes qué hacer.",
|
||||
"fr_FR": "Le mode docké fait que le système émulé se comporte comme une Nintendo Switch en mode dock. Cela améliore la qualité graphique dans la plupart des jeux. À l’inverse, désactiver ce mode fera que le système émulé se comporte comme une Nintendo Switch en mode portable, ce qui réduit la qualité graphique.\n\nConfigurez les contrôles du joueur 1 si vous prévoyez d’utiliser le mode docké ; configurez les contrôles pour le mode portable si vous comptez utiliser ce dernier.\n\nLaissez ACTIVÉ si vous n’êtes pas sûr..",
|
||||
"he_IL": "מצב עגינה גורם למערכת המדומה להתנהג כ-נינטנדו סוויץ' בתחנת עגינתו. זה משפר את הנאמנות הגרפית ברוב המשחקים.\n לעומת זאת, השבתה של תכונה זו תגרום למערכת המדומה להתנהג כ- נינטנדו סוויץ' נייד, ולהפחית את איכות הגרפיקה.\n\nהגדירו את שלט שחקן 1 אם אתם מתכננים להשתמש במצב עגינה; הגדירו את פקדי כף היד אם אתם מתכננים להשתמש במצב נייד.\n\nמוטב להשאיר דלוק אם אתם לא בטוחים.",
|
||||
@@ -17159,7 +17409,7 @@
|
||||
"pl_PL": "Wyświetla komunikaty dziennika informacyjnego w konsoli. Nie wpływa na wydajność.",
|
||||
"pt_BR": "Imprime mensagens de log de informações no console. Não afeta o desempenho.",
|
||||
"ru_RU": "Включает вывод сообщений информационного журнала в консоль. Не влияет на производительность.",
|
||||
"sv_SE": "Skriver ut informationsloggmeddelanden i konsollen. Påverkar inte prestandan.",
|
||||
"sv_SE": "Skriver ut informationsloggmeddelanden i konsollen. Påverkar inte prestandan.",
|
||||
"th_TH": "พิมพ์ข้อความบันทึกข้อมูลในคอนโซล จะไม่ส่งผลกระทบต่อประสิทธิภาพการทำงาน",
|
||||
"tr_TR": "Bilgi log mesajlarını konsola yazdırır. Performansı etkilemez.",
|
||||
"uk_UA": "Виводить повідомлення журналу інформації (info log) в консоль. Не впливає на продуктивність.",
|
||||
@@ -19823,7 +20073,7 @@
|
||||
"ar_SA": "كل لوحات المفاتيح",
|
||||
"de_DE": "Alle Tastaturen",
|
||||
"el_GR": "Όλα τα πληκτρολόγια",
|
||||
"en_US": "All Keyboards",
|
||||
"en_US": "All keyboards",
|
||||
"es_ES": "Todos los teclados",
|
||||
"fr_FR": "Tous les claviers",
|
||||
"he_IL": "כל המקלדות",
|
||||
@@ -21823,7 +22073,7 @@
|
||||
"ar_SA": "زيادة الدقة:",
|
||||
"de_DE": "Auflösung erhöhen:",
|
||||
"el_GR": "Αύξηση της ανάλυσης:",
|
||||
"en_US": "Increase Resolution:",
|
||||
"en_US": "Increase resolution:",
|
||||
"es_ES": "Aumentar la resolución:",
|
||||
"fr_FR": "Augmenter la résolution :",
|
||||
"he_IL": "שפר רזולוציה:",
|
||||
@@ -21848,7 +22098,7 @@
|
||||
"ar_SA": "خفض الدقة:",
|
||||
"de_DE": "Auflösung verringern:",
|
||||
"el_GR": "Μείωση της ανάλυσης:",
|
||||
"en_US": "Decrease Resolution:",
|
||||
"en_US": "Decrease resolution:",
|
||||
"es_ES": "Disminuir la resolución:",
|
||||
"fr_FR": "Diminuer la résolution :",
|
||||
"he_IL": "הפחת רזולוציה:",
|
||||
@@ -23698,7 +23948,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Enable Custom Refresh Rate (Experimental)",
|
||||
"en_US": "Enable custom refresh rate (Experimental)",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Activer le taux de rafraîchissement customisé (Expérimental)",
|
||||
"he_IL": "",
|
||||
@@ -23850,7 +24100,7 @@
|
||||
"el_GR": "",
|
||||
"en_US": "Allows the user to specify an emulated refresh rate. In some titles, this may speed up or slow down the rate of gameplay logic. In other titles, it may allow for capping FPS at some multiple of the refresh rate, or lead to unpredictable behavior. This is an experimental feature, with no guarantees for how gameplay will be affected. \n\nLeave OFF if unsure.",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Permet à l'utilisateur de spécifier un taux de rafraîchissement émulé. Dans certains jeux, ceci pourrait accélérer ou ralentir le taux de logique du gameplay. Dans d'autre titres, cela permettrait limiter le FPS à un multiple du taux de rafraîchissement, ou conduire à un comportement imprévisible. Ceci est une fonctionnalité expérimentale, avec aucune garanties pour comment le gameplay sera affecté. \n\nLaisser DÉSACTIVER en cas de doute.",
|
||||
"fr_FR": "Permet à l'utilisateur de spécifier un taux de rafraîchissement émulé. Dans certains jeux, ceci pourrait accélérer ou ralentir le taux de logique du gameplay. Dans d'autre titres, cela permettrait limiter le FPS à un multiple du taux de rafraîchissement, ou conduire à un comportement imprévisible. Ceci est une fonctionnalité expérimentale, avec aucune garanties pour comment le gameplay sera affecté. \n\nLaisser désactiver en cas de doute.",
|
||||
"he_IL": "",
|
||||
"it_IT": "Consente all'utente di specificare una frequenza di aggiornamento emulata. In alcuni titoli potrebbe aumentare o diminuire la velocità del gameplay, mentre in altri potrebbe consentire di limitare il framerate a un multiplo della frequenza di aggiornamento, o causare comportamenti imprevedibili. Questa funzionalità è sperimentale, e non ci sono certezze sul modo in cui influenzerà il gameplay.\n\nNel dubbio, lascia l'opzione disattivata.",
|
||||
"ja_JP": "",
|
||||
@@ -23998,7 +24248,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "VSync-Modus umschalten:",
|
||||
"el_GR": "",
|
||||
"en_US": "Toggle VSync Mode:",
|
||||
"en_US": "Toggle VSync mode:",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Basculer le mode VSync :",
|
||||
"he_IL": "",
|
||||
@@ -24023,7 +24273,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "Benutzerdefinierte Bildwiederholfrequenz erhöhen:",
|
||||
"el_GR": "",
|
||||
"en_US": "Raise Custom Refresh Rate",
|
||||
"en_US": "Raise custom refresh rate",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Augmenter le taux de rafraîchissement customisé :",
|
||||
"he_IL": "",
|
||||
@@ -24048,7 +24298,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "Benutzerdefinierte Bildwiederholfrequenz senken:",
|
||||
"el_GR": "",
|
||||
"en_US": "Lower Custom Refresh Rate:",
|
||||
"en_US": "Lower custom refresh rate:",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Baisser le taux de rafraîchissement customisé :",
|
||||
"he_IL": "",
|
||||
@@ -24073,7 +24323,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Turbo Mode:",
|
||||
"en_US": "Turbo mode:",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Mode Turbo :",
|
||||
"he_IL": "",
|
||||
@@ -24123,7 +24373,7 @@
|
||||
"ar_SA": "",
|
||||
"de_DE": "",
|
||||
"el_GR": "",
|
||||
"en_US": "Only While Pressed",
|
||||
"en_US": "Only while pressed",
|
||||
"es_ES": "",
|
||||
"fr_FR": "Uniquement en appuyant",
|
||||
"he_IL": "",
|
||||
|
||||
@@ -188,8 +188,6 @@
|
||||
01003DD00BFEE000,"Airheart - Tales of broken Wings",,playable,2021-02-26 15:20:27
|
||||
01007F100DE52000,"Akane",nvdec,playable,2022-07-21 00:12:18
|
||||
01009A800F0C8000,"Akash: Path of the Five",gpu;nvdec,ingame,2020-12-14 22:33:12
|
||||
01009E8012976000,"AKIBA'S TRIP: Hellbound & Debriefed",,playable,2025-07-30 23:22:47
|
||||
0100D74019A0E000,"AKIBA'S TRIP: Undead & Undressed Director's Cut",,playable,2025-07-31 13:58:42
|
||||
010053100B0EA000,"Akihabara - Feel the Rhythm Remixed",,playable,2021-02-22 14:39:35
|
||||
0100D4C00EE0C000,"Akuarium",slow,playable,2020-12-12 23:43:36
|
||||
010026E00FEBE000,"Akuto: Showdown",,playable,2020-08-04 19:43:27
|
||||
@@ -1097,7 +1095,6 @@
|
||||
0100F9600E746000,"ESP Ra.De. Psi",audio;slow,ingame,2024-03-07 15:05:08
|
||||
010073000FE18000,"Esports powerful pro yakyuu 2020",gpu;crash;Needs More Attention,ingame,2024-04-29 05:34:14
|
||||
01004F9012FD8000,"Estranged: The Departure",nvdec;UE4,playable,2022-10-24 10:37:58
|
||||
010018f01e0a0000,"Eternights",,playable,2025-07-30 12:10:24
|
||||
0100CB900B498000,"Eternum Ex",,playable,2021-01-13 20:28:32
|
||||
010092501EB2C000,"Europa (Demo)",gpu;crash;UE4,ingame,2024-04-23 10:47:12
|
||||
01007BE0160D6000,"EVE ghost enemies",gpu,ingame,2023-01-14 03:13:30
|
||||
@@ -1243,8 +1240,6 @@
|
||||
010003F00BD48000,"Friday the 13th: Killer Puzzle",,playable,2021-01-28 01:33:38
|
||||
010092A00C4B6000,"Friday the 13th: The Game Ultimate Slasher Edition",nvdec;online-broken;UE4,playable,2022-09-06 17:33:27
|
||||
0100F200178F4000,"FRONT MISSION 1st: Remake",,playable,2023-06-09 07:44:24
|
||||
0100c4e018a24000,"FRONT MISSION 2: Remake",,playable,2025-07-30 12:11:23
|
||||
01007E6019872000,"FRONT MISSION 3: Remake",,playable,2025-07-30 12:12:02
|
||||
0100861012474000,"Frontline Zed",,playable,2020-10-03 12:55:59
|
||||
0100B5300B49A000,"Frost",,playable,2022-07-27 12:00:36
|
||||
010038A007AA4000,"FruitFall Crush",,playable,2020-10-20 11:33:33
|
||||
@@ -1523,7 +1518,6 @@
|
||||
010095C016C14000,"Iridium",,playable,2022-08-05 23:19:53
|
||||
0100AD300B786000,"Iris School of Wizardry -Vinculum Hearts-",,playable,2022-12-05 13:11:15
|
||||
0100945012168000,"Iris.Fall",nvdec,playable,2022-10-18 13:40:22
|
||||
010059801B736000,"IronFall: Invasion",,playable,2025-07-30 11:42:30
|
||||
01005270118D6000,"Iron Wings",slow,ingame,2022-08-07 08:32:57
|
||||
01004DB003E6A000,"IRONCAST",,playable,2021-01-13 13:54:29
|
||||
0100E5700CD56000,"Irony Curtain: From Matryoshka with Love",,playable,2021-06-04 20:12:37
|
||||
@@ -2312,7 +2306,6 @@
|
||||
010077B00BDD8000,"Professional Farmer: Nintendo Switch™ Edition",slow,playable,2020-12-16 13:38:19
|
||||
010018300C83A000,"Professor Lupo and his Horrible Pets",,playable,2020-06-12 00:08:45
|
||||
0100D1F0132F6000,"Professor Lupo: Ocean",,playable,2021-04-14 16:33:33
|
||||
0100c3a017834000,"Prodeus",,playable,2025-07-30 12:07:52
|
||||
0100BBD00976C000,"Project Highrise: Architect's Edition",,playable,2022-08-10 17:19:12
|
||||
0100ACE00DAB6000,"Project Nimbus: Complete Edition",nvdec;UE4;vulkan-backend-bug,playable,2022-08-10 17:35:43
|
||||
01002980140F6000,"Project TRIANGLE STRATEGY™ Debut Demo",UE4;demo,playable,2022-10-24 21:40:27
|
||||
@@ -2775,7 +2768,7 @@
|
||||
0100E6B0115FC000,"Star99",online,menus,2021-11-26 14:18:51
|
||||
01002100137BA000,"Stardash",,playable,2021-01-21 16:31:19
|
||||
0100E65002BB8000,"Stardew Valley",online-broken;ldn-untested,playable,2024-02-14 03:11:19
|
||||
01002CC003FE6000,"Starlink: Battle for Atlas™ Digital Edition",,playable,2025-07-30 12:09:37
|
||||
01002CC003FE6000,"Starlink: Battle for Atlas™ Digital Edition",services-horizon;crash;Needs Update,nothing,2024-05-05 17:25:11
|
||||
010098E010FDA000,"Starlit Adventures Golden Stars",,playable,2020-11-21 12:14:43
|
||||
01001BB00AC26000,"STARSHIP AVENGER Operation: Take Back Earth",,playable,2021-01-12 15:52:55
|
||||
010000700A572000,"State of Anarchy: Master of Mayhem",nvdec,playable,2021-01-12 19:00:05
|
||||
@@ -2983,7 +2976,6 @@
|
||||
0100C2E0129A6000,"The Executioner",nvdec,playable,2021-01-23 00:31:28
|
||||
01006050114D4000,"The Experiment: Escape Room",gpu,ingame,2022-09-30 13:20:35
|
||||
0100B5900DFB2000,"The Eyes of Ara",,playable,2022-09-16 14:44:06
|
||||
0100BA5013E52000,"The Falconeer: Warrior Edition",,playable,2025-07-30 12:04:50
|
||||
01002DD00AF9E000,"The Fall",gpu,ingame,2020-05-31 23:31:16
|
||||
01003E5002320000,"The Fall Part 2: Unbound",,playable,2021-11-06 02:18:08
|
||||
0100CDC00789E000,"The Final Station",nvdec,playable,2022-08-22 15:54:39
|
||||
@@ -3206,7 +3198,6 @@
|
||||
010000400F582000,"TT Isle of Man Ride on the Edge 2",gpu;nvdec;online-broken,ingame,2022-09-30 22:13:05
|
||||
0100752011628000,"TTV2",,playable,2020-11-27 13:21:36
|
||||
0100AFE00452E000,"Tumblestone",,playable,2021-01-07 17:49:20
|
||||
0100D1A01D7BA000,"Turbo Overkill",,playable,2025-07-30 12:08:57
|
||||
010085500D5F6000,"Turok",gpu,ingame,2021-06-04 13:16:24
|
||||
0100CDC00D8D6000,"Turok 2: Seeds of Evil",gpu;vulkan,ingame,2022-09-12 17:50:05
|
||||
010004B0130C8000,"Turrican Flashback",audout,playable,2021-08-30 10:07:56
|
||||
@@ -3230,8 +3221,6 @@
|
||||
0100592005164000,"UNBOX: Newbie's Adventure",UE4,playable,2022-08-29 13:12:56
|
||||
01002D900C5E4000,"Uncanny Valley",nvdec,playable,2021-06-04 13:28:45
|
||||
010076F011F54000,"Undead & Beyond",nvdec,playable,2022-10-04 09:11:18
|
||||
01009B700D0B8000,"Undead Horde",,playable,2025-07-30 12:05:05
|
||||
0100FC301A878000,"Undead Horde 2: Necropolis",,playable,2025-07-30 12:06:07
|
||||
01008F3013E4E000,"Under Leaves",,playable,2021-05-22 18:13:58
|
||||
010080B00AD66000,"Undertale",,playable,2022-08-31 17:31:46
|
||||
01008F80049C6000,"Unepic",,playable,2024-01-15 17:03:00
|
||||
|
||||
|
@@ -73,6 +73,7 @@
|
||||
<PackageReference Include="Silk.NET.Vulkan.Extensions.EXT" />
|
||||
<PackageReference Include="Silk.NET.Vulkan.Extensions.KHR" />
|
||||
<PackageReference Include="SPB" />
|
||||
<PackageReference Include="Starscript.Net"/>
|
||||
<PackageReference Include="SharpZipLib" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@@ -14,6 +14,7 @@ using LibHac.Tools.FsSystem.NcaUtils;
|
||||
using Ryujinx.Ava.Common.Models;
|
||||
using Ryujinx.Ava.Systems.Configuration;
|
||||
using Ryujinx.Ava.Systems.Configuration.System;
|
||||
using Ryujinx.Ava.Systems.Starscript;
|
||||
using Ryujinx.Ava.Utilities;
|
||||
using Ryujinx.Common;
|
||||
using Ryujinx.Common.Configuration;
|
||||
@@ -25,6 +26,7 @@ using Ryujinx.HLE.HOS.SystemState;
|
||||
using Ryujinx.HLE.Loaders.Npdm;
|
||||
using Ryujinx.HLE.Loaders.Processes.Extensions;
|
||||
using Ryujinx.HLE.Utilities;
|
||||
using Starscript;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
@@ -41,7 +43,7 @@ using TimeSpan = System.TimeSpan;
|
||||
|
||||
namespace Ryujinx.Ava.Systems.AppLibrary
|
||||
{
|
||||
public class ApplicationLibrary
|
||||
public class ApplicationLibrary : IStarscriptObject
|
||||
{
|
||||
public Language DesiredLanguage { get; set; }
|
||||
public event EventHandler<ApplicationCountUpdatedEventArgs> ApplicationCountUpdated;
|
||||
@@ -1611,5 +1613,14 @@ namespace Ryujinx.Ava.Systems.AppLibrary
|
||||
ApplicationData newApplication = newApplications.First(it => it.IdBase == appIdBase);
|
||||
_applications.AddOrUpdate(newApplication);
|
||||
}
|
||||
|
||||
private ValueMap _starscriptMap;
|
||||
|
||||
public ValueMap ToStarscript()
|
||||
{
|
||||
_starscriptMap ??= StarscriptHelper.Wrap(this);
|
||||
|
||||
return _starscriptMap;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
29
src/Ryujinx/Systems/Starscript/RyujinxStarscript.cs
Normal file
29
src/Ryujinx/Systems/Starscript/RyujinxStarscript.cs
Normal file
@@ -0,0 +1,29 @@
|
||||
using Ryujinx.Ava.Systems.AppLibrary;
|
||||
using Ryujinx.Common;
|
||||
using Starscript;
|
||||
|
||||
namespace Ryujinx.Ava.Systems.Starscript
|
||||
{
|
||||
public static class RyujinxStarscript
|
||||
{
|
||||
public static readonly StarscriptHypervisor Hypervisor = StarscriptHypervisor.Create().WithStandardLibrary(true);
|
||||
|
||||
static RyujinxStarscript()
|
||||
{
|
||||
Hypervisor.Set("ryujinx.releaseChannel",
|
||||
ReleaseInformation.IsCanaryBuild
|
||||
? "Canary"
|
||||
: ReleaseInformation.IsReleaseBuild
|
||||
? "Stable"
|
||||
: "Custom");
|
||||
Hypervisor.Set("ryujinx.version", Program.Version);
|
||||
Hypervisor.Set("appLibrary", RyujinxApp.MainWindow.ApplicationLibrary);
|
||||
Hypervisor.Set("currentApplication", () =>
|
||||
RyujinxApp.MainWindow.ApplicationLibrary.FindApplication(
|
||||
RyujinxApp.MainWindow.ViewModel.AppHost?.ApplicationId ?? 0,
|
||||
out ApplicationData appData)
|
||||
? StarscriptHelper.Wrap(appData)
|
||||
: Value.Null);
|
||||
}
|
||||
}
|
||||
}
|
||||
68
src/Ryujinx/Systems/Starscript/StarscriptHelper.cs
Normal file
68
src/Ryujinx/Systems/Starscript/StarscriptHelper.cs
Normal file
@@ -0,0 +1,68 @@
|
||||
using Gommon;
|
||||
using Ryujinx.Ava.Systems.AppLibrary;
|
||||
using Starscript;
|
||||
using System;
|
||||
|
||||
namespace Ryujinx.Ava.Systems.Starscript
|
||||
{
|
||||
public static class StarscriptHelper
|
||||
{
|
||||
public static ValueMap Wrap(ApplicationLibrary appLib)
|
||||
{
|
||||
ValueMap lMap = new();
|
||||
lMap.Set("appCount", () => appLib.Applications.Count);
|
||||
lMap.Set("dlcCount", () => appLib.DownloadableContents.Count);
|
||||
lMap.Set("updateCount", () => appLib.TitleUpdates.Count);
|
||||
lMap.Set("has", ctx =>
|
||||
{
|
||||
ulong titleId;
|
||||
|
||||
try
|
||||
{
|
||||
titleId = ctx.Constrain(Constraint.ExactlyOneArgument).NextString(1).ToULong();
|
||||
}
|
||||
catch (FormatException)
|
||||
{
|
||||
throw ctx.Error(
|
||||
$"Invalid input to {ctx.FormattedName}; input must be a hexadecimal number in a string.");
|
||||
}
|
||||
|
||||
return appLib.FindApplication(titleId, out _);
|
||||
});
|
||||
lMap.Set("get", ctx =>
|
||||
{
|
||||
ulong titleId;
|
||||
|
||||
try
|
||||
{
|
||||
titleId = ctx.Constrain(Constraint.ExactlyOneArgument).NextString(1).ToULong();
|
||||
}
|
||||
catch (FormatException)
|
||||
{
|
||||
throw ctx.Error(
|
||||
$"Invalid input to {ctx.FormattedName}; input must be a hexadecimal number in a string.");
|
||||
}
|
||||
|
||||
return appLib.FindApplication(titleId,
|
||||
out ApplicationData applicationData)
|
||||
? Wrap(applicationData)
|
||||
: null;
|
||||
});
|
||||
return lMap;
|
||||
}
|
||||
|
||||
public static ValueMap Wrap(ApplicationData appData)
|
||||
{
|
||||
ValueMap aMap = new();
|
||||
aMap.Set("name", appData.Name);
|
||||
aMap.Set("version", appData.Version);
|
||||
aMap.Set("developer", appData.Developer);
|
||||
aMap.Set("fileExtension", appData.FileExtension);
|
||||
aMap.Set("fileSize", appData.FileSizeString);
|
||||
aMap.Set("hasLdnGames", appData.HasLdnGames);
|
||||
aMap.Set("timePlayed", appData.TimePlayedString);
|
||||
aMap.Set("isFavorite", appData.Favorite);
|
||||
return aMap;
|
||||
}
|
||||
}
|
||||
}
|
||||
21
src/Ryujinx/Systems/Starscript/StarscriptTextBox.axaml
Normal file
21
src/Ryujinx/Systems/Starscript/StarscriptTextBox.axaml
Normal file
@@ -0,0 +1,21 @@
|
||||
<UserControl xmlns="https://github.com/avaloniaui"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
|
||||
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
|
||||
xmlns:local="using:Ryujinx.Ava.Systems.Starscript"
|
||||
mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
|
||||
x:Class="Ryujinx.Ava.Systems.Starscript.StarscriptTextBox"
|
||||
x:DataType="local:StarscriptTextBoxViewModel">
|
||||
<StackPanel Spacing="10">
|
||||
<TextBlock Text="{Binding ErrorMessage}" IsVisible="{Binding HasError}"/>
|
||||
<TextBlock Text="{Binding CurrentScriptResult}" IsVisible="{Binding !HasError}"/>
|
||||
<AutoCompleteBox Name="InputBox"
|
||||
HorizontalAlignment="Stretch"
|
||||
VerticalAlignment="Stretch"
|
||||
FilterMode="Custom"
|
||||
MinimumPrefixLength="0"
|
||||
MaxDropDownHeight="400">
|
||||
</AutoCompleteBox>
|
||||
</StackPanel>
|
||||
</UserControl>
|
||||
|
||||
87
src/Ryujinx/Systems/Starscript/StarscriptTextBox.axaml.cs
Normal file
87
src/Ryujinx/Systems/Starscript/StarscriptTextBox.axaml.cs
Normal file
@@ -0,0 +1,87 @@
|
||||
using Avalonia;
|
||||
using Avalonia.Controls;
|
||||
using Avalonia.Styling;
|
||||
using FluentAvalonia.UI.Controls;
|
||||
using Humanizer;
|
||||
using Ryujinx.Ava.Common.Locale;
|
||||
using Ryujinx.Ava.UI.Controls;
|
||||
using Ryujinx.Ava.UI.Helpers;
|
||||
using Starscript;
|
||||
using Starscript.Internal;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using System.Threading;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Ryujinx.Ava.Systems.Starscript
|
||||
{
|
||||
public partial class StarscriptTextBox : RyujinxControl<StarscriptTextBoxViewModel>
|
||||
{
|
||||
public IReadOnlyList<string> CurrentSuggestions => ViewModel.CurrentSuggestions;
|
||||
|
||||
public ParserResult CurrentScriptSource => ViewModel.CurrentScriptSource;
|
||||
public Exception Exception => ViewModel.Exception;
|
||||
public Script CurrentScript => ViewModel.CurrentScript;
|
||||
public StringSegment CurrentScriptResult => ViewModel.CurrentScriptResult;
|
||||
|
||||
public StarscriptTextBox()
|
||||
{
|
||||
InitializeComponent();
|
||||
|
||||
InputBox.AsyncPopulator = GetSuggestionsAsync;
|
||||
InputBox.MinimumPopulateDelay = 0.Seconds();
|
||||
InputBox.TextFilter = (_, _) => true;
|
||||
InputBox.TextSelector = (text, suggestion) =>
|
||||
{
|
||||
if (text is not null && suggestion is null)
|
||||
return text;
|
||||
if (text is null && suggestion is not null)
|
||||
return suggestion;
|
||||
// ReSharper disable once ConditionIsAlwaysTrueOrFalse
|
||||
if (text is null && suggestion is null)
|
||||
return string.Empty;
|
||||
|
||||
var sb = new StringBuilder(text.Length + suggestion.Length + 1);
|
||||
sb.Append(text);
|
||||
|
||||
for (int i = 0; i < suggestion.Length - 1; i++)
|
||||
{
|
||||
if (text.EndsWith(suggestion[..(suggestion.Length - i - 1)]))
|
||||
{
|
||||
suggestion = suggestion[(suggestion.Length - i - 1)..];
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
sb.Append(suggestion);
|
||||
|
||||
return sb.ToString();
|
||||
};
|
||||
|
||||
Style textStyle = new(x => x.OfType<AutoCompleteBox>().Descendant().OfType<TextBlock>());
|
||||
textStyle.Setters.Add(new Setter(MarginProperty, new Thickness(0, 0)));
|
||||
|
||||
Styles.Add(textStyle);
|
||||
}
|
||||
|
||||
private Task<IEnumerable<object>> GetSuggestionsAsync(string input, CancellationToken token)
|
||||
=> Task.FromResult(ViewModel.GetSuggestions(input, token));
|
||||
|
||||
public static StarscriptTextBox Create(StarscriptHypervisor hv)
|
||||
=> new() { ViewModel = new StarscriptTextBoxViewModel(hv) };
|
||||
|
||||
public static async Task Show()
|
||||
{
|
||||
ContentDialog contentDialog = new()
|
||||
{
|
||||
PrimaryButtonText = string.Empty,
|
||||
SecondaryButtonText = string.Empty,
|
||||
CloseButtonText = LocaleManager.Instance[LocaleKeys.UserProfilesClose],
|
||||
Content = new StarscriptTextBox { ViewModel = new() }
|
||||
};
|
||||
|
||||
await ContentDialogHelper.ShowAsync(contentDialog.ApplyStyles());
|
||||
}
|
||||
}
|
||||
}
|
||||
126
src/Ryujinx/Systems/Starscript/StarscriptTextBoxViewModel.cs
Normal file
126
src/Ryujinx/Systems/Starscript/StarscriptTextBoxViewModel.cs
Normal file
@@ -0,0 +1,126 @@
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using Ryujinx.Ava.UI.ViewModels;
|
||||
using Starscript;
|
||||
using Starscript.Internal;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Threading;
|
||||
|
||||
namespace Ryujinx.Ava.Systems.Starscript
|
||||
{
|
||||
public partial class StarscriptTextBoxViewModel : BaseModel
|
||||
{
|
||||
private readonly StarscriptHypervisor _hv;
|
||||
|
||||
public StarscriptTextBoxViewModel(StarscriptHypervisor hv = null)
|
||||
{
|
||||
_hv = hv ?? RyujinxStarscript.Hypervisor;
|
||||
}
|
||||
|
||||
public ObservableCollection<string> CurrentSuggestions { get; } = [];
|
||||
|
||||
[ObservableProperty] private bool _hasError;
|
||||
[ObservableProperty] private StringSegment _currentScriptResult;
|
||||
[ObservableProperty] private string _errorMessage;
|
||||
private Exception _exception;
|
||||
private ParserResult _currentScriptSource;
|
||||
private Script _currentScript;
|
||||
|
||||
public Exception Exception
|
||||
{
|
||||
get => _exception;
|
||||
set
|
||||
{
|
||||
ErrorMessage = (_exception = value) switch
|
||||
{
|
||||
ParseException pe => pe.Error.ToString(),
|
||||
StarscriptException se => se.Message,
|
||||
_ => string.Empty
|
||||
};
|
||||
|
||||
HasError = value is not null;
|
||||
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public ParserResult CurrentScriptSource
|
||||
{
|
||||
get => _currentScriptSource;
|
||||
set
|
||||
{
|
||||
_currentScriptSource = value;
|
||||
|
||||
if (value is null)
|
||||
{
|
||||
CurrentScript = null;
|
||||
CurrentScriptResult = null;
|
||||
Exception = null;
|
||||
return;
|
||||
}
|
||||
|
||||
CurrentScript = Compiler.SingleCompile(value);
|
||||
Exception = null;
|
||||
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public Script CurrentScript
|
||||
{
|
||||
get => _currentScript;
|
||||
private set
|
||||
{
|
||||
try
|
||||
{
|
||||
CurrentScriptResult = value?.Execute(_hv)!;
|
||||
_currentScript = value;
|
||||
Exception = null;
|
||||
}
|
||||
catch (StarscriptException se)
|
||||
{
|
||||
_currentScript = null;
|
||||
CurrentScriptResult = null;
|
||||
Exception = se;
|
||||
}
|
||||
|
||||
OnPropertyChanged();
|
||||
}
|
||||
}
|
||||
|
||||
public void ReExecuteScript()
|
||||
{
|
||||
if (_currentScript is null) return;
|
||||
|
||||
try
|
||||
{
|
||||
CurrentScriptResult = _currentScript.Execute(_hv)!;
|
||||
}
|
||||
catch (StarscriptException se)
|
||||
{
|
||||
CurrentScriptResult = null;
|
||||
Exception = se;
|
||||
}
|
||||
}
|
||||
|
||||
public IEnumerable<object> GetSuggestions(string input, CancellationToken token)
|
||||
{
|
||||
CurrentSuggestions.Clear();
|
||||
|
||||
CurrentScriptSource = _hv.ParseAndGetCompletions(input, input.Length, CompletionCallback, token);
|
||||
|
||||
if (CurrentScriptSource.HasErrors)
|
||||
{
|
||||
Exception = new ParseException(CurrentScriptSource.Errors.First());
|
||||
}
|
||||
|
||||
OnPropertyChanged(nameof(CurrentSuggestions));
|
||||
|
||||
return CurrentSuggestions;
|
||||
}
|
||||
|
||||
private void CompletionCallback(string result, bool isFunction) => CurrentSuggestions.Add(isFunction ? $"{result}(" : result);
|
||||
}
|
||||
}
|
||||
@@ -14,7 +14,8 @@
|
||||
Command="{Binding ToggleFavorite}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuToggleFavorite}"
|
||||
Icon="{ext:Icon fa-solid fa-star}" />
|
||||
Icon="{ext:Icon fa-solid fa-star}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuToggleFavoriteToolTip}" />
|
||||
<MenuItem
|
||||
Command="{Binding CreateApplicationShortcut}"
|
||||
CommandParameter="{Binding}"
|
||||
@@ -46,37 +47,43 @@
|
||||
Command="{Binding OpenApplicationData}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuShowGameData}"
|
||||
Icon="{ext:Icon fa-solid fa-chart-line}" />
|
||||
Icon="{ext:Icon fa-solid fa-chart-line}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuShowGameDataToolTip}"/>
|
||||
<Separator />
|
||||
<MenuItem
|
||||
Command="{Binding OpenUserSaveDirectory}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuOpenUserSaveDirectory}"
|
||||
Icon="{ext:Icon fa-solid fa-sd-card}"
|
||||
IsEnabled="{Binding OpenUserSaveDirectoryEnabled}" />
|
||||
IsEnabled="{Binding OpenUserSaveDirectoryEnabled}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuOpenUserSaveDirectoryToolTip}" />
|
||||
<MenuItem
|
||||
Command="{Binding OpenDeviceSaveDirectory}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuOpenDeviceSaveDirectory}"
|
||||
Icon="{ext:Icon fa-solid fa-hard-drive}"
|
||||
IsEnabled="{Binding OpenDeviceSaveDirectoryEnabled}" />
|
||||
IsEnabled="{Binding OpenDeviceSaveDirectoryEnabled}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuOpenDeviceSaveDirectoryToolTip}" />
|
||||
<MenuItem
|
||||
Command="{Binding OpenBcatSaveDirectory}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuOpenBcatSaveDirectory}"
|
||||
Icon="{ext:Icon fa-solid fa-box-archive}"
|
||||
IsEnabled="{Binding OpenBcatSaveDirectoryEnabled}" />
|
||||
IsEnabled="{Binding OpenBcatSaveDirectoryEnabled}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuOpenBcatSaveDirectoryToolTip}" />
|
||||
<Separator />
|
||||
<MenuItem
|
||||
Command="{Binding OpenTitleUpdateManager}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuManageTitleUpdates}"
|
||||
Icon="{ext:Icon fa-solid fa-code-compare}" />
|
||||
Icon="{ext:Icon fa-solid fa-code-compare}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuManageTitleUpdatesToolTip}" />
|
||||
<MenuItem
|
||||
Command="{Binding OpenDownloadableContentManager}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuManageDlc}"
|
||||
Icon="{ext:Icon fa-solid fa-download}" />
|
||||
Icon="{ext:Icon fa-solid fa-download}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuManageDlcToolTip}" />
|
||||
<MenuItem
|
||||
Command="{Binding OpenCheatManager}"
|
||||
CommandParameter="{Binding}"
|
||||
@@ -94,7 +101,8 @@
|
||||
Command="{Binding OpenModsDirectory}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuOpenModsDirectory}"
|
||||
Icon="{ext:Icon fa-solid fa-folder}" />
|
||||
Icon="{ext:Icon fa-solid fa-folder}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuOpenModsDirectoryToolTip}" />
|
||||
<MenuItem
|
||||
Command="{Binding OpenSdModsDirectory}"
|
||||
CommandParameter="{Binding}"
|
||||
@@ -132,12 +140,14 @@
|
||||
Command="{Binding OpenPtcDirectory}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuCacheManagementOpenPptcDirectory}"
|
||||
Icon="{ext:Icon fa-solid fa-folder}" />
|
||||
Icon="{ext:Icon fa-solid fa-folder}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuCacheManagementOpenPptcDirectoryToolTip}" />
|
||||
<MenuItem
|
||||
Command="{Binding OpenShaderCacheDirectory}"
|
||||
CommandParameter="{Binding}"
|
||||
Header="{ext:Locale GameListContextMenuCacheManagementOpenShaderCacheDirectory}"
|
||||
Icon="{ext:Icon fa-solid fa-folder}" />
|
||||
Icon="{ext:Icon fa-solid fa-folder}"
|
||||
ToolTip.Tip="{ext:Locale GameListContextMenuCacheManagementOpenShaderCacheDirectoryToolTip}" />
|
||||
</MenuItem>
|
||||
<MenuItem Header="{ext:Locale GameListContextMenuExtractData}" Icon="{ext:Icon fa-solid fa-file-export}">
|
||||
<MenuItem
|
||||
|
||||
@@ -253,6 +253,10 @@
|
||||
Header="{ext:Locale MenuBarHelpAbout}"
|
||||
Icon="{ext:Icon fa-solid fa-circle-info}"
|
||||
ToolTip.Tip="{ext:Locale OpenAboutTooltip}" />
|
||||
<MenuItem
|
||||
Name="StarscriptDebugMenuItem"
|
||||
Header="Debug Starscript"
|
||||
Icon="{ext:Icon fa-solid fa-star}" />
|
||||
<MenuItem
|
||||
Name="UpdateMenuItem"
|
||||
IsEnabled="{Binding CanUpdate}"
|
||||
|
||||
@@ -8,6 +8,7 @@ using LibHac.Ns;
|
||||
using Ryujinx.Ava.Common.Locale;
|
||||
using Ryujinx.Ava.Systems.AppLibrary;
|
||||
using Ryujinx.Ava.Systems.Configuration;
|
||||
using Ryujinx.Ava.Systems.Starscript;
|
||||
using Ryujinx.Ava.UI.Controls;
|
||||
using Ryujinx.Ava.UI.Helpers;
|
||||
using Ryujinx.Ava.UI.ViewModels;
|
||||
@@ -51,6 +52,8 @@ namespace Ryujinx.Ava.UI.Views.Main
|
||||
CompatibilityListMenuItem.Command = Commands.Create(() => CompatibilityListWindow.Show());
|
||||
|
||||
UpdateMenuItem.Command = MainWindowViewModel.UpdateCommand;
|
||||
|
||||
StarscriptDebugMenuItem.Command = Commands.Create(StarscriptTextBox.Show);
|
||||
|
||||
FaqMenuItem.Command =
|
||||
SetupGuideMenuItem.Command =
|
||||
|
||||
Reference in New Issue
Block a user