diff --git a/static/webui/index.html b/static/webui/index.html
index 4be2cce0..d01f8c90 100644
--- a/static/webui/index.html
+++ b/static/webui/index.html
@@ -483,47 +483,47 @@
diff --git a/static/webui/script.js b/static/webui/script.js
index 036e2f9e..449da772 100644
--- a/static/webui/script.js
+++ b/static/webui/script.js
@@ -2906,8 +2906,8 @@ function submitSuitInvigorationUpgrade(event) {
const defensiveUpgrade = document.getElementById("dv-invigoration-defensive").value;
const expiry = document.getElementById("dv-invigoration-expiry").value;
- if (!offensiveUpgrade && !defensiveUpgrade) {
- alert("Please select at least one upgrade type.");
+ if (!offensiveUpgrade || !defensiveUpgrade) {
+ alert(loc("code_requiredInvigorationUpgrade"));
return;
}
diff --git a/static/webui/translations/de.js b/static/webui/translations/de.js
index fb3d1357..a432bf2f 100644
--- a/static/webui/translations/de.js
+++ b/static/webui/translations/de.js
@@ -62,6 +62,7 @@ dict = {
code_mature: `Für den Kampf auswachsen lassen`,
code_unmature: `Genetisches Altern zurücksetzen`,
code_succChange: `[UNTRANSLATED] Successfully changed.`,
+ code_requiredInvigorationUpgrade: `[UNTRANSLATED] You must select both an offensive and a defensive upgrade.`,
login_description: `Melde dich mit deinem OpenWF-Account an (denselben Angaben wie im Spiel, wenn du dich mit diesem Server verbindest).`,
login_emailLabel: `E-Mail-Adresse`,
login_passwordLabel: `Passwort`,
@@ -127,6 +128,35 @@ dict = {
detailedView_modularPartsLabel: `[UNTRANSLATED] Change Modular Parts`,
detailedView_editSuitInvigoration: `[UNTRANSLATED] Edit Suit Invigoration`,
+ invigorations_offensive_PowerStrength: `[UNTRANSLATED] Power Strength`,
+ invigorations_offensive_PowerRange: `[UNTRANSLATED] Power Range`,
+ invigorations_offensive_PowerDuration: `[UNTRANSLATED] Power Duration`,
+ invigorations_offensive_MeleeDamage: `[UNTRANSLATED] Melee Damage`,
+ invigorations_offensive_PrimaryDamage: `[UNTRANSLATED] Primary Damage`,
+ invigorations_offensive_SecondaryDamage: `[UNTRANSLATED] Secondary Damage`,
+ invigorations_offensive_PrimaryCritChance: `[UNTRANSLATED] Primary Critical Chance`,
+ invigorations_offensive_SecondaryCritChance: `[UNTRANSLATED] Secondary Critical Chance`,
+ invigorations_offensive_MeleeCritChance: `[UNTRANSLATED] Melee Critical Chance`,
+
+ invigorations_utility_PowerEfficiency: `[UNTRANSLATED] Power Efficiency`,
+ invigorations_utility_MovementSpeed: `[UNTRANSLATED] Movement Speed`,
+ invigorations_utility_ParkourSpeed: `[UNTRANSLATED] Parkour Speed`,
+ invigorations_utility_Health: `[UNTRANSLATED] Health`,
+ invigorations_utility_Energy: `[UNTRANSLATED] Energy`,
+ invigorations_utility_StatusResistance: `[UNTRANSLATED] Status Resistance`,
+ invigorations_utility_ReloadSpeed: `[UNTRANSLATED] Reload Speed`,
+ invigorations_utility_HealthRegen: `[UNTRANSLATED] Health Regen`,
+ invigorations_utility_Armor: `[UNTRANSLATED] Armor`,
+ invigorations_utility_Jumps: `[UNTRANSLATED] Jumps`,
+ invigorations_utility_EnergyRegen: `[UNTRANSLATED] Energy Regen`,
+
+ invigorations_offensiveLabel: `[UNTRANSLATED] Offensive Upgrade`,
+ invigorations_defensiveLabel: `[UNTRANSLATED] Defensive Upgrade`,
+ invigorations_expiryLabel: `[UNTRANSLATED] Upgrades Expiry (optional)`,
+ invigorations_applyButton: `[UNTRANSLATED] Apply Upgrades`,
+ invigorations_clearButton: `[UNTRANSLATED] Clear Upgrades`,
+ invigorations_noneOption: `[UNTRANSLATED] None`,
+
mods_addRiven: `Riven hinzufügen`,
mods_fingerprint: `Fingerabdruck`,
mods_fingerprintHelp: `Benötigst du Hilfe mit dem Fingerabdruck?`,
diff --git a/static/webui/translations/en.js b/static/webui/translations/en.js
index c667d24a..725bb705 100644
--- a/static/webui/translations/en.js
+++ b/static/webui/translations/en.js
@@ -61,6 +61,7 @@ dict = {
code_mature: `Mature for combat`,
code_unmature: `Regress genetic aging`,
code_succChange: `Successfully changed.`,
+ code_requiredInvigorationUpgrade: `You must select both an offensive and a defensive upgrade.`,
login_description: `Login using your OpenWF account credentials (same as in-game when connecting to this server).`,
login_emailLabel: `Email address`,
login_passwordLabel: `Password`,
@@ -126,6 +127,35 @@ dict = {
detailedView_modularPartsLabel: `Change Modular Parts`,
detailedView_editSuitInvigoration: `Edit Suit Invigoration`,
+ invigorations_offensive_PowerStrength: `Power Strength`,
+ invigorations_offensive_PowerRange: `Power Range`,
+ invigorations_offensive_PowerDuration: `Power Duration`,
+ invigorations_offensive_MeleeDamage: `Melee Damage`,
+ invigorations_offensive_PrimaryDamage: `Primary Damage`,
+ invigorations_offensive_SecondaryDamage: `Secondary Damage`,
+ invigorations_offensive_PrimaryCritChance: `Primary Critical Chance`,
+ invigorations_offensive_SecondaryCritChance: `Secondary Critical Chance`,
+ invigorations_offensive_MeleeCritChance: `Melee Critical Chance`,
+
+ invigorations_utility_PowerEfficiency: `Power Efficiency`,
+ invigorations_utility_MovementSpeed: `Movement Speed`,
+ invigorations_utility_ParkourSpeed: `Parkour Speed`,
+ invigorations_utility_Health: `Health`,
+ invigorations_utility_Energy: `Energy`,
+ invigorations_utility_StatusResistance: `Status Resistance`,
+ invigorations_utility_ReloadSpeed: `Reload Speed`,
+ invigorations_utility_HealthRegen: `Health Regen`,
+ invigorations_utility_Armor: `Armor`,
+ invigorations_utility_Jumps: `Jumps`,
+ invigorations_utility_EnergyRegen: `Energy Regen`,
+
+ invigorations_offensiveLabel: `Offensive Upgrade`,
+ invigorations_defensiveLabel: `Defensive Upgrade`,
+ invigorations_expiryLabel: `Upgrades Expiry (optional)`,
+ invigorations_applyButton: `Apply Upgrades`,
+ invigorations_clearButton: `Clear Upgrades`,
+ invigorations_noneOption: `None`,
+
mods_addRiven: `Add Riven`,
mods_fingerprint: `Fingerprint`,
mods_fingerprintHelp: `Need help with the fingerprint?`,
diff --git a/static/webui/translations/es.js b/static/webui/translations/es.js
index 258decfa..c7527b96 100644
--- a/static/webui/translations/es.js
+++ b/static/webui/translations/es.js
@@ -62,6 +62,7 @@ dict = {
code_mature: `Listo para el combate`,
code_unmature: `Regresar el envejecimiento genético`,
code_succChange: `Cambiado correctamente`,
+ code_requiredInvigorationUpgrade: `[UNTRANSLATED] You must select both an offensive and a defensive upgrade.`,
login_description: `Inicia sesión con las credenciales de tu cuenta OpenWF (las mismas que usas en el juego al conectarte a este servidor).`,
login_emailLabel: `Dirección de correo electrónico`,
login_passwordLabel: `Contraseña`,
@@ -127,6 +128,35 @@ dict = {
detailedView_modularPartsLabel: `Cambiar partes modulares`,
detailedView_editSuitInvigoration: `[UNTRANSLATED] Edit Suit Invigoration`,
+ invigorations_offensive_PowerStrength: `[UNTRANSLATED] Power Strength`,
+ invigorations_offensive_PowerRange: `[UNTRANSLATED] Power Range`,
+ invigorations_offensive_PowerDuration: `[UNTRANSLATED] Power Duration`,
+ invigorations_offensive_MeleeDamage: `[UNTRANSLATED] Melee Damage`,
+ invigorations_offensive_PrimaryDamage: `[UNTRANSLATED] Primary Damage`,
+ invigorations_offensive_SecondaryDamage: `[UNTRANSLATED] Secondary Damage`,
+ invigorations_offensive_PrimaryCritChance: `[UNTRANSLATED] Primary Critical Chance`,
+ invigorations_offensive_SecondaryCritChance: `[UNTRANSLATED] Secondary Critical Chance`,
+ invigorations_offensive_MeleeCritChance: `[UNTRANSLATED] Melee Critical Chance`,
+
+ invigorations_utility_PowerEfficiency: `[UNTRANSLATED] Power Efficiency`,
+ invigorations_utility_MovementSpeed: `[UNTRANSLATED] Movement Speed`,
+ invigorations_utility_ParkourSpeed: `[UNTRANSLATED] Parkour Speed`,
+ invigorations_utility_Health: `[UNTRANSLATED] Health`,
+ invigorations_utility_Energy: `[UNTRANSLATED] Energy`,
+ invigorations_utility_StatusResistance: `[UNTRANSLATED] Status Resistance`,
+ invigorations_utility_ReloadSpeed: `[UNTRANSLATED] Reload Speed`,
+ invigorations_utility_HealthRegen: `[UNTRANSLATED] Health Regen`,
+ invigorations_utility_Armor: `[UNTRANSLATED] Armor`,
+ invigorations_utility_Jumps: `[UNTRANSLATED] Jumps`,
+ invigorations_utility_EnergyRegen: `[UNTRANSLATED] Energy Regen`,
+
+ invigorations_offensiveLabel: `[UNTRANSLATED] Offensive Upgrade`,
+ invigorations_defensiveLabel: `[UNTRANSLATED] Defensive Upgrade`,
+ invigorations_expiryLabel: `[UNTRANSLATED] Upgrades Expiry (optional)`,
+ invigorations_applyButton: `[UNTRANSLATED] Apply Upgrades`,
+ invigorations_clearButton: `[UNTRANSLATED] Clear Upgrades`,
+ invigorations_noneOption: `[UNTRANSLATED] None`,
+
mods_addRiven: `Agregar Agrietado`,
mods_fingerprint: `Huella digital`,
mods_fingerprintHelp: `¿Necesitas ayuda con la huella digital?`,
diff --git a/static/webui/translations/fr.js b/static/webui/translations/fr.js
index 5653d9cc..3e0ffada 100644
--- a/static/webui/translations/fr.js
+++ b/static/webui/translations/fr.js
@@ -62,6 +62,7 @@ dict = {
code_mature: `Maturer pour le combat`,
code_unmature: `Régrésser l'âge génétique`,
code_succChange: `[UNTRANSLATED] Successfully changed.`,
+ code_requiredInvigorationUpgrade: `[UNTRANSLATED] You must select both an offensive and a defensive upgrade.`,
login_description: `Connexion avec les informations de connexion OpenWF.`,
login_emailLabel: `Email`,
login_passwordLabel: `Mot de passe`,
@@ -127,6 +128,35 @@ dict = {
detailedView_modularPartsLabel: `[UNTRANSLATED] Change Modular Parts`,
detailedView_editSuitInvigoration: `[UNTRANSLATED] Edit Suit Invigoration`,
+ invigorations_offensive_PowerStrength: `[UNTRANSLATED] Power Strength`,
+ invigorations_offensive_PowerRange: `[UNTRANSLATED] Power Range`,
+ invigorations_offensive_PowerDuration: `[UNTRANSLATED] Power Duration`,
+ invigorations_offensive_MeleeDamage: `[UNTRANSLATED] Melee Damage`,
+ invigorations_offensive_PrimaryDamage: `[UNTRANSLATED] Primary Damage`,
+ invigorations_offensive_SecondaryDamage: `[UNTRANSLATED] Secondary Damage`,
+ invigorations_offensive_PrimaryCritChance: `[UNTRANSLATED] Primary Critical Chance`,
+ invigorations_offensive_SecondaryCritChance: `[UNTRANSLATED] Secondary Critical Chance`,
+ invigorations_offensive_MeleeCritChance: `[UNTRANSLATED] Melee Critical Chance`,
+
+ invigorations_utility_PowerEfficiency: `[UNTRANSLATED] Power Efficiency`,
+ invigorations_utility_MovementSpeed: `[UNTRANSLATED] Movement Speed`,
+ invigorations_utility_ParkourSpeed: `[UNTRANSLATED] Parkour Speed`,
+ invigorations_utility_Health: `[UNTRANSLATED] Health`,
+ invigorations_utility_Energy: `[UNTRANSLATED] Energy`,
+ invigorations_utility_StatusResistance: `[UNTRANSLATED] Status Resistance`,
+ invigorations_utility_ReloadSpeed: `[UNTRANSLATED] Reload Speed`,
+ invigorations_utility_HealthRegen: `[UNTRANSLATED] Health Regen`,
+ invigorations_utility_Armor: `[UNTRANSLATED] Armor`,
+ invigorations_utility_Jumps: `[UNTRANSLATED] Jumps`,
+ invigorations_utility_EnergyRegen: `[UNTRANSLATED] Energy Regen`,
+
+ invigorations_offensiveLabel: `[UNTRANSLATED] Offensive Upgrade`,
+ invigorations_defensiveLabel: `[UNTRANSLATED] Defensive Upgrade`,
+ invigorations_expiryLabel: `[UNTRANSLATED] Upgrades Expiry (optional)`,
+ invigorations_applyButton: `[UNTRANSLATED] Apply Upgrades`,
+ invigorations_clearButton: `[UNTRANSLATED] Clear Upgrades`,
+ invigorations_noneOption: `[UNTRANSLATED] None`,
+
mods_addRiven: `Ajouter un riven`,
mods_fingerprint: `Empreinte`,
mods_fingerprintHelp: `Besoin d'aide pour l'empreinte ?`,
diff --git a/static/webui/translations/ru.js b/static/webui/translations/ru.js
index d2a70e85..d5e460aa 100644
--- a/static/webui/translations/ru.js
+++ b/static/webui/translations/ru.js
@@ -62,6 +62,7 @@ dict = {
code_mature: `Подготовить к сражениям`,
code_unmature: `Регрессия генетического старения`,
code_succChange: `Успешно изменено.`,
+ code_requiredInvigorationUpgrade: `[UNTRANSLATED] You must select both an offensive and a defensive upgrade.`,
login_description: `Войдите, используя учетные данные OpenWF (те же, что и в игре при подключении к этому серверу).`,
login_emailLabel: `Адрес электронной почты`,
login_passwordLabel: `Пароль`,
@@ -127,6 +128,35 @@ dict = {
detailedView_modularPartsLabel: `Изменить Модульные Части`,
detailedView_editSuitInvigoration: `[UNTRANSLATED] Edit Suit Invigoration`,
+ invigorations_offensive_PowerStrength: `[UNTRANSLATED] Power Strength`,
+ invigorations_offensive_PowerRange: `[UNTRANSLATED] Power Range`,
+ invigorations_offensive_PowerDuration: `[UNTRANSLATED] Power Duration`,
+ invigorations_offensive_MeleeDamage: `[UNTRANSLATED] Melee Damage`,
+ invigorations_offensive_PrimaryDamage: `[UNTRANSLATED] Primary Damage`,
+ invigorations_offensive_SecondaryDamage: `[UNTRANSLATED] Secondary Damage`,
+ invigorations_offensive_PrimaryCritChance: `[UNTRANSLATED] Primary Critical Chance`,
+ invigorations_offensive_SecondaryCritChance: `[UNTRANSLATED] Secondary Critical Chance`,
+ invigorations_offensive_MeleeCritChance: `[UNTRANSLATED] Melee Critical Chance`,
+
+ invigorations_utility_PowerEfficiency: `[UNTRANSLATED] Power Efficiency`,
+ invigorations_utility_MovementSpeed: `[UNTRANSLATED] Movement Speed`,
+ invigorations_utility_ParkourSpeed: `[UNTRANSLATED] Parkour Speed`,
+ invigorations_utility_Health: `[UNTRANSLATED] Health`,
+ invigorations_utility_Energy: `[UNTRANSLATED] Energy`,
+ invigorations_utility_StatusResistance: `[UNTRANSLATED] Status Resistance`,
+ invigorations_utility_ReloadSpeed: `[UNTRANSLATED] Reload Speed`,
+ invigorations_utility_HealthRegen: `[UNTRANSLATED] Health Regen`,
+ invigorations_utility_Armor: `[UNTRANSLATED] Armor`,
+ invigorations_utility_Jumps: `[UNTRANSLATED] Jumps`,
+ invigorations_utility_EnergyRegen: `[UNTRANSLATED] Energy Regen`,
+
+ invigorations_offensiveLabel: `[UNTRANSLATED] Offensive Upgrade`,
+ invigorations_defensiveLabel: `[UNTRANSLATED] Defensive Upgrade`,
+ invigorations_expiryLabel: `[UNTRANSLATED] Upgrades Expiry (optional)`,
+ invigorations_applyButton: `[UNTRANSLATED] Apply Upgrades`,
+ invigorations_clearButton: `[UNTRANSLATED] Clear Upgrades`,
+ invigorations_noneOption: `[UNTRANSLATED] None`,
+
mods_addRiven: `Добавить Мод Разлома`,
mods_fingerprint: `Отпечаток`,
mods_fingerprintHelp: `Нужна помощь с отпечатком?`,
diff --git a/static/webui/translations/zh.js b/static/webui/translations/zh.js
index 9e5850eb..f1761ef6 100644
--- a/static/webui/translations/zh.js
+++ b/static/webui/translations/zh.js
@@ -62,6 +62,7 @@ dict = {
code_mature: `成长并战备`,
code_unmature: `逆转衰老基因`,
code_succChange: `更改成功.`,
+ code_requiredInvigorationUpgrade: `[UNTRANSLATED] You must select both an offensive and a defensive upgrade.`,
login_description: `使用您的 OpenWF 账户凭证登录(与游戏内连接本服务器时使用的昵称相同).`,
login_emailLabel: `电子邮箱`,
login_passwordLabel: `密码`,
@@ -127,6 +128,35 @@ dict = {
detailedView_modularPartsLabel: `更换部件`,
detailedView_editSuitInvigoration: `[UNTRANSLATED] Edit Suit Invigoration`,
+ invigorations_offensive_PowerStrength: `[UNTRANSLATED] Power Strength`,
+ invigorations_offensive_PowerRange: `[UNTRANSLATED] Power Range`,
+ invigorations_offensive_PowerDuration: `[UNTRANSLATED] Power Duration`,
+ invigorations_offensive_MeleeDamage: `[UNTRANSLATED] Melee Damage`,
+ invigorations_offensive_PrimaryDamage: `[UNTRANSLATED] Primary Damage`,
+ invigorations_offensive_SecondaryDamage: `[UNTRANSLATED] Secondary Damage`,
+ invigorations_offensive_PrimaryCritChance: `[UNTRANSLATED] Primary Critical Chance`,
+ invigorations_offensive_SecondaryCritChance: `[UNTRANSLATED] Secondary Critical Chance`,
+ invigorations_offensive_MeleeCritChance: `[UNTRANSLATED] Melee Critical Chance`,
+
+ invigorations_utility_PowerEfficiency: `[UNTRANSLATED] Power Efficiency`,
+ invigorations_utility_MovementSpeed: `[UNTRANSLATED] Movement Speed`,
+ invigorations_utility_ParkourSpeed: `[UNTRANSLATED] Parkour Speed`,
+ invigorations_utility_Health: `[UNTRANSLATED] Health`,
+ invigorations_utility_Energy: `[UNTRANSLATED] Energy`,
+ invigorations_utility_StatusResistance: `[UNTRANSLATED] Status Resistance`,
+ invigorations_utility_ReloadSpeed: `[UNTRANSLATED] Reload Speed`,
+ invigorations_utility_HealthRegen: `[UNTRANSLATED] Health Regen`,
+ invigorations_utility_Armor: `[UNTRANSLATED] Armor`,
+ invigorations_utility_Jumps: `[UNTRANSLATED] Jumps`,
+ invigorations_utility_EnergyRegen: `[UNTRANSLATED] Energy Regen`,
+
+ invigorations_offensiveLabel: `[UNTRANSLATED] Offensive Upgrade`,
+ invigorations_defensiveLabel: `[UNTRANSLATED] Defensive Upgrade`,
+ invigorations_expiryLabel: `[UNTRANSLATED] Upgrades Expiry (optional)`,
+ invigorations_applyButton: `[UNTRANSLATED] Apply Upgrades`,
+ invigorations_clearButton: `[UNTRANSLATED] Clear Upgrades`,
+ invigorations_noneOption: `[UNTRANSLATED] None`,
+
mods_addRiven: `添加裂罅MOD`,
mods_fingerprint: `印记`,
mods_fingerprintHelp: `需要印记相关的帮助?`,