From d5d02d933a5e4c55830eb127491bc4fc30c3352f Mon Sep 17 00:00:00 2001 From: xkeyC <3334969096@qq.com> Date: Sat, 14 Oct 2023 23:47:15 +0800 Subject: [PATCH] =?UTF-8?q?=E9=80=82=E9=85=8D=E6=9C=BA=E5=BA=93=E5=8D=87?= =?UTF-8?q?=E7=BA=A7=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- StarCitizenBoxBrowserEx/core.js | 29 ++++++++++++++----- StarCitizenBoxBrowserEx/manifest.json | 2 +- StarCitizenBoxBrowserEx_Firefox/core.js | 29 ++++++++++++++----- StarCitizenBoxBrowserEx_Firefox/manifest.json | 2 +- 4 files changed, 46 insertions(+), 16 deletions(-) diff --git a/StarCitizenBoxBrowserEx/core.js b/StarCitizenBoxBrowserEx/core.js index 18c98f7..d0732bd 100644 --- a/StarCitizenBoxBrowserEx/core.js +++ b/StarCitizenBoxBrowserEx/core.js @@ -144,14 +144,29 @@ function GetSCLocalizationTranslateString(txtSrc) { } else if (SCLocalizationEnableSplitMode) { if (sourceKey.includes(" - ")) { let nodeValue = txtSrc - sourceKey.split(" - ").forEach(function (splitKey) { - if (SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) { - nodeValue = nodeValue.replace(splitKey, SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) + let splitKey = sourceKey.split(" - "); + if (splitKey[0].toLowerCase() === "upgrade" && key.includes("to") && key.endsWith("edition")) { + // 升级包规则 + let noVersionStr = key.replace("STANDARD EDITION".toLowerCase(), "").replace("upgrade", "").replace("WARBOND EDITION".toLowerCase(), "") + let shipNames = noVersionStr.split(" to ") + let finalString = "升级包 " + GetSCLocalizationTranslateString(shipNames[0]) + " 到 " + GetSCLocalizationTranslateString(shipNames[1]); + if (key.endsWith("WARBOND EDITION".toLowerCase())) { + finalString = finalString + " 战争债券版" } else { - nodeValue = nodeValue.replace(splitKey, GetSCLocalizationTranslateString(splitKey)) + finalString = finalString + " 标准版" } - }); - txtSrc = nodeValue + txtSrc = finalString + } else { + // 机库通用规则 + splitKey.forEach(function (splitKey) { + if (SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) { + nodeValue = nodeValue.replace(splitKey, SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) + } else { + nodeValue = nodeValue.replace(splitKey, GetSCLocalizationTranslateString(splitKey)) + } + }); + txtSrc = nodeValue + } } else if (key.endsWith("starter pack") || key.endsWith("starter package")) { let shipName = key.replace("starter package", "").replace("starter pack", "").trim() if (SCLocalizationReplaceLocalesMap[shipName.toLowerCase()]) { @@ -161,7 +176,7 @@ function GetSCLocalizationTranslateString(txtSrc) { } else if (key.startsWith("the ") && SCLocalizationReplaceLocalesMap[noTheKey]) { txtSrc = SCLocalizationReplaceLocalesMap[noTheKey]; } else if (key.startsWith("- ") && SCLocalizationReplaceLocalesMap[noHorizontalKey]) { - txtSrc = "- "+SCLocalizationReplaceLocalesMap[noHorizontalKey]; + txtSrc = "- " + SCLocalizationReplaceLocalesMap[noHorizontalKey]; } } return txtSrc diff --git a/StarCitizenBoxBrowserEx/manifest.json b/StarCitizenBoxBrowserEx/manifest.json index 685dd39..bb919eb 100644 --- a/StarCitizenBoxBrowserEx/manifest.json +++ b/StarCitizenBoxBrowserEx/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 3, "name": "星际公民盒子浏览器拓展", - "version": "0.0.3", + "version": "0.0.4", "description": "为星际公民网站及工具站提供汉化", "author": "xkeyC", "icons": { diff --git a/StarCitizenBoxBrowserEx_Firefox/core.js b/StarCitizenBoxBrowserEx_Firefox/core.js index 18c98f7..d0732bd 100644 --- a/StarCitizenBoxBrowserEx_Firefox/core.js +++ b/StarCitizenBoxBrowserEx_Firefox/core.js @@ -144,14 +144,29 @@ function GetSCLocalizationTranslateString(txtSrc) { } else if (SCLocalizationEnableSplitMode) { if (sourceKey.includes(" - ")) { let nodeValue = txtSrc - sourceKey.split(" - ").forEach(function (splitKey) { - if (SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) { - nodeValue = nodeValue.replace(splitKey, SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) + let splitKey = sourceKey.split(" - "); + if (splitKey[0].toLowerCase() === "upgrade" && key.includes("to") && key.endsWith("edition")) { + // 升级包规则 + let noVersionStr = key.replace("STANDARD EDITION".toLowerCase(), "").replace("upgrade", "").replace("WARBOND EDITION".toLowerCase(), "") + let shipNames = noVersionStr.split(" to ") + let finalString = "升级包 " + GetSCLocalizationTranslateString(shipNames[0]) + " 到 " + GetSCLocalizationTranslateString(shipNames[1]); + if (key.endsWith("WARBOND EDITION".toLowerCase())) { + finalString = finalString + " 战争债券版" } else { - nodeValue = nodeValue.replace(splitKey, GetSCLocalizationTranslateString(splitKey)) + finalString = finalString + " 标准版" } - }); - txtSrc = nodeValue + txtSrc = finalString + } else { + // 机库通用规则 + splitKey.forEach(function (splitKey) { + if (SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) { + nodeValue = nodeValue.replace(splitKey, SCLocalizationReplaceLocalesMap[splitKey.toLowerCase()]) + } else { + nodeValue = nodeValue.replace(splitKey, GetSCLocalizationTranslateString(splitKey)) + } + }); + txtSrc = nodeValue + } } else if (key.endsWith("starter pack") || key.endsWith("starter package")) { let shipName = key.replace("starter package", "").replace("starter pack", "").trim() if (SCLocalizationReplaceLocalesMap[shipName.toLowerCase()]) { @@ -161,7 +176,7 @@ function GetSCLocalizationTranslateString(txtSrc) { } else if (key.startsWith("the ") && SCLocalizationReplaceLocalesMap[noTheKey]) { txtSrc = SCLocalizationReplaceLocalesMap[noTheKey]; } else if (key.startsWith("- ") && SCLocalizationReplaceLocalesMap[noHorizontalKey]) { - txtSrc = "- "+SCLocalizationReplaceLocalesMap[noHorizontalKey]; + txtSrc = "- " + SCLocalizationReplaceLocalesMap[noHorizontalKey]; } } return txtSrc diff --git a/StarCitizenBoxBrowserEx_Firefox/manifest.json b/StarCitizenBoxBrowserEx_Firefox/manifest.json index 197e779..ef232fb 100644 --- a/StarCitizenBoxBrowserEx_Firefox/manifest.json +++ b/StarCitizenBoxBrowserEx_Firefox/manifest.json @@ -1,7 +1,7 @@ { "manifest_version": 2, "name": "星际公民盒子浏览器拓展", - "version": "0.0.3", + "version": "0.0.4", "description": "为星际公民网站及工具站提供汉化", "author": "xkeyC", "icons": {