diff --git a/config/schemas/mod.json b/config/schemas/mod.json index 48b2f0680..36bc7baa8 100644 --- a/config/schemas/mod.json +++ b/config/schemas/mod.json @@ -55,7 +55,7 @@ }, "modType" : { "type" : "string", - "enum" : [ "Translation", "Town", "Test", "Templates", "Spells", "Music", "Sounds", "Skills", "Other", "Objects", "Mechanics", "Interface", "Heroes", "Graphical", "Expansion", "Creatures", "Artifacts", "AI" ], + "enum" : [ "Translation", "Town", "Test", "Templates", "Spells", "Music", "Maps", "Sounds", "Skills", "Other", "Objects", "Mechanics", "Interface", "Heroes", "Graphical", "Expansion", "Creatures", "Compatibility", "Artifacts", "AI" ], "description" : "Type of mod, e.g. Town, Artifacts, Graphical." }, "author" : { diff --git a/docs/modders/Mod_File_Format.md b/docs/modders/Mod_File_Format.md index 900980457..2b507974d 100644 --- a/docs/modders/Mod_File_Format.md +++ b/docs/modders/Mod_File_Format.md @@ -30,11 +30,13 @@ "version" : "1.2.3" // Type of mod, list of all possible values: - // "Translation", "Town", "Test", "Templates", "Spells", "Music", "Sounds", "Skills", "Other", "Objects", - // "Mechanics", "Interface", "Heroes", "Graphical", "Expansion", "Creatures", "Artifacts", "AI" + // "Translation", "Town", "Test", "Templates", "Spells", "Music", "Maps", "Sounds", "Skills", "Other", "Objects", + // "Mechanics", "Interface", "Heroes", "Graphical", "Expansion", "Creatures", "Compatibility", "Artifacts", "AI" // // Some mod types have additional effects on your mod: - // Translation: mod of this type is only active if player uses base language of this mod. See "language" property. + // Translation: mod of this type is only active if player uses base language of this mod. See "language" property. + // Additionally, if such type is used for submod it will be hidden in UI and automatically activated if player uses base language of this mod. This allows to provide locale-specific resources for a mod + // Compatibility: mods of this type are hidden in UI and will be automatically activated if all mod dependencies are active. Intended to be used to provide compatibility patches between mods "modType" : "Graphical", // Base language of the mod, before applying localizations. By default vcmi assumes English diff --git a/launcher/modManager/cmodlist.cpp b/launcher/modManager/cmodlist.cpp index b6cf4cc07..7e887b5d6 100644 --- a/launcher/modManager/cmodlist.cpp +++ b/launcher/modManager/cmodlist.cpp @@ -90,14 +90,32 @@ bool CModEntry::isInstalled() const return !localData.isEmpty(); } -bool CModEntry::isValid() const +bool CModEntry::isVisible() const { + if (getBaseValue("modType").toString() == "Compatibility") + { + if (isSubmod()) + return false; + } + + if (getBaseValue("modType").toString() == "Translation") + { + // Do not show not installed translation mods to languages other than player language + if (localData.empty() && getBaseValue("language") != QString::fromStdString(settings["general"]["language"].String()) ) + return false; + } + return !localData.isEmpty() || !repository.isEmpty(); } bool CModEntry::isTranslation() const { - return getBaseValue("modType").toString().toLower() == "translation"; + return getBaseValue("modType").toString() == "Translation"; +} + +bool CModEntry::isSubmod() const +{ + return getName().contains('.'); } int CModEntry::getModStatus() const diff --git a/launcher/modManager/cmodlist.h b/launcher/modManager/cmodlist.h index 4143ed4b8..c82a0b88c 100644 --- a/launcher/modManager/cmodlist.h +++ b/launcher/modManager/cmodlist.h @@ -60,10 +60,12 @@ public: bool isEssential() const; // checks if verison is compatible with vcmi bool isCompatible() const; - // returns if has any data - bool isValid() const; + // returns true if mod should be visible in Launcher + bool isVisible() const; // installed and enabled bool isTranslation() const; + // returns true if this is a submod + bool isSubmod() const; // see ModStatus enum int getModStatus() const; diff --git a/launcher/modManager/cmodlistmodel_moc.cpp b/launcher/modManager/cmodlistmodel_moc.cpp index 9bde9860e..cece26b53 100644 --- a/launcher/modManager/cmodlistmodel_moc.cpp +++ b/launcher/modManager/cmodlistmodel_moc.cpp @@ -45,6 +45,7 @@ QString CModListModel::modTypeName(QString modTypeID) const {"Templates", tr("Templates") }, {"Spells", tr("Spells") }, {"Music", tr("Music") }, + {"Maps", tr("Maps") }, {"Sounds", tr("Sounds") }, {"Skills", tr("Skills") }, {"Other", tr("Other") }, @@ -58,6 +59,7 @@ QString CModListModel::modTypeName(QString modTypeID) const {"Graphical", tr("Graphical") }, {"Expansion", tr("Expansion") }, {"Creatures", tr("Creatures") }, + {"Compatibility", tr("Compatibility") }, {"Artifacts", tr("Artifacts") }, {"AI", tr("AI") }, }; @@ -257,7 +259,6 @@ bool CModFilterModel::filterMatchesThis(const QModelIndex & source) const { CModEntry mod = base->getMod(source.data(ModRoles::ModNameRole).toString()); return (mod.getModStatus() & filterMask) == filteredType && - mod.isValid() && QSortFilterProxyModel::filterAcceptsRow(source.row(), source.parent()); } @@ -265,6 +266,10 @@ bool CModFilterModel::filterAcceptsRow(int source_row, const QModelIndex & sourc { QModelIndex index = base->index(source_row, 0, source_parent); + CModEntry mod = base->getMod(index.data(ModRoles::ModNameRole).toString()); + if (!mod.isVisible()) + return false; + if(filterMatchesThis(index)) { return true; diff --git a/launcher/modManager/cmodlistview_moc.cpp b/launcher/modManager/cmodlistview_moc.cpp index f4e8c7be5..0e713bfda 100644 --- a/launcher/modManager/cmodlistview_moc.cpp +++ b/launcher/modManager/cmodlistview_moc.cpp @@ -332,7 +332,7 @@ QString CModListView::genModInfoText(CModEntry & mod) if(mod.isInstalled()) notes += replaceIfNotEmpty(getModNames(findDependentMods(mod.getName(), false)), listTemplate.arg(hasDependentMods)); - if(mod.getName().contains('.')) + if(mod.isSubmod()) notes += noteTemplate.arg(thisIsSubmod); if(notes.size()) @@ -374,8 +374,8 @@ void CModListView::selectMod(const QModelIndex & index) ui->disableButton->setVisible(mod.isEnabled()); ui->enableButton->setVisible(mod.isDisabled()); - ui->installButton->setVisible(mod.isAvailable() && !mod.getName().contains('.')); - ui->uninstallButton->setVisible(mod.isInstalled() && !mod.getName().contains('.')); + ui->installButton->setVisible(mod.isAvailable() && !mod.isSubmod()); + ui->uninstallButton->setVisible(mod.isInstalled() && !mod.isSubmod()); ui->updateButton->setVisible(mod.isUpdateable()); // Block buttons if action is not allowed at this time @@ -921,7 +921,7 @@ void CModListView::on_allModsView_doubleClicked(const QModelIndex &index) bool hasBlockingMods = !findBlockingMods(modName).empty(); bool hasDependentMods = !findDependentMods(modName, true).empty(); - if(!hasInvalidDeps && mod.isAvailable() && !mod.getName().contains('.')) + if(!hasInvalidDeps && mod.isAvailable() && !mod.isSubmod()) { on_installButton_clicked(); return; diff --git a/launcher/modManager/cmodmanager.cpp b/launcher/modManager/cmodmanager.cpp index 4e0c37e59..8e9ed4ee3 100644 --- a/launcher/modManager/cmodmanager.cpp +++ b/launcher/modManager/cmodmanager.cpp @@ -154,7 +154,7 @@ bool CModManager::canInstallMod(QString modname) { auto mod = modList->getMod(modname); - if(mod.getName().contains('.')) + if(mod.isSubmod()) return addError(modname, "Can not install submod"); if(mod.isInstalled()) @@ -169,7 +169,7 @@ bool CModManager::canUninstallMod(QString modname) { auto mod = modList->getMod(modname); - if(mod.getName().contains('.')) + if(mod.isSubmod()) return addError(modname, "Can not uninstall submod"); if(!mod.isInstalled()) diff --git a/launcher/translation/chinese.ts b/launcher/translation/chinese.ts index 6bdd419ce..518ce01ed 100644 --- a/launcher/translation/chinese.ts +++ b/launcher/translation/chinese.ts @@ -120,81 +120,91 @@ + Maps + + + + Sounds 音效 - + Skills 技能 - - + + Other 其他 - + Objects 物件 - + Mechanics 无法确定是否分类是游戏机制或者是游戏中的战争器械 机制 - + Interface 界面 - + Heroes 英雄 - + Graphical 图像 - + Expansion 扩展包 - + Creatures 生物 - + + Compatibility + 兼容性 + + + Artifacts 宝物 - + AI AI - + Name 名称 - + Type 类型 - + Version 版本 @@ -242,164 +252,211 @@ 下载并刷新仓库 - - + + Description 详细介绍 - + Changelog 修改日志 - + Screenshots 截图 - + Uninstall 卸载 - + Enable 激活 - + Disable 禁用 - + Update 更新 - + Install 安装 - + %p% (%v KB out of %m KB) %p% (%v KB 完成,总共 %m KB) - + Abort 终止 - + Mod name MOD名称 - + Installed version 已安装的版本 - + Latest version 最新版本 - + + Size + + + + Download size 下载大小 - + Authors 作者 - + License 授权许可 - + Contact 联系方式 - + Compatibility 兼容性 - - + + Required VCMI version 需要VCMI版本 - + Supported VCMI version 支持的VCMI版本 - + Supported VCMI versions 支持的VCMI版本 - + Languages 语言 - + Required mods 前置MODs - + Conflicting mods 冲突的MODs - + This mod can not be installed or enabled because the following dependencies are not present 这个模组无法被安装或者激活,因为下列依赖项未满足 - + This mod can not be enabled because the following mods are incompatible with it 这个模组无法被激活,因为下列模组与其不兼容 - + This mod cannot be disabled because it is required by the following mods 这个模组无法被禁用,因为它被下列模组所依赖 - + This mod cannot be uninstalled or updated because it is required by the following mods 这个模组无法被卸载或者更新,因为它被下列模组所依赖 - + This is a submod and it cannot be installed or uninstalled separately from its parent mod 这是一个附属模组它无法在所属模组外被直接被安装或者卸载 - + Notes 笔记注释 - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 截图 %1 - + Mod is incompatible MOD不兼容 @@ -407,123 +464,123 @@ CSettingsView - - - + + + Off 关闭 - - + + Artificial Intelligence 人工智能 - - + + Mod Repositories 模组仓库 - + Interface Scaling - + Neutral AI in battles - + Enemy AI in battles - + Additional repository - + Adventure Map Allies - + Adventure Map Enemies - + Windowed - + Borderless fullscreen - + Exclusive fullscreen - + Autosave limit (0 = off) - + Friendly AI in battles - + Framerate Limit - + Autosave prefix - + empty = map name prefix - + Refresh now - + Default repository - - - + + + On 开启 - + Cursor 鼠标指针 - + Heroes III Data Language 英雄无敌3数据语言 - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -534,104 +591,137 @@ Fullscreen Exclusive Mode - game will cover entirety of your screen and will use - + Reserved screen area - + Hardware 硬件 - + Software 软件 - + Heroes III Translation 发布版本里找不到这个项,不太清楚意义 英雄无敌3翻译 - + Check on startup 启动时检查更新 - + Fullscreen 全屏 - - + + General 通用设置 - + VCMI Language VCMI语言 - + Resolution 分辨率 - + Autosave 自动存档 - + + VSync + + + + Display index 显示器序号 - + Network port 网络端口 - - + + Video 视频设置 - + Show intro 显示开场动画 - + Active 激活 - + Disabled 禁用 - + Enable 启用 - + Not Installed 未安装 - + Install 安装 + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -938,88 +1028,78 @@ Heroes® of Might and Magic® III HD is currently not supported! Lobby - - + + Connect 连接 - + Username 用户名 - + Server 服务器 - - Lobby chat - 大厅聊天 - - - + Session 会话 - + Players 玩家 - + Resolve 解决 - + New game 新游戏 - + Load game 加载游戏 - + New room 新房间 - - Players in lobby - 大厅中的玩家 - - - + Join room 加入房间 - + Ready 准备 - + Mods mismatch MODs不匹配 - + Leave 离开 - + Kick player 踢出玩家 - + Players in the room 大厅中的玩家 @@ -1029,7 +1109,7 @@ Heroes® of Might and Magic® III HD is currently not supported! 断开 - + No issues detected 没有发现问题 diff --git a/launcher/translation/english.ts b/launcher/translation/english.ts index 4d6ad1deb..94a2f2716 100644 --- a/launcher/translation/english.ts +++ b/launcher/translation/english.ts @@ -120,80 +120,90 @@ - Sounds + Maps - Skills + Sounds - - Other + Skills - Objects + + Other + Objects + + + + Mechanics - + Interface - + Heroes - + Graphical - + Expansion - + Creatures - + + Compatibility + + + + Artifacts - + AI - + Name - + Type - + Version @@ -241,164 +251,211 @@ - - + + Description - + Changelog - + Screenshots - + Uninstall - + Enable - + Disable - + Update - + Install - + %p% (%v KB out of %m KB) - + Abort - + Mod name - + Installed version - + Latest version - + + Size + + + + Download size - + Authors - + License - + Contact - + Compatibility - - + + Required VCMI version - + Supported VCMI version - + Supported VCMI versions - + Languages - + Required mods - + Conflicting mods - + This mod can not be installed or enabled because the following dependencies are not present - + This mod can not be enabled because the following mods are incompatible with it - + This mod cannot be disabled because it is required by the following mods - + This mod cannot be uninstalled or updated because it is required by the following mods - + This is a submod and it cannot be installed or uninstalled separately from its parent mod - + Notes - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 - + Mod is incompatible @@ -406,123 +463,123 @@ CSettingsView - - - + + + Off - - + + Artificial Intelligence - - + + Mod Repositories - + Interface Scaling - + Neutral AI in battles - + Enemy AI in battles - + Additional repository - + Adventure Map Allies - + Adventure Map Enemies - + Windowed - + Borderless fullscreen - + Exclusive fullscreen - + Autosave limit (0 = off) - + Friendly AI in battles - + Framerate Limit - + Autosave prefix - + empty = map name prefix - + Refresh now - + Default repository - - - + + + On - + Cursor - + Heroes III Data Language - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -533,103 +590,136 @@ Fullscreen Exclusive Mode - game will cover entirety of your screen and will use - + Reserved screen area - + Hardware - + Software - + Heroes III Translation - + Check on startup - + Fullscreen - - + + General - + VCMI Language - + Resolution - + Autosave - + + VSync + + + + Display index - + Network port - - + + Video - + Show intro - + Active - + Disabled - + Enable - + Not Installed - + Install + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -930,88 +1020,78 @@ Heroes® of Might and Magic® III HD is currently not supported! Lobby - - + + Connect - + Username - + Server - - Lobby chat - - - - + Session - + Players - + Resolve - + New game - + Load game - + New room - - Players in lobby - - - - + Join room - + Ready - + Mods mismatch - + Leave - + Kick player - + Players in the room @@ -1021,7 +1101,7 @@ Heroes® of Might and Magic® III HD is currently not supported! - + No issues detected diff --git a/launcher/translation/french.ts b/launcher/translation/french.ts index 0bf2c7db8..3d02b580c 100644 --- a/launcher/translation/french.ts +++ b/launcher/translation/french.ts @@ -120,80 +120,90 @@ + Maps + + + + Sounds Sons - + Skills Compétences - - + + Other Autre - + Objects Objets - + Mechanics Mécaniques - + Interface Interface - + Heroes Héros - + Graphical Graphisme - + Expansion Extension - + Creatures Créatures - + + Compatibility + Compatibilité + + + Artifacts Artefacts - + AI IA - + Name Nom - + Type Type - + Version Version @@ -241,169 +251,216 @@ Télécharger et rafraîchir les dépôts - - + + Description Description - + Changelog Journal - + Screenshots Impressions écran - + %p% (%v KB out of %m KB) %p% (%v Ko sur %m Ko) - + Uninstall Désinstaller - + Enable Activer - + Disable Désactiver - + Update Mettre à jour - + Install Installer - + Abort Abandonner - + Mod name Nom du mod - + Installed version Version installée - + Latest version Dernière version - + + Size + + + + Download size Taille de téléchargement - + Authors Auteur(s) - + License Licence - + Contact Contact - + Compatibility Compatibilité - - + + Required VCMI version Version requise de VCMI - + Supported VCMI version Version supportée de VCMI - + Supported VCMI versions Versions supportées de VCMI - + Languages Langues - + Required mods Mods requis - + Conflicting mods Mods en conflit - + This mod can not be installed or enabled because the following dependencies are not present Ce mod ne peut pas être installé ou activé car les dépendances suivantes ne sont pas présents - + This mod can not be enabled because the following mods are incompatible with it Ce mod ne peut pas être installé ou activé, car les dépendances suivantes sont incompatibles avec lui - + This mod cannot be disabled because it is required by the following mods Ce mod ne peut pas être désactivé car il est requis pour les dépendances suivantes - + This mod cannot be uninstalled or updated because it is required by the following mods Ce mod ne peut pas être désinstallé ou mis à jour car il est requis pour les dépendances suivantes - + This is a submod and it cannot be installed or uninstalled separately from its parent mod Ce sous-mod ne peut pas être installé ou mis à jour séparément du mod parent - + Notes Notes - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 Impression écran %1 - + Mod is incompatible Ce mod est incompatible @@ -411,43 +468,48 @@ CSettingsView - - - + + + Off Désactivé - - + + Artificial Intelligence Intelligence Artificielle - - + + Mod Repositories Dépôts de Mod - - - + + + On Activé - + Enemy AI in battles IA ennemie dans les batailles - + Default repository Dépôt par défaut - + + VSync + + + + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -464,183 +526,211 @@ Mode fenêtré sans bord - le jeu s"exécutera dans une fenêtre qui couvre Mode exclusif plein écran - le jeu couvrira l"intégralité de votre écran et utilisera la résolution sélectionnée. - + Windowed Fenêtré - + Borderless fullscreen Fenêtré sans bord - + Exclusive fullscreen Plein écran exclusif - + Reserved screen area - + Neutral AI in battles IA neutre dans les batailles - + Autosave limit (0 = off) - + Adventure Map Enemies Ennemis de la carte d"aventure - + Autosave prefix - + empty = map name prefix - + Interface Scaling Mise à l"échelle de l"interface - + Cursor Curseur - + Heroes III Data Language Langue des Données de Heroes III - + Framerate Limit Limite de fréquence d"images - + Hardware Matériel - + Software Logiciel - + Heroes III Translation Traduction de Heroes III - + Adventure Map Allies Alliés de la carte d"aventure - + Additional repository Dépôt supplémentaire - + Check on startup Vérifier au démarrage - + Refresh now Actualiser maintenant - + Friendly AI in battles IA amicale dans les batailles - + Fullscreen Plein écran - - + + General Général - + VCMI Language Langue de VCMI - + Resolution Résolution - + Autosave Sauvegarde automatique - + Display index Index d'affichage - + Network port Port de réseau - - + + Video Vidéo - + Show intro Montrer l'intro - + Active Actif - + Disabled Désactivé - + Enable Activé - + Not Installed Pas Installé - + Install Installer + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -947,88 +1037,78 @@ Heroes® of Might and Magic® III HD n"est actuellement pas pris en charge Lobby - + Username Nom d'utilisateur - - + + Connect Connecter - + Server Serveur - - Players in lobby - Joueurs à la salle d'attente - - - - Lobby chat - Discussion de salle d'attente - - - + New room Nouveau salon - + Join room Rejoindre le salon - + Session Session - + Players Joueurs - + Kick player Jeter le joueur - + Players in the room Joueurs dans le salon - + Leave Quitter - + Mods mismatch Incohérence de mods - + Ready Prêt - + Resolve Résoudre - + New game Nouvelle partie - + Load game Charger une partie @@ -1038,7 +1118,7 @@ Heroes® of Might and Magic® III HD n"est actuellement pas pris en charge Déconnecter - + No issues detected Pas de problème détecté diff --git a/launcher/translation/german.ts b/launcher/translation/german.ts index fd803264f..e08a8a7ad 100644 --- a/launcher/translation/german.ts +++ b/launcher/translation/german.ts @@ -120,80 +120,90 @@ + Maps + + + + Sounds Sounds - + Skills Fertigkeiten - - + + Other Andere - + Objects Objekte - + Mechanics Mechaniken - + Interface Schnittstelle - + Heroes Helden - + Graphical Grafisches - + Expansion Erweiterung - + Creatures Kreaturen - + + Compatibility + Kompatibilität + + + Artifacts Artefakte - + AI KI - + Name Name - + Type Typ - + Version Version @@ -241,164 +251,211 @@ Repositories herunterladen && aktualisieren - - + + Description Beschreibung - + Changelog Änderungslog - + Screenshots Screenshots - + Uninstall Deinstallieren - + Enable Aktivieren - + Disable Deaktivieren - + Update Aktualisieren - + Install Installieren - + %p% (%v KB out of %m KB) %p% (%v КB von %m КB) - + Abort Abbrechen - + Mod name Mod-Name - + Installed version Installierte Version - + Latest version Letzte Version - + + Size + + + + Download size Downloadgröße - + Authors Autoren - + License Lizenz - + Contact Kontakt - + Compatibility Kompatibilität - - + + Required VCMI version Benötigte VCMI Version - + Supported VCMI version Unterstützte VCMI Version - + Supported VCMI versions Unterstützte VCMI Versionen - + Languages Sprachen - + Required mods Benötigte Mods - + Conflicting mods Mods mit Konflikt - + This mod can not be installed or enabled because the following dependencies are not present Diese Mod kann nicht installiert oder aktiviert werden, da die folgenden Abhängigkeiten nicht vorhanden sind - + This mod can not be enabled because the following mods are incompatible with it Diese Mod kann nicht aktiviert werden, da folgende Mods nicht mit dieser Mod kompatibel sind - + This mod cannot be disabled because it is required by the following mods Diese Mod kann nicht deaktiviert werden, da sie zum Ausführen der folgenden Mods erforderlich ist - + This mod cannot be uninstalled or updated because it is required by the following mods Diese Mod kann nicht deinstalliert oder aktualisiert werden, da sie für die folgenden Mods erforderlich ist - + This is a submod and it cannot be installed or uninstalled separately from its parent mod Dies ist eine Submod und kann nicht separat von der Hauptmod installiert oder deinstalliert werden - + Notes Anmerkungen - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 Screenshot %1 - + Mod is incompatible Mod ist inkompatibel @@ -406,123 +463,123 @@ CSettingsView - - - + + + Off Aus - - + + Artificial Intelligence Künstliche Intelligenz - - + + Mod Repositories Mod-Repositorien - + Interface Scaling Skalierung der Benutzeroberfläche - + Neutral AI in battles Neutrale KI in Kämpfen - + Enemy AI in battles Gegnerische KI in Kämpfen - + Additional repository Zusätzliches Repository - + Adventure Map Allies Abenteuerkarte Verbündete - + Adventure Map Enemies Abenteuerkarte Feinde - + Windowed Fenstermodus - + Borderless fullscreen Randloser Vollbildmodus - + Exclusive fullscreen Exklusiver Vollbildmodus - + Autosave limit (0 = off) Limit für Autospeicherung (0 = aus) - + Friendly AI in battles Freundliche KI in Kämpfen - + Framerate Limit Limit der Bildrate - + Autosave prefix Präfix für Autospeicherung - + empty = map name prefix leer = Kartenname als Präfix - + Refresh now Jetzt aktualisieren - + Default repository Standard Repository - - - + + + On An - + Cursor Zeiger - + Heroes III Data Language Sprache der Heroes III Daten - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -539,103 +596,136 @@ Randloser Fenstermodus - das Spiel läuft in einem Fenster, das den gesamten Bil Exklusiver Vollbildmodus - das Spiel bedeckt den gesamten Bildschirm und verwendet die gewählte Auflösung. - + Reserved screen area - + Hardware Hardware - + Software Software - + Heroes III Translation Heroes III Übersetzung - + Check on startup Beim Start prüfen - + Fullscreen Vollbild - - + + General Allgemein - + VCMI Language VCMI-Sprache - + Resolution Auflösung - + Autosave Autospeichern - + + VSync + + + + Display index Anzeige-Index - + Network port Netzwerk-Port - - + + Video Video - + Show intro Intro anzeigen - + Active Aktiv - + Disabled Deaktiviert - + Enable Aktivieren - + Not Installed Nicht installiert - + Install Installieren + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -942,88 +1032,78 @@ Heroes III: HD Edition wird derzeit nicht unterstützt! Lobby - - + + Connect Verbinden - + Username Benutzername - + Server Server - - Lobby chat - Lobby-Chat - - - + Session Sitzung - + Players Spieler - + Resolve Auflösen - + New game Neues Spiel - + Load game Spiel laden - + New room Neuer Raum - - Players in lobby - Spieler in der Lobby - - - + Join room Raum beitreten - + Ready Bereit - + Mods mismatch Mods stimmen nicht überein - + Leave Verlassen - + Kick player Spieler kicken - + Players in the room Spieler im Raum @@ -1033,7 +1113,7 @@ Heroes III: HD Edition wird derzeit nicht unterstützt! Verbindung trennen - + No issues detected Keine Probleme festgestellt diff --git a/launcher/translation/polish.ts b/launcher/translation/polish.ts index 75ea0498f..4116e62f7 100644 --- a/launcher/translation/polish.ts +++ b/launcher/translation/polish.ts @@ -120,80 +120,90 @@ + Maps + + + + Sounds Dźwięki - + Skills Umiejętności - - + + Other Inne - + Objects Obiekty - + Mechanics Mechaniki - + Interface Interfejs - + Heroes Bohaterowie - + Graphical Graficzny - + Expansion Dodatek - + Creatures Stworzenia - + + Compatibility + Kompatybilność + + + Artifacts Artefakty - + AI AI - + Name Nazwa - + Type Typ - + Version Wersja @@ -241,164 +251,211 @@ Pobierz i odśwież repozytoria - - + + Description Opis - + Changelog Lista zmian - + Screenshots Zrzuty ekranu - + Uninstall Odinstaluj - + Enable Włącz - + Disable Wyłącz - + Update Zaktualizuj - + Install Zainstaluj - + %p% (%v KB out of %m KB) %p% (%v KB z %m KB) - + Abort Przerwij - + Mod name Nazwa moda - + Installed version Zainstalowana wersja - + Latest version Najnowsza wersja - + + Size + + + + Download size Rozmiar pobierania - + Authors Autorzy - + License Licencja - + Contact Kontakt - + Compatibility Kompatybilność - - + + Required VCMI version Wymagana wersja VCMI - + Supported VCMI version Wspierana wersja VCMI - + Supported VCMI versions Wspierane wersje VCMI - + Languages Języki - + Required mods Wymagane mody - + Conflicting mods Konfliktujące mody - + This mod can not be installed or enabled because the following dependencies are not present Ten mod nie może zostać zainstalowany lub włączony ponieważ następujące zależności nie zostały spełnione - + This mod can not be enabled because the following mods are incompatible with it Ten mod nie może zostać włączony ponieważ następujące mody są z nim niekompatybilne - + This mod cannot be disabled because it is required by the following mods Ten mod nie może zostać wyłączony ponieważ jest wymagany do uruchomienia następujących modów - + This mod cannot be uninstalled or updated because it is required by the following mods Ten mod nie może zostać odinstalowany lub zaktualizowany ponieważ jest wymagany do uruchomienia następujących modów - + This is a submod and it cannot be installed or uninstalled separately from its parent mod To jest moduł składowy innego moda i nie może być zainstalowany lub odinstalowany oddzielnie od moda nadrzędnego - + Notes Uwagi - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 Zrzut ekranu %1 - + Mod is incompatible Mod jest niekompatybilny @@ -406,123 +463,123 @@ CSettingsView - - - + + + Off Wyłączony - - + + Artificial Intelligence Sztuczna Inteligencja - - + + Mod Repositories Repozytoria modów - + Interface Scaling Skala interfejsu - + Neutral AI in battles AI bitewne jednostek neutralnych - + Enemy AI in battles AI bitewne wrogów - + Additional repository Dodatkowe repozytorium - + Adventure Map Allies AI sojuszników mapy przygody - + Adventure Map Enemies AI wrogów mapy przygody - + Windowed Okno - + Borderless fullscreen Pełny ekran (tryb okna) - + Exclusive fullscreen Pełny ekran klasyczny - + Autosave limit (0 = off) Limit autozapisów (0 = brak) - + Friendly AI in battles AI bitewne sojuszników - + Framerate Limit Limit FPS - + Autosave prefix Przedrostek autozapisu - + empty = map name prefix puste = przedrostek z nazwy mapy - + Refresh now Odśwież - + Default repository Domyślne repozytorium - - - + + + On Włączony - + Cursor Kursor - + Heroes III Data Language Język plików Heroes III - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -539,103 +596,136 @@ Pełny ekran w trybie okna - gra uruchomi się w oknie przysłaniającym cały e Pełny ekran klasyczny - gra przysłoni cały ekran uruchamiając się w wybranej przez ciebie rozdzielczości ekranu. - + Reserved screen area - + Hardware Sprzętowy - + Software Programowy - + Heroes III Translation Tłumaczenie Heroes III - + Check on startup Sprawdzaj przy uruchomieniu - + Fullscreen Pełny ekran - - + + General Ogólne - + VCMI Language Język VCMI - + Resolution Rozdzielczość - + Autosave Autozapis - + + VSync + + + + Display index Numer wyświetlacza - + Network port Port sieciowy - - + + Video Obraz - + Show intro Pokaż intro - + Active Aktywny - + Disabled Wyłączone - + Enable Włącz - + Not Installed Nie zainstalowano - + Install Zainstaluj + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -942,88 +1032,78 @@ Heroes III: HD Edition nie jest obecnie wspierane! Lobby - - + + Connect Połącz - + Username Nazwa użytkownika - + Server Serwer - - Lobby chat - Czat lobby - - - + Session Sesja - + Players Gracze - + Resolve Rozwiąż - + New game Nowa gra - + Load game Wczytaj grę - + New room Nowy pokój - - Players in lobby - Gracze w lobby - - - + Join room Dołącz - + Ready Zgłoś gotowość - + Mods mismatch Niezgodność modów - + Leave Wyjdź - + Kick player Wyrzuć gracza - + Players in the room Gracze w pokoju @@ -1033,7 +1113,7 @@ Heroes III: HD Edition nie jest obecnie wspierane! Rozłącz - + No issues detected Nie znaleziono problemów diff --git a/launcher/translation/russian.ts b/launcher/translation/russian.ts index a5ef0dd5c..718618d7d 100644 --- a/launcher/translation/russian.ts +++ b/launcher/translation/russian.ts @@ -120,80 +120,90 @@ + Maps + + + + Sounds Звуки - + Skills Навыки - - + + Other Иное - + Objects Объекты - + Mechanics Механика - + Interface Интерфейс - + Heroes Герои - + Graphical Графика - + Expansion Дополнение - + Creatures Существа - + + Compatibility + Совместимость + + + Artifacts Артефакт - + AI ИИ - + Name Название - + Type Тип - + Version Версия @@ -241,164 +251,211 @@ Обновить репозиторий - - + + Description Описание - + Changelog Изменения - + Screenshots Скриншоты - + Uninstall Удалить - + Enable Включить - + Disable Отключить - + Update Обновить - + Install Установить - + %p% (%v KB out of %m KB) %p% (%v КБ з %m КБ) - + Abort Отмена - + Mod name Название мода - + Installed version Установленная версия - + Latest version Последняя версия - + + Size + + + + Download size Размер загрузки - + Authors Авторы - + License Лицензия - + Contact Контакты - + Compatibility Совместимость - - + + Required VCMI version Требуемая версия VCMI - + Supported VCMI version Поддерживаемая версия VCMI - + Supported VCMI versions Поддерживаемые версии VCMI - + Languages Языки - + Required mods Зависимости - + Conflicting mods Конфликтующие моды - + This mod can not be installed or enabled because the following dependencies are not present Этот мод не может быть установлен или активирован, так как отсутствуют следующие зависимости - + This mod can not be enabled because the following mods are incompatible with it Этот мод не может быть установлен или активирован, так как следующие моды несовместимы с этим - + This mod cannot be disabled because it is required by the following mods Этот мод не может быть выключен, так как он является зависимостью для следующих - + This mod cannot be uninstalled or updated because it is required by the following mods Этот мод не может быть удален или обновлен, так как является зависимостью для следующих модов - + This is a submod and it cannot be installed or uninstalled separately from its parent mod Это вложенный мод, он не может быть установлен или удален отдельно от родительского - + Notes Замечания - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 Скриншот %1 - + Mod is incompatible Мод несовместим @@ -406,149 +463,154 @@ CSettingsView - + Interface Scaling - - - + + + Off Отключено - - - + + + On Включено - + Neutral AI in battles - + Enemy AI in battles - + Additional repository - + Check on startup Проверять при запуске - + Fullscreen Полноэкранный режим - - + + General Общее - + VCMI Language Язык VCMI - + Cursor Курсор - - + + Artificial Intelligence Искусственный интеллект - - + + Mod Repositories Репозитории модов - + Adventure Map Allies - + Refresh now - + Adventure Map Enemies - + + VSync + + + + Windowed - + Borderless fullscreen - + Exclusive fullscreen - + Reserved screen area - + Autosave limit (0 = off) - + Friendly AI in battles - + Framerate Limit - + Autosave prefix - + empty = map name prefix - + Default repository - + Heroes III Data Language Язык данных Героев III - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -559,77 +621,105 @@ Fullscreen Exclusive Mode - game will cover entirety of your screen and will use - + Hardware Аппаратный - + Software Программный - + Heroes III Translation Перевод Героев III - + Resolution Разрешение экрана - + Autosave Автосохранение - + Display index Дисплей - + Network port Сетевой порт - - + + Video Графика - + Show intro Вступление - + Active Активен - + Disabled Отключен - + Enable Включить - + Not Installed Не установлен - + Install Установить + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -936,88 +1026,78 @@ Heroes® of Might and Magic® III HD is currently not supported! Lobby - - + + Connect Подключиться - + Username Имя пользователя - + Server Сервер - - Lobby chat - Чат лобби - - - + Session Сессия - + Players Игроки - + Resolve Скорректировать - + New game Новая игра - + Load game Загрузить игру - + New room Создать комнату - - Players in lobby - Люди в лобби - - - + Join room Присоединиться к комнате - + Ready Готово - + Mods mismatch Моды не совпадают - + Leave Выйти - + Kick player Выгнать игрока - + Players in the room Игроки в комнате @@ -1027,7 +1107,7 @@ Heroes® of Might and Magic® III HD is currently not supported! Отключиться - + No issues detected Проблем не обнаружено diff --git a/launcher/translation/spanish.ts b/launcher/translation/spanish.ts index 04499cedf..b0a953ab7 100644 --- a/launcher/translation/spanish.ts +++ b/launcher/translation/spanish.ts @@ -120,80 +120,90 @@ + Maps + + + + Sounds Sonidos - + Skills Habilidades - - + + Other Otro - + Objects Objetos - + Mechanics Mecánicas - + Interface Interfaz - + Heroes Heroes - + Graphical Gráficos - + Expansion Expansión - + Creatures Criaturas - + + Compatibility + Compatibilidad + + + Artifacts Artefactos - + AI IA - + Name Nombre - + Type Tipo - + Version Versión @@ -241,164 +251,211 @@ Descargar y actualizar repositorios - - + + Description Descripción - + Changelog Registro de cambios - + Screenshots Capturas de pantalla - + Uninstall Desinstalar - + Enable Activar - + Disable Desactivar - + Update Actualizar - + Install Instalar - + %p% (%v KB out of %m KB) %p% (%v KB de %m KB) - + Abort Cancelar - + Mod name Nombre del mod - + Installed version Versión instalada - + Latest version Última versión - + + Size + + + + Download size Tamaño de descarga - + Authors Autores - + License Licencia - + Contact Contacto - + Compatibility Compatibilidad - - + + Required VCMI version Versión de VCMI requerida - + Supported VCMI version Versión de VCMI compatible - + Supported VCMI versions Versiones de VCMI compatibles - + Languages Idiomas - + Required mods Mods requeridos - + Conflicting mods Mods conflictivos - + This mod can not be installed or enabled because the following dependencies are not present Este mod no se puede instalar o habilitar porque no están presentes las siguientes dependencias - + This mod can not be enabled because the following mods are incompatible with it Este mod no se puede habilitar porque los siguientes mods son incompatibles con él - + This mod cannot be disabled because it is required by the following mods No se puede desactivar este mod porque es necesario para ejecutar los siguientes mods - + This mod cannot be uninstalled or updated because it is required by the following mods No se puede desinstalar o actualizar este mod porque es necesario para ejecutar los siguientes mods - + This is a submod and it cannot be installed or uninstalled separately from its parent mod Este es un submod y no se puede instalar o desinstalar por separado del mod principal - + Notes Notas - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 Captura de pantalla %1 - + Mod is incompatible El mod es incompatible @@ -406,170 +463,175 @@ CSettingsView - - - + + + Off Desactivado - - + + Artificial Intelligence Inteligencia Artificial - - + + Mod Repositories Repositorios de Mods - + Interface Scaling - + Neutral AI in battles - + Enemy AI in battles - + Additional repository - + Adventure Map Allies - + Adventure Map Enemies - + Windowed - + Borderless fullscreen - + Exclusive fullscreen - + Autosave limit (0 = off) - + Friendly AI in battles - + Framerate Limit - + Autosave prefix - + empty = map name prefix - + Refresh now - + Default repository - - - + + + On Encendido - + Cursor Cursor - + Heroes III Translation Traducción de Heroes III - + Reserved screen area - + Fullscreen Pantalla completa - - + + General General - + VCMI Language Idioma de VCMI - + Resolution Resolución - + Autosave Autoguardado - + + VSync + + + + Display index Mostrar índice - + Network port Puerto de red - - + + Video Vídeo - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -580,56 +642,84 @@ Fullscreen Exclusive Mode - game will cover entirety of your screen and will use - + Hardware Hardware - + Software Software - + Show intro Mostrar introducción - + Check on startup Comprovar al inicio - + Heroes III Data Language Idioma de los datos de Heroes III. - + Active Activado - + Disabled Desactivado - + Enable Activar - + Not Installed No Instalado - + Install Instalar + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -936,88 +1026,78 @@ Ten en cuenta que para usar VCMI debes ser dueño de los archivos de datos origi Lobby - - + + Connect Conectar - + Username Nombre de usuario - + Server Servidor - - Lobby chat - Charlar en la sala - - - + Session Sesión - + Players Jugadores - + Resolve Resolver - + New game Nueva partida - + Load game Cargar partida - + New room Nueva sala - - Players in lobby - Jugadores en la sala - - - + Join room Unirse a la sala - + Ready Listo - + Mods mismatch No coinciden los mods - + Leave Salir - + Kick player Expulsar jugador - + Players in the room Jugadores en la sala @@ -1027,7 +1107,7 @@ Ten en cuenta que para usar VCMI debes ser dueño de los archivos de datos origi Desconectar - + No issues detected No se han detectado problemas diff --git a/launcher/translation/ukrainian.ts b/launcher/translation/ukrainian.ts index d3015e426..37c76d07c 100644 --- a/launcher/translation/ukrainian.ts +++ b/launcher/translation/ukrainian.ts @@ -120,80 +120,90 @@ + Maps + Мапи + + + Sounds Звуки - + Skills Вміння - - + + Other Інше - + Objects Об'єкти - + Mechanics Механіки - + Interface Інтерфейс - + Heroes Герої - + Graphical Графічний - + Expansion Розширення - + Creatures Істоти - + + Compatibility + Сумісність + + + Artifacts Артефакти - + AI ШІ - + Name Назва - + Type Тип - + Version Версія @@ -241,164 +251,218 @@ Оновити репозиторії - - + + Description Опис - + Changelog Зміни - + Screenshots Знімки - + Uninstall Видалити - + Enable Активувати - + Disable Деактивувати - + Update Оновити - + Install Встановити - + %p% (%v KB out of %m KB) %p% (%v КБ з %m КБ) - + Abort Відмінити - + Mod name Назва модифікації - + Installed version Встановлена версія - + Latest version Найновіша версія - + + Size + Розмір + + + Download size Розмір для завантаження - + Authors Автори - + License Ліцензія - + Contact Контакти - + Compatibility Сумісність - - + + Required VCMI version Необхідна версія VCMI - + Supported VCMI version Підтримувана версія VCMI - + Supported VCMI versions Підтримувані версії VCMI - + Languages Мови - + Required mods Необхідні модифікації - + Conflicting mods Конфліктуючі модифікації - + This mod can not be installed or enabled because the following dependencies are not present Цю модифікацію не можна встановити чи активувати, оскільки відсутні наступні залежності - + This mod can not be enabled because the following mods are incompatible with it Цю модифікацію не можна ввімкнути, оскільки наступні модифікації несумісні з цією модифікацією - + This mod cannot be disabled because it is required by the following mods Цю модифікацію не можна відключити, оскільки вона необхідна для запуску наступних модифікацій - + This mod cannot be uninstalled or updated because it is required by the following mods Цю модифікацію не можна видалити або оновити, оскільки вона необхідна для запуску наступних модифікацій - + This is a submod and it cannot be installed or uninstalled separately from its parent mod Це вкладена модифікація, і її не можна встановити або видалити окремо від батьківської модифікації - + Notes Примітки - + + Downloading %s%. %p% (%v MB out of %m MB) finished + Завантажуємо %s%. %p% (%v МБ з %m Мб) виконано + + + + Download failed + Помилка завантаження + + + + Unable to download all files. + +Encountered errors: + + + Не вдалося завантажити усі файли. + +Виникли помилки: + + + + + + + +Install successfully downloaded? + + +Встановити успішно завантажені? + + + + Installing mod %1 + Встановлення модифікації %1 + + + + Operation failed + Операція завершилася невдало + + + + Encountered errors: + + Виникли помилки: + + + + Screenshot %1 Знімок екрану %1 - + Mod is incompatible Модифікація несумісна @@ -406,123 +470,123 @@ CSettingsView - - - + + + Off Вимкнено - - + + Artificial Intelligence Штучний інтелект - - + + Mod Repositories Репозиторії модифікацій - + Interface Scaling Масштабування інтерфейсу - + Neutral AI in battles Нейтральний ШІ в боях - + Enemy AI in battles Ворожий ШІ в боях - + Additional repository Додатковий репозиторій - + Adventure Map Allies Союзники на мапі пригод - + Adventure Map Enemies Вороги на мапі пригод - + Windowed У вікні - + Borderless fullscreen Повноекранне вікно - + Exclusive fullscreen Повноекранний (ексклюзивно) - + Autosave limit (0 = off) Кількість автозбережень - + Friendly AI in battles Дружній ШІ в боях - + Framerate Limit Обмеження частоти кадрів - + Autosave prefix Префікс назв автозбережень - + empty = map name prefix (використовувати назву карти) - + Refresh now Оновити зараз - + Default repository Стандартний репозиторій - - - + + + On Увімкнено - + Cursor Курсор - + Heroes III Data Language Мова Heroes III - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -539,103 +603,136 @@ Fullscreen Exclusive Mode - game will cover entirety of your screen and will use Повноекранний ексклюзивний режим - гра займатиме весь екран і використовуватиме вибрану роздільну здатність. - + Reserved screen area Зарезервована зона екрану - + Hardware Апаратний - + Software Програмний - + Heroes III Translation Переклад Heroes III - + Check on startup Перевіряти на старті - + Fullscreen Повноекранний режим - - + + General Загальні налаштування - + VCMI Language Мова VCMI - + Resolution Роздільна здатність - + Autosave Автозбереження - + + VSync + Вертикальна синхронізація + + + Display index Дісплей - + Network port Мережевий порт - - + + Video Графіка - + Show intro Вступні відео - + Active Активні - + Disabled Деактивований - + Enable Активувати - + Not Installed Не встановлено - + Install Встановити + + Chat + + + Form + + + + + Users in lobby + Гравців у лобі + + + + Global chat + Загальний чат + + + + type you message + введіть повідомлення + + + + send + Відправити + + FirstLaunchView @@ -942,88 +1039,78 @@ Heroes® of Might and Magic® III HD наразі не підтримуєтьс Lobby - - + + Connect Підключитися - + Username Ім'я користувача - + Server Сервер - - Lobby chat - Лобі чат - - - + Session Сесія - + Players Гравці - + Resolve Розв'язати - + New game Нова гра - + Load game Завантажити гру - + New room Створити кімнату - - Players in lobby - Гравці у лобі - - - + Join room Приєднатися до кімнати - + Ready Готовність - + Mods mismatch Модифікації, що не збігаються - + Leave Вийти з кімнати - + Kick player Виключити гравця - + Players in the room Гравці у кімнаті @@ -1033,7 +1120,7 @@ Heroes® of Might and Magic® III HD наразі не підтримуєтьс Від'єднатися - + No issues detected Проблем не виявлено diff --git a/launcher/translation/vietnamese.ts b/launcher/translation/vietnamese.ts index 79c7518ad..f92e9e7fe 100644 --- a/launcher/translation/vietnamese.ts +++ b/launcher/translation/vietnamese.ts @@ -120,80 +120,90 @@ + Maps + + + + Sounds Âm thanh - + Skills Kĩ năng - - + + Other Khác - + Objects Đối tượng - + Mechanics Cơ chế - + Interface Giao diện - + Heroes Tướng - + Graphical Đồ họa - + Expansion Bản mở rộng - + Creatures Quái - + + Compatibility + Tương thích + + + Artifacts Vật phẩm - + AI Trí tuệ nhân tạo - + Name Tên - + Type Loại - + Version Phiên bản @@ -241,164 +251,211 @@ Tải lại - - + + Description Mô tả - + Changelog Các thay đổi - + Screenshots Hình ảnh - + Uninstall Gỡ bỏ - + Enable Bật - + Disable Tắt - + Update Cập nhật - + Install Cài đặt - + %p% (%v KB out of %m KB) %p% (%v KB trong số %m KB) - + Abort Hủy - + Mod name Tên bản sửa đổi - + Installed version Phiên bản cài đặt - + Latest version Phiên bản mới nhất - + + Size + + + + Download size Kích thước tải về - + Authors Tác giả - + License Giấy phép - + Contact Liên hệ - + Compatibility Tương thích - - + + Required VCMI version Cần phiên bản VCMI - + Supported VCMI version Hỗ trợ phiên bản VCMI - + Supported VCMI versions Phiên bản VCMI hỗ trợ - + Languages Ngôn ngữ - + Required mods Cần các bản sửa đổi - + Conflicting mods Bản sửa đổi không tương thích - + This mod can not be installed or enabled because the following dependencies are not present Bản sửa đổi này không thể cài đặt hoặc kích hoạt do thiếu các bản sửa đổi sau - + This mod can not be enabled because the following mods are incompatible with it Bản sửa đổi này không thể kích hoạt do không tương thích các bản sửa đổi sau - + This mod cannot be disabled because it is required by the following mods Bản sửa đổi này không thể tắt do cần thiết cho các bản sửa đổi sau - + This mod cannot be uninstalled or updated because it is required by the following mods Bản sửa đổi này không thể gỡ bỏ hoặc nâng cấp do cần thiết cho các bản sửa đổi sau - + This is a submod and it cannot be installed or uninstalled separately from its parent mod Đây là bản con, không thể cài đặt hoặc gỡ bỏ tách biệt với bản cha - + Notes Ghi chú - + + Downloading %s%. %p% (%v MB out of %m MB) finished + + + + + Download failed + + + + + Unable to download all files. + +Encountered errors: + + + + + + + + +Install successfully downloaded? + + + + + Installing mod %1 + + + + + Operation failed + + + + + Encountered errors: + + + + + Screenshot %1 Hình ảnh %1 - + Mod is incompatible Bản sửa đổi này không tương thích @@ -406,123 +463,123 @@ CSettingsView - - - + + + Off Tắt - - + + Artificial Intelligence Trí tuệ nhân tạo - - + + Mod Repositories Nguồn bản sửa đổi - + Interface Scaling Phóng đại giao diện - + Neutral AI in battles Máy hoang dã trong trận đánh - + Enemy AI in battles Máy đối thủ trong trận đánh - + Additional repository Nguồn bổ sung - + Adventure Map Allies Máy liên minh ở bản đồ phiêu lưu - + Adventure Map Enemies Máy đối thủ ở bản đồ phiêu lưu - + Windowed Cửa sổ - + Borderless fullscreen Toàn màn hình không viền - + Exclusive fullscreen Toàn màn hình riêng biệt - + Autosave limit (0 = off) Giới hạn lưu tự động (0 = không giới hạn) - + Friendly AI in battles Máy liên minh trong trận đánh - + Framerate Limit Giới hạn khung hình - + Autosave prefix Thêm tiền tố vào lưu tự động - + empty = map name prefix Rỗng = tên bản đồ - + Refresh now Làm mới - + Default repository Nguồn mặc định - - - + + + On Bật - + Cursor Con trỏ - + Heroes III Data Language Ngôn ngữ dữ liệu Heroes III - + Select display mode for game Windowed - game will run inside a window that covers part of your screen @@ -539,103 +596,136 @@ Toàn màn hình không viền - Trò chơi chạy toàn màn hình, dùng chung Toàn màn hình riêng biệt - Trò chơi chạy toàn màn hình và dùng độ phân giải được chọn. - + Reserved screen area Diện tích màn hình dành riêng - + Hardware Phần cứng - + Software Phần mềm - + Heroes III Translation Bản dịch Heroes III - + Check on startup Kiểm tra khi khởi động - + Fullscreen Toàn màn hình - - + + General Chung - + VCMI Language Ngôn ngữ VCMI - + Resolution Độ phân giải - + Autosave Tự động lưu - + + VSync + + + + Display index Mục hiện thị - + Network port Cổng mạng - - + + Video Phim ảnh - + Show intro Hiện thị giới thiệu - + Active Bật - + Disabled Tắt - + Enable Bật - + Not Installed Chưa cài đặt - + Install Cài đặt + + Chat + + + Form + + + + + Users in lobby + + + + + Global chat + + + + + type you message + + + + + send + + + FirstLaunchView @@ -942,88 +1032,78 @@ Hiện tại chưa hỗ trợ Heroes® of Might and Magic® III HD! Lobby - - + + Connect Kết nối - + Username Tên đăng nhập - + Server Máy chủ - - Lobby chat - Trò chuyện - - - + Session Phiên - + Players Người chơi - + Resolve Phân tích - + New game Tạo mới - + Load game Tải lại - + New room Tạo phòng - - Players in lobby - Người chơi trong sảnh - - - + Join room Vào phòng - + Ready Sẵn sàng - + Mods mismatch Bản sửa đổi chưa giống - + Leave Rời khỏi - + Kick player Mời ra - + Players in the room Người chơi trong phòng @@ -1033,7 +1113,7 @@ Hiện tại chưa hỗ trợ Heroes® of Might and Magic® III HD!Thoát - + No issues detected Không có vấn đề @@ -1103,19 +1183,18 @@ Hiện tại chưa hỗ trợ Heroes® of Might and Magic® III HD!UpdateDialog - You have latest version - Bạn đã có phiên bản mới nhất + You have the latest version + - Close Đóng - Check updates on startup - Cập nhật khi khởi động + Check for updates on startup + diff --git a/lib/modding/CModHandler.cpp b/lib/modding/CModHandler.cpp index 1414817f5..829ce6077 100644 --- a/lib/modding/CModHandler.cpp +++ b/lib/modding/CModHandler.cpp @@ -128,8 +128,8 @@ std::vector CModHandler::validateAndSortDependencies(std::vector error("Mod '%s' will not work: it depends on mod '%s', which is not installed.", brokenMod.getVerificationInfo().name, dependency); + if(!vstd::contains(resolvedModIDs, dependency) && brokenMod.config["modType"].String() != "Compatibility") + logMod->error("Mod '%s' has been disabled: dependency '%s' is missing.", brokenMod.getVerificationInfo().name, dependency); } } return sortedValidMods; diff --git a/lib/modding/CModInfo.cpp b/lib/modding/CModInfo.cpp index d90ce08ae..0e534da45 100644 --- a/lib/modding/CModInfo.cpp +++ b/lib/modding/CModInfo.cpp @@ -32,7 +32,6 @@ CModInfo::CModInfo(): CModInfo::CModInfo(const std::string & identifier, const JsonNode & local, const JsonNode & config): identifier(identifier), - description(config["description"].String()), dependencies(config["depends"].convertTo>()), conflicts(config["conflicts"].convertTo>()), explicitlyEnabled(false), @@ -45,7 +44,7 @@ CModInfo::CModInfo(const std::string & identifier, const JsonNode & local, const verificationInfo.parent = identifier.substr(0, identifier.find_last_of('.')); if(verificationInfo.parent == identifier) verificationInfo.parent.clear(); - + if(!config["compatibility"].isNull()) { vcmiCompatibleMin = CModVersion::fromString(config["compatibility"]["min"].String()); @@ -98,11 +97,7 @@ void CModInfo::loadLocalData(const JsonNode & data) implicitlyEnabled = true; explicitlyEnabled = !config["keepDisabled"].Bool(); verificationInfo.checksum = 0; - if (data.getType() == JsonNode::JsonType::DATA_BOOL) - { - explicitlyEnabled = data.Bool(); - } - if (data.getType() == JsonNode::JsonType::DATA_STRUCT) + if (data.isStruct()) { explicitlyEnabled = data["active"].Bool(); validated = data["validated"].Bool(); @@ -116,20 +111,27 @@ void CModInfo::loadLocalData(const JsonNode & data) if(!implicitlyEnabled) logGlobal->warn("Mod %s is incompatible with current version of VCMI and cannot be enabled", verificationInfo.name); - if (boost::iequals(config["modType"].String(), "translation")) // compatibility code - mods use "Translation" type at the moment + if (config["modType"].String() == "Translation") { if (baseLanguage != VLC->generaltexth->getPreferredLanguage()) { - logGlobal->warn("Translation mod %s was not loaded: language mismatch!", verificationInfo.name); + if (identifier.find_last_of('.') == std::string::npos) + logGlobal->warn("Translation mod %s was not loaded: language mismatch!", verificationInfo.name); implicitlyEnabled = false; } } + if (config["modType"].String() == "Compatibility") + { + // compatibility mods are always explicitly enabled + // however they may be implicitly disabled - if one of their dependencies is missing + explicitlyEnabled = true; + } if (isEnabled()) validation = validated ? PASSED : PENDING; else validation = validated ? PASSED : FAILED; - + verificationInfo.impactsGameplay = checkModGameplayAffecting(); } @@ -185,9 +187,4 @@ bool CModInfo::isEnabled() const return implicitlyEnabled && explicitlyEnabled; } -void CModInfo::setEnabled(bool on) -{ - explicitlyEnabled = on; -} - VCMI_LIB_NAMESPACE_END diff --git a/lib/modding/CModInfo.h b/lib/modding/CModInfo.h index 7469e1f19..f9f227e2a 100644 --- a/lib/modding/CModInfo.h +++ b/lib/modding/CModInfo.h @@ -87,7 +87,6 @@ public: void updateChecksum(ui32 newChecksum); bool isEnabled() const; - void setEnabled(bool on); static std::string getModDir(const std::string & name); static JsonPath getModFile(const std::string & name);