1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-08-13 19:54:17 +02:00

Merge remote-tracking branch 'origin/develop' into rmg_roads

This commit is contained in:
Tomasz Zieliński
2023-07-07 08:19:52 +02:00
40 changed files with 5437 additions and 2994 deletions

View File

@@ -430,18 +430,23 @@ void CClient::initPlayerEnvironments()
void CClient::initPlayerInterfaces() void CClient::initPlayerInterfaces()
{ {
for(auto & elem : gs->scenarioOps->playerInfos) for(auto & playerInfo : gs->scenarioOps->playerInfos)
{ {
PlayerColor color = elem.first; PlayerColor color = playerInfo.first;
if(!vstd::contains(CSH->getAllClientPlayers(CSH->c->connectionID), color)) if(!vstd::contains(CSH->getAllClientPlayers(CSH->c->connectionID), color))
continue; continue;
if(!vstd::contains(playerint, color)) if(!vstd::contains(playerint, color))
{ {
logNetwork->info("Preparing interface for player %s", color.getStr()); logNetwork->info("Preparing interface for player %s", color.getStr());
if(elem.second.isControlledByAI()) if(playerInfo.second.isControlledByAI())
{ {
auto AiToGive = aiNameForPlayer(elem.second, false); bool alliedToHuman = false;
for(auto & allyInfo : gs->scenarioOps->playerInfos)
if (gs->getPlayerTeam(allyInfo.first) == gs->getPlayerTeam(playerInfo.first) && allyInfo.second.isControlledByHuman())
alliedToHuman = true;
auto AiToGive = aiNameForPlayer(playerInfo.second, false, alliedToHuman);
logNetwork->info("Player %s will be lead by %s", color.getStr(), AiToGive); logNetwork->info("Player %s will be lead by %s", color.getStr(), AiToGive);
installNewPlayerInterface(CDynLibHandler::getNewAI(AiToGive), color); installNewPlayerInterface(CDynLibHandler::getNewAI(AiToGive), color);
} }
@@ -464,7 +469,7 @@ void CClient::initPlayerInterfaces()
logNetwork->trace("Initialized player interfaces %d ms", CSH->th->getDiff()); logNetwork->trace("Initialized player interfaces %d ms", CSH->th->getDiff());
} }
std::string CClient::aiNameForPlayer(const PlayerSettings & ps, bool battleAI) std::string CClient::aiNameForPlayer(const PlayerSettings & ps, bool battleAI, bool alliedToHuman)
{ {
if(ps.name.size()) if(ps.name.size())
{ {
@@ -473,13 +478,15 @@ std::string CClient::aiNameForPlayer(const PlayerSettings & ps, bool battleAI)
return ps.name; return ps.name;
} }
return aiNameForPlayer(battleAI); return aiNameForPlayer(battleAI, alliedToHuman);
} }
std::string CClient::aiNameForPlayer(bool battleAI) std::string CClient::aiNameForPlayer(bool battleAI, bool alliedToHuman)
{ {
const int sensibleAILimit = settings["session"]["oneGoodAI"].Bool() ? 1 : PlayerColor::PLAYER_LIMIT_I; const int sensibleAILimit = settings["session"]["oneGoodAI"].Bool() ? 1 : PlayerColor::PLAYER_LIMIT_I;
std::string goodAI = battleAI ? settings["server"]["neutralAI"].String() : settings["server"]["playerAI"].String(); std::string goodAdventureAI = alliedToHuman ? settings["server"]["alliedAI"].String() : settings["server"]["playerAI"].String();
std::string goodBattleAI = settings["server"]["neutralAI"].String();
std::string goodAI = battleAI ? goodBattleAI : goodAdventureAI;
std::string badAI = battleAI ? "StupidAI" : "EmptyAI"; std::string badAI = battleAI ? "StupidAI" : "EmptyAI";
//TODO what about human players //TODO what about human players

View File

@@ -161,8 +161,8 @@ public:
void initMapHandler(); void initMapHandler();
void initPlayerEnvironments(); void initPlayerEnvironments();
void initPlayerInterfaces(); void initPlayerInterfaces();
std::string aiNameForPlayer(const PlayerSettings & ps, bool battleAI); //empty means no AI -> human std::string aiNameForPlayer(const PlayerSettings & ps, bool battleAI, bool alliedToHuman); //empty means no AI -> human
std::string aiNameForPlayer(bool battleAI); std::string aiNameForPlayer(bool battleAI, bool alliedToHuman);
void installNewPlayerInterface(std::shared_ptr<CGameInterface> gameInterface, PlayerColor color, bool battlecb = false); void installNewPlayerInterface(std::shared_ptr<CGameInterface> gameInterface, PlayerColor color, bool battlecb = false);
void installNewBattleInterface(std::shared_ptr<CBattleGameInterface> battleInterface, PlayerColor color, bool needCallback = true); void installNewBattleInterface(std::shared_ptr<CBattleGameInterface> battleInterface, PlayerColor color, bool needCallback = true);

View File

@@ -94,7 +94,7 @@ void ClientCommandManager::handleGoSoloCommand()
{ {
if(elem.second.human) if(elem.second.human)
{ {
auto AiToGive = CSH->client->aiNameForPlayer(*CSH->client->getPlayerSettings(elem.first), false); auto AiToGive = CSH->client->aiNameForPlayer(*CSH->client->getPlayerSettings(elem.first), false, false);
printCommandMessage("Player " + elem.first.getStr() + " will be lead by " + AiToGive, ELogLevel::INFO); printCommandMessage("Player " + elem.first.getStr() + " will be lead by " + AiToGive, ELogLevel::INFO);
CSH->client->installNewPlayerInterface(CDynLibHandler::getNewAI(AiToGive), elem.first); CSH->client->installNewPlayerInterface(CDynLibHandler::getNewAI(AiToGive), elem.first);
} }

View File

@@ -1836,7 +1836,7 @@ CBlacksmithDialog::CBlacksmithDialog(bool possible, CreatureID creMachineID, Art
title = std::make_shared<CLabel>(165, 28, FONT_BIG, ETextAlignment::CENTER, Colors::YELLOW, title = std::make_shared<CLabel>(165, 28, FONT_BIG, ETextAlignment::CENTER, Colors::YELLOW,
boost::str(boost::format(CGI->generaltexth->allTexts[274]) % creature->getNameSingularTranslated())); boost::str(boost::format(CGI->generaltexth->allTexts[274]) % creature->getNameSingularTranslated()));
costText = std::make_shared<CLabel>(165, 218, FONT_MEDIUM, ETextAlignment::CENTER, Colors::WHITE, CGI->generaltexth->jktexts[43]); costText = std::make_shared<CLabel>(165, 218, FONT_MEDIUM, ETextAlignment::CENTER, Colors::WHITE, CGI->generaltexth->jktexts[43]);
costValue = std::make_shared<CLabel>(165, 290, FONT_MEDIUM, ETextAlignment::CENTER, Colors::WHITE, costValue = std::make_shared<CLabel>(165, 292, FONT_MEDIUM, ETextAlignment::CENTER, Colors::WHITE,
std::to_string(aid.toArtifact(CGI->artifacts())->getPrice())); std::to_string(aid.toArtifact(CGI->artifacts())->getPrice()));
std::string text = boost::str(boost::format(CGI->generaltexth->allTexts[595]) % creature->getNameSingularTranslated()); std::string text = boost::str(boost::format(CGI->generaltexth->allTexts[595]) % creature->getNameSingularTranslated());

View File

@@ -153,7 +153,10 @@
"language" : { "language" : {
"type" : "string", "type" : "string",
"description" : "Base language of the mod, before applying localizations. By default vcmi assumes English", "description" : "Base language of the mod, before applying localizations. By default vcmi assumes English",
"enum" : [ "chinese", "english", "korean", "german", "polish", "russian", "spanish", "ukrainian" ] "enum" : [ "czech, "chinese", "english", "french", "german", "hungarian", "italian", "korean", "polish", "russian", "spanish", "ukrainian" ]
},
"czech" : {
"$ref" : "#/definitions/localizable"
}, },
"chinese" : { "chinese" : {
"$ref" : "#/definitions/localizable" "$ref" : "#/definitions/localizable"
@@ -161,9 +164,18 @@
"english" : { "english" : {
"$ref" : "#/definitions/localizable" "$ref" : "#/definitions/localizable"
}, },
"french" : {
"$ref" : "#/definitions/localizable"
},
"german" : { "german" : {
"$ref" : "#/definitions/localizable" "$ref" : "#/definitions/localizable"
}, },
"hungarian" : {
"$ref" : "#/definitions/localizable"
},
"italian" : {
"$ref" : "#/definitions/localizable"
},
"korean" : { "korean" : {
"$ref" : "#/definitions/localizable" "$ref" : "#/definitions/localizable"
}, },

View File

@@ -58,12 +58,12 @@
}, },
"language" : { "language" : {
"type" : "string", "type" : "string",
"enum" : [ "english", "chinese", "german", "polish", "russian", "spanish", "ukrainian" ], "enum" : [ "english", "czech", "chinese", "german", "hungarian", "italian", "korean", "polish", "russian", "spanish", "ukrainian" ],
"default" : "english" "default" : "english"
}, },
"gameDataLanguage" : { "gameDataLanguage" : {
"type" : "string", "type" : "string",
"enum" : [ "auto", "english", "chinese", "german", "korean", "polish", "russian", "spanish", "ukrainian", "other_cp1250", "other_cp1251", "other_cp1252" ], "enum" : [ "auto", "english", "czech", "chinese", "german", "hungarian", "italian", "korean", "polish", "russian", "spanish", "ukrainian", "other_cp1250", "other_cp1251", "other_cp1252" ],
"default" : "auto" "default" : "auto"
}, },
"lastSave" : { "lastSave" : {
@@ -170,6 +170,8 @@
}, },
"targetfps" : { "targetfps" : {
"type" : "number", "type" : "number",
"defaultIOS" : 30, // reduce battery usage
"defaultAndroid" : 30, // reduce battery usage
"default" : 60 "default" : 60
} }
} }
@@ -270,7 +272,7 @@
"type" : "object", "type" : "object",
"additionalProperties" : false, "additionalProperties" : false,
"default" : {}, "default" : {},
"required" : [ "server", "port", "localInformation", "playerAI", "friendlyAI","neutralAI", "enemyAI", "reconnect", "uuid", "names" ], "required" : [ "server", "port", "localInformation", "playerAI", "alliedAI", "friendlyAI", "neutralAI", "enemyAI", "reconnect", "uuid", "names" ],
"properties" : { "properties" : {
"server" : { "server" : {
"type" : "string", "type" : "string",
@@ -288,6 +290,10 @@
"type" : "string", "type" : "string",
"default" : "Nullkiller" "default" : "Nullkiller"
}, },
"alliedAI" : {
"type" : "string",
"default" : "VCAI"
},
"friendlyAI" : { "friendlyAI" : {
"type" : "string", "type" : "string",
"default" : "BattleAI" "default" : "BattleAI"
@@ -397,16 +403,37 @@
"type" : "object", "type" : "object",
"default" : {}, "default" : {},
"additionalProperties" : false, "additionalProperties" : false,
"required" : [ "setupCompleted", "repositoryURL", "enableInstalledMods", "autoCheckRepositories", "updateOnStartup", "updateConfigUrl", "lobbyUrl", "lobbyPort", "lobbyUsername", "connectionTimeout" ], "required" : [
"setupCompleted",
"defaultRepositoryEnabled",
"defaultRepositoryURL",
"extraRepositoryURL",
"extraRepositoryEnabled",
"enableInstalledMods",
"autoCheckRepositories",
"updateOnStartup",
"updateConfigUrl",
"lobbyUrl",
"lobbyPort",
"lobbyUsername",
"connectionTimeout"
],
"properties" : { "properties" : {
"repositoryURL" : { "defaultRepositoryEnabled" : {
"type" : "array", "type" : "boolean",
"default" : [ "default" : true,
"https://raw.githubusercontent.com/vcmi/vcmi-mods-repository/develop/vcmi-1.3.json" },
], "defaultRepositoryURL" : {
"items" : { "type" : "string",
"type" : "string" "default" : "https://raw.githubusercontent.com/vcmi/vcmi-mods-repository/develop/vcmi-1.3.json",
} },
"extraRepositoryEnabled" : {
"type" : "boolean",
"default" : false,
},
"extraRepositoryURL" : {
"type" : "string",
"default" : "",
}, },
"setupCompleted" : { "setupCompleted" : {
"type" : "boolean", "type" : "boolean",

View File

@@ -1,5 +1,6 @@
set(launcher_SRCS set(launcher_SRCS
StdInc.cpp StdInc.cpp
aboutProject/aboutproject_moc.cpp
modManager/cdownloadmanager_moc.cpp modManager/cdownloadmanager_moc.cpp
modManager/cmodlist.cpp modManager/cmodlist.cpp
modManager/cmodlistmodel_moc.cpp modManager/cmodlistmodel_moc.cpp
@@ -21,6 +22,7 @@ set(launcher_SRCS
set(launcher_HEADERS set(launcher_HEADERS
StdInc.h StdInc.h
aboutProject/aboutproject_moc.h
modManager/cdownloadmanager_moc.h modManager/cdownloadmanager_moc.h
modManager/cmodlist.h modManager/cmodlist.h
modManager/cmodlistmodel_moc.h modManager/cmodlistmodel_moc.h
@@ -41,6 +43,7 @@ set(launcher_HEADERS
) )
set(launcher_FORMS set(launcher_FORMS
aboutProject/aboutproject_moc.ui
modManager/cmodlistview_moc.ui modManager/cmodlistview_moc.ui
modManager/imageviewer_moc.ui modManager/imageviewer_moc.ui
settingsView/csettingsview_moc.ui settingsView/csettingsview_moc.ui

View File

@@ -0,0 +1,77 @@
/*
* aboutproject_moc.cpp, part of VCMI engine
*
* Authors: listed in file AUTHORS in main folder
*
* License: GNU General Public License v2.0 or later
* Full text of license available in license.txt file, in main folder
*
*/
#include "StdInc.h"
#include "aboutproject_moc.h"
#include "ui_aboutproject_moc.h"
#include "../updatedialog_moc.h"
#include "../../lib/GameConstants.h"
#include "../../lib/VCMIDirs.h"
AboutProjectView::AboutProjectView(QWidget * parent)
: QWidget(parent)
, ui(new Ui::AboutProjectView)
{
ui->setupUi(this);
ui->lineEditUserDataDir->setText(pathToQString(VCMIDirs::get().userDataPath()));
ui->lineEditGameDir->setText(pathToQString(VCMIDirs::get().binaryPath()));
ui->lineEditTempDir->setText(pathToQString(VCMIDirs::get().userLogsPath()));
ui->lineEditBuildVersion->setText(QString::fromStdString(GameConstants::VCMI_VERSION));
ui->lineEditOperatingSystem->setText(QSysInfo::prettyProductName());
}
void AboutProjectView::on_updatesButton_clicked()
{
UpdateDialog::showUpdateDialog(true);
}
void AboutProjectView::on_openGameDataDir_clicked()
{
QDesktopServices::openUrl(QUrl::fromLocalFile(QFileInfo(ui->lineEditGameDir->text()).absoluteFilePath()));
}
void AboutProjectView::on_openUserDataDir_clicked()
{
QDesktopServices::openUrl(QUrl::fromLocalFile(QFileInfo(ui->lineEditUserDataDir->text()).absoluteFilePath()));
}
void AboutProjectView::on_openTempDir_clicked()
{
QDesktopServices::openUrl(QUrl::fromLocalFile(QFileInfo(ui->lineEditTempDir->text()).absoluteFilePath()));
}
void AboutProjectView::on_pushButtonDiscord_clicked()
{
QDesktopServices::openUrl(QUrl("https://discord.gg/chBT42V"));
}
void AboutProjectView::on_pushButtonSlack_clicked()
{
QDesktopServices::openUrl(QUrl("https://slack.vcmi.eu/"));
}
void AboutProjectView::on_pushButtonGithub_clicked()
{
QDesktopServices::openUrl(QUrl("https://github.com/vcmi/vcmi"));
}
void AboutProjectView::on_pushButtonHomepage_clicked()
{
QDesktopServices::openUrl(QUrl("https://vcmi.eu/"));
}
void AboutProjectView::on_pushButtonBugreport_clicked()
{
QDesktopServices::openUrl(QUrl("https://github.com/vcmi/vcmi/issues"));
}

View File

@@ -0,0 +1,53 @@
/*
* aboutproject_moc.h, part of VCMI engine
*
* Authors: listed in file AUTHORS in main folder
*
* License: GNU General Public License v2.0 or later
* Full text of license available in license.txt file, in main folder
*
*/
#pragma once
#include "../StdInc.h"
namespace Ui
{
class AboutProjectView;
}
class CModListView;
class AboutProjectView : public QWidget
{
Q_OBJECT
public:
explicit AboutProjectView(QWidget * parent = 0);
public slots:
private slots:
void on_updatesButton_clicked();
void on_openGameDataDir_clicked();
void on_openUserDataDir_clicked();
void on_openTempDir_clicked();
void on_pushButtonDiscord_clicked();
void on_pushButtonSlack_clicked();
void on_pushButtonGithub_clicked();
void on_pushButtonHomepage_clicked();
void on_pushButtonBugreport_clicked();
private:
Ui::AboutProjectView * ui;
};

View File

@@ -0,0 +1,309 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>AboutProjectView</class>
<widget class="QWidget" name="AboutProjectView">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>763</width>
<height>446</height>
</rect>
</property>
<property name="windowTitle">
<string/>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QGridLayout" name="gridLayout_2">
<item row="2" column="0">
<widget class="QPushButton" name="pushButtonDiscord">
<property name="text">
<string>VCMI on Discord</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="2">
<widget class="QLabel" name="labelLanguageSocial">
<property name="text">
<string>Have a question? Found a bug? Want to help? Join us!</string>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QPushButton" name="pushButtonGithub">
<property name="text">
<string>VCMI on Github</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="labelDataDirs_2">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Our Community</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QPushButton" name="pushButtonSlack">
<property name="text">
<string>VCMI on Slack</string>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<layout class="QGridLayout" name="gridLayout" columnstretch="2,4,1">
<item row="0" column="0">
<widget class="QLabel" name="labelDataDirs_3">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Build Information</string>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="QLineEdit" name="lineEditBuildVersion">
<property name="text">
<string notr="true"/>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="labelUserDataDir">
<property name="text">
<string>User data directory</string>
</property>
</widget>
</item>
<item row="5" column="2">
<widget class="QPushButton" name="openUserDataDir">
<property name="text">
<string>Open</string>
</property>
</widget>
</item>
<item row="6" column="2">
<widget class="QPushButton" name="openTempDir">
<property name="text">
<string>Open</string>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="QPushButton" name="updatesButton">
<property name="text">
<string>Check for updates</string>
</property>
</widget>
</item>
<item row="5" column="1">
<widget class="QLineEdit" name="lineEditUserDataDir">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string notr="true">/home/user/.vcmi</string>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelBuildVersionDesc">
<property name="text">
<string>Game version</string>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="labelTempDir">
<property name="text">
<string>Log files directory</string>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QLabel" name="labelDataDirs">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Data Directories</string>
</property>
</widget>
</item>
<item row="4" column="1">
<widget class="QLineEdit" name="lineEditGameDir">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string notr="true">/usr/share/vcmi</string>
</property>
</widget>
</item>
<item row="4" column="2">
<widget class="QPushButton" name="openGameDataDir">
<property name="text">
<string>Open</string>
</property>
</widget>
</item>
<item row="6" column="1">
<widget class="QLineEdit" name="lineEditTempDir">
<property name="enabled">
<bool>true</bool>
</property>
<property name="text">
<string notr="true">/home/user/.vcmi</string>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
<item row="4" column="0">
<widget class="QLabel" name="labelGameDir">
<property name="text">
<string>Game data directory</string>
</property>
</widget>
</item>
<item row="2" column="0">
<widget class="QLabel" name="labelOperatingSystem">
<property name="text">
<string>Operating System</string>
</property>
</widget>
</item>
<item row="2" column="1">
<widget class="QLineEdit" name="lineEditOperatingSystem">
<property name="text">
<string notr="true"/>
</property>
<property name="readOnly">
<bool>true</bool>
</property>
</widget>
</item>
</layout>
</item>
<item>
<spacer name="verticalSpacer_3">
<property name="orientation">
<enum>Qt::Vertical</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="pushButtonHomepage">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Project homepage</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="pushButtonBugreport">
<property name="minimumSize">
<size>
<width>200</width>
<height>0</height>
</size>
</property>
<property name="text">
<string>Report a bug</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</item>
</layout>
</widget>
<resources/>
<connections/>
</ui>

View File

@@ -107,13 +107,9 @@ void FirstLaunchView::enterSetup()
void FirstLaunchView::setSetupProgress(int progress) void FirstLaunchView::setSetupProgress(int progress)
{ {
int value = std::max(progress, ui->setupProgressBar->value()); ui->buttonTabLanguage->setDisabled(progress < 1);
ui->buttonTabHeroesData->setDisabled(progress < 2);
ui->setupProgressBar->setValue(value); ui->buttonTabModPreset->setDisabled(progress < 3);
ui->buttonTabLanguage->setDisabled(value < 1);
ui->buttonTabHeroesData->setDisabled(value < 2);
ui->buttonTabModPreset->setDisabled(value < 3);
} }
void FirstLaunchView::activateTabLanguage() void FirstLaunchView::activateTabLanguage()

View File

@@ -93,25 +93,6 @@
</item> </item>
</layout> </layout>
</item> </item>
<item>
<widget class="QProgressBar" name="setupProgressBar">
<property name="minimum">
<number>0</number>
</property>
<property name="maximum">
<number>3</number>
</property>
<property name="value">
<number>0</number>
</property>
<property name="textVisible">
<bool>true</bool>
</property>
<property name="format">
<string>Step %v out of %m</string>
</property>
</widget>
</item>
<item> <item>
<widget class="QStackedWidget" name="installerTabs"> <widget class="QStackedWidget" name="installerTabs">
<property name="currentIndex"> <property name="currentIndex">

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -18,16 +18,23 @@
#include <QListWidget> #include <QListWidget>
// list of language names, for generation of translations. Do not use directly, use Languages namespace instead // list of language names, for generation of translations. Do not use directly, use Languages namespace instead
static const std::array<std::string, 12> languageTranslatedNamesGenerator = { static const std::array<std::string, 19> languageTranslatedNamesGenerator = {
{ {
QT_TRANSLATE_NOOP("Language", "Czech"),
QT_TRANSLATE_NOOP("Language", "Chinese"), QT_TRANSLATE_NOOP("Language", "Chinese"),
QT_TRANSLATE_NOOP("Language", "English"), QT_TRANSLATE_NOOP("Language", "English"),
QT_TRANSLATE_NOOP("Language", "Finnish"),
QT_TRANSLATE_NOOP("Language", "French"), QT_TRANSLATE_NOOP("Language", "French"),
QT_TRANSLATE_NOOP("Language", "German"), QT_TRANSLATE_NOOP("Language", "German"),
QT_TRANSLATE_NOOP("Language", "Hungarian"),
QT_TRANSLATE_NOOP("Language", "Italian"),
QT_TRANSLATE_NOOP("Language", "Korean"), QT_TRANSLATE_NOOP("Language", "Korean"),
QT_TRANSLATE_NOOP("Language", "Polish"), QT_TRANSLATE_NOOP("Language", "Polish"),
QT_TRANSLATE_NOOP("Language", "Portuguese"),
QT_TRANSLATE_NOOP("Language", "Russian"), QT_TRANSLATE_NOOP("Language", "Russian"),
QT_TRANSLATE_NOOP("Language", "Spanish"), QT_TRANSLATE_NOOP("Language", "Spanish"),
QT_TRANSLATE_NOOP("Language", "Swedish"),
QT_TRANSLATE_NOOP("Language", "Turkish"),
QT_TRANSLATE_NOOP("Language", "Ukrainian"), QT_TRANSLATE_NOOP("Language", "Ukrainian"),
QT_TRANSLATE_NOOP("Language", "Other (East European)"), QT_TRANSLATE_NOOP("Language", "Other (East European)"),
QT_TRANSLATE_NOOP("Language", "Other (Cyrillic Script)"), QT_TRANSLATE_NOOP("Language", "Other (Cyrillic Script)"),

View File

@@ -15,6 +15,7 @@
#include "../lib/CConfigHandler.h" #include "../lib/CConfigHandler.h"
#include "../lib/VCMIDirs.h" #include "../lib/VCMIDirs.h"
#include "../lib/Languages.h"
#include "../lib/filesystem/Filesystem.h" #include "../lib/filesystem/Filesystem.h"
#include "../lib/logging/CBasicLogConfigurator.h" #include "../lib/logging/CBasicLogConfigurator.h"
@@ -53,6 +54,7 @@ void MainWindow::computeSidePanelSizes()
ui->modslistButton, ui->modslistButton,
ui->settingsButton, ui->settingsButton,
ui->lobbyButton, ui->lobbyButton,
ui->aboutButton,
ui->startEditorButton, ui->startEditorButton,
ui->startGameButton ui->startGameButton
}; };
@@ -74,6 +76,12 @@ MainWindow::MainWindow(QWidget * parent)
: QMainWindow(parent), ui(new Ui::MainWindow) : QMainWindow(parent), ui(new Ui::MainWindow)
{ {
load(); // load FS before UI load(); // load FS before UI
bool setupCompleted = settings["launcher"]["setupCompleted"].Bool();
if (!setupCompleted)
detectPreferredLanguage();
updateTranslation(); // load translation updateTranslation(); // load translation
ui->setupUi(this); ui->setupUi(this);
@@ -103,7 +111,6 @@ MainWindow::MainWindow(QWidget * parent)
computeSidePanelSizes(); computeSidePanelSizes();
bool h3DataFound = CResourceHandler::get()->existsResource(ResourceID("DATA/GENRLTXT.TXT")); bool h3DataFound = CResourceHandler::get()->existsResource(ResourceID("DATA/GENRLTXT.TXT"));
bool setupCompleted = settings["launcher"]["setupCompleted"].Bool();
if (h3DataFound && setupCompleted) if (h3DataFound && setupCompleted)
ui->tabListWidget->setCurrentIndex(TabRows::MODS); ui->tabListWidget->setCurrentIndex(TabRows::MODS);
@@ -111,13 +118,35 @@ MainWindow::MainWindow(QWidget * parent)
enterSetup(); enterSetup();
ui->settingsView->setDisplayList(); ui->settingsView->setDisplayList();
connect(ui->modlistView, &CModListView::extraResolutionsEnabledChanged,
ui->settingsView, &CSettingsView::fillValidResolutions);
if(settings["launcher"]["updateOnStartup"].Bool()) if(settings["launcher"]["updateOnStartup"].Bool())
UpdateDialog::showUpdateDialog(false); UpdateDialog::showUpdateDialog(false);
} }
void MainWindow::detectPreferredLanguage()
{
auto preferredLanguages = QLocale::system().uiLanguages();
std::string selectedLanguage;
for (auto const & userLang : preferredLanguages)
{
logGlobal->info("Preferred language: %s", userLang.toStdString());
for (auto const & vcmiLang : Languages::getLanguageList())
if (vcmiLang.tagIETF == userLang.toStdString())
selectedLanguage = vcmiLang.identifier;
}
logGlobal->info("Selected language: %s", selectedLanguage);
if (!selectedLanguage.empty())
{
Settings node = settings.write["general"]["language"];
node->String() = selectedLanguage;
}
}
void MainWindow::enterSetup() void MainWindow::enterSetup()
{ {
ui->startGameButton->setEnabled(false); ui->startGameButton->setEnabled(false);
@@ -203,6 +232,12 @@ void MainWindow::on_lobbyButton_clicked()
ui->tabListWidget->setCurrentIndex(TabRows::LOBBY); ui->tabListWidget->setCurrentIndex(TabRows::LOBBY);
} }
void MainWindow::on_aboutButton_clicked()
{
ui->startGameButton->setEnabled(true);
ui->tabListWidget->setCurrentIndex(TabRows::ABOUT);
}
void MainWindow::updateTranslation() void MainWindow::updateTranslation()
{ {
#ifdef ENABLE_QT_TRANSLATIONS #ifdef ENABLE_QT_TRANSLATIONS

View File

@@ -39,7 +39,8 @@ private:
MODS = 0, MODS = 0,
SETTINGS = 1, SETTINGS = 1,
LOBBY = 2, LOBBY = 2,
SETUP = 3 SETUP = 3,
ABOUT = 4,
}; };
void changeEvent(QEvent *event) override; void changeEvent(QEvent *event) override;
@@ -53,6 +54,7 @@ public:
void updateTranslation(); void updateTranslation();
void computeSidePanelSizes(); void computeSidePanelSizes();
void detectPreferredLanguage();
void enterSetup(); void enterSetup();
void exitSetup(); void exitSetup();
void switchToModsTab(); void switchToModsTab();
@@ -65,4 +67,5 @@ private slots:
void on_settingsButton_clicked(); void on_settingsButton_clicked();
void on_lobbyButton_clicked(); void on_lobbyButton_clicked();
void on_startEditorButton_clicked(); void on_startEditorButton_clicked();
void on_aboutButton_clicked();
}; };

View File

@@ -6,8 +6,8 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>800</width> <width>900</width>
<height>490</height> <height>536</height>
</rect> </rect>
</property> </property>
<property name="sizePolicy"> <property name="sizePolicy">
@@ -183,6 +183,56 @@
</property> </property>
</widget> </widget>
</item> </item>
<item>
<widget class="QToolButton" name="aboutButton">
<property name="sizePolicy">
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Preferred">
<horstretch>1</horstretch>
<verstretch>10</verstretch>
</sizepolicy>
</property>
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Help</string>
</property>
<property name="icon">
<iconset>
<normaloff>icons:about-project.png</normaloff>icons:about-project.png</iconset>
</property>
<property name="iconSize">
<size>
<width>30</width>
<height>30</height>
</size>
</property>
<property name="checkable">
<bool>true</bool>
</property>
<property name="checked">
<bool>false</bool>
</property>
<property name="autoExclusive">
<bool>true</bool>
</property>
<property name="toolButtonStyle">
<enum>Qt::ToolButtonTextUnderIcon</enum>
</property>
<property name="autoRaise">
<bool>true</bool>
</property>
</widget>
</item>
<item> <item>
<spacer name="verticalSpacer"> <spacer name="verticalSpacer">
<property name="orientation"> <property name="orientation">
@@ -322,6 +372,7 @@
<widget class="CSettingsView" name="settingsView"/> <widget class="CSettingsView" name="settingsView"/>
<widget class="Lobby" name="lobbyView"/> <widget class="Lobby" name="lobbyView"/>
<widget class="FirstLaunchView" name="setupView"/> <widget class="FirstLaunchView" name="setupView"/>
<widget class="AboutProjectView" name="aboutView"/>
</widget> </widget>
</item> </item>
</layout> </layout>
@@ -353,6 +404,12 @@
<header>firstLaunch/firstlaunch_moc.h</header> <header>firstLaunch/firstlaunch_moc.h</header>
<container>1</container> <container>1</container>
</customwidget> </customwidget>
<customwidget>
<class>AboutProjectView</class>
<extends>QWidget</extends>
<header>aboutProject/aboutproject_moc.h</header>
<container>1</container>
</customwidget>
</customwidgets> </customwidgets>
<resources/> <resources/>
<connections/> <connections/>

View File

@@ -62,10 +62,10 @@ CDownloadManager::FileEntry & CDownloadManager::getEntry(QNetworkReply * reply)
void CDownloadManager::downloadFinished(QNetworkReply * reply) void CDownloadManager::downloadFinished(QNetworkReply * reply)
{ {
FileEntry & file = getEntry(reply); FileEntry & file = getEntry(reply);
QVariant possibleRedirectUrl = reply->attribute(QNetworkRequest::RedirectionTargetAttribute); QVariant possibleRedirectUrl = reply->attribute(QNetworkRequest::RedirectionTargetAttribute);
QUrl qurl = possibleRedirectUrl.toUrl(); QUrl qurl = possibleRedirectUrl.toUrl();
if(possibleRedirectUrl.isValid()) if(possibleRedirectUrl.isValid())
{ {
QString filename; QString filename;
@@ -135,7 +135,7 @@ void CDownloadManager::downloadProgressChanged(qint64 bytesReceived, qint64 byte
quint64 total = 0; quint64 total = 0;
for(auto & entry : currentDownloads) for(auto & entry : currentDownloads)
total += entry.totalSize > 0 ? entry.totalSize : 0; total += entry.totalSize > 0 ? entry.totalSize : entry.bytesReceived;
quint64 received = 0; quint64 received = 0;
for(auto & entry : currentDownloads) for(auto & entry : currentDownloads)

View File

@@ -30,9 +30,6 @@ void CModListView::setupModModel()
{ {
modModel = new CModListModel(this); modModel = new CModListModel(this);
manager = std::make_unique<CModManager>(modModel); manager = std::make_unique<CModManager>(modModel);
connect(manager.get(), &CModManager::extraResolutionsEnabledChanged,
this, &CModListView::extraResolutionsEnabledChanged);
} }
void CModListView::changeEvent(QEvent *event) void CModListView::changeEvent(QEvent *event)
@@ -93,11 +90,8 @@ void CModListView::setupModsView()
CModListView::CModListView(QWidget * parent) CModListView::CModListView(QWidget * parent)
: QWidget(parent) : QWidget(parent)
, settingsListener(settings.listen["launcher"]["repositoryURL"])
, ui(new Ui::CModListView) , ui(new Ui::CModListView)
, repositoriesChanged(false)
{ {
settingsListener([&](const JsonNode &){ repositoriesChanged = true; });
ui->setupUi(this); ui->setupUi(this);
setupModModel(); setupModModel();
@@ -131,15 +125,25 @@ CModListView::CModListView(QWidget * parent)
void CModListView::loadRepositories() void CModListView::loadRepositories()
{ {
manager->resetRepositories(); manager->resetRepositories();
for(auto entry : settings["launcher"]["repositoryURL"].Vector())
QStringList repositories;
if (settings["launcher"]["defaultRepositoryEnabled"].Bool())
repositories.push_back(QString::fromStdString(settings["launcher"]["defaultRepositoryURL"].String()));
if (settings["launcher"]["extraRepositoryEnabled"].Bool())
repositories.push_back(QString::fromStdString(settings["launcher"]["extraRepositoryURL"].String()));
for(auto entry : repositories)
{ {
QString str = QString::fromUtf8(entry.String().c_str()); if (entry.isEmpty())
continue;
// URL must be encoded to something else to get rid of symbols illegal in file names // URL must be encoded to something else to get rid of symbols illegal in file names
auto hashed = QCryptographicHash::hash(str.toUtf8(), QCryptographicHash::Md5); auto hashed = QCryptographicHash::hash(entry.toUtf8(), QCryptographicHash::Md5);
auto hashedStr = QString::fromUtf8(hashed.toHex()); auto hashedStr = QString::fromUtf8(hashed.toHex());
downloadFile(hashedStr + ".json", str, "repository index"); downloadFile(hashedStr + ".json", entry, "repository index");
} }
} }
@@ -151,19 +155,6 @@ CModListView::~CModListView()
delete ui; delete ui;
} }
void CModListView::showEvent(QShowEvent * event)
{
QWidget::showEvent(event);
if(repositoriesChanged)
{
repositoriesChanged = false;
if(settings["launcher"]["autoCheckRepositories"].Bool())
{
loadRepositories();
}
}
}
static QString replaceIfNotEmpty(QVariant value, QString pattern) static QString replaceIfNotEmpty(QVariant value, QString pattern)
{ {
if(value.canConvert<QStringList>()) if(value.canConvert<QStringList>())
@@ -391,11 +382,6 @@ void CModListView::selectMod(const QModelIndex & index)
} }
} }
bool CModListView::isExtraResolutionsModEnabled() const
{
return manager->isExtraResolutionsModEnabled();
}
void CModListView::modSelected(const QModelIndex & current, const QModelIndex &) void CModListView::modSelected(const QModelIndex & current, const QModelIndex &)
{ {
selectMod(current); selectMod(current);
@@ -611,8 +597,8 @@ void CModListView::downloadFile(QString file, QString url, QString description)
void CModListView::downloadProgress(qint64 current, qint64 max) void CModListView::downloadProgress(qint64 current, qint64 max)
{ {
// display progress, in kilobytes // display progress, in kilobytes
ui->progressBar->setValue(current / 1024);
ui->progressBar->setMaximum(max / 1024); ui->progressBar->setMaximum(max / 1024);
ui->progressBar->setValue(current / 1024);
} }
void CModListView::downloadFinished(QStringList savedFiles, QStringList failedFiles, QStringList errors) void CModListView::downloadFinished(QStringList savedFiles, QStringList failedFiles, QStringList errors)
@@ -688,7 +674,7 @@ void CModListView::installFiles(QStringList files)
auto modjson = repodata[key].toMap().value("mod"); auto modjson = repodata[key].toMap().value("mod");
if(!modjson.isNull()) if(!modjson.isNull())
{ {
downloadFile(key + ".json", modjson.toString(), "mod json"); downloadFile(key + ".json", modjson.toString(), "repository index");
} }
} }
} }

View File

@@ -35,15 +35,9 @@ class CModListView : public QWidget
CModFilterModel * filterModel; CModFilterModel * filterModel;
CDownloadManager * dlManager; CDownloadManager * dlManager;
SettingsListener settingsListener;
bool repositoriesChanged;
void showEvent(QShowEvent * event) override;
void setupModModel(); void setupModModel();
void setupFilterModel(); void setupFilterModel();
void setupModsView(); void setupModsView();
void loadRepositories();
void checkManagerErrors(); void checkManagerErrors();
@@ -67,8 +61,6 @@ class CModListView : public QWidget
void changeEvent(QEvent *event) override; void changeEvent(QEvent *event) override;
signals: signals:
void extraResolutionsEnabledChanged(bool enabled);
void modsChanged(); void modsChanged();
public: public:
@@ -76,11 +68,11 @@ public:
~CModListView(); ~CModListView();
void loadScreenshots(); void loadScreenshots();
void loadRepositories();
void disableModInfo(); void disableModInfo();
void selectMod(const QModelIndex & index); void selectMod(const QModelIndex & index);
bool isExtraResolutionsModEnabled() const;
const CModList & getModList() const; const CModList & getModList() const;

View File

@@ -20,8 +20,6 @@
namespace namespace
{ {
const QLatin1String extraResolutionsMod{"vcmi-extras.extraresolutions"};
QString detectModArchive(QString path, QString modName) QString detectModArchive(QString path, QString modName)
{ {
auto files = ZipArchive::listFiles(qstringToPath(path)); auto files = ZipArchive::listFiles(qstringToPath(path));
@@ -223,11 +221,6 @@ bool CModManager::canDisableMod(QString modname)
return true; return true;
} }
bool CModManager::isExtraResolutionsModEnabled() const
{
return modList->hasMod(extraResolutionsMod) && modList->getMod(extraResolutionsMod).isEnabled();
}
static QVariant writeValue(QString path, QVariantMap input, QVariant value) static QVariant writeValue(QString path, QVariantMap input, QVariant value)
{ {
if(path.size() > 1) if(path.size() > 1)
@@ -255,9 +248,6 @@ bool CModManager::doEnableMod(QString mod, bool on)
modList->setModSettings(modSettings["activeMods"]); modList->setModSettings(modSettings["activeMods"]);
modList->modChanged(mod); modList->modChanged(mod);
if(mod == extraResolutionsMod)
sendExtraResolutionsEnabledChanged(on);
JsonUtils::JsonToFile(settingsPath(), modSettings); JsonUtils::JsonToFile(settingsPath(), modSettings);
return true; return true;
@@ -298,9 +288,6 @@ bool CModManager::doInstallMod(QString modname, QString archivePath)
loadMods(); loadMods();
modList->reloadRepositories(); modList->reloadRepositories();
if(modname == extraResolutionsMod)
sendExtraResolutionsEnabledChanged(true);
return true; return true;
} }
@@ -321,9 +308,6 @@ bool CModManager::doUninstallMod(QString modname)
loadMods(); loadMods();
modList->reloadRepositories(); modList->reloadRepositories();
if(modname == extraResolutionsMod)
sendExtraResolutionsEnabledChanged(false);
return true; return true;
} }
@@ -347,8 +331,3 @@ bool CModManager::removeModDir(QString path)
return dir.removeRecursively(); return dir.removeRecursively();
} }
void CModManager::sendExtraResolutionsEnabledChanged(bool enabled)
{
emit extraResolutionsEnabledChanged(enabled);
}

View File

@@ -31,11 +31,6 @@ class CModManager : public QObject
bool addError(QString modname, QString message); bool addError(QString modname, QString message);
bool removeModDir(QString mod); bool removeModDir(QString mod);
void sendExtraResolutionsEnabledChanged(bool enabled);
signals:
void extraResolutionsEnabledChanged(bool enabled);
public: public:
CModManager(CModList * modList); CModManager(CModList * modList);
@@ -58,6 +53,4 @@ public:
bool canUninstallMod(QString mod); bool canUninstallMod(QString mod);
bool canEnableMod(QString mod); bool canEnableMod(QString mod);
bool canDisableMod(QString mod); bool canDisableMod(QString mod);
bool isExtraResolutionsModEnabled() const;
}; };

View File

@@ -17,13 +17,11 @@
#include "../jsonutils.h" #include "../jsonutils.h"
#include "../languages.h" #include "../languages.h"
#include "../launcherdirs.h" #include "../launcherdirs.h"
#include "../updatedialog_moc.h"
#include <QFileInfo> #include <QFileInfo>
#include <QGuiApplication> #include <QGuiApplication>
#include "../../lib/CConfigHandler.h" #include "../../lib/CConfigHandler.h"
#include "../../lib/VCMIDirs.h"
#ifndef VCMI_MOBILE #ifndef VCMI_MOBILE
#include <SDL2/SDL.h> #include <SDL2/SDL.h>
@@ -79,26 +77,28 @@ void CSettingsView::loadSettings()
else else
ui->comboBoxFullScreen->setCurrentIndex(settings["video"]["fullscreen"].Bool()); ui->comboBoxFullScreen->setCurrentIndex(settings["video"]["fullscreen"].Bool());
#endif #endif
fillValidScalingRange();
ui->spinBoxInterfaceScaling->setValue(settings["video"]["resolution"]["scaling"].Float());
ui->spinBoxFramerateLimit->setValue(settings["video"]["targetfps"].Float());
ui->comboBoxFriendlyAI->setCurrentText(QString::fromStdString(settings["server"]["friendlyAI"].String())); ui->comboBoxFriendlyAI->setCurrentText(QString::fromStdString(settings["server"]["friendlyAI"].String()));
ui->comboBoxNeutralAI->setCurrentText(QString::fromStdString(settings["server"]["neutralAI"].String())); ui->comboBoxNeutralAI->setCurrentText(QString::fromStdString(settings["server"]["neutralAI"].String()));
ui->comboBoxEnemyAI->setCurrentText(QString::fromStdString(settings["server"]["enemyAI"].String())); ui->comboBoxEnemyAI->setCurrentText(QString::fromStdString(settings["server"]["enemyAI"].String()));
ui->comboBoxPlayerAI->setCurrentText(QString::fromStdString(settings["server"]["playerAI"].String())); ui->comboBoxEnemyPlayerAI->setCurrentText(QString::fromStdString(settings["server"]["playerAI"].String()));
ui->spinBoxNetworkPort->setValue(settings["server"]["port"].Integer()); ui->spinBoxNetworkPort->setValue(settings["server"]["port"].Integer());
ui->comboBoxAutoCheck->setCurrentIndex(settings["launcher"]["autoCheckRepositories"].Bool()); ui->comboBoxAutoCheck->setCurrentIndex(settings["launcher"]["autoCheckRepositories"].Bool());
JsonNode urls = settings["launcher"]["repositoryURL"]; ui->lineEditRepositoryDefault->setText(QString::fromStdString(settings["launcher"]["defaultRepositoryURL"].String()));
ui->plainTextEditRepos->blockSignals(true); // Do not report loading as change of data ui->lineEditRepositoryExtra->setText(QString::fromStdString(settings["launcher"]["extraRepositoryURL"].String()));
ui->plainTextEditRepos->clear();
for(auto entry : urls.Vector())
ui->plainTextEditRepos->appendPlainText(QString::fromUtf8(entry.String().c_str()));
ui->plainTextEditRepos->blockSignals(false);
ui->lineEditUserDataDir->setText(pathToQString(VCMIDirs::get().userDataPath())); ui->lineEditRepositoryDefault->setEnabled(settings["launcher"]["defaultRepositoryEnabled"].Bool());
ui->lineEditGameDir->setText(pathToQString(VCMIDirs::get().binaryPath())); ui->lineEditRepositoryExtra->setEnabled(settings["launcher"]["extraRepositoryEnabled"].Bool());
ui->lineEditTempDir->setText(pathToQString(VCMIDirs::get().userLogsPath()));
ui->checkBoxRepositoryDefault->setChecked(settings["launcher"]["defaultRepositoryEnabled"].Bool());
ui->checkBoxRepositoryExtra->setChecked(settings["launcher"]["extraRepositoryEnabled"].Bool());
ui->comboBoxAutoSave->setCurrentIndex(settings["general"]["saveFrequency"].Integer() > 0 ? 1 : 0); ui->comboBoxAutoSave->setCurrentIndex(settings["general"]["saveFrequency"].Integer() > 0 ? 1 : 0);
@@ -114,6 +114,39 @@ void CSettingsView::fillValidResolutions()
fillValidResolutionsForScreen(ui->comboBoxDisplayIndex->isVisible() ? ui->comboBoxDisplayIndex->currentIndex() : 0); fillValidResolutionsForScreen(ui->comboBoxDisplayIndex->isVisible() ? ui->comboBoxDisplayIndex->currentIndex() : 0);
} }
QSize CSettingsView::getPreferredRenderingResolution()
{
#ifndef VCMI_MOBILE
bool fullscreen = settings["video"]["fullscreen"].Bool();
bool realFullscreen = settings["video"]["realFullscreen"].Bool();
if (!fullscreen || realFullscreen)
{
int resX = settings["video"]["resolution"]["width"].Integer();
int resY = settings["video"]["resolution"]["height"].Integer();
return QSize(resX, resY);
}
#endif
return QApplication::primaryScreen()->geometry().size();
}
void CSettingsView::fillValidScalingRange()
{
//FIXME: this code is copy of ScreenHandler::getSupportedScalingRange
// H3 resolution, any resolution smaller than that is not correctly supported
static const QSize minResolution = {800, 600};
// arbitrary limit on *downscaling*. Allow some downscaling, if requested by user. Should be generally limited to 100+ for all but few devices
static const double minimalScaling = 50;
QSize renderResolution = getPreferredRenderingResolution();
double maximalScalingWidth = 100.0 * renderResolution.width() / minResolution.width();
double maximalScalingHeight = 100.0 * renderResolution.height() / minResolution.height();
double maximalScaling = std::min(maximalScalingWidth, maximalScalingHeight);
ui->spinBoxInterfaceScaling->setRange(minimalScaling, maximalScaling);
}
#ifndef VCMI_MOBILE #ifndef VCMI_MOBILE
static QVector<QSize> findAvailableResolutions(int displayIndex) static QVector<QSize> findAvailableResolutions(int displayIndex)
@@ -153,21 +186,33 @@ void CSettingsView::fillValidResolutionsForScreen(int screenIndex)
ui->comboBoxResolution->blockSignals(true); // avoid saving wrong resolution after adding first item from the list ui->comboBoxResolution->blockSignals(true); // avoid saving wrong resolution after adding first item from the list
ui->comboBoxResolution->clear(); ui->comboBoxResolution->clear();
QVector<QSize> resolutions = findAvailableResolutions(screenIndex); bool fullscreen = settings["video"]["fullscreen"].Bool();
bool realFullscreen = settings["video"]["realFullscreen"].Bool();
for(const auto & entry : resolutions)
ui->comboBoxResolution->addItem(resolutionToString(entry)); if (!fullscreen || realFullscreen)
{
QVector<QSize> resolutions = findAvailableResolutions(screenIndex);
for(const auto & entry : resolutions)
ui->comboBoxResolution->addItem(resolutionToString(entry));
}
else
{
ui->comboBoxResolution->addItem(resolutionToString(getPreferredRenderingResolution()));
}
ui->comboBoxResolution->setEnabled(ui->comboBoxResolution->count() > 1);
int resX = settings["video"]["resolution"]["width"].Integer(); int resX = settings["video"]["resolution"]["width"].Integer();
int resY = settings["video"]["resolution"]["height"].Integer(); int resY = settings["video"]["resolution"]["height"].Integer();
int resIndex = ui->comboBoxResolution->findText(resolutionToString({resX, resY})); int resIndex = ui->comboBoxResolution->findText(resolutionToString({resX, resY}));
ui->comboBoxResolution->setCurrentIndex(resIndex); ui->comboBoxResolution->setCurrentIndex(resIndex);
ui->comboBoxResolution->blockSignals(false);
// if selected resolution no longer exists, force update value to the largest (last) resolution // if selected resolution no longer exists, force update value to the largest (last) resolution
if(resIndex == -1) if(resIndex == -1)
ui->comboBoxResolution->setCurrentIndex(ui->comboBoxResolution->count() - 1); ui->comboBoxResolution->setCurrentIndex(ui->comboBoxResolution->count() - 1);
ui->comboBoxResolution->blockSignals(false);
} }
#else #else
void CSettingsView::fillValidResolutionsForScreen(int screenIndex) void CSettingsView::fillValidResolutionsForScreen(int screenIndex)
@@ -183,7 +228,6 @@ CSettingsView::CSettingsView(QWidget * parent)
{ {
ui->setupUi(this); ui->setupUi(this);
ui->lineEditBuildVersion->setText(QString::fromStdString(GameConstants::VCMI_VERSION));
loadSettings(); loadSettings();
} }
@@ -192,7 +236,6 @@ CSettingsView::~CSettingsView()
delete ui; delete ui;
} }
void CSettingsView::on_comboBoxResolution_currentTextChanged(const QString & arg1) void CSettingsView::on_comboBoxResolution_currentTextChanged(const QString & arg1)
{ {
QStringList list = arg1.split("x"); QStringList list = arg1.split("x");
@@ -200,6 +243,9 @@ void CSettingsView::on_comboBoxResolution_currentTextChanged(const QString & arg
Settings node = settings.write["video"]["resolution"]; Settings node = settings.write["video"]["resolution"];
node["width"].Float() = list[0].toInt(); node["width"].Float() = list[0].toInt();
node["height"].Float() = list[1].toInt(); node["height"].Float() = list[1].toInt();
fillValidResolutions();
fillValidScalingRange();
} }
void CSettingsView::on_comboBoxFullScreen_currentIndexChanged(int index) void CSettingsView::on_comboBoxFullScreen_currentIndexChanged(int index)
@@ -208,6 +254,9 @@ void CSettingsView::on_comboBoxFullScreen_currentIndexChanged(int index)
Settings nodeRealFullscreen = settings.write["video"]["realFullscreen"]; Settings nodeRealFullscreen = settings.write["video"]["realFullscreen"];
nodeFullscreen->Bool() = (index != 0); nodeFullscreen->Bool() = (index != 0);
nodeRealFullscreen->Bool() = (index == 2); nodeRealFullscreen->Bool() = (index == 2);
fillValidResolutions();
fillValidScalingRange();
} }
void CSettingsView::on_comboBoxAutoCheck_currentIndexChanged(int index) void CSettingsView::on_comboBoxAutoCheck_currentIndexChanged(int index)
@@ -254,61 +303,18 @@ void CSettingsView::on_spinBoxNetworkPort_valueChanged(int arg1)
node->Float() = arg1; node->Float() = arg1;
} }
void CSettingsView::on_plainTextEditRepos_textChanged()
{
Settings node = settings.write["launcher"]["repositoryURL"];
QStringList list = ui->plainTextEditRepos->toPlainText().split('\n');
node->Vector().clear();
for(QString line : list)
{
if(line.trimmed().size() > 0)
{
JsonNode entry;
entry.String() = line.trimmed().toUtf8().data();
node->Vector().push_back(entry);
}
}
}
void CSettingsView::on_openTempDir_clicked()
{
QDesktopServices::openUrl(QUrl::fromLocalFile(QFileInfo(ui->lineEditTempDir->text()).absoluteFilePath()));
}
void CSettingsView::on_openUserDataDir_clicked()
{
QDesktopServices::openUrl(QUrl::fromLocalFile(QFileInfo(ui->lineEditUserDataDir->text()).absoluteFilePath()));
}
void CSettingsView::on_openGameDataDir_clicked()
{
QDesktopServices::openUrl(QUrl::fromLocalFile(QFileInfo(ui->lineEditGameDir->text()).absoluteFilePath()));
}
void CSettingsView::on_comboBoxShowIntro_currentIndexChanged(int index) void CSettingsView::on_comboBoxShowIntro_currentIndexChanged(int index)
{ {
Settings node = settings.write["video"]["showIntro"]; Settings node = settings.write["video"]["showIntro"];
node->Bool() = index; node->Bool() = index;
} }
void CSettingsView::on_changeGameDataDir_clicked()
{
}
void CSettingsView::on_comboBoxAutoSave_currentIndexChanged(int index) void CSettingsView::on_comboBoxAutoSave_currentIndexChanged(int index)
{ {
Settings node = settings.write["general"]["saveFrequency"]; Settings node = settings.write["general"]["saveFrequency"];
node->Integer() = index; node->Integer() = index;
} }
void CSettingsView::on_updatesButton_clicked()
{
UpdateDialog::showUpdateDialog(true);
}
void CSettingsView::on_comboBoxLanguage_currentIndexChanged(int index) void CSettingsView::on_comboBoxLanguage_currentIndexChanged(int index)
{ {
Settings node = settings.write["general"]["language"]; Settings node = settings.write["general"]["language"];
@@ -348,7 +354,6 @@ void CSettingsView::on_listWidgetSettings_currentRowChanged(int currentRow)
ui->labelGeneral, ui->labelGeneral,
ui->labelVideo, ui->labelVideo,
ui->labelArtificialIntelligence, ui->labelArtificialIntelligence,
ui->labelDataDirs,
ui->labelRepositories ui->labelRepositories
}; };
@@ -441,3 +446,50 @@ void CSettingsView::on_comboBoxLanguageBase_currentIndexChanged(int index)
QString selectedLanguage = ui->comboBoxLanguageBase->itemData(index).toString(); QString selectedLanguage = ui->comboBoxLanguageBase->itemData(index).toString();
node->String() = selectedLanguage.toStdString(); node->String() = selectedLanguage.toStdString();
} }
void CSettingsView::on_checkBoxRepositoryDefault_stateChanged(int arg1)
{
Settings node = settings.write["launcher"]["defaultRepositoryEnabled"];
node->Bool() = arg1;
ui->lineEditRepositoryDefault->setEnabled(arg1);
}
void CSettingsView::on_checkBoxRepositoryExtra_stateChanged(int arg1)
{
Settings node = settings.write["launcher"]["extraRepositoryEnabled"];
node->Bool() = arg1;
ui->lineEditRepositoryExtra->setEnabled(arg1);
}
void CSettingsView::on_lineEditRepositoryExtra_textEdited(const QString &arg1)
{
Settings node = settings.write["launcher"]["extraRepositoryURL"];
node->String() = arg1.toStdString();
}
void CSettingsView::on_spinBoxInterfaceScaling_valueChanged(int arg1)
{
Settings node = settings.write["video"]["resolution"]["scaling"];
node->Float() = arg1;
}
void CSettingsView::on_refreshRepositoriesButton_clicked()
{
auto * mainWindow = dynamic_cast<MainWindow *>(qApp->activeWindow());
assert(mainWindow);
if (!mainWindow)
return;
mainWindow->getModView()->loadRepositories();
}
void CSettingsView::on_spinBoxFramerateLimit_valueChanged(int arg1)
{
Settings node = settings.write["video"]["targetfps"];
node->Float() = arg1;
}

View File

@@ -40,16 +40,10 @@ private slots:
void on_comboBoxNeutralAI_currentTextChanged(const QString & arg1); void on_comboBoxNeutralAI_currentTextChanged(const QString & arg1);
void on_comboBoxEnemyAI_currentTextChanged(const QString & arg1); void on_comboBoxEnemyAI_currentTextChanged(const QString & arg1);
void on_spinBoxNetworkPort_valueChanged(int arg1); void on_spinBoxNetworkPort_valueChanged(int arg1);
void on_plainTextEditRepos_textChanged();
void on_openTempDir_clicked();
void on_openUserDataDir_clicked();
void on_openGameDataDir_clicked();
void on_comboBoxShowIntro_currentIndexChanged(int index); void on_comboBoxShowIntro_currentIndexChanged(int index);
void on_changeGameDataDir_clicked();
void on_comboBoxAutoCheck_currentIndexChanged(int index); void on_comboBoxAutoCheck_currentIndexChanged(int index);
void on_comboBoxDisplayIndex_currentIndexChanged(int index); void on_comboBoxDisplayIndex_currentIndexChanged(int index);
void on_comboBoxAutoSave_currentIndexChanged(int index); void on_comboBoxAutoSave_currentIndexChanged(int index);
void on_updatesButton_clicked();
void on_comboBoxLanguage_currentIndexChanged(int index); void on_comboBoxLanguage_currentIndexChanged(int index);
void on_comboBoxCursorType_currentIndexChanged(int index); void on_comboBoxCursorType_currentIndexChanged(int index);
void on_listWidgetSettings_currentRowChanged(int currentRow); void on_listWidgetSettings_currentRowChanged(int currentRow);
@@ -57,8 +51,22 @@ private slots:
void on_comboBoxLanguageBase_currentIndexChanged(int index); void on_comboBoxLanguageBase_currentIndexChanged(int index);
void on_checkBoxRepositoryDefault_stateChanged(int arg1);
void on_checkBoxRepositoryExtra_stateChanged(int arg1);
void on_lineEditRepositoryExtra_textEdited(const QString &arg1);
void on_spinBoxInterfaceScaling_valueChanged(int arg1);
void on_refreshRepositoriesButton_clicked();
void on_spinBoxFramerateLimit_valueChanged(int arg1);
private: private:
Ui::CSettingsView * ui; Ui::CSettingsView * ui;
void fillValidResolutionsForScreen(int screenIndex); void fillValidResolutionsForScreen(int screenIndex);
void fillValidScalingRange();
QSize getPreferredRenderingResolution();
}; };

View File

@@ -6,8 +6,8 @@
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>0</y>
<width>842</width> <width>832</width>
<height>363</height> <height>350</height>
</rect> </rect>
</property> </property>
<property name="windowTitle"> <property name="windowTitle">
@@ -79,11 +79,6 @@
<string>Artificial Intelligence</string> <string>Artificial Intelligence</string>
</property> </property>
</item> </item>
<item>
<property name="text">
<string>Data Directories</string>
</property>
</item>
<item> <item>
<property name="text"> <property name="text">
<string>Mod Repositories</string> <string>Mod Repositories</string>
@@ -112,75 +107,13 @@
<property name="geometry"> <property name="geometry">
<rect> <rect>
<x>0</x> <x>0</x>
<y>0</y> <y>-331</y>
<width>620</width> <width>610</width>
<height>745</height> <height>679</height>
</rect> </rect>
</property> </property>
<layout class="QGridLayout" name="gridLayout" columnstretch="3,0,0,0"> <layout class="QGridLayout" name="gridLayout" columnstretch="2,0,1,1,1">
<item row="19" column="1" colspan="3"> <item row="8" column="0">
<widget class="QComboBox" name="comboBoxEnemyAI">
<property name="editable">
<bool>false</bool>
</property>
<property name="currentText">
<string notr="true">BattleAI</string>
</property>
<item>
<property name="text">
<string notr="true">BattleAI</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">StupidAI</string>
</property>
</item>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelLanguage">
<property name="text">
<string>VCMI Language</string>
</property>
</widget>
</item>
<item row="6" column="0">
<widget class="QLabel" name="labelNetworkPort">
<property name="text">
<string>Network port</string>
</property>
</widget>
</item>
<item row="11" column="0">
<widget class="QLabel" name="labelFullScreen">
<property name="text">
<string>Fullscreen</string>
</property>
</widget>
</item>
<item row="10" column="0">
<widget class="QLabel" name="labelResolution">
<property name="text">
<string>Resolution</string>
</property>
</widget>
</item>
<item row="17" column="0">
<widget class="QLabel" name="labelNeutralAI">
<property name="text">
<string>Neutral AI</string>
</property>
</widget>
</item>
<item row="7" column="0">
<widget class="QLabel" name="labelAutoSave">
<property name="text">
<string>Autosave</string>
</property>
</widget>
</item>
<item row="9" column="0">
<widget class="QLabel" name="labelVideo"> <widget class="QLabel" name="labelVideo">
<property name="font"> <property name="font">
<font> <font>
@@ -193,44 +126,25 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="23" column="1" colspan="2"> <item row="24" column="2" colspan="3">
<widget class="QLineEdit" name="lineEditTempDir"> <widget class="QLineEdit" name="lineEditRepositoryDefault">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text"> <property name="text">
<string notr="true">/home/user/.vcmi</string> <string notr="true"/>
</property> </property>
<property name="readOnly"> <property name="readOnly">
<bool>true</bool> <bool>true</bool>
</property> </property>
</widget> </widget>
</item> </item>
<item row="13" column="1" colspan="3"> <item row="25" column="2" colspan="3">
<widget class="QComboBox" name="comboBoxDisplayIndex"/> <widget class="QLineEdit" name="lineEditRepositoryExtra">
</item>
<item row="14" column="0">
<widget class="QLabel" name="labelCursorType">
<property name="text"> <property name="text">
<string>Cursor</string> <string notr="true"/>
</property> </property>
</widget> </widget>
</item> </item>
<item row="22" column="3"> <item row="19" column="1" colspan="4">
<widget class="QPushButton" name="openUserDataDir"> <widget class="QComboBox" name="comboBoxNeutralAI">
<property name="text">
<string>Open</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="3">
<widget class="QComboBox" name="comboBoxLanguage"/>
</item>
<item row="18" column="1" colspan="3">
<widget class="QComboBox" name="comboBoxFriendlyAI">
<property name="editable">
<bool>false</bool>
</property>
<property name="currentText"> <property name="currentText">
<string notr="true">BattleAI</string> <string notr="true">BattleAI</string>
</property> </property>
@@ -246,8 +160,154 @@
</item> </item>
</widget> </widget>
</item> </item>
<item row="11" column="1" colspan="3"> <item row="6" column="0">
<widget class="QLabel" name="labelNetworkPort">
<property name="text">
<string>Network port</string>
</property>
</widget>
</item>
<item row="22" column="0">
<widget class="QLabel" name="labelRepositories">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Mod Repositories</string>
</property>
</widget>
</item>
<item row="7" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxAutoSave">
<property name="currentIndex">
<number>1</number>
</property>
<item>
<property name="text">
<string>Off</string>
</property>
</item>
<item>
<property name="text">
<string>On</string>
</property>
</item>
</widget>
</item>
<item row="21" column="0">
<widget class="QLabel" name="labelEnemyAI">
<property name="text">
<string>Enemy AI in battles</string>
</property>
</widget>
</item>
<item row="18" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxAlliedPlayerAI">
<property name="currentText">
<string notr="true">VCAI</string>
</property>
<item>
<property name="text">
<string notr="true">VCAI</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">Nullkiller</string>
</property>
</item>
</widget>
</item>
<item row="5" column="0">
<widget class="QLabel" name="labelTranslation">
<property name="text">
<string>Heroes III Translation</string>
</property>
</widget>
</item>
<item row="24" column="0">
<widget class="QLabel" name="labelRepositoryDefault">
<property name="text">
<string>Default repository</string>
</property>
</widget>
</item>
<item row="23" column="1" colspan="2">
<widget class="QComboBox" name="comboBoxAutoCheck">
<property name="currentIndex">
<number>1</number>
</property>
<item>
<property name="text">
<string>Off</string>
</property>
</item>
<item>
<property name="text">
<string>On</string>
</property>
</item>
</widget>
</item>
<item row="13" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxShowIntro">
<property name="currentIndex">
<number>1</number>
</property>
<item>
<property name="text">
<string>Off</string>
</property>
</item>
<item>
<property name="text">
<string>On</string>
</property>
</item>
</widget>
</item>
<item row="5" column="4">
<widget class="QPushButton" name="pushButtonTranslation">
<property name="text">
<string/>
</property>
</widget>
</item>
<item row="14" column="0">
<widget class="QLabel" name="labelDisplayIndex">
<property name="text">
<string>Display index</string>
</property>
</widget>
</item>
<item row="15" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxCursorType">
<item>
<property name="text">
<string>Hardware</string>
</property>
</item>
<item>
<property name="text">
<string>Software</string>
</property>
</item>
</widget>
</item>
<item row="10" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxFullScreen"> <widget class="QComboBox" name="comboBoxFullScreen">
<property name="toolTip">
<string>Select display mode for game
Windowed - game will run inside a window that covers part of your screen
Borderless Windowed Mode - game will run in a window that covers entirely of your screen, using same resolution as your screen.
Fullscreen Exclusive Mode - game will cover entirety of your screen and will use selected resolution.</string>
</property>
<property name="currentIndex"> <property name="currentIndex">
<number>0</number> <number>0</number>
</property> </property>
@@ -268,7 +328,24 @@
</item> </item>
</widget> </widget>
</item> </item>
<item row="6" column="1" colspan="3"> <item row="25" column="1">
<widget class="QCheckBox" name="checkBoxRepositoryExtra">
<property name="text">
<string/>
</property>
<property name="checked">
<bool>true</bool>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="labelLanguage">
<property name="text">
<string>VCMI Language</string>
</property>
</widget>
</item>
<item row="6" column="1" colspan="4">
<widget class="QSpinBox" name="spinBoxNetworkPort"> <widget class="QSpinBox" name="spinBoxNetworkPort">
<property name="minimum"> <property name="minimum">
<number>1024</number> <number>1024</number>
@@ -281,110 +358,25 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="23" column="3"> <item row="13" column="0">
<widget class="QPushButton" name="openTempDir">
<property name="text">
<string>Open</string>
</property>
</widget>
</item>
<item row="7" column="1" colspan="3">
<widget class="QComboBox" name="comboBoxAutoSave">
<property name="currentIndex">
<number>1</number>
</property>
<item>
<property name="text">
<string>Off</string>
</property>
</item>
<item>
<property name="text">
<string>On</string>
</property>
</item>
</widget>
</item>
<item row="20" column="0">
<widget class="QLabel" name="labelDataDirs">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Data Directories</string>
</property>
</widget>
</item>
<item row="21" column="2">
<widget class="QPushButton" name="changeGameDataDir">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Change</string>
</property>
</widget>
</item>
<item row="22" column="0">
<widget class="QLabel" name="labelUserDataDir">
<property name="text">
<string>User data directory</string>
</property>
</widget>
</item>
<item row="8" column="0">
<widget class="QLabel" name="labelBuildVersionDesc">
<property name="text">
<string>Build version</string>
</property>
</widget>
</item>
<item row="0" column="0">
<widget class="QLabel" name="labelGeneral">
<property name="font">
<font>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>General</string>
</property>
</widget>
</item>
<item row="12" column="0">
<widget class="QLabel" name="labelShowIntro"> <widget class="QLabel" name="labelShowIntro">
<property name="text"> <property name="text">
<string>Show intro</string> <string>Show intro</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="25" column="2" colspan="2"> <item row="5" column="1" colspan="3">
<widget class="QPushButton" name="updatesButton"> <widget class="QLabel" name="labelTranslationStatus">
<property name="text"> <property name="text">
<string>Update now</string> <string/>
</property> </property>
</widget> </widget>
</item> </item>
<item row="13" column="0"> <item row="20" column="1" colspan="4">
<widget class="QLabel" name="labelDisplayIndex"> <widget class="QComboBox" name="comboBoxFriendlyAI">
<property name="text"> <property name="editable">
<string>Display index</string> <bool>false</bool>
</property> </property>
</widget>
</item>
<item row="21" column="1">
<widget class="QLineEdit" name="lineEditGameDir">
<property name="text">
<string notr="true">/usr/share/vcmi</string>
</property>
</widget>
</item>
<item row="17" column="1" colspan="3">
<widget class="QComboBox" name="comboBoxNeutralAI">
<property name="currentText"> <property name="currentText">
<string notr="true">BattleAI</string> <string notr="true">BattleAI</string>
</property> </property>
@@ -400,11 +392,18 @@
</item> </item>
</widget> </widget>
</item> </item>
<item row="10" column="1" colspan="3"> <item row="19" column="0">
<widget class="QLabel" name="labelNeutralAI">
<property name="text">
<string>Neutral AI in battles</string>
</property>
</widget>
</item>
<item row="9" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxResolution"/> <widget class="QComboBox" name="comboBoxResolution"/>
</item> </item>
<item row="24" column="0"> <item row="0" column="0">
<widget class="QLabel" name="labelRepositories"> <widget class="QLabel" name="labelGeneral">
<property name="font"> <property name="font">
<font> <font>
<weight>75</weight> <weight>75</weight>
@@ -412,86 +411,62 @@
</font> </font>
</property> </property>
<property name="text"> <property name="text">
<string>Mod Repositories</string> <string>General</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="18" column="0"> <item row="9" column="0">
<widget class="QLabel" name="labelFriendlyAI"> <widget class="QLabel" name="labelResolution">
<property name="text"> <property name="text">
<string>Friendly AI</string> <string>Resolution</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="25" column="0"> <item row="24" column="1">
<widget class="QLabel" name="labelAutoCheck"> <widget class="QCheckBox" name="checkBoxRepositoryDefault">
<property name="text">
<string>Check on startup</string>
</property>
</widget>
</item>
<item row="12" column="1" colspan="3">
<widget class="QComboBox" name="comboBoxShowIntro">
<property name="currentIndex">
<number>1</number>
</property>
<item>
<property name="text">
<string>Off</string>
</property>
</item>
<item>
<property name="text">
<string>On</string>
</property>
</item>
</widget>
</item>
<item row="22" column="1" colspan="2">
<widget class="QLineEdit" name="lineEditUserDataDir">
<property name="enabled"> <property name="enabled">
<bool>false</bool> <bool>true</bool>
</property> </property>
<property name="text"> <property name="text">
<string notr="true">/home/user/.vcmi</string> <string/>
</property> </property>
<property name="readOnly"> <property name="checked">
<bool>true</bool> <bool>true</bool>
</property> </property>
</widget> </widget>
</item> </item>
<item row="21" column="0"> <item row="17" column="0">
<widget class="QLabel" name="labelGameDir"> <widget class="QLabel" name="labelEnemyPlayerAI">
<property name="text"> <property name="text">
<string>Extra data directory</string> <string>Adventure Map Enemies</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="21" column="3"> <item row="11" column="0">
<widget class="QPushButton" name="openGameDataDir"> <widget class="QLabel" name="labelInterfaceScaling">
<property name="text"> <property name="text">
<string>Open</string> <string>Interface Scaling</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="4" column="1" colspan="3"> <item row="15" column="0">
<widget class="QComboBox" name="comboBoxLanguageBase"/> <widget class="QLabel" name="labelCursorType">
</item> <property name="text">
<item row="25" column="1"> <string>Cursor</string>
<widget class="QComboBox" name="comboBoxAutoCheck"> </property>
<property name="currentIndex"> </widget>
<number>1</number> </item>
<item row="11" column="1" colspan="4">
<widget class="QSpinBox" name="spinBoxInterfaceScaling">
<property name="minimum">
<number>50</number>
</property>
<property name="maximum">
<number>400</number>
</property>
<property name="singleStep">
<number>10</number>
</property> </property>
<item>
<property name="text">
<string>Off</string>
</property>
</item>
<item>
<property name="text">
<string>On</string>
</property>
</item>
</widget> </widget>
</item> </item>
<item row="4" column="0"> <item row="4" column="0">
@@ -501,8 +476,15 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="16" column="1" colspan="3"> <item row="18" column="0">
<widget class="QComboBox" name="comboBoxPlayerAI"> <widget class="QLabel" name="labelAlliedPlayerAI">
<property name="text">
<string>Adventure Map Allies</string>
</property>
</widget>
</item>
<item row="17" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxEnemyPlayerAI">
<property name="currentText"> <property name="currentText">
<string notr="true">VCAI</string> <string notr="true">VCAI</string>
</property> </property>
@@ -518,48 +500,58 @@
</item> </item>
</widget> </widget>
</item> </item>
<item row="8" column="1" colspan="3"> <item row="4" column="1" colspan="4">
<widget class="QLineEdit" name="lineEditBuildVersion"> <widget class="QComboBox" name="comboBoxLanguageBase"/>
</item>
<item row="25" column="0">
<widget class="QLabel" name="labelRepositoryExtra">
<property name="text"> <property name="text">
<string notr="true"/> <string>Additional repository</string>
</property>
<property name="readOnly">
<bool>true</bool>
</property> </property>
</widget> </widget>
</item> </item>
<item row="19" column="0"> <item row="23" column="0">
<widget class="QLabel" name="labelEnemyAI"> <widget class="QLabel" name="labelAutoCheck">
<property name="text"> <property name="text">
<string>Enemy AI</string> <string>Check on startup</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="26" column="0" colspan="4"> <item row="23" column="3" colspan="2">
<widget class="QPlainTextEdit" name="plainTextEditRepos"> <widget class="QPushButton" name="refreshRepositoriesButton">
<property name="lineWrapMode"> <property name="text">
<enum>QPlainTextEdit::NoWrap</enum> <string>Refresh now</string>
</property>
<property name="plainText">
<string notr="true">http://downloads.vcmi.eu/Mods/repository.json</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="14" column="1" colspan="3"> <item row="20" column="0">
<widget class="QComboBox" name="comboBoxCursorType"> <widget class="QLabel" name="labelFriendlyAI">
<item> <property name="text">
<property name="text"> <string>Friendly AI in battles</string>
<string>Hardware</string> </property>
</property>
</item>
<item>
<property name="text">
<string>Software</string>
</property>
</item>
</widget> </widget>
</item> </item>
<item row="15" column="0"> <item row="10" column="0">
<widget class="QLabel" name="labelFullScreen">
<property name="text">
<string>Fullscreen</string>
</property>
</widget>
</item>
<item row="1" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxLanguage"/>
</item>
<item row="14" column="1" colspan="4">
<widget class="QComboBox" name="comboBoxDisplayIndex"/>
</item>
<item row="7" column="0">
<widget class="QLabel" name="labelAutoSave">
<property name="text">
<string>Autosave</string>
</property>
</widget>
</item>
<item row="16" column="0">
<widget class="QLabel" name="labelArtificialIntelligence"> <widget class="QLabel" name="labelArtificialIntelligence">
<property name="font"> <property name="font">
<font> <font>
@@ -572,38 +564,43 @@
</property> </property>
</widget> </widget>
</item> </item>
<item row="23" column="0"> <item row="21" column="1" colspan="4">
<widget class="QLabel" name="labelTempDir"> <widget class="QComboBox" name="comboBoxEnemyAI">
<property name="editable">
<bool>false</bool>
</property>
<property name="currentText">
<string notr="true">BattleAI</string>
</property>
<item>
<property name="text">
<string notr="true">BattleAI</string>
</property>
</item>
<item>
<property name="text">
<string notr="true">StupidAI</string>
</property>
</item>
</widget>
</item>
<item row="12" column="0">
<widget class="QLabel" name="labelFramerateLimit">
<property name="text"> <property name="text">
<string>Log files directory</string> <string>Framerate Limit</string>
</property> </property>
</widget> </widget>
</item> </item>
<item row="16" column="0"> <item row="12" column="1" colspan="4">
<widget class="QLabel" name="labelPlayerAI"> <widget class="QSpinBox" name="spinBoxFramerateLimit">
<property name="text"> <property name="minimum">
<string>Adventure Map AI</string> <number>20</number>
</property> </property>
</widget> <property name="maximum">
</item> <number>1000</number>
<item row="5" column="0">
<widget class="QLabel" name="labelTranslation">
<property name="text">
<string>Heroes III Translation</string>
</property> </property>
</widget> <property name="singleStep">
</item> <number>10</number>
<item row="5" column="3">
<widget class="QPushButton" name="pushButtonTranslation">
<property name="text">
<string/>
</property>
</widget>
</item>
<item row="5" column="1" colspan="2">
<widget class="QLabel" name="labelTranslationStatus">
<property name="text">
<string/>
</property> </property>
</widget> </widget>
</item> </item>

View File

@@ -1,6 +1,91 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="zh"> <TS version="2.1" language="zh">
<context>
<name>AboutProjectView</name>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="22"/>
<source>VCMI on Discord</source>
<translation type="unfinished">访VCMI的Discord</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="29"/>
<source>Have a question? Found a bug? Want to help? Join us!</source>
<translation type="unfinished">BUG</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="36"/>
<source>VCMI on Github</source>
<translation type="unfinished">访VCMI的GUTHUB</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="55"/>
<source>Our Community</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="62"/>
<source>VCMI on Slack</source>
<translation type="unfinished">访VCMI的Slack</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="98"/>
<source>Build Information</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="115"/>
<source>User data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="122"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="129"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="193"/>
<source>Open</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="136"/>
<source>Check for updates</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="156"/>
<source>Game version</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="163"/>
<source>Log files directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="176"/>
<source>Data Directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="213"/>
<source>Game data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="220"/>
<source>Operating System</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="273"/>
<source>Project homepage</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="286"/>
<source>Report a bug</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>CModListModel</name> <name>CModListModel</name>
<message> <message>
@@ -117,204 +202,204 @@
<context> <context>
<name>CModListView</name> <name>CModListView</name>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="58"/> <location filename="../modManager/cmodlistview_moc.ui" line="43"/>
<source>Filter</source> <source>Filter</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="81"/> <location filename="../modManager/cmodlistview_moc.ui" line="66"/>
<source>All mods</source> <source>All mods</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="86"/> <location filename="../modManager/cmodlistview_moc.ui" line="71"/>
<source>Downloadable</source> <source>Downloadable</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="91"/> <location filename="../modManager/cmodlistview_moc.ui" line="76"/>
<source>Installed</source> <source>Installed</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="96"/> <location filename="../modManager/cmodlistview_moc.ui" line="81"/>
<source>Updatable</source> <source>Updatable</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="101"/> <location filename="../modManager/cmodlistview_moc.ui" line="86"/>
<source>Active</source> <source>Active</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="106"/> <location filename="../modManager/cmodlistview_moc.ui" line="91"/>
<source>Inactive</source> <source>Inactive</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="120"/> <location filename="../modManager/cmodlistview_moc.ui" line="105"/>
<source>Download &amp;&amp; refresh repositories</source> <source>Download &amp;&amp; refresh repositories</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="163"/> <location filename="../modManager/cmodlistview_moc.ui" line="160"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="315"/> <location filename="../modManager/cmodlistview_moc.cpp" line="307"/>
<source>Description</source> <source>Description</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="208"/> <location filename="../modManager/cmodlistview_moc.ui" line="206"/>
<source>Changelog</source> <source>Changelog</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="230"/> <location filename="../modManager/cmodlistview_moc.ui" line="228"/>
<source>Screenshots</source> <source>Screenshots</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="389"/> <location filename="../modManager/cmodlistview_moc.ui" line="386"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="424"/> <location filename="../modManager/cmodlistview_moc.ui" line="421"/>
<source>Enable</source> <source>Enable</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="459"/> <location filename="../modManager/cmodlistview_moc.ui" line="456"/>
<source>Disable</source> <source>Disable</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="494"/> <location filename="../modManager/cmodlistview_moc.ui" line="491"/>
<source>Update</source> <source>Update</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="529"/> <location filename="../modManager/cmodlistview_moc.ui" line="526"/>
<source>Install</source> <source>Install</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="327"/> <location filename="../modManager/cmodlistview_moc.ui" line="324"/>
<source> %p% (%v KB out of %m KB)</source> <source> %p% (%v KB out of %m KB)</source>
<translation> %p% (%v KB %m KB)</translation> <translation> %p% (%v KB %m KB)</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="340"/> <location filename="../modManager/cmodlistview_moc.ui" line="337"/>
<source>Abort</source> <source>Abort</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="250"/> <location filename="../modManager/cmodlistview_moc.cpp" line="242"/>
<source>Mod name</source> <source>Mod name</source>
<translation>MOD名称</translation> <translation>MOD名称</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="251"/> <location filename="../modManager/cmodlistview_moc.cpp" line="243"/>
<source>Installed version</source> <source>Installed version</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="252"/> <location filename="../modManager/cmodlistview_moc.cpp" line="244"/>
<source>Latest version</source> <source>Latest version</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="255"/> <location filename="../modManager/cmodlistview_moc.cpp" line="247"/>
<source>Download size</source> <source>Download size</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="256"/> <location filename="../modManager/cmodlistview_moc.cpp" line="248"/>
<source>Authors</source> <source>Authors</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="259"/> <location filename="../modManager/cmodlistview_moc.cpp" line="251"/>
<source>License</source> <source>License</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="262"/> <location filename="../modManager/cmodlistview_moc.cpp" line="254"/>
<source>Contact</source> <source>Contact</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="271"/> <location filename="../modManager/cmodlistview_moc.cpp" line="263"/>
<source>Compatibility</source> <source>Compatibility</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="265"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="273"/> <location filename="../modManager/cmodlistview_moc.cpp" line="273"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="281"/>
<source>Required VCMI version</source> <source>Required VCMI version</source>
<translation>VCMI版本</translation> <translation>VCMI版本</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="279"/> <location filename="../modManager/cmodlistview_moc.cpp" line="271"/>
<source>Supported VCMI version</source> <source>Supported VCMI version</source>
<translation>VCMI版本</translation> <translation>VCMI版本</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="284"/> <location filename="../modManager/cmodlistview_moc.cpp" line="276"/>
<source>Supported VCMI versions</source> <source>Supported VCMI versions</source>
<translation>VCMI版本</translation> <translation>VCMI版本</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="311"/> <location filename="../modManager/cmodlistview_moc.cpp" line="303"/>
<source>Languages</source> <source>Languages</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="313"/> <location filename="../modManager/cmodlistview_moc.cpp" line="305"/>
<source>Required mods</source> <source>Required mods</source>
<translation>MODs</translation> <translation>MODs</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="314"/> <location filename="../modManager/cmodlistview_moc.cpp" line="306"/>
<source>Conflicting mods</source> <source>Conflicting mods</source>
<translation>MODs</translation> <translation>MODs</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="319"/> <location filename="../modManager/cmodlistview_moc.cpp" line="311"/>
<source>This mod can not be installed or enabled because the following dependencies are not present</source> <source>This mod can not be installed or enabled because the following dependencies are not present</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="320"/> <location filename="../modManager/cmodlistview_moc.cpp" line="312"/>
<source>This mod can not be enabled because the following mods are incompatible with it</source> <source>This mod can not be enabled because the following mods are incompatible with it</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="321"/> <location filename="../modManager/cmodlistview_moc.cpp" line="313"/>
<source>This mod cannot be disabled because it is required by the following mods</source> <source>This mod cannot be disabled because it is required by the following mods</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="322"/> <location filename="../modManager/cmodlistview_moc.cpp" line="314"/>
<source>This mod cannot be uninstalled or updated because it is required by the following mods</source> <source>This mod cannot be uninstalled or updated because it is required by the following mods</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="323"/> <location filename="../modManager/cmodlistview_moc.cpp" line="315"/>
<source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source> <source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="338"/> <location filename="../modManager/cmodlistview_moc.cpp" line="330"/>
<source>Notes</source> <source>Notes</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="840"/> <location filename="../modManager/cmodlistview_moc.cpp" line="827"/>
<source>Screenshot %1</source> <source>Screenshot %1</source>
<translation> %1</translation> <translation> %1</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="245"/> <location filename="../modManager/cmodlistview_moc.cpp" line="237"/>
<source>Mod is incompatible</source> <source>Mod is incompatible</source>
<translation>MOD不兼容</translation> <translation>MOD不兼容</translation>
</message> </message>
@@ -322,207 +407,231 @@
<context> <context>
<name>CSettingsView</name> <name>CSettingsView</name>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="327"/>
<source>Change</source>
<translation></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="222"/>
<location filename="../settingsView/csettingsview_moc.ui" line="287"/>
<location filename="../settingsView/csettingsview_moc.ui" line="473"/>
<source>Open</source> <source>Open</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Adventure Map AI</source>
<translation>AI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="334"/>
<source>User data directory</source> <source>User data directory</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="256"/> <location filename="../settingsView/csettingsview_moc.ui" line="190"/>
<location filename="../settingsView/csettingsview_moc.ui" line="298"/> <location filename="../settingsView/csettingsview_moc.ui" line="245"/>
<location filename="../settingsView/csettingsview_moc.ui" line="440"/> <location filename="../settingsView/csettingsview_moc.ui" line="262"/>
<location filename="../settingsView/csettingsview_moc.ui" line="487"/>
<source>Off</source> <source>Off</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="79"/> <location filename="../settingsView/csettingsview_moc.ui" line="79"/>
<location filename="../settingsView/csettingsview_moc.ui" line="576"/> <location filename="../settingsView/csettingsview_moc.ui" line="563"/>
<source>Artificial Intelligence</source> <source>Artificial Intelligence</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="89"/> <location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="415"/> <location filename="../settingsView/csettingsview_moc.ui" line="179"/>
<source>Mod Repositories</source> <source>Mod Repositories</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="368"/> <location filename="../settingsView/csettingsview_moc.ui" line="448"/>
<source>Update now</source> <source>Interface Scaling</source>
<translation></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="261"/> <location filename="../settingsView/csettingsview_moc.ui" line="398"/>
<location filename="../settingsView/csettingsview_moc.ui" line="303"/> <source>Neutral AI in battles</source>
<location filename="../settingsView/csettingsview_moc.ui" line="445"/> <translation type="unfinished"></translation>
<location filename="../settingsView/csettingsview_moc.ui" line="492"/> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="203"/>
<source>Enemy AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="509"/>
<source>Additional repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="482"/>
<source>Adventure Map Allies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="441"/>
<source>Adventure Map Enemies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="316"/>
<source>Windowed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="321"/>
<source>Borderless fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="326"/>
<source>Exclusive fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="530"/>
<source>Friendly AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Framerate Limit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="523"/>
<source>Refresh now</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="234"/>
<source>Default repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Update now</source>
<translation type="vanished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="195"/>
<location filename="../settingsView/csettingsview_moc.ui" line="250"/>
<location filename="../settingsView/csettingsview_moc.ui" line="267"/>
<source>On</source> <source>On</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="215"/> <location filename="../settingsView/csettingsview_moc.ui" line="455"/>
<source>Cursor</source> <source>Cursor</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="500"/> <location filename="../settingsView/csettingsview_moc.ui" line="475"/>
<source>Heroes III Data Language</source> <source>Heroes III Data Language</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="552"/> <location filename="../settingsView/csettingsview_moc.ui" line="303"/>
<source>Default</source> <source>Select display mode for game
<translation></translation>
Windowed - game will run inside a window that covers part of your screen
Borderless Windowed Mode - game will run in a window that covers entirely of your screen, using same resolution as your screen.
Fullscreen Exclusive Mode - game will cover entirety of your screen and will use selected resolution.</source>
<translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="557"/> <location filename="../settingsView/csettingsview_moc.ui" line="290"/>
<source>Hardware</source> <source>Hardware</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="562"/> <location filename="../settingsView/csettingsview_moc.ui" line="295"/>
<source>Software</source> <source>Software</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="597"/> <location filename="../settingsView/csettingsview_moc.ui" line="227"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translatorcomment></translatorcomment> <translatorcomment></translatorcomment>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="429"/> <location filename="../settingsView/csettingsview_moc.ui" line="516"/>
<source>Check on startup</source> <source>Check on startup</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="158"/> <location filename="../settingsView/csettingsview_moc.ui" line="537"/>
<source>Fullscreen</source> <source>Fullscreen</source>
<translation></translation> <translation></translation>
</message> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="172"/>
<source>Neutral AI</source>
<translation>AI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="266"/>
<source>Real</source>
<translatorcomment></translatorcomment>
<translation></translation>
</message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="69"/> <location filename="../settingsView/csettingsview_moc.ui" line="69"/>
<location filename="../settingsView/csettingsview_moc.ui" line="354"/> <location filename="../settingsView/csettingsview_moc.ui" line="414"/>
<source>General</source> <source>General</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="144"/> <location filename="../settingsView/csettingsview_moc.ui" line="344"/>
<source>VCMI Language</source> <source>VCMI Language</source>
<translation>VCMI语言</translation> <translation>VCMI语言</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="422"/> <location filename="../settingsView/csettingsview_moc.ui" line="421"/>
<source>Friendly AI</source>
<translation>AI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="165"/>
<source>Resolution</source> <source>Resolution</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="179"/> <location filename="../settingsView/csettingsview_moc.ui" line="550"/>
<source>Autosave</source> <source>Autosave</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="375"/> <location filename="../settingsView/csettingsview_moc.ui" line="282"/>
<source>Display index</source> <source>Display index</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="151"/> <location filename="../settingsView/csettingsview_moc.ui" line="166"/>
<source>Network port</source> <source>Network port</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="317"/>
<source>Data Directories</source> <source>Data Directories</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="74"/> <location filename="../settingsView/csettingsview_moc.ui" line="74"/>
<location filename="../settingsView/csettingsview_moc.ui" line="192"/> <location filename="../settingsView/csettingsview_moc.ui" line="125"/>
<source>Video</source> <source>Video</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="466"/>
<source>Extra data directory</source>
<translation></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="583"/>
<source>Log files directory</source> <source>Log files directory</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="361"/> <location filename="../settingsView/csettingsview_moc.ui" line="364"/>
<source>Show intro</source> <source>Show intro</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="341"/>
<source>Build version</source> <source>Build version</source>
<translation></translation> <translation type="vanished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="534"/> <location filename="../settingsView/csettingsview_moc.cpp" line="401"/>
<source>Enemy AI</source>
<translation>AI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.cpp" line="385"/>
<source>Active</source> <source>Active</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="390"/> <location filename="../settingsView/csettingsview_moc.cpp" line="406"/>
<source>Disabled</source> <source>Disabled</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="391"/> <location filename="../settingsView/csettingsview_moc.cpp" line="407"/>
<source>Enable</source> <source>Enable</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="396"/> <location filename="../settingsView/csettingsview_moc.cpp" line="412"/>
<source>Not Installed</source> <source>Not Installed</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="397"/> <location filename="../settingsView/csettingsview_moc.cpp" line="413"/>
<source>Install</source> <source>Install</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -545,17 +654,17 @@
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="146"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="127"/>
<source>Select your language</source> <source>Select your language</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="196"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="177"/>
<source>Have a question? Found a bug? Want to help? Join us!</source> <source>Have a question? Found a bug? Want to help? Join us!</source>
<translation>BUG</translation> <translation>BUG</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="205"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="186"/>
<source>Thank you for installing VCMI! <source>Thank you for installing VCMI!
Before you can start playing, there are a few more steps that need to be completed. Before you can start playing, there are a few more steps that need to be completed.
@@ -572,149 +681,144 @@ Heroes® of Might and Magic® III HD is currently not supported!</source>
3</translation> 3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="276"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="257"/>
<source>Locate Heroes III data files</source> <source>Locate Heroes III data files</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="365"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="346"/>
<source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source> <source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source>
<translation>3使vcmibuilderGoG.com的3访</translation> <translation>3使vcmibuilderGoG.com的3访</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="381"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="362"/>
<source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source> <source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source>
<translation>VCMI3III的数据复制到这些目录之一</translation> <translation>VCMI3III的数据复制到这些目录之一</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="416"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="397"/>
<source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source> <source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source>
<translation>3VCMI将自动复制现有数据</translation> <translation>3VCMI将自动复制现有数据</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="445"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="426"/>
<source>Your Heroes III data files have been successfully found.</source> <source>Your Heroes III data files have been successfully found.</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="466"/>
<source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source> <source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source>
<translation>33</translation> <translation>33</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="759"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="740"/>
<source>Install a translation of Heroes III in your preferred language</source> <source>Install a translation of Heroes III in your preferred language</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="775"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="756"/>
<source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source> <source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source>
<translation>使VCMI启动器安装模组</translation> <translation>使VCMI启动器安装模组</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="791"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="772"/>
<source>Install support for playing Heroes III in resolutions higher than 800x600</source> <source>Install support for playing Heroes III in resolutions higher than 800x600</source>
<translation>3800x600以上分辨率支持</translation> <translation>3800x600以上分辨率支持</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="807"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="788"/>
<source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source> <source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source>
<translation>3VCMI团队移植</translation> <translation>3VCMI团队移植</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="823"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="804"/>
<source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source> <source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="870"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="851"/>
<source>Finish</source> <source>Finish</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="111"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="156"/>
<source>Step %v out of %m</source>
<translation>%v/%m</translation>
</message>
<message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="175"/>
<source>VCMI on Github</source> <source>VCMI on Github</source>
<translation>访VCMI的GUTHUB</translation> <translation>访VCMI的GUTHUB</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="182"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="163"/>
<source>VCMI on Slack</source> <source>VCMI on Slack</source>
<translation>访VCMI的Slack</translation> <translation>访VCMI的Slack</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="189"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="170"/>
<source>VCMI on Discord</source> <source>VCMI on Discord</source>
<translation>访VCMI的Discord</translation> <translation>访VCMI的Discord</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="239"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="220"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="554"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="535"/>
<source>Next</source> <source>Next</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="307"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="288"/>
<source>Open help in browser</source> <source>Open help in browser</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="320"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="301"/>
<source>Search again</source> <source>Search again</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="403"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="384"/>
<source>Heroes III data files</source> <source>Heroes III data files</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="432"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="413"/>
<source>Copy existing data</source> <source>Copy existing data</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="475"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="456"/>
<source>Your Heroes III language has been successfully detected.</source> <source>Your Heroes III language has been successfully detected.</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="504"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/>
<source>Heroes III language</source> <source>Heroes III language</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="547"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="528"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="863"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="844"/>
<source>Back</source> <source>Back</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="585"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="566"/>
<source>Install VCMI Mod Preset</source> <source>Install VCMI Mod Preset</source>
<translation>VCMI预设MOD</translation> <translation>VCMI预设MOD</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="635"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="616"/>
<source>Horn of the Abyss</source> <source>Horn of the Abyss</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="657"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="638"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation>3</translation> <translation>3</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="721"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="702"/>
<source>High Definition Support</source> <source>High Definition Support</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="743"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="724"/>
<source>In The Wake of Gods</source> <source>In The Wake of Gods</source>
<translation></translation> <translation></translation>
</message> </message>
@@ -731,66 +835,101 @@ Heroes® of Might and Magic® III HD is currently not supported!</source>
<name>Language</name> <name>Language</name>
<message> <message>
<location filename="../languages.cpp" line="23"/> <location filename="../languages.cpp" line="23"/>
<source>Czech</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="24"/>
<source>Chinese</source> <source>Chinese</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="24"/> <location filename="../languages.cpp" line="25"/>
<source>English</source> <source>English</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="25"/> <location filename="../languages.cpp" line="26"/>
<source>Finnish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="27"/>
<source>French</source> <source>French</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="26"/> <location filename="../languages.cpp" line="28"/>
<source>German</source> <source>German</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="27"/> <location filename="../languages.cpp" line="29"/>
<source>Hungarian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="30"/>
<source>Italian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="31"/>
<source>Korean</source> <source>Korean</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="28"/> <location filename="../languages.cpp" line="32"/>
<source>Polish</source> <source>Polish</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="29"/> <location filename="../languages.cpp" line="33"/>
<source>Portuguese</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="34"/>
<source>Russian</source> <source>Russian</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="30"/> <location filename="../languages.cpp" line="35"/>
<source>Spanish</source> <source>Spanish</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="31"/> <location filename="../languages.cpp" line="36"/>
<source>Swedish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="37"/>
<source>Turkish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="38"/>
<source>Ukrainian</source> <source>Ukrainian</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="32"/> <location filename="../languages.cpp" line="39"/>
<source>Other (East European)</source> <source>Other (East European)</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="33"/> <location filename="../languages.cpp" line="40"/>
<source>Other (Cyrillic Script)</source> <source>Other (Cyrillic Script)</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="34"/> <location filename="../languages.cpp" line="41"/>
<source>Other (West European)</source> <source>Other (West European)</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="56"/> <location filename="../languages.cpp" line="63"/>
<source>Auto (%1)</source> <source>Auto (%1)</source>
<translation> (%1)</translation> <translation> (%1)</translation>
</message> </message>
@@ -930,12 +1069,17 @@ Heroes® of Might and Magic® III HD is currently not supported!</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="226"/> <location filename="../mainwindow_moc.ui" line="207"/>
<source>Help</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../mainwindow_moc.ui" line="276"/>
<source>Map Editor</source> <source>Map Editor</source>
<translation></translation> <translation></translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="279"/> <location filename="../mainwindow_moc.ui" line="329"/>
<source>Start game</source> <source>Start game</source>
<translation></translation> <translation></translation>
</message> </message>

View File

@@ -1,6 +1,91 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="en_US"> <TS version="2.1" language="en_US">
<context>
<name>AboutProjectView</name>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="22"/>
<source>VCMI on Discord</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="29"/>
<source>Have a question? Found a bug? Want to help? Join us!</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="36"/>
<source>VCMI on Github</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="55"/>
<source>Our Community</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="62"/>
<source>VCMI on Slack</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="98"/>
<source>Build Information</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="115"/>
<source>User data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="122"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="129"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="193"/>
<source>Open</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="136"/>
<source>Check for updates</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="156"/>
<source>Game version</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="163"/>
<source>Log files directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="176"/>
<source>Data Directories</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="213"/>
<source>Game data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="220"/>
<source>Operating System</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="273"/>
<source>Project homepage</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="286"/>
<source>Report a bug</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>CModListModel</name> <name>CModListModel</name>
<message> <message>
@@ -116,204 +201,204 @@
<context> <context>
<name>CModListView</name> <name>CModListView</name>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="58"/> <location filename="../modManager/cmodlistview_moc.ui" line="43"/>
<source>Filter</source> <source>Filter</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="81"/> <location filename="../modManager/cmodlistview_moc.ui" line="66"/>
<source>All mods</source> <source>All mods</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="86"/> <location filename="../modManager/cmodlistview_moc.ui" line="71"/>
<source>Downloadable</source> <source>Downloadable</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="91"/> <location filename="../modManager/cmodlistview_moc.ui" line="76"/>
<source>Installed</source> <source>Installed</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="96"/> <location filename="../modManager/cmodlistview_moc.ui" line="81"/>
<source>Updatable</source> <source>Updatable</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="101"/> <location filename="../modManager/cmodlistview_moc.ui" line="86"/>
<source>Active</source> <source>Active</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="106"/> <location filename="../modManager/cmodlistview_moc.ui" line="91"/>
<source>Inactive</source> <source>Inactive</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="120"/> <location filename="../modManager/cmodlistview_moc.ui" line="105"/>
<source>Download &amp;&amp; refresh repositories</source> <source>Download &amp;&amp; refresh repositories</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="163"/> <location filename="../modManager/cmodlistview_moc.ui" line="160"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="315"/> <location filename="../modManager/cmodlistview_moc.cpp" line="307"/>
<source>Description</source> <source>Description</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="208"/> <location filename="../modManager/cmodlistview_moc.ui" line="206"/>
<source>Changelog</source> <source>Changelog</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="230"/> <location filename="../modManager/cmodlistview_moc.ui" line="228"/>
<source>Screenshots</source> <source>Screenshots</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="389"/> <location filename="../modManager/cmodlistview_moc.ui" line="386"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="424"/> <location filename="../modManager/cmodlistview_moc.ui" line="421"/>
<source>Enable</source> <source>Enable</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="459"/> <location filename="../modManager/cmodlistview_moc.ui" line="456"/>
<source>Disable</source> <source>Disable</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="494"/> <location filename="../modManager/cmodlistview_moc.ui" line="491"/>
<source>Update</source> <source>Update</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="529"/> <location filename="../modManager/cmodlistview_moc.ui" line="526"/>
<source>Install</source> <source>Install</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="327"/> <location filename="../modManager/cmodlistview_moc.ui" line="324"/>
<source> %p% (%v KB out of %m KB)</source> <source> %p% (%v KB out of %m KB)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="340"/> <location filename="../modManager/cmodlistview_moc.ui" line="337"/>
<source>Abort</source> <source>Abort</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="250"/> <location filename="../modManager/cmodlistview_moc.cpp" line="242"/>
<source>Mod name</source> <source>Mod name</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="251"/> <location filename="../modManager/cmodlistview_moc.cpp" line="243"/>
<source>Installed version</source> <source>Installed version</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="252"/> <location filename="../modManager/cmodlistview_moc.cpp" line="244"/>
<source>Latest version</source> <source>Latest version</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="255"/> <location filename="../modManager/cmodlistview_moc.cpp" line="247"/>
<source>Download size</source> <source>Download size</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="256"/> <location filename="../modManager/cmodlistview_moc.cpp" line="248"/>
<source>Authors</source> <source>Authors</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="259"/> <location filename="../modManager/cmodlistview_moc.cpp" line="251"/>
<source>License</source> <source>License</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="262"/> <location filename="../modManager/cmodlistview_moc.cpp" line="254"/>
<source>Contact</source> <source>Contact</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="271"/> <location filename="../modManager/cmodlistview_moc.cpp" line="263"/>
<source>Compatibility</source> <source>Compatibility</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="265"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="273"/> <location filename="../modManager/cmodlistview_moc.cpp" line="273"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="281"/>
<source>Required VCMI version</source> <source>Required VCMI version</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="279"/> <location filename="../modManager/cmodlistview_moc.cpp" line="271"/>
<source>Supported VCMI version</source> <source>Supported VCMI version</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="284"/> <location filename="../modManager/cmodlistview_moc.cpp" line="276"/>
<source>Supported VCMI versions</source> <source>Supported VCMI versions</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="311"/> <location filename="../modManager/cmodlistview_moc.cpp" line="303"/>
<source>Languages</source> <source>Languages</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="313"/> <location filename="../modManager/cmodlistview_moc.cpp" line="305"/>
<source>Required mods</source> <source>Required mods</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="314"/> <location filename="../modManager/cmodlistview_moc.cpp" line="306"/>
<source>Conflicting mods</source> <source>Conflicting mods</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="319"/> <location filename="../modManager/cmodlistview_moc.cpp" line="311"/>
<source>This mod can not be installed or enabled because the following dependencies are not present</source> <source>This mod can not be installed or enabled because the following dependencies are not present</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="320"/> <location filename="../modManager/cmodlistview_moc.cpp" line="312"/>
<source>This mod can not be enabled because the following mods are incompatible with it</source> <source>This mod can not be enabled because the following mods are incompatible with it</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="321"/> <location filename="../modManager/cmodlistview_moc.cpp" line="313"/>
<source>This mod cannot be disabled because it is required by the following mods</source> <source>This mod cannot be disabled because it is required by the following mods</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="322"/> <location filename="../modManager/cmodlistview_moc.cpp" line="314"/>
<source>This mod cannot be uninstalled or updated because it is required by the following mods</source> <source>This mod cannot be uninstalled or updated because it is required by the following mods</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="323"/> <location filename="../modManager/cmodlistview_moc.cpp" line="315"/>
<source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source> <source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="338"/> <location filename="../modManager/cmodlistview_moc.cpp" line="330"/>
<source>Notes</source> <source>Notes</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="840"/> <location filename="../modManager/cmodlistview_moc.cpp" line="827"/>
<source>Screenshot %1</source> <source>Screenshot %1</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="245"/> <location filename="../modManager/cmodlistview_moc.cpp" line="237"/>
<source>Mod is incompatible</source> <source>Mod is incompatible</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -321,205 +406,206 @@
<context> <context>
<name>CSettingsView</name> <name>CSettingsView</name>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="327"/> <location filename="../settingsView/csettingsview_moc.ui" line="190"/>
<source>Change</source> <location filename="../settingsView/csettingsview_moc.ui" line="245"/>
<translation type="unfinished"></translation> <location filename="../settingsView/csettingsview_moc.ui" line="262"/>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="222"/>
<location filename="../settingsView/csettingsview_moc.ui" line="287"/>
<location filename="../settingsView/csettingsview_moc.ui" line="473"/>
<source>Open</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Adventure Map AI</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="334"/>
<source>User data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="256"/>
<location filename="../settingsView/csettingsview_moc.ui" line="298"/>
<location filename="../settingsView/csettingsview_moc.ui" line="440"/>
<location filename="../settingsView/csettingsview_moc.ui" line="487"/>
<source>Off</source> <source>Off</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="79"/> <location filename="../settingsView/csettingsview_moc.ui" line="79"/>
<location filename="../settingsView/csettingsview_moc.ui" line="576"/> <location filename="../settingsView/csettingsview_moc.ui" line="563"/>
<source>Artificial Intelligence</source> <source>Artificial Intelligence</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="89"/> <location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="415"/> <location filename="../settingsView/csettingsview_moc.ui" line="179"/>
<source>Mod Repositories</source> <source>Mod Repositories</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="368"/> <location filename="../settingsView/csettingsview_moc.ui" line="448"/>
<source>Update now</source> <source>Interface Scaling</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="261"/> <location filename="../settingsView/csettingsview_moc.ui" line="398"/>
<location filename="../settingsView/csettingsview_moc.ui" line="303"/> <source>Neutral AI in battles</source>
<location filename="../settingsView/csettingsview_moc.ui" line="445"/> <translation type="unfinished"></translation>
<location filename="../settingsView/csettingsview_moc.ui" line="492"/> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="203"/>
<source>Enemy AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="509"/>
<source>Additional repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="482"/>
<source>Adventure Map Allies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="441"/>
<source>Adventure Map Enemies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="316"/>
<source>Windowed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="321"/>
<source>Borderless fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="326"/>
<source>Exclusive fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="530"/>
<source>Friendly AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Framerate Limit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="523"/>
<source>Refresh now</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="234"/>
<source>Default repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="195"/>
<location filename="../settingsView/csettingsview_moc.ui" line="250"/>
<location filename="../settingsView/csettingsview_moc.ui" line="267"/>
<source>On</source> <source>On</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="215"/> <location filename="../settingsView/csettingsview_moc.ui" line="455"/>
<source>Cursor</source> <source>Cursor</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="500"/> <location filename="../settingsView/csettingsview_moc.ui" line="475"/>
<source>Heroes III Data Language</source> <source>Heroes III Data Language</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="552"/> <location filename="../settingsView/csettingsview_moc.ui" line="303"/>
<source>Default</source> <source>Select display mode for game
Windowed - game will run inside a window that covers part of your screen
Borderless Windowed Mode - game will run in a window that covers entirely of your screen, using same resolution as your screen.
Fullscreen Exclusive Mode - game will cover entirety of your screen and will use selected resolution.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="557"/> <location filename="../settingsView/csettingsview_moc.ui" line="290"/>
<source>Hardware</source> <source>Hardware</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="562"/> <location filename="../settingsView/csettingsview_moc.ui" line="295"/>
<source>Software</source> <source>Software</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="597"/> <location filename="../settingsView/csettingsview_moc.ui" line="227"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="429"/> <location filename="../settingsView/csettingsview_moc.ui" line="516"/>
<source>Check on startup</source> <source>Check on startup</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="158"/> <location filename="../settingsView/csettingsview_moc.ui" line="537"/>
<source>Fullscreen</source> <source>Fullscreen</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="172"/>
<source>Neutral AI</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="266"/>
<source>Real</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="69"/> <location filename="../settingsView/csettingsview_moc.ui" line="69"/>
<location filename="../settingsView/csettingsview_moc.ui" line="354"/> <location filename="../settingsView/csettingsview_moc.ui" line="414"/>
<source>General</source> <source>General</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="144"/> <location filename="../settingsView/csettingsview_moc.ui" line="344"/>
<source>VCMI Language</source> <source>VCMI Language</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="422"/> <location filename="../settingsView/csettingsview_moc.ui" line="421"/>
<source>Friendly AI</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="165"/>
<source>Resolution</source> <source>Resolution</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="179"/> <location filename="../settingsView/csettingsview_moc.ui" line="550"/>
<source>Autosave</source> <source>Autosave</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="375"/> <location filename="../settingsView/csettingsview_moc.ui" line="282"/>
<source>Display index</source> <source>Display index</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="151"/> <location filename="../settingsView/csettingsview_moc.ui" line="166"/>
<source>Network port</source> <source>Network port</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="317"/>
<source>Data Directories</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="74"/> <location filename="../settingsView/csettingsview_moc.ui" line="74"/>
<location filename="../settingsView/csettingsview_moc.ui" line="192"/> <location filename="../settingsView/csettingsview_moc.ui" line="125"/>
<source>Video</source> <source>Video</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="466"/> <location filename="../settingsView/csettingsview_moc.ui" line="364"/>
<source>Extra data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="583"/>
<source>Log files directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="361"/>
<source>Show intro</source> <source>Show intro</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="341"/> <location filename="../settingsView/csettingsview_moc.cpp" line="401"/>
<source>Build version</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="534"/>
<source>Enemy AI</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.cpp" line="385"/>
<source>Active</source> <source>Active</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="390"/> <location filename="../settingsView/csettingsview_moc.cpp" line="406"/>
<source>Disabled</source> <source>Disabled</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="391"/> <location filename="../settingsView/csettingsview_moc.cpp" line="407"/>
<source>Enable</source> <source>Enable</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="396"/> <location filename="../settingsView/csettingsview_moc.cpp" line="412"/>
<source>Not Installed</source> <source>Not Installed</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="397"/> <location filename="../settingsView/csettingsview_moc.cpp" line="413"/>
<source>Install</source> <source>Install</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -542,17 +628,17 @@
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="146"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="127"/>
<source>Select your language</source> <source>Select your language</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="196"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="177"/>
<source>Have a question? Found a bug? Want to help? Join us!</source> <source>Have a question? Found a bug? Want to help? Join us!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="205"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="186"/>
<source>Thank you for installing VCMI! <source>Thank you for installing VCMI!
Before you can start playing, there are a few more steps that need to be completed. Before you can start playing, there are a few more steps that need to be completed.
@@ -563,149 +649,144 @@ Heroes® of Might and Magic® III HD is currently not supported!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="276"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="257"/>
<source>Locate Heroes III data files</source> <source>Locate Heroes III data files</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="365"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="346"/>
<source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source> <source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="381"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="362"/>
<source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source> <source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="416"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="397"/>
<source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source> <source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="445"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="426"/>
<source>Your Heroes III data files have been successfully found.</source> <source>Your Heroes III data files have been successfully found.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="466"/>
<source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source> <source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="759"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="740"/>
<source>Install a translation of Heroes III in your preferred language</source> <source>Install a translation of Heroes III in your preferred language</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="775"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="756"/>
<source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source> <source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="791"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="772"/>
<source>Install support for playing Heroes III in resolutions higher than 800x600</source> <source>Install support for playing Heroes III in resolutions higher than 800x600</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="807"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="788"/>
<source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source> <source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="823"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="804"/>
<source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source> <source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="870"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="851"/>
<source>Finish</source> <source>Finish</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="111"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="156"/>
<source>Step %v out of %m</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="175"/>
<source>VCMI on Github</source> <source>VCMI on Github</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="182"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="163"/>
<source>VCMI on Slack</source> <source>VCMI on Slack</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="189"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="170"/>
<source>VCMI on Discord</source> <source>VCMI on Discord</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="239"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="220"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="554"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="535"/>
<source>Next</source> <source>Next</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="307"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="288"/>
<source>Open help in browser</source> <source>Open help in browser</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="320"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="301"/>
<source>Search again</source> <source>Search again</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="403"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="384"/>
<source>Heroes III data files</source> <source>Heroes III data files</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="432"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="413"/>
<source>Copy existing data</source> <source>Copy existing data</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="475"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="456"/>
<source>Your Heroes III language has been successfully detected.</source> <source>Your Heroes III language has been successfully detected.</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="504"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/>
<source>Heroes III language</source> <source>Heroes III language</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="547"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="528"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="863"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="844"/>
<source>Back</source> <source>Back</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="585"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="566"/>
<source>Install VCMI Mod Preset</source> <source>Install VCMI Mod Preset</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="635"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="616"/>
<source>Horn of the Abyss</source> <source>Horn of the Abyss</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="657"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="638"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="721"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="702"/>
<source>High Definition Support</source> <source>High Definition Support</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="743"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="724"/>
<source>In The Wake of Gods</source> <source>In The Wake of Gods</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -722,66 +803,101 @@ Heroes® of Might and Magic® III HD is currently not supported!</source>
<name>Language</name> <name>Language</name>
<message> <message>
<location filename="../languages.cpp" line="23"/> <location filename="../languages.cpp" line="23"/>
<source>Chinese</source> <source>Czech</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="24"/> <location filename="../languages.cpp" line="24"/>
<source>English</source> <source>Chinese</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="25"/> <location filename="../languages.cpp" line="25"/>
<source>French</source> <source>English</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="26"/> <location filename="../languages.cpp" line="26"/>
<source>German</source> <source>Finnish</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="27"/> <location filename="../languages.cpp" line="27"/>
<source>Korean</source> <source>French</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="28"/> <location filename="../languages.cpp" line="28"/>
<source>Polish</source> <source>German</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="29"/> <location filename="../languages.cpp" line="29"/>
<source>Russian</source> <source>Hungarian</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="30"/> <location filename="../languages.cpp" line="30"/>
<source>Spanish</source> <source>Italian</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="31"/> <location filename="../languages.cpp" line="31"/>
<source>Ukrainian</source> <source>Korean</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="32"/> <location filename="../languages.cpp" line="32"/>
<source>Other (East European)</source> <source>Polish</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="33"/> <location filename="../languages.cpp" line="33"/>
<source>Other (Cyrillic Script)</source> <source>Portuguese</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="34"/> <location filename="../languages.cpp" line="34"/>
<source>Russian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="35"/>
<source>Spanish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="36"/>
<source>Swedish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="37"/>
<source>Turkish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="38"/>
<source>Ukrainian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="39"/>
<source>Other (East European)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="40"/>
<source>Other (Cyrillic Script)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="41"/>
<source>Other (West European)</source> <source>Other (West European)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="56"/> <location filename="../languages.cpp" line="63"/>
<source>Auto (%1)</source> <source>Auto (%1)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -921,12 +1037,17 @@ Heroes® of Might and Magic® III HD is currently not supported!</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="226"/> <location filename="../mainwindow_moc.ui" line="207"/>
<source>Help</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../mainwindow_moc.ui" line="276"/>
<source>Map Editor</source> <source>Map Editor</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="279"/> <location filename="../mainwindow_moc.ui" line="329"/>
<source>Start game</source> <source>Start game</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,91 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="de"> <TS version="2.1" language="de">
<context>
<name>AboutProjectView</name>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="22"/>
<source>VCMI on Discord</source>
<translation type="unfinished">VCMI auf Discord</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="29"/>
<source>Have a question? Found a bug? Want to help? Join us!</source>
<translation type="unfinished">Haben Sie eine Frage? Einen Fehler gefunden? Möchten Sie helfen? Machen Sie mit:</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="36"/>
<source>VCMI on Github</source>
<translation type="unfinished">VCMI auf Github</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="55"/>
<source>Our Community</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="62"/>
<source>VCMI on Slack</source>
<translation type="unfinished">VCMI auf Slack</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="98"/>
<source>Build Information</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="115"/>
<source>User data directory</source>
<translation type="unfinished">Verzeichnis der Benutzerdaten</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="122"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="129"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="193"/>
<source>Open</source>
<translation type="unfinished">Öffnen</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="136"/>
<source>Check for updates</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="156"/>
<source>Game version</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="163"/>
<source>Log files directory</source>
<translation type="unfinished">Verzeichnis der Log-Dateien</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="176"/>
<source>Data Directories</source>
<translation type="unfinished">Daten-Verzeichnisse</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="213"/>
<source>Game data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="220"/>
<source>Operating System</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="273"/>
<source>Project homepage</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="286"/>
<source>Report a bug</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>CModListModel</name> <name>CModListModel</name>
<message> <message>
@@ -116,204 +201,204 @@
<context> <context>
<name>CModListView</name> <name>CModListView</name>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="58"/> <location filename="../modManager/cmodlistview_moc.ui" line="43"/>
<source>Filter</source> <source>Filter</source>
<translation>Filter</translation> <translation>Filter</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="81"/> <location filename="../modManager/cmodlistview_moc.ui" line="66"/>
<source>All mods</source> <source>All mods</source>
<translation>Alle Mods</translation> <translation>Alle Mods</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="86"/> <location filename="../modManager/cmodlistview_moc.ui" line="71"/>
<source>Downloadable</source> <source>Downloadable</source>
<translation>Herunterladbar</translation> <translation>Herunterladbar</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="91"/> <location filename="../modManager/cmodlistview_moc.ui" line="76"/>
<source>Installed</source> <source>Installed</source>
<translation>Installiert</translation> <translation>Installiert</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="96"/> <location filename="../modManager/cmodlistview_moc.ui" line="81"/>
<source>Updatable</source> <source>Updatable</source>
<translation>Aktualisierbar</translation> <translation>Aktualisierbar</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="101"/> <location filename="../modManager/cmodlistview_moc.ui" line="86"/>
<source>Active</source> <source>Active</source>
<translation>Aktiv</translation> <translation>Aktiv</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="106"/> <location filename="../modManager/cmodlistview_moc.ui" line="91"/>
<source>Inactive</source> <source>Inactive</source>
<translation>Inaktiv</translation> <translation>Inaktiv</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="120"/> <location filename="../modManager/cmodlistview_moc.ui" line="105"/>
<source>Download &amp;&amp; refresh repositories</source> <source>Download &amp;&amp; refresh repositories</source>
<translation>Repositories herunterladen &amp;&amp; aktualisieren</translation> <translation>Repositories herunterladen &amp;&amp; aktualisieren</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="163"/> <location filename="../modManager/cmodlistview_moc.ui" line="160"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="315"/> <location filename="../modManager/cmodlistview_moc.cpp" line="307"/>
<source>Description</source> <source>Description</source>
<translation>Beschreibung</translation> <translation>Beschreibung</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="208"/> <location filename="../modManager/cmodlistview_moc.ui" line="206"/>
<source>Changelog</source> <source>Changelog</source>
<translation>Änderungslog</translation> <translation>Änderungslog</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="230"/> <location filename="../modManager/cmodlistview_moc.ui" line="228"/>
<source>Screenshots</source> <source>Screenshots</source>
<translation>Screenshots</translation> <translation>Screenshots</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="389"/> <location filename="../modManager/cmodlistview_moc.ui" line="386"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation>Deinstallieren</translation> <translation>Deinstallieren</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="424"/> <location filename="../modManager/cmodlistview_moc.ui" line="421"/>
<source>Enable</source> <source>Enable</source>
<translation>Aktivieren</translation> <translation>Aktivieren</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="459"/> <location filename="../modManager/cmodlistview_moc.ui" line="456"/>
<source>Disable</source> <source>Disable</source>
<translation>Deaktivieren</translation> <translation>Deaktivieren</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="494"/> <location filename="../modManager/cmodlistview_moc.ui" line="491"/>
<source>Update</source> <source>Update</source>
<translation>Aktualisieren</translation> <translation>Aktualisieren</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="529"/> <location filename="../modManager/cmodlistview_moc.ui" line="526"/>
<source>Install</source> <source>Install</source>
<translation>Installieren</translation> <translation>Installieren</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="327"/> <location filename="../modManager/cmodlistview_moc.ui" line="324"/>
<source> %p% (%v KB out of %m KB)</source> <source> %p% (%v KB out of %m KB)</source>
<translation> %p% (%v КB von %m КB)</translation> <translation> %p% (%v КB von %m КB)</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="340"/> <location filename="../modManager/cmodlistview_moc.ui" line="337"/>
<source>Abort</source> <source>Abort</source>
<translation>Abbrechen</translation> <translation>Abbrechen</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="250"/> <location filename="../modManager/cmodlistview_moc.cpp" line="242"/>
<source>Mod name</source> <source>Mod name</source>
<translation>Mod-Name</translation> <translation>Mod-Name</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="251"/> <location filename="../modManager/cmodlistview_moc.cpp" line="243"/>
<source>Installed version</source> <source>Installed version</source>
<translation>Installierte Version</translation> <translation>Installierte Version</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="252"/> <location filename="../modManager/cmodlistview_moc.cpp" line="244"/>
<source>Latest version</source> <source>Latest version</source>
<translation>Letzte Version</translation> <translation>Letzte Version</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="255"/> <location filename="../modManager/cmodlistview_moc.cpp" line="247"/>
<source>Download size</source> <source>Download size</source>
<translation>Downloadgröße</translation> <translation>Downloadgröße</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="256"/> <location filename="../modManager/cmodlistview_moc.cpp" line="248"/>
<source>Authors</source> <source>Authors</source>
<translation>Autoren</translation> <translation>Autoren</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="259"/> <location filename="../modManager/cmodlistview_moc.cpp" line="251"/>
<source>License</source> <source>License</source>
<translation>Lizenz</translation> <translation>Lizenz</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="262"/> <location filename="../modManager/cmodlistview_moc.cpp" line="254"/>
<source>Contact</source> <source>Contact</source>
<translation>Kontakt</translation> <translation>Kontakt</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="271"/> <location filename="../modManager/cmodlistview_moc.cpp" line="263"/>
<source>Compatibility</source> <source>Compatibility</source>
<translation>Kompatibilität</translation> <translation>Kompatibilität</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="265"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="273"/> <location filename="../modManager/cmodlistview_moc.cpp" line="273"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="281"/>
<source>Required VCMI version</source> <source>Required VCMI version</source>
<translation>Benötigte VCMI Version</translation> <translation>Benötigte VCMI Version</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="279"/> <location filename="../modManager/cmodlistview_moc.cpp" line="271"/>
<source>Supported VCMI version</source> <source>Supported VCMI version</source>
<translation>Unterstützte VCMI Version</translation> <translation>Unterstützte VCMI Version</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="284"/> <location filename="../modManager/cmodlistview_moc.cpp" line="276"/>
<source>Supported VCMI versions</source> <source>Supported VCMI versions</source>
<translation>Unterstützte VCMI Versionen</translation> <translation>Unterstützte VCMI Versionen</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="311"/> <location filename="../modManager/cmodlistview_moc.cpp" line="303"/>
<source>Languages</source> <source>Languages</source>
<translation>Sprachen</translation> <translation>Sprachen</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="313"/> <location filename="../modManager/cmodlistview_moc.cpp" line="305"/>
<source>Required mods</source> <source>Required mods</source>
<translation>Benötigte Mods</translation> <translation>Benötigte Mods</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="314"/> <location filename="../modManager/cmodlistview_moc.cpp" line="306"/>
<source>Conflicting mods</source> <source>Conflicting mods</source>
<translation>Mods mit Konflikt</translation> <translation>Mods mit Konflikt</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="319"/> <location filename="../modManager/cmodlistview_moc.cpp" line="311"/>
<source>This mod can not be installed or enabled because the following dependencies are not present</source> <source>This mod can not be installed or enabled because the following dependencies are not present</source>
<translation type="unfinished">Diese Mod kann nicht installiert oder aktiviert werden, da die folgenden Abhängigkeiten nicht vorhanden sind</translation> <translation type="unfinished">Diese Mod kann nicht installiert oder aktiviert werden, da die folgenden Abhängigkeiten nicht vorhanden sind</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="320"/> <location filename="../modManager/cmodlistview_moc.cpp" line="312"/>
<source>This mod can not be enabled because the following mods are incompatible with it</source> <source>This mod can not be enabled because the following mods are incompatible with it</source>
<translation type="unfinished">Diese Mod kann nicht aktiviert werden, da folgende Mods nicht mit dieser Mod kompatibel sind</translation> <translation type="unfinished">Diese Mod kann nicht aktiviert werden, da folgende Mods nicht mit dieser Mod kompatibel sind</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="321"/> <location filename="../modManager/cmodlistview_moc.cpp" line="313"/>
<source>This mod cannot be disabled because it is required by the following mods</source> <source>This mod cannot be disabled because it is required by the following mods</source>
<translation type="unfinished">Diese Mod kann nicht deaktiviert werden, da sie zum Ausführen der folgenden Mods erforderlich ist</translation> <translation type="unfinished">Diese Mod kann nicht deaktiviert werden, da sie zum Ausführen der folgenden Mods erforderlich ist</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="322"/> <location filename="../modManager/cmodlistview_moc.cpp" line="314"/>
<source>This mod cannot be uninstalled or updated because it is required by the following mods</source> <source>This mod cannot be uninstalled or updated because it is required by the following mods</source>
<translation type="unfinished">Diese Mod kann nicht deinstalliert oder aktualisiert werden, da sie für die folgenden Mods erforderlich ist</translation> <translation type="unfinished">Diese Mod kann nicht deinstalliert oder aktualisiert werden, da sie für die folgenden Mods erforderlich ist</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="323"/> <location filename="../modManager/cmodlistview_moc.cpp" line="315"/>
<source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source> <source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source>
<translation type="unfinished">Dies ist eine Submod und kann nicht separat von der Hauptmod installiert oder deinstalliert werden</translation> <translation type="unfinished">Dies ist eine Submod und kann nicht separat von der Hauptmod installiert oder deinstalliert werden</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="338"/> <location filename="../modManager/cmodlistview_moc.cpp" line="330"/>
<source>Notes</source> <source>Notes</source>
<translation>Anmerkungen</translation> <translation>Anmerkungen</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="840"/> <location filename="../modManager/cmodlistview_moc.cpp" line="827"/>
<source>Screenshot %1</source> <source>Screenshot %1</source>
<translation>Screenshot %1</translation> <translation>Screenshot %1</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="245"/> <location filename="../modManager/cmodlistview_moc.cpp" line="237"/>
<source>Mod is incompatible</source> <source>Mod is incompatible</source>
<translation>Mod ist inkompatibel</translation> <translation>Mod ist inkompatibel</translation>
</message> </message>
@@ -321,205 +406,230 @@
<context> <context>
<name>CSettingsView</name> <name>CSettingsView</name>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="327"/>
<source>Change</source>
<translation>Ändern</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="222"/>
<location filename="../settingsView/csettingsview_moc.ui" line="287"/>
<location filename="../settingsView/csettingsview_moc.ui" line="473"/>
<source>Open</source> <source>Open</source>
<translation>Öffnen</translation> <translation type="vanished">Öffnen</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Adventure Map AI</source>
<translation>Abenteuerkarte KI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="334"/>
<source>User data directory</source> <source>User data directory</source>
<translation>Verzeichnis der Benutzerdaten</translation> <translation type="vanished">Verzeichnis der Benutzerdaten</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="256"/> <location filename="../settingsView/csettingsview_moc.ui" line="190"/>
<location filename="../settingsView/csettingsview_moc.ui" line="298"/> <location filename="../settingsView/csettingsview_moc.ui" line="245"/>
<location filename="../settingsView/csettingsview_moc.ui" line="440"/> <location filename="../settingsView/csettingsview_moc.ui" line="262"/>
<location filename="../settingsView/csettingsview_moc.ui" line="487"/>
<source>Off</source> <source>Off</source>
<translation>Aus</translation> <translation>Aus</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="79"/> <location filename="../settingsView/csettingsview_moc.ui" line="79"/>
<location filename="../settingsView/csettingsview_moc.ui" line="576"/> <location filename="../settingsView/csettingsview_moc.ui" line="563"/>
<source>Artificial Intelligence</source> <source>Artificial Intelligence</source>
<translation>Künstliche Intelligenz</translation> <translation>Künstliche Intelligenz</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="89"/> <location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="415"/> <location filename="../settingsView/csettingsview_moc.ui" line="179"/>
<source>Mod Repositories</source> <source>Mod Repositories</source>
<translation>Mod-Repositorien</translation> <translation>Mod-Repositorien</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="368"/> <location filename="../settingsView/csettingsview_moc.ui" line="448"/>
<source>Update now</source> <source>Interface Scaling</source>
<translation>Jetzt aktualisieren</translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="261"/> <location filename="../settingsView/csettingsview_moc.ui" line="398"/>
<location filename="../settingsView/csettingsview_moc.ui" line="303"/> <source>Neutral AI in battles</source>
<location filename="../settingsView/csettingsview_moc.ui" line="445"/> <translation type="unfinished"></translation>
<location filename="../settingsView/csettingsview_moc.ui" line="492"/> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="203"/>
<source>Enemy AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="509"/>
<source>Additional repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="482"/>
<source>Adventure Map Allies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="441"/>
<source>Adventure Map Enemies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="316"/>
<source>Windowed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="321"/>
<source>Borderless fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="326"/>
<source>Exclusive fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="530"/>
<source>Friendly AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Framerate Limit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="523"/>
<source>Refresh now</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="234"/>
<source>Default repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Update now</source>
<translation type="vanished">Jetzt aktualisieren</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="195"/>
<location filename="../settingsView/csettingsview_moc.ui" line="250"/>
<location filename="../settingsView/csettingsview_moc.ui" line="267"/>
<source>On</source> <source>On</source>
<translation>An</translation> <translation>An</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="215"/> <location filename="../settingsView/csettingsview_moc.ui" line="455"/>
<source>Cursor</source> <source>Cursor</source>
<translation>Zeiger</translation> <translation>Zeiger</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="500"/> <location filename="../settingsView/csettingsview_moc.ui" line="475"/>
<source>Heroes III Data Language</source> <source>Heroes III Data Language</source>
<translation>Sprache der Heroes III Daten</translation> <translation>Sprache der Heroes III Daten</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="552"/> <location filename="../settingsView/csettingsview_moc.ui" line="303"/>
<source>Default</source> <source>Select display mode for game
<translation>Standard</translation>
Windowed - game will run inside a window that covers part of your screen
Borderless Windowed Mode - game will run in a window that covers entirely of your screen, using same resolution as your screen.
Fullscreen Exclusive Mode - game will cover entirety of your screen and will use selected resolution.</source>
<translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="557"/> <location filename="../settingsView/csettingsview_moc.ui" line="290"/>
<source>Hardware</source> <source>Hardware</source>
<translation>Hardware</translation> <translation>Hardware</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="562"/> <location filename="../settingsView/csettingsview_moc.ui" line="295"/>
<source>Software</source> <source>Software</source>
<translation>Software</translation> <translation>Software</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="597"/> <location filename="../settingsView/csettingsview_moc.ui" line="227"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation>Heroes III Übersetzung</translation> <translation>Heroes III Übersetzung</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="429"/> <location filename="../settingsView/csettingsview_moc.ui" line="516"/>
<source>Check on startup</source> <source>Check on startup</source>
<translation>Beim Start prüfen</translation> <translation>Beim Start prüfen</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="158"/> <location filename="../settingsView/csettingsview_moc.ui" line="537"/>
<source>Fullscreen</source> <source>Fullscreen</source>
<translation>Vollbild</translation> <translation>Vollbild</translation>
</message> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="172"/>
<source>Neutral AI</source>
<translation>Neutrale KI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="266"/>
<source>Real</source>
<translation>Vollständig</translation>
</message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="69"/> <location filename="../settingsView/csettingsview_moc.ui" line="69"/>
<location filename="../settingsView/csettingsview_moc.ui" line="354"/> <location filename="../settingsView/csettingsview_moc.ui" line="414"/>
<source>General</source> <source>General</source>
<translation>Allgemein</translation> <translation>Allgemein</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="144"/> <location filename="../settingsView/csettingsview_moc.ui" line="344"/>
<source>VCMI Language</source> <source>VCMI Language</source>
<translation>VCMI-Sprache</translation> <translation>VCMI-Sprache</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="422"/> <location filename="../settingsView/csettingsview_moc.ui" line="421"/>
<source>Friendly AI</source>
<translation>Freundliche KI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="165"/>
<source>Resolution</source> <source>Resolution</source>
<translation>Auflösung</translation> <translation>Auflösung</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="179"/> <location filename="../settingsView/csettingsview_moc.ui" line="550"/>
<source>Autosave</source> <source>Autosave</source>
<translation>Autospeichern</translation> <translation>Autospeichern</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="375"/> <location filename="../settingsView/csettingsview_moc.ui" line="282"/>
<source>Display index</source> <source>Display index</source>
<translation>Anzeige-Index</translation> <translation>Anzeige-Index</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="151"/> <location filename="../settingsView/csettingsview_moc.ui" line="166"/>
<source>Network port</source> <source>Network port</source>
<translation>Netzwerk-Port</translation> <translation>Netzwerk-Port</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="317"/>
<source>Data Directories</source> <source>Data Directories</source>
<translation>Daten-Verzeichnisse</translation> <translation type="vanished">Daten-Verzeichnisse</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="74"/> <location filename="../settingsView/csettingsview_moc.ui" line="74"/>
<location filename="../settingsView/csettingsview_moc.ui" line="192"/> <location filename="../settingsView/csettingsview_moc.ui" line="125"/>
<source>Video</source> <source>Video</source>
<translation>Video</translation> <translation>Video</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="466"/>
<source>Extra data directory</source>
<translation>Zusätzliches Daten-Verzeichnis</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="583"/>
<source>Log files directory</source> <source>Log files directory</source>
<translation>Verzeichnis der Log-Dateien</translation> <translation type="vanished">Verzeichnis der Log-Dateien</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="361"/> <location filename="../settingsView/csettingsview_moc.ui" line="364"/>
<source>Show intro</source> <source>Show intro</source>
<translation>Intro anzeigen</translation> <translation>Intro anzeigen</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="341"/>
<source>Build version</source> <source>Build version</source>
<translation>Version des Builds</translation> <translation type="vanished">Version des Builds</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="534"/> <location filename="../settingsView/csettingsview_moc.cpp" line="401"/>
<source>Enemy AI</source>
<translation>Feindliche KI</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.cpp" line="385"/>
<source>Active</source> <source>Active</source>
<translation>Aktiv</translation> <translation>Aktiv</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="390"/> <location filename="../settingsView/csettingsview_moc.cpp" line="406"/>
<source>Disabled</source> <source>Disabled</source>
<translation>Deaktiviert</translation> <translation>Deaktiviert</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="391"/> <location filename="../settingsView/csettingsview_moc.cpp" line="407"/>
<source>Enable</source> <source>Enable</source>
<translation>Aktivieren</translation> <translation>Aktivieren</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="396"/> <location filename="../settingsView/csettingsview_moc.cpp" line="412"/>
<source>Not Installed</source> <source>Not Installed</source>
<translation>Nicht installiert</translation> <translation>Nicht installiert</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="397"/> <location filename="../settingsView/csettingsview_moc.cpp" line="413"/>
<source>Install</source> <source>Install</source>
<translation>Installieren</translation> <translation>Installieren</translation>
</message> </message>
@@ -542,17 +652,17 @@
<translation>Mods Voreinstellung</translation> <translation>Mods Voreinstellung</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="146"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="127"/>
<source>Select your language</source> <source>Select your language</source>
<translation type="unfinished">Wählen Sie Ihre Sprache</translation> <translation type="unfinished">Wählen Sie Ihre Sprache</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="196"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="177"/>
<source>Have a question? Found a bug? Want to help? Join us!</source> <source>Have a question? Found a bug? Want to help? Join us!</source>
<translation type="unfinished">Haben Sie eine Frage? Einen Fehler gefunden? Möchten Sie helfen? Machen Sie mit:</translation> <translation type="unfinished">Haben Sie eine Frage? Einen Fehler gefunden? Möchten Sie helfen? Machen Sie mit:</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="205"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="186"/>
<source>Thank you for installing VCMI! <source>Thank you for installing VCMI!
Before you can start playing, there are a few more steps that need to be completed. Before you can start playing, there are a few more steps that need to be completed.
@@ -569,149 +679,144 @@ Denken Sie daran, dass Sie die Originaldateien, Heroes III: Complete Edition ode
Heroes III: HD Edition wird derzeit nicht unterstützt</translation> Heroes III: HD Edition wird derzeit nicht unterstützt</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="276"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="257"/>
<source>Locate Heroes III data files</source> <source>Locate Heroes III data files</source>
<translation type="unfinished">Heroes III Daten suchen</translation> <translation type="unfinished">Heroes III Daten suchen</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="365"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="346"/>
<source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source> <source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source>
<translation type="unfinished">Wenn Sie keine Kopie von Heroes III installiert haben, können Sie unser automatisches Installationstool &apos;vcmibuilder&apos; verwenden, um Daten aus dem GoG.com-Installationsprogramm zu extrahieren. Besuchen Sie unser Wiki für detaillierte Anweisungen.</translation> <translation type="unfinished">Wenn Sie keine Kopie von Heroes III installiert haben, können Sie unser automatisches Installationstool &apos;vcmibuilder&apos; verwenden, um Daten aus dem GoG.com-Installationsprogramm zu extrahieren. Besuchen Sie unser Wiki für detaillierte Anweisungen.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="381"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="362"/>
<source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source> <source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source>
<translation type="unfinished">VCMI benötigt Heroes III Daten in einem der oben aufgeführten Verzeichnisse. Bitte kopieren Sie die Heroes III-Daten in eines dieser Verzeichnisse.</translation> <translation type="unfinished">VCMI benötigt Heroes III Daten in einem der oben aufgeführten Verzeichnisse. Bitte kopieren Sie die Heroes III-Daten in eines dieser Verzeichnisse.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="416"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="397"/>
<source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source> <source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source>
<translation type="unfinished">Alternativ können Sie ein Verzeichnis mit installierten Heroes III-Daten auswählen, und VCMI wird die vorhandenen Daten automatisch kopieren.</translation> <translation type="unfinished">Alternativ können Sie ein Verzeichnis mit installierten Heroes III-Daten auswählen, und VCMI wird die vorhandenen Daten automatisch kopieren.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="445"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="426"/>
<source>Your Heroes III data files have been successfully found.</source> <source>Your Heroes III data files have been successfully found.</source>
<translation>Ihre Heroes III-Datendateien wurden erfolgreich gefunden.</translation> <translation>Ihre Heroes III-Datendateien wurden erfolgreich gefunden.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="466"/>
<source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source> <source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source>
<translation type="unfinished">Automatische Erkennung der Sprache fehlgeschlagen. Bitte wählen Sie die Sprache Ihrer Heroes III Kopie</translation> <translation type="unfinished">Automatische Erkennung der Sprache fehlgeschlagen. Bitte wählen Sie die Sprache Ihrer Heroes III Kopie</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="759"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="740"/>
<source>Install a translation of Heroes III in your preferred language</source> <source>Install a translation of Heroes III in your preferred language</source>
<translation type="unfinished">Übersetzung von Heroes III für Ihre Sprache installieren</translation> <translation type="unfinished">Übersetzung von Heroes III für Ihre Sprache installieren</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="775"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="756"/>
<source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source> <source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source>
<translation type="unfinished">Optional können Sie jetzt oder zu einem beliebigen späteren Zeitpunkt zusätzliche Mods installieren:</translation> <translation type="unfinished">Optional können Sie jetzt oder zu einem beliebigen späteren Zeitpunkt zusätzliche Mods installieren:</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="791"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="772"/>
<source>Install support for playing Heroes III in resolutions higher than 800x600</source> <source>Install support for playing Heroes III in resolutions higher than 800x600</source>
<translation type="unfinished">Installieren Sie Unterstützung für das Spielen von Heroes III in anderen Auflösungen als 800x600.</translation> <translation type="unfinished">Installieren Sie Unterstützung für das Spielen von Heroes III in anderen Auflösungen als 800x600.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="807"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="788"/>
<source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source> <source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source>
<translation type="unfinished">Installieren Sie die kompatible Version des Addons Horn of the Abyss: eine von Fans entwickelte Heroes III-Erweiterung, portiert vom VCMI-Team</translation> <translation type="unfinished">Installieren Sie die kompatible Version des Addons Horn of the Abyss: eine von Fans entwickelte Heroes III-Erweiterung, portiert vom VCMI-Team</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="823"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="804"/>
<source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source> <source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source>
<translation type="unfinished">Installieren Sie die kompatible Version des Addons &quot;In The Wake of Gods&quot;: von Fans entwickelte Heroes III-Erweiterung</translation> <translation type="unfinished">Installieren Sie die kompatible Version des Addons &quot;In The Wake of Gods&quot;: von Fans entwickelte Heroes III-Erweiterung</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="870"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="851"/>
<source>Finish</source> <source>Finish</source>
<translation>Fertigstellen</translation> <translation>Fertigstellen</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="111"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="156"/>
<source>Step %v out of %m</source>
<translation>Schritt %v von %m</translation>
</message>
<message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="175"/>
<source>VCMI on Github</source> <source>VCMI on Github</source>
<translation>VCMI auf Github</translation> <translation>VCMI auf Github</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="182"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="163"/>
<source>VCMI on Slack</source> <source>VCMI on Slack</source>
<translation>VCMI auf Slack</translation> <translation>VCMI auf Slack</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="189"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="170"/>
<source>VCMI on Discord</source> <source>VCMI on Discord</source>
<translation>VCMI auf Discord</translation> <translation>VCMI auf Discord</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="239"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="220"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="554"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="535"/>
<source>Next</source> <source>Next</source>
<translation>Weiter</translation> <translation>Weiter</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="307"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="288"/>
<source>Open help in browser</source> <source>Open help in browser</source>
<translation>Hilfe im Browser öffnen</translation> <translation>Hilfe im Browser öffnen</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="320"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="301"/>
<source>Search again</source> <source>Search again</source>
<translation>Erneut suchen</translation> <translation>Erneut suchen</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="403"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="384"/>
<source>Heroes III data files</source> <source>Heroes III data files</source>
<translation>Heroes III Dateien</translation> <translation>Heroes III Dateien</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="432"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="413"/>
<source>Copy existing data</source> <source>Copy existing data</source>
<translation>Vorhandene Daten kopieren</translation> <translation>Vorhandene Daten kopieren</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="475"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="456"/>
<source>Your Heroes III language has been successfully detected.</source> <source>Your Heroes III language has been successfully detected.</source>
<translation>Ihre Heroes III-Sprache wurde erfolgreich erkannt.</translation> <translation>Ihre Heroes III-Sprache wurde erfolgreich erkannt.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="504"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/>
<source>Heroes III language</source> <source>Heroes III language</source>
<translation>Heroes III Sprache</translation> <translation>Heroes III Sprache</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="547"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="528"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="863"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="844"/>
<source>Back</source> <source>Back</source>
<translation>Zurück</translation> <translation>Zurück</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="585"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="566"/>
<source>Install VCMI Mod Preset</source> <source>Install VCMI Mod Preset</source>
<translation>VCMI Mod Voreinstellung installieren</translation> <translation>VCMI Mod Voreinstellung installieren</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="635"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="616"/>
<source>Horn of the Abyss</source> <source>Horn of the Abyss</source>
<translation>Horn of the Abyss</translation> <translation>Horn of the Abyss</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="657"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="638"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation>Heroes III Übersetzung</translation> <translation>Heroes III Übersetzung</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="721"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="702"/>
<source>High Definition Support</source> <source>High Definition Support</source>
<translation>Unterstützung für hohe Auflösungen</translation> <translation>Unterstützung für hohe Auflösungen</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="743"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="724"/>
<source>In The Wake of Gods</source> <source>In The Wake of Gods</source>
<translation>In The Wake of Gods</translation> <translation>In The Wake of Gods</translation>
</message> </message>
@@ -728,66 +833,101 @@ Heroes III: HD Edition wird derzeit nicht unterstützt</translation>
<name>Language</name> <name>Language</name>
<message> <message>
<location filename="../languages.cpp" line="23"/> <location filename="../languages.cpp" line="23"/>
<source>Czech</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="24"/>
<source>Chinese</source> <source>Chinese</source>
<translation>Chinesisch</translation> <translation>Chinesisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="24"/> <location filename="../languages.cpp" line="25"/>
<source>English</source> <source>English</source>
<translation>Englisch</translation> <translation>Englisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="25"/> <location filename="../languages.cpp" line="26"/>
<source>Finnish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="27"/>
<source>French</source> <source>French</source>
<translation>Französisch</translation> <translation>Französisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="26"/> <location filename="../languages.cpp" line="28"/>
<source>German</source> <source>German</source>
<translation>Deutsch</translation> <translation>Deutsch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="27"/> <location filename="../languages.cpp" line="29"/>
<source>Hungarian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="30"/>
<source>Italian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="31"/>
<source>Korean</source> <source>Korean</source>
<translation>Koreanisch</translation> <translation>Koreanisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="28"/> <location filename="../languages.cpp" line="32"/>
<source>Polish</source> <source>Polish</source>
<translation>Polnisch</translation> <translation>Polnisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="29"/> <location filename="../languages.cpp" line="33"/>
<source>Portuguese</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="34"/>
<source>Russian</source> <source>Russian</source>
<translation>Russisch</translation> <translation>Russisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="30"/> <location filename="../languages.cpp" line="35"/>
<source>Spanish</source> <source>Spanish</source>
<translation>Spanisch</translation> <translation>Spanisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="31"/> <location filename="../languages.cpp" line="36"/>
<source>Swedish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="37"/>
<source>Turkish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="38"/>
<source>Ukrainian</source> <source>Ukrainian</source>
<translation>Ukrainisch</translation> <translation>Ukrainisch</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="32"/> <location filename="../languages.cpp" line="39"/>
<source>Other (East European)</source> <source>Other (East European)</source>
<translation>Sonstige (osteuropäisch)</translation> <translation>Sonstige (osteuropäisch)</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="33"/> <location filename="../languages.cpp" line="40"/>
<source>Other (Cyrillic Script)</source> <source>Other (Cyrillic Script)</source>
<translation>Sonstige (kyrillische Schrift)</translation> <translation>Sonstige (kyrillische Schrift)</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="34"/> <location filename="../languages.cpp" line="41"/>
<source>Other (West European)</source> <source>Other (West European)</source>
<translation>Sonstige (westeuropäisch)</translation> <translation>Sonstige (westeuropäisch)</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="56"/> <location filename="../languages.cpp" line="63"/>
<source>Auto (%1)</source> <source>Auto (%1)</source>
<translation>Auto (%1)</translation> <translation>Auto (%1)</translation>
</message> </message>
@@ -937,12 +1077,17 @@ Heroes III: HD Edition wird derzeit nicht unterstützt</translation>
<translation>Lobby</translation> <translation>Lobby</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="226"/> <location filename="../mainwindow_moc.ui" line="207"/>
<source>Help</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../mainwindow_moc.ui" line="276"/>
<source>Map Editor</source> <source>Map Editor</source>
<translation>Karteneditor</translation> <translation>Karteneditor</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="279"/> <location filename="../mainwindow_moc.ui" line="329"/>
<source>Start game</source> <source>Start game</source>
<translation>Spiel starten</translation> <translation>Spiel starten</translation>
</message> </message>

View File

@@ -1,6 +1,91 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="pl_PL"> <TS version="2.1" language="pl_PL">
<context>
<name>AboutProjectView</name>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="22"/>
<source>VCMI on Discord</source>
<translation type="unfinished">VCMI na Discordzie</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="29"/>
<source>Have a question? Found a bug? Want to help? Join us!</source>
<translation type="unfinished">Masz pytanie? Znalazłeś błąd? Chcesz pomóc? Dołącz do nas!</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="36"/>
<source>VCMI on Github</source>
<translation type="unfinished">VCMI na Github</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="55"/>
<source>Our Community</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="62"/>
<source>VCMI on Slack</source>
<translation type="unfinished">VCMI na Slacku</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="98"/>
<source>Build Information</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="115"/>
<source>User data directory</source>
<translation type="unfinished">Katalog danych użytkownika</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="122"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="129"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="193"/>
<source>Open</source>
<translation type="unfinished">Otwórz</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="136"/>
<source>Check for updates</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="156"/>
<source>Game version</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="163"/>
<source>Log files directory</source>
<translation type="unfinished">Katalog logów</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="176"/>
<source>Data Directories</source>
<translation type="unfinished">Katalogi z danymi</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="213"/>
<source>Game data directory</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="220"/>
<source>Operating System</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="273"/>
<source>Project homepage</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="286"/>
<source>Report a bug</source>
<translation type="unfinished"></translation>
</message>
</context>
<context> <context>
<name>CModListModel</name> <name>CModListModel</name>
<message> <message>
@@ -116,204 +201,204 @@
<context> <context>
<name>CModListView</name> <name>CModListView</name>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="58"/> <location filename="../modManager/cmodlistview_moc.ui" line="43"/>
<source>Filter</source> <source>Filter</source>
<translation>Filtruj</translation> <translation>Filtruj</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="81"/> <location filename="../modManager/cmodlistview_moc.ui" line="66"/>
<source>All mods</source> <source>All mods</source>
<translation>Wszystkie mody</translation> <translation>Wszystkie mody</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="86"/> <location filename="../modManager/cmodlistview_moc.ui" line="71"/>
<source>Downloadable</source> <source>Downloadable</source>
<translation>Dostępny do pobrania</translation> <translation>Dostępny do pobrania</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="91"/> <location filename="../modManager/cmodlistview_moc.ui" line="76"/>
<source>Installed</source> <source>Installed</source>
<translation>Zainstalowany</translation> <translation>Zainstalowany</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="96"/> <location filename="../modManager/cmodlistview_moc.ui" line="81"/>
<source>Updatable</source> <source>Updatable</source>
<translation>Można zaktualizować</translation> <translation>Można zaktualizować</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="101"/> <location filename="../modManager/cmodlistview_moc.ui" line="86"/>
<source>Active</source> <source>Active</source>
<translation>Aktywny</translation> <translation>Aktywny</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="106"/> <location filename="../modManager/cmodlistview_moc.ui" line="91"/>
<source>Inactive</source> <source>Inactive</source>
<translation>Nieaktywny</translation> <translation>Nieaktywny</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="120"/> <location filename="../modManager/cmodlistview_moc.ui" line="105"/>
<source>Download &amp;&amp; refresh repositories</source> <source>Download &amp;&amp; refresh repositories</source>
<translation>Pobierz i odśwież repozytoria</translation> <translation>Pobierz i odśwież repozytoria</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="163"/> <location filename="../modManager/cmodlistview_moc.ui" line="160"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="315"/> <location filename="../modManager/cmodlistview_moc.cpp" line="307"/>
<source>Description</source> <source>Description</source>
<translation>Opis</translation> <translation>Opis</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="208"/> <location filename="../modManager/cmodlistview_moc.ui" line="206"/>
<source>Changelog</source> <source>Changelog</source>
<translation>Lista zmian</translation> <translation>Lista zmian</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="230"/> <location filename="../modManager/cmodlistview_moc.ui" line="228"/>
<source>Screenshots</source> <source>Screenshots</source>
<translation>Zrzuty ekranu</translation> <translation>Zrzuty ekranu</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="389"/> <location filename="../modManager/cmodlistview_moc.ui" line="386"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation>Odinstaluj</translation> <translation>Odinstaluj</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="424"/> <location filename="../modManager/cmodlistview_moc.ui" line="421"/>
<source>Enable</source> <source>Enable</source>
<translation>Włącz</translation> <translation>Włącz</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="459"/> <location filename="../modManager/cmodlistview_moc.ui" line="456"/>
<source>Disable</source> <source>Disable</source>
<translation>Wyłącz</translation> <translation>Wyłącz</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="494"/> <location filename="../modManager/cmodlistview_moc.ui" line="491"/>
<source>Update</source> <source>Update</source>
<translation>Zaktualizuj</translation> <translation>Zaktualizuj</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="529"/> <location filename="../modManager/cmodlistview_moc.ui" line="526"/>
<source>Install</source> <source>Install</source>
<translation>Zainstaluj</translation> <translation>Zainstaluj</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="327"/> <location filename="../modManager/cmodlistview_moc.ui" line="324"/>
<source> %p% (%v KB out of %m KB)</source> <source> %p% (%v KB out of %m KB)</source>
<translation> %p% (%v KB z %m KB)</translation> <translation> %p% (%v KB z %m KB)</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="340"/> <location filename="../modManager/cmodlistview_moc.ui" line="337"/>
<source>Abort</source> <source>Abort</source>
<translation>Przerwij</translation> <translation>Przerwij</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="250"/> <location filename="../modManager/cmodlistview_moc.cpp" line="242"/>
<source>Mod name</source> <source>Mod name</source>
<translation>Nazwa moda</translation> <translation>Nazwa moda</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="251"/> <location filename="../modManager/cmodlistview_moc.cpp" line="243"/>
<source>Installed version</source> <source>Installed version</source>
<translation>Zainstalowana wersja</translation> <translation>Zainstalowana wersja</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="252"/> <location filename="../modManager/cmodlistview_moc.cpp" line="244"/>
<source>Latest version</source> <source>Latest version</source>
<translation>Najnowsza wersja</translation> <translation>Najnowsza wersja</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="255"/> <location filename="../modManager/cmodlistview_moc.cpp" line="247"/>
<source>Download size</source> <source>Download size</source>
<translation>Rozmiar pobierania</translation> <translation>Rozmiar pobierania</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="256"/> <location filename="../modManager/cmodlistview_moc.cpp" line="248"/>
<source>Authors</source> <source>Authors</source>
<translation>Autorzy</translation> <translation>Autorzy</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="259"/> <location filename="../modManager/cmodlistview_moc.cpp" line="251"/>
<source>License</source> <source>License</source>
<translation>Licencja</translation> <translation>Licencja</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="262"/> <location filename="../modManager/cmodlistview_moc.cpp" line="254"/>
<source>Contact</source> <source>Contact</source>
<translation>Kontakt</translation> <translation>Kontakt</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="271"/> <location filename="../modManager/cmodlistview_moc.cpp" line="263"/>
<source>Compatibility</source> <source>Compatibility</source>
<translation>Kompatybilność</translation> <translation>Kompatybilność</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="265"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="273"/> <location filename="../modManager/cmodlistview_moc.cpp" line="273"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="281"/>
<source>Required VCMI version</source> <source>Required VCMI version</source>
<translation>Wymagana wersja VCMI</translation> <translation>Wymagana wersja VCMI</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="279"/> <location filename="../modManager/cmodlistview_moc.cpp" line="271"/>
<source>Supported VCMI version</source> <source>Supported VCMI version</source>
<translation>Wspierana wersja VCMI</translation> <translation>Wspierana wersja VCMI</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="284"/> <location filename="../modManager/cmodlistview_moc.cpp" line="276"/>
<source>Supported VCMI versions</source> <source>Supported VCMI versions</source>
<translation>Wspierane wersje VCMI</translation> <translation>Wspierane wersje VCMI</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="311"/> <location filename="../modManager/cmodlistview_moc.cpp" line="303"/>
<source>Languages</source> <source>Languages</source>
<translation>Języki</translation> <translation>Języki</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="313"/> <location filename="../modManager/cmodlistview_moc.cpp" line="305"/>
<source>Required mods</source> <source>Required mods</source>
<translation>Wymagane mody</translation> <translation>Wymagane mody</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="314"/> <location filename="../modManager/cmodlistview_moc.cpp" line="306"/>
<source>Conflicting mods</source> <source>Conflicting mods</source>
<translation>Konfliktujące mody</translation> <translation>Konfliktujące mody</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="319"/> <location filename="../modManager/cmodlistview_moc.cpp" line="311"/>
<source>This mod can not be installed or enabled because the following dependencies are not present</source> <source>This mod can not be installed or enabled because the following dependencies are not present</source>
<translation type="unfinished">Ten mod nie może zostać zainstalowany lub włączony ponieważ następujące zależności nie zostały spełnione</translation> <translation type="unfinished">Ten mod nie może zostać zainstalowany lub włączony ponieważ następujące zależności nie zostały spełnione</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="320"/> <location filename="../modManager/cmodlistview_moc.cpp" line="312"/>
<source>This mod can not be enabled because the following mods are incompatible with it</source> <source>This mod can not be enabled because the following mods are incompatible with it</source>
<translation type="unfinished">Ten mod nie może zostać włączony ponieważ następujące mody z nim niekompatybilne</translation> <translation type="unfinished">Ten mod nie może zostać włączony ponieważ następujące mody z nim niekompatybilne</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="321"/> <location filename="../modManager/cmodlistview_moc.cpp" line="313"/>
<source>This mod cannot be disabled because it is required by the following mods</source> <source>This mod cannot be disabled because it is required by the following mods</source>
<translation type="unfinished">Ten mod nie może zostać wyłączony ponieważ jest wymagany by do uruchomienia następujących modów</translation> <translation type="unfinished">Ten mod nie może zostać wyłączony ponieważ jest wymagany by do uruchomienia następujących modów</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="322"/> <location filename="../modManager/cmodlistview_moc.cpp" line="314"/>
<source>This mod cannot be uninstalled or updated because it is required by the following mods</source> <source>This mod cannot be uninstalled or updated because it is required by the following mods</source>
<translation type="unfinished">Ten mod nie może zostać odinstalowany lub zaktualizowany ponieważ jest wymagany do uruchomienia następujących modów</translation> <translation type="unfinished">Ten mod nie może zostać odinstalowany lub zaktualizowany ponieważ jest wymagany do uruchomienia następujących modów</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="323"/> <location filename="../modManager/cmodlistview_moc.cpp" line="315"/>
<source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source> <source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source>
<translation type="unfinished">To jest moduł składowy innego moda i nie może być zainstalowany lub odinstalowany oddzielnie od moda nadrzędnego</translation> <translation type="unfinished">To jest moduł składowy innego moda i nie może być zainstalowany lub odinstalowany oddzielnie od moda nadrzędnego</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="338"/> <location filename="../modManager/cmodlistview_moc.cpp" line="330"/>
<source>Notes</source> <source>Notes</source>
<translation>Uwagi</translation> <translation>Uwagi</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="840"/> <location filename="../modManager/cmodlistview_moc.cpp" line="827"/>
<source>Screenshot %1</source> <source>Screenshot %1</source>
<translation>Zrzut ekranu %1</translation> <translation>Zrzut ekranu %1</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="245"/> <location filename="../modManager/cmodlistview_moc.cpp" line="237"/>
<source>Mod is incompatible</source> <source>Mod is incompatible</source>
<translation>Mod jest niekompatybilny</translation> <translation>Mod jest niekompatybilny</translation>
</message> </message>
@@ -321,205 +406,230 @@
<context> <context>
<name>CSettingsView</name> <name>CSettingsView</name>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="327"/>
<source>Change</source>
<translation>Zmień</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="222"/>
<location filename="../settingsView/csettingsview_moc.ui" line="287"/>
<location filename="../settingsView/csettingsview_moc.ui" line="473"/>
<source>Open</source> <source>Open</source>
<translation>Otwórz</translation> <translation type="vanished">Otwórz</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Adventure Map AI</source>
<translation>AI mapy przygody</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="334"/>
<source>User data directory</source> <source>User data directory</source>
<translation>Katalog danych użytkownika</translation> <translation type="vanished">Katalog danych użytkownika</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="256"/> <location filename="../settingsView/csettingsview_moc.ui" line="190"/>
<location filename="../settingsView/csettingsview_moc.ui" line="298"/> <location filename="../settingsView/csettingsview_moc.ui" line="245"/>
<location filename="../settingsView/csettingsview_moc.ui" line="440"/> <location filename="../settingsView/csettingsview_moc.ui" line="262"/>
<location filename="../settingsView/csettingsview_moc.ui" line="487"/>
<source>Off</source> <source>Off</source>
<translation>Wyłączony</translation> <translation>Wyłączony</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="79"/> <location filename="../settingsView/csettingsview_moc.ui" line="79"/>
<location filename="../settingsView/csettingsview_moc.ui" line="576"/> <location filename="../settingsView/csettingsview_moc.ui" line="563"/>
<source>Artificial Intelligence</source> <source>Artificial Intelligence</source>
<translation>Sztuczna Inteligencja</translation> <translation>Sztuczna Inteligencja</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="89"/> <location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="415"/> <location filename="../settingsView/csettingsview_moc.ui" line="179"/>
<source>Mod Repositories</source> <source>Mod Repositories</source>
<translation>Repozytoria modów</translation> <translation>Repozytoria modów</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="368"/> <location filename="../settingsView/csettingsview_moc.ui" line="448"/>
<source>Update now</source> <source>Interface Scaling</source>
<translation>Zaktualizuj teraz</translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="261"/> <location filename="../settingsView/csettingsview_moc.ui" line="398"/>
<location filename="../settingsView/csettingsview_moc.ui" line="303"/> <source>Neutral AI in battles</source>
<location filename="../settingsView/csettingsview_moc.ui" line="445"/> <translation type="unfinished"></translation>
<location filename="../settingsView/csettingsview_moc.ui" line="492"/> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="203"/>
<source>Enemy AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="509"/>
<source>Additional repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="482"/>
<source>Adventure Map Allies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="441"/>
<source>Adventure Map Enemies</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="316"/>
<source>Windowed</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="321"/>
<source>Borderless fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="326"/>
<source>Exclusive fullscreen</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="530"/>
<source>Friendly AI in battles</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Framerate Limit</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="523"/>
<source>Refresh now</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="234"/>
<source>Default repository</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Update now</source>
<translation type="vanished">Zaktualizuj teraz</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="195"/>
<location filename="../settingsView/csettingsview_moc.ui" line="250"/>
<location filename="../settingsView/csettingsview_moc.ui" line="267"/>
<source>On</source> <source>On</source>
<translation>Włączony</translation> <translation>Włączony</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="215"/> <location filename="../settingsView/csettingsview_moc.ui" line="455"/>
<source>Cursor</source> <source>Cursor</source>
<translation>Kursor</translation> <translation>Kursor</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="500"/> <location filename="../settingsView/csettingsview_moc.ui" line="475"/>
<source>Heroes III Data Language</source> <source>Heroes III Data Language</source>
<translation>Język plików Heroes III</translation> <translation>Język plików Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="552"/> <location filename="../settingsView/csettingsview_moc.ui" line="303"/>
<source>Default</source> <source>Select display mode for game
<translation>Domyślny</translation>
Windowed - game will run inside a window that covers part of your screen
Borderless Windowed Mode - game will run in a window that covers entirely of your screen, using same resolution as your screen.
Fullscreen Exclusive Mode - game will cover entirety of your screen and will use selected resolution.</source>
<translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="557"/> <location filename="../settingsView/csettingsview_moc.ui" line="290"/>
<source>Hardware</source> <source>Hardware</source>
<translation>Sprzętowy</translation> <translation>Sprzętowy</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="562"/> <location filename="../settingsView/csettingsview_moc.ui" line="295"/>
<source>Software</source> <source>Software</source>
<translation>Programowy</translation> <translation>Programowy</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="597"/> <location filename="../settingsView/csettingsview_moc.ui" line="227"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation>Tłumaczenie Heroes III</translation> <translation>Tłumaczenie Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="429"/> <location filename="../settingsView/csettingsview_moc.ui" line="516"/>
<source>Check on startup</source> <source>Check on startup</source>
<translation>Sprawdzaj przy uruchomieniu</translation> <translation>Sprawdzaj przy uruchomieniu</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="158"/> <location filename="../settingsView/csettingsview_moc.ui" line="537"/>
<source>Fullscreen</source> <source>Fullscreen</source>
<translation>Pełny ekran</translation> <translation>Pełny ekran</translation>
</message> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="172"/>
<source>Neutral AI</source>
<translation>AI jednostek neutralnych</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="266"/>
<source>Real</source>
<translation>Prawdziwy</translation>
</message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="69"/> <location filename="../settingsView/csettingsview_moc.ui" line="69"/>
<location filename="../settingsView/csettingsview_moc.ui" line="354"/> <location filename="../settingsView/csettingsview_moc.ui" line="414"/>
<source>General</source> <source>General</source>
<translation>Ogólne</translation> <translation>Ogólne</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="144"/> <location filename="../settingsView/csettingsview_moc.ui" line="344"/>
<source>VCMI Language</source> <source>VCMI Language</source>
<translation>Język VCMI</translation> <translation>Język VCMI</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="422"/> <location filename="../settingsView/csettingsview_moc.ui" line="421"/>
<source>Friendly AI</source>
<translation>AI sojuszników</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="165"/>
<source>Resolution</source> <source>Resolution</source>
<translation>Rozdzielczość</translation> <translation>Rozdzielczość</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="179"/> <location filename="../settingsView/csettingsview_moc.ui" line="550"/>
<source>Autosave</source> <source>Autosave</source>
<translation>Autozapis</translation> <translation>Autozapis</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="375"/> <location filename="../settingsView/csettingsview_moc.ui" line="282"/>
<source>Display index</source> <source>Display index</source>
<translation>Numer wyświetlacza</translation> <translation>Numer wyświetlacza</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="151"/> <location filename="../settingsView/csettingsview_moc.ui" line="166"/>
<source>Network port</source> <source>Network port</source>
<translation>Port sieciowy</translation> <translation>Port sieciowy</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="317"/>
<source>Data Directories</source> <source>Data Directories</source>
<translation>Katalogi z danymi</translation> <translation type="vanished">Katalogi z danymi</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="74"/> <location filename="../settingsView/csettingsview_moc.ui" line="74"/>
<location filename="../settingsView/csettingsview_moc.ui" line="192"/> <location filename="../settingsView/csettingsview_moc.ui" line="125"/>
<source>Video</source> <source>Video</source>
<translation>Obraz</translation> <translation>Obraz</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="466"/>
<source>Extra data directory</source>
<translation>Katalog danych dodatkowych</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="583"/>
<source>Log files directory</source> <source>Log files directory</source>
<translation>Katalog logów</translation> <translation type="vanished">Katalog logów</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="361"/> <location filename="../settingsView/csettingsview_moc.ui" line="364"/>
<source>Show intro</source> <source>Show intro</source>
<translation>Pokaż intro</translation> <translation>Pokaż intro</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="341"/>
<source>Build version</source> <source>Build version</source>
<translation>Wersja programu</translation> <translation type="vanished">Wersja programu</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="534"/> <location filename="../settingsView/csettingsview_moc.cpp" line="401"/>
<source>Enemy AI</source>
<translation>AI wrogich graczy</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.cpp" line="385"/>
<source>Active</source> <source>Active</source>
<translation>Aktywny</translation> <translation>Aktywny</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="390"/> <location filename="../settingsView/csettingsview_moc.cpp" line="406"/>
<source>Disabled</source> <source>Disabled</source>
<translation>Wyłączone</translation> <translation>Wyłączone</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="391"/> <location filename="../settingsView/csettingsview_moc.cpp" line="407"/>
<source>Enable</source> <source>Enable</source>
<translation>Włącz</translation> <translation>Włącz</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="396"/> <location filename="../settingsView/csettingsview_moc.cpp" line="412"/>
<source>Not Installed</source> <source>Not Installed</source>
<translation>Nie zainstalowano</translation> <translation>Nie zainstalowano</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="397"/> <location filename="../settingsView/csettingsview_moc.cpp" line="413"/>
<source>Install</source> <source>Install</source>
<translation>Zainstaluj</translation> <translation>Zainstaluj</translation>
</message> </message>
@@ -542,17 +652,17 @@
<translation>Zestaw modów</translation> <translation>Zestaw modów</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="146"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="127"/>
<source>Select your language</source> <source>Select your language</source>
<translation type="unfinished">Wybierz język</translation> <translation type="unfinished">Wybierz język</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="196"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="177"/>
<source>Have a question? Found a bug? Want to help? Join us!</source> <source>Have a question? Found a bug? Want to help? Join us!</source>
<translation type="unfinished">Masz pytanie? Znalazłeś błąd? Chcesz pomóc? Dołącz do nas!</translation> <translation type="unfinished">Masz pytanie? Znalazłeś błąd? Chcesz pomóc? Dołącz do nas!</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="205"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="186"/>
<source>Thank you for installing VCMI! <source>Thank you for installing VCMI!
Before you can start playing, there are a few more steps that need to be completed. Before you can start playing, there are a few more steps that need to be completed.
@@ -569,149 +679,144 @@ Miej na uwadze, że aby używać VCMI potrzebne są pliki oryginalnej gry zawier
Heroes III: HD Edition nie jest obecnie wspierane!</translation> Heroes III: HD Edition nie jest obecnie wspierane!</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="276"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="257"/>
<source>Locate Heroes III data files</source> <source>Locate Heroes III data files</source>
<translation type="unfinished">Znajdź pliki Heroes III</translation> <translation type="unfinished">Znajdź pliki Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="365"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="346"/>
<source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source> <source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source>
<translation type="unfinished">Jeśli nie masz zainstalowanej kopii Heroes III istnieje możliwość użycia naszego automatycznego narzędzia instalacyjnego &apos;vcmibuilder&apos; by wyodrębnić dane z instalatora GoG.com. Odwiedź nasze wiki po szczegółowe instrukcje.</translation> <translation type="unfinished">Jeśli nie masz zainstalowanej kopii Heroes III istnieje możliwość użycia naszego automatycznego narzędzia instalacyjnego &apos;vcmibuilder&apos; by wyodrębnić dane z instalatora GoG.com. Odwiedź nasze wiki po szczegółowe instrukcje.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="381"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="362"/>
<source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source> <source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source>
<translation type="unfinished">VCMI wymaga plików Heroes III w jednej z wymienionych wyżej lokalizacji. Proszę, skopiuj pliki Heroes III do jednego z tych katalogów.</translation> <translation type="unfinished">VCMI wymaga plików Heroes III w jednej z wymienionych wyżej lokalizacji. Proszę, skopiuj pliki Heroes III do jednego z tych katalogów.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="416"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="397"/>
<source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source> <source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source>
<translation type="unfinished">Możesz też wybrać folder z zainstalowanym Heroes III i VCMI automatycznie skopiuje istniejące dane.</translation> <translation type="unfinished">Możesz też wybrać folder z zainstalowanym Heroes III i VCMI automatycznie skopiuje istniejące dane.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="445"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="426"/>
<source>Your Heroes III data files have been successfully found.</source> <source>Your Heroes III data files have been successfully found.</source>
<translation>Twoje pliki Heroes III zostały pomyślnie znalezione.</translation> <translation>Twoje pliki Heroes III zostały pomyślnie znalezione.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="466"/>
<source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source> <source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source>
<translation type="unfinished">Automatyczna detekcja języka nie powiodła się. Proszę wybrać język twojego Heroes III</translation> <translation type="unfinished">Automatyczna detekcja języka nie powiodła się. Proszę wybrać język twojego Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="759"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="740"/>
<source>Install a translation of Heroes III in your preferred language</source> <source>Install a translation of Heroes III in your preferred language</source>
<translation type="unfinished">Zainstaluj tłumaczenie Heroes III dla twojego języka</translation> <translation type="unfinished">Zainstaluj tłumaczenie Heroes III dla twojego języka</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="775"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="756"/>
<source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source> <source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source>
<translation type="unfinished">Opcjonalnie możesz zainstalować dodatkowe modyfikacje teraz lub później</translation> <translation type="unfinished">Opcjonalnie możesz zainstalować dodatkowe modyfikacje teraz lub później</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="791"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="772"/>
<source>Install support for playing Heroes III in resolutions higher than 800x600</source> <source>Install support for playing Heroes III in resolutions higher than 800x600</source>
<translation type="unfinished">Zapinstaluj wsparcie dla grania w Heroes III w rozdzielczości innej niż 800x600</translation> <translation type="unfinished">Zapinstaluj wsparcie dla grania w Heroes III w rozdzielczości innej niż 800x600</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="807"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="788"/>
<source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source> <source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source>
<translation type="unfinished">Zainstaluj kompatybilną wersję fanowskiego dodatku Horn of the Abyss odtworzoną przez zespół VCMI</translation> <translation type="unfinished">Zainstaluj kompatybilną wersję fanowskiego dodatku Horn of the Abyss odtworzoną przez zespół VCMI</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="823"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="804"/>
<source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source> <source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source>
<translation type="unfinished">Zainstaluj kompatybilną wersję fanowskiego dodatku &quot;In The Wake Of Gods&quot;</translation> <translation type="unfinished">Zainstaluj kompatybilną wersję fanowskiego dodatku &quot;In The Wake Of Gods&quot;</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="870"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="851"/>
<source>Finish</source> <source>Finish</source>
<translation>Zakończ</translation> <translation>Zakończ</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="111"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="156"/>
<source>Step %v out of %m</source>
<translation>Krok %v z %m</translation>
</message>
<message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="175"/>
<source>VCMI on Github</source> <source>VCMI on Github</source>
<translation>VCMI na Github</translation> <translation>VCMI na Github</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="182"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="163"/>
<source>VCMI on Slack</source> <source>VCMI on Slack</source>
<translation>VCMI na Slacku</translation> <translation>VCMI na Slacku</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="189"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="170"/>
<source>VCMI on Discord</source> <source>VCMI on Discord</source>
<translation>VCMI na Discordzie</translation> <translation>VCMI na Discordzie</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="239"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="220"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="554"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="535"/>
<source>Next</source> <source>Next</source>
<translation>Dalej</translation> <translation>Dalej</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="307"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="288"/>
<source>Open help in browser</source> <source>Open help in browser</source>
<translation>Otwórz pomoc w przeglądarce</translation> <translation>Otwórz pomoc w przeglądarce</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="320"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="301"/>
<source>Search again</source> <source>Search again</source>
<translation>Szukaj ponownie</translation> <translation>Szukaj ponownie</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="403"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="384"/>
<source>Heroes III data files</source> <source>Heroes III data files</source>
<translation>Pliki Heroes III</translation> <translation>Pliki Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="432"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="413"/>
<source>Copy existing data</source> <source>Copy existing data</source>
<translation>Skopiuj istniejące dane</translation> <translation>Skopiuj istniejące dane</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="475"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="456"/>
<source>Your Heroes III language has been successfully detected.</source> <source>Your Heroes III language has been successfully detected.</source>
<translation>Twój język Heroes III został pomyślnie wykryty.</translation> <translation>Twój język Heroes III został pomyślnie wykryty.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="504"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/>
<source>Heroes III language</source> <source>Heroes III language</source>
<translation>Język Heroes III</translation> <translation>Język Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="547"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="528"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="863"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="844"/>
<source>Back</source> <source>Back</source>
<translation>Wstecz</translation> <translation>Wstecz</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="585"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="566"/>
<source>Install VCMI Mod Preset</source> <source>Install VCMI Mod Preset</source>
<translation>Zainstaluj zestaw modyfikacji</translation> <translation>Zainstaluj zestaw modyfikacji</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="635"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="616"/>
<source>Horn of the Abyss</source> <source>Horn of the Abyss</source>
<translation>Horn of the Abyss</translation> <translation>Horn of the Abyss</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="657"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="638"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation>Tłumaczenie Heroes III</translation> <translation>Tłumaczenie Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="721"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="702"/>
<source>High Definition Support</source> <source>High Definition Support</source>
<translation>Wsparcie High Definition</translation> <translation>Wsparcie High Definition</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="743"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="724"/>
<source>In The Wake of Gods</source> <source>In The Wake of Gods</source>
<translation>In The Wake of Gods</translation> <translation>In The Wake of Gods</translation>
</message> </message>
@@ -728,66 +833,101 @@ Heroes III: HD Edition nie jest obecnie wspierane!</translation>
<name>Language</name> <name>Language</name>
<message> <message>
<location filename="../languages.cpp" line="23"/> <location filename="../languages.cpp" line="23"/>
<source>Chinese</source> <source>Czech</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="24"/> <location filename="../languages.cpp" line="24"/>
<source>Chinese</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="25"/>
<source>English</source> <source>English</source>
<translation type="unfinished">English (Angielski)</translation> <translation type="unfinished">English (Angielski)</translation>
</message> </message>
<message>
<location filename="../languages.cpp" line="25"/>
<source>French</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<location filename="../languages.cpp" line="26"/> <location filename="../languages.cpp" line="26"/>
<source>German</source> <source>Finnish</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="27"/> <location filename="../languages.cpp" line="27"/>
<source>Korean</source> <source>French</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="28"/> <location filename="../languages.cpp" line="28"/>
<source>Polish</source> <source>German</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="29"/> <location filename="../languages.cpp" line="29"/>
<source>Russian</source> <source>Hungarian</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="30"/> <location filename="../languages.cpp" line="30"/>
<source>Spanish</source> <source>Italian</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="31"/> <location filename="../languages.cpp" line="31"/>
<source>Ukrainian</source> <source>Korean</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="32"/> <location filename="../languages.cpp" line="32"/>
<source>Other (East European)</source> <source>Polish</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="33"/> <location filename="../languages.cpp" line="33"/>
<source>Other (Cyrillic Script)</source> <source>Portuguese</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="34"/> <location filename="../languages.cpp" line="34"/>
<source>Russian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="35"/>
<source>Spanish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="36"/>
<source>Swedish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="37"/>
<source>Turkish</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="38"/>
<source>Ukrainian</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="39"/>
<source>Other (East European)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="40"/>
<source>Other (Cyrillic Script)</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../languages.cpp" line="41"/>
<source>Other (West European)</source> <source>Other (West European)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="56"/> <location filename="../languages.cpp" line="63"/>
<source>Auto (%1)</source> <source>Auto (%1)</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
@@ -927,12 +1067,17 @@ Heroes III: HD Edition nie jest obecnie wspierane!</translation>
<translation>Ustawienia</translation> <translation>Ustawienia</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="226"/> <location filename="../mainwindow_moc.ui" line="207"/>
<source>Help</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../mainwindow_moc.ui" line="276"/>
<source>Map Editor</source> <source>Map Editor</source>
<translation>Edytor map</translation> <translation>Edytor map</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="279"/> <location filename="../mainwindow_moc.ui" line="329"/>
<source>Start game</source> <source>Start game</source>
<translation>Uruchom grę</translation> <translation>Uruchom grę</translation>
</message> </message>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -1,6 +1,91 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="uk_UA"> <TS version="2.1" language="uk_UA">
<context>
<name>AboutProjectView</name>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="22"/>
<source>VCMI on Discord</source>
<translation>VCMI на Discord</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="29"/>
<source>Have a question? Found a bug? Want to help? Join us!</source>
<translation>Маєте питання? Виявили помилку? Хочете допомогти? Приєднуйтесь до нас!</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="36"/>
<source>VCMI on Github</source>
<translation>VCMI на Github</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="55"/>
<source>Our Community</source>
<translation>Наша спільнота</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="62"/>
<source>VCMI on Slack</source>
<translation>VCMI на Slack</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="98"/>
<source>Build Information</source>
<translation>Відомості про збірку</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="115"/>
<source>User data directory</source>
<translation>Тека даних користувача</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="122"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="129"/>
<location filename="../aboutProject/aboutproject_moc.ui" line="193"/>
<source>Open</source>
<translation>Відкрити</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="136"/>
<source>Check for updates</source>
<translation>Перевірити на оновлення</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="156"/>
<source>Game version</source>
<translation>Версія гри</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="163"/>
<source>Log files directory</source>
<translation>Тека файлів журналу</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="176"/>
<source>Data Directories</source>
<translation>Теки даних гри</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="213"/>
<source>Game data directory</source>
<translation>Тека даних гри</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="220"/>
<source>Operating System</source>
<translation>Операційна система</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="273"/>
<source>Project homepage</source>
<translation>Сторінка проекту</translation>
</message>
<message>
<location filename="../aboutProject/aboutproject_moc.ui" line="286"/>
<source>Report a bug</source>
<translation>Повідомити про проблему</translation>
</message>
</context>
<context> <context>
<name>CModListModel</name> <name>CModListModel</name>
<message> <message>
@@ -116,204 +201,204 @@
<context> <context>
<name>CModListView</name> <name>CModListView</name>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="58"/> <location filename="../modManager/cmodlistview_moc.ui" line="43"/>
<source>Filter</source> <source>Filter</source>
<translation>Фільтр</translation> <translation>Фільтр</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="81"/> <location filename="../modManager/cmodlistview_moc.ui" line="66"/>
<source>All mods</source> <source>All mods</source>
<translation>Усі модифікації</translation> <translation>Усі модифікації</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="86"/> <location filename="../modManager/cmodlistview_moc.ui" line="71"/>
<source>Downloadable</source> <source>Downloadable</source>
<translation>Усі доступні</translation> <translation>Усі доступні</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="91"/> <location filename="../modManager/cmodlistview_moc.ui" line="76"/>
<source>Installed</source> <source>Installed</source>
<translation>Встановлені</translation> <translation>Встановлені</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="96"/> <location filename="../modManager/cmodlistview_moc.ui" line="81"/>
<source>Updatable</source> <source>Updatable</source>
<translation>Доступні оновлення</translation> <translation>Доступні оновлення</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="101"/> <location filename="../modManager/cmodlistview_moc.ui" line="86"/>
<source>Active</source> <source>Active</source>
<translation>Активні</translation> <translation>Активні</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="106"/> <location filename="../modManager/cmodlistview_moc.ui" line="91"/>
<source>Inactive</source> <source>Inactive</source>
<translation>Неактивні</translation> <translation>Неактивні</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="120"/> <location filename="../modManager/cmodlistview_moc.ui" line="105"/>
<source>Download &amp;&amp; refresh repositories</source> <source>Download &amp;&amp; refresh repositories</source>
<translation>Оновити репозиторії</translation> <translation>Оновити репозиторії</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="163"/> <location filename="../modManager/cmodlistview_moc.ui" line="160"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="315"/> <location filename="../modManager/cmodlistview_moc.cpp" line="307"/>
<source>Description</source> <source>Description</source>
<translation>Опис</translation> <translation>Опис</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="208"/> <location filename="../modManager/cmodlistview_moc.ui" line="206"/>
<source>Changelog</source> <source>Changelog</source>
<translation>Зміни</translation> <translation>Зміни</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="230"/> <location filename="../modManager/cmodlistview_moc.ui" line="228"/>
<source>Screenshots</source> <source>Screenshots</source>
<translation>Знімки</translation> <translation>Знімки</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="389"/> <location filename="../modManager/cmodlistview_moc.ui" line="386"/>
<source>Uninstall</source> <source>Uninstall</source>
<translation>Видалити</translation> <translation>Видалити</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="424"/> <location filename="../modManager/cmodlistview_moc.ui" line="421"/>
<source>Enable</source> <source>Enable</source>
<translation>Активувати</translation> <translation>Активувати</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="459"/> <location filename="../modManager/cmodlistview_moc.ui" line="456"/>
<source>Disable</source> <source>Disable</source>
<translation>Деактивувати</translation> <translation>Деактивувати</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="494"/> <location filename="../modManager/cmodlistview_moc.ui" line="491"/>
<source>Update</source> <source>Update</source>
<translation>Оновити</translation> <translation>Оновити</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="529"/> <location filename="../modManager/cmodlistview_moc.ui" line="526"/>
<source>Install</source> <source>Install</source>
<translation>Встановити</translation> <translation>Встановити</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="327"/> <location filename="../modManager/cmodlistview_moc.ui" line="324"/>
<source> %p% (%v KB out of %m KB)</source> <source> %p% (%v KB out of %m KB)</source>
<translation> %p% (%v КБ з %m КБ)</translation> <translation> %p% (%v КБ з %m КБ)</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.ui" line="340"/> <location filename="../modManager/cmodlistview_moc.ui" line="337"/>
<source>Abort</source> <source>Abort</source>
<translation>Відмінити</translation> <translation>Відмінити</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="250"/> <location filename="../modManager/cmodlistview_moc.cpp" line="242"/>
<source>Mod name</source> <source>Mod name</source>
<translation>Назва модифікації</translation> <translation>Назва модифікації</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="251"/> <location filename="../modManager/cmodlistview_moc.cpp" line="243"/>
<source>Installed version</source> <source>Installed version</source>
<translation>Встановлена версія</translation> <translation>Встановлена версія</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="252"/> <location filename="../modManager/cmodlistview_moc.cpp" line="244"/>
<source>Latest version</source> <source>Latest version</source>
<translation>Найновіша версія</translation> <translation>Найновіша версія</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="255"/> <location filename="../modManager/cmodlistview_moc.cpp" line="247"/>
<source>Download size</source> <source>Download size</source>
<translation>Розмір для завантаження</translation> <translation>Розмір для завантаження</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="256"/> <location filename="../modManager/cmodlistview_moc.cpp" line="248"/>
<source>Authors</source> <source>Authors</source>
<translation>Автори</translation> <translation>Автори</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="259"/> <location filename="../modManager/cmodlistview_moc.cpp" line="251"/>
<source>License</source> <source>License</source>
<translation>Ліцензія</translation> <translation>Ліцензія</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="262"/> <location filename="../modManager/cmodlistview_moc.cpp" line="254"/>
<source>Contact</source> <source>Contact</source>
<translation>Контакти</translation> <translation>Контакти</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="271"/> <location filename="../modManager/cmodlistview_moc.cpp" line="263"/>
<source>Compatibility</source> <source>Compatibility</source>
<translation>Сумісність</translation> <translation>Сумісність</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="265"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="273"/> <location filename="../modManager/cmodlistview_moc.cpp" line="273"/>
<location filename="../modManager/cmodlistview_moc.cpp" line="281"/>
<source>Required VCMI version</source> <source>Required VCMI version</source>
<translation>Необхідна версія VCMI</translation> <translation>Необхідна версія VCMI</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="279"/> <location filename="../modManager/cmodlistview_moc.cpp" line="271"/>
<source>Supported VCMI version</source> <source>Supported VCMI version</source>
<translation>Підтримувана версія VCMI</translation> <translation>Підтримувана версія VCMI</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="284"/> <location filename="../modManager/cmodlistview_moc.cpp" line="276"/>
<source>Supported VCMI versions</source> <source>Supported VCMI versions</source>
<translation>Підтримувані версії VCMI</translation> <translation>Підтримувані версії VCMI</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="311"/> <location filename="../modManager/cmodlistview_moc.cpp" line="303"/>
<source>Languages</source> <source>Languages</source>
<translation>Мови</translation> <translation>Мови</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="313"/> <location filename="../modManager/cmodlistview_moc.cpp" line="305"/>
<source>Required mods</source> <source>Required mods</source>
<translation>Необхідні модифікації</translation> <translation>Необхідні модифікації</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="314"/> <location filename="../modManager/cmodlistview_moc.cpp" line="306"/>
<source>Conflicting mods</source> <source>Conflicting mods</source>
<translation>Конфліктуючі модифікації</translation> <translation>Конфліктуючі модифікації</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="319"/> <location filename="../modManager/cmodlistview_moc.cpp" line="311"/>
<source>This mod can not be installed or enabled because the following dependencies are not present</source> <source>This mod can not be installed or enabled because the following dependencies are not present</source>
<translation>Цю модифікацію не можна встановити чи активувати, оскільки відсутні наступні залежності</translation> <translation>Цю модифікацію не можна встановити чи активувати, оскільки відсутні наступні залежності</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="320"/> <location filename="../modManager/cmodlistview_moc.cpp" line="312"/>
<source>This mod can not be enabled because the following mods are incompatible with it</source> <source>This mod can not be enabled because the following mods are incompatible with it</source>
<translation>Цю модифікацію не можна ввімкнути, оскільки наступні модифікації несумісні з цією модифікацією</translation> <translation>Цю модифікацію не можна ввімкнути, оскільки наступні модифікації несумісні з цією модифікацією</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="321"/> <location filename="../modManager/cmodlistview_moc.cpp" line="313"/>
<source>This mod cannot be disabled because it is required by the following mods</source> <source>This mod cannot be disabled because it is required by the following mods</source>
<translation>Цю модифікацію не можна відключити, оскільки вона необхідна для запуску наступних модифікацій</translation> <translation>Цю модифікацію не можна відключити, оскільки вона необхідна для запуску наступних модифікацій</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="322"/> <location filename="../modManager/cmodlistview_moc.cpp" line="314"/>
<source>This mod cannot be uninstalled or updated because it is required by the following mods</source> <source>This mod cannot be uninstalled or updated because it is required by the following mods</source>
<translation>Цю модифікацію не можна видалити або оновити, оскільки вона необхідна для запуску наступних модифікацій</translation> <translation>Цю модифікацію не можна видалити або оновити, оскільки вона необхідна для запуску наступних модифікацій</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="323"/> <location filename="../modManager/cmodlistview_moc.cpp" line="315"/>
<source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source> <source>This is a submod and it cannot be installed or uninstalled separately from its parent mod</source>
<translation>Це вкладена модифікація, і її не можна встановити або видалити окремо від батьківської модифікації</translation> <translation>Це вкладена модифікація, і її не можна встановити або видалити окремо від батьківської модифікації</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="338"/> <location filename="../modManager/cmodlistview_moc.cpp" line="330"/>
<source>Notes</source> <source>Notes</source>
<translation>Примітки</translation> <translation>Примітки</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="840"/> <location filename="../modManager/cmodlistview_moc.cpp" line="827"/>
<source>Screenshot %1</source> <source>Screenshot %1</source>
<translation>Знімок екрану %1</translation> <translation>Знімок екрану %1</translation>
</message> </message>
<message> <message>
<location filename="../modManager/cmodlistview_moc.cpp" line="245"/> <location filename="../modManager/cmodlistview_moc.cpp" line="237"/>
<source>Mod is incompatible</source> <source>Mod is incompatible</source>
<translation>Модифікація несумісна</translation> <translation>Модифікація несумісна</translation>
</message> </message>
@@ -321,205 +406,240 @@
<context> <context>
<name>CSettingsView</name> <name>CSettingsView</name>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="327"/>
<source>Change</source>
<translation>Змінити</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="222"/>
<location filename="../settingsView/csettingsview_moc.ui" line="287"/>
<location filename="../settingsView/csettingsview_moc.ui" line="473"/>
<source>Open</source> <source>Open</source>
<translation>Відкрити</translation> <translation type="vanished">Відкрити</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Adventure Map AI</source>
<translation>ШІ Гравця</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="334"/>
<source>User data directory</source> <source>User data directory</source>
<translation>Тека даних користувача</translation> <translation type="vanished">Тека даних користувача</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="256"/> <location filename="../settingsView/csettingsview_moc.ui" line="190"/>
<location filename="../settingsView/csettingsview_moc.ui" line="298"/> <location filename="../settingsView/csettingsview_moc.ui" line="245"/>
<location filename="../settingsView/csettingsview_moc.ui" line="440"/> <location filename="../settingsView/csettingsview_moc.ui" line="262"/>
<location filename="../settingsView/csettingsview_moc.ui" line="487"/>
<source>Off</source> <source>Off</source>
<translation>Вимкнено</translation> <translation>Вимкнено</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="79"/> <location filename="../settingsView/csettingsview_moc.ui" line="79"/>
<location filename="../settingsView/csettingsview_moc.ui" line="576"/> <location filename="../settingsView/csettingsview_moc.ui" line="563"/>
<source>Artificial Intelligence</source> <source>Artificial Intelligence</source>
<translation>Штучний інтелект</translation> <translation>Штучний інтелект</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="89"/> <location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="415"/> <location filename="../settingsView/csettingsview_moc.ui" line="179"/>
<source>Mod Repositories</source> <source>Mod Repositories</source>
<translation>Репозиторії модифікацій</translation> <translation>Репозиторії модифікацій</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="368"/> <location filename="../settingsView/csettingsview_moc.ui" line="448"/>
<source>Update now</source> <source>Interface Scaling</source>
<translation>Масштабування інтерфейсу</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="398"/>
<source>Neutral AI in battles</source>
<translation>Нейтральний ШІ в боях</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="203"/>
<source>Enemy AI in battles</source>
<translation>Ворожий ШІ в боях</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="509"/>
<source>Additional repository</source>
<translation>Додатковий репозиторій</translation>
</message>
<message>
<source>Game data directory</source>
<translation type="vanished">Тека даних гри</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="482"/>
<source>Adventure Map Allies</source>
<translation>Союзники на мапі пригод</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="441"/>
<source>Adventure Map Enemies</source>
<translation>Вороги на мапі пригод</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="316"/>
<source>Windowed</source>
<translation>У вікні</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="321"/>
<source>Borderless fullscreen</source>
<translation>Повноекранне вікно</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="326"/>
<source>Exclusive fullscreen</source>
<translation>Повноекранний (ексклюзивно)</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="530"/>
<source>Friendly AI in battles</source>
<translation>Дружній ШІ в боях</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="590"/>
<source>Framerate Limit</source>
<translation>Обмеження частоти кадрів</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="523"/>
<source>Refresh now</source>
<translation>Оновити зараз</translation> <translation>Оновити зараз</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="261"/> <location filename="../settingsView/csettingsview_moc.ui" line="234"/>
<location filename="../settingsView/csettingsview_moc.ui" line="303"/> <source>Default repository</source>
<location filename="../settingsView/csettingsview_moc.ui" line="445"/> <translation>Стандартний репозиторій</translation>
<location filename="../settingsView/csettingsview_moc.ui" line="492"/> </message>
<message>
<source>Update now</source>
<translation type="vanished">Оновити зараз</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="195"/>
<location filename="../settingsView/csettingsview_moc.ui" line="250"/>
<location filename="../settingsView/csettingsview_moc.ui" line="267"/>
<source>On</source> <source>On</source>
<translation>Увімкнено</translation> <translation>Увімкнено</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="215"/> <location filename="../settingsView/csettingsview_moc.ui" line="455"/>
<source>Cursor</source> <source>Cursor</source>
<translation>Курсор</translation> <translation>Курсор</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="500"/> <location filename="../settingsView/csettingsview_moc.ui" line="475"/>
<source>Heroes III Data Language</source> <source>Heroes III Data Language</source>
<translation>Мова Heroes III</translation> <translation>Мова Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="552"/> <location filename="../settingsView/csettingsview_moc.ui" line="303"/>
<source>Default</source> <source>Select display mode for game
<translation>За замовчуванням</translation>
Windowed - game will run inside a window that covers part of your screen
Borderless Windowed Mode - game will run in a window that covers entirely of your screen, using same resolution as your screen.
Fullscreen Exclusive Mode - game will cover entirety of your screen and will use selected resolution.</source>
<translation>Виберіть режим відображення гри
Віконний - гра запускатиметься у вікні, що займає частину екрана
Безмежний віконний режим - гра запускається у вікні, яке займає весь екран, з тією ж роздільною здатністю, що і ваш екран.
Повноекранний ексклюзивний режим - гра займатиме весь екран і використовуватиме вибрану роздільну здатність.</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="557"/> <location filename="../settingsView/csettingsview_moc.ui" line="290"/>
<source>Hardware</source> <source>Hardware</source>
<translation>Апаратний</translation> <translation>Апаратний</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="562"/> <location filename="../settingsView/csettingsview_moc.ui" line="295"/>
<source>Software</source> <source>Software</source>
<translation>Програмний</translation> <translation>Програмний</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="597"/> <location filename="../settingsView/csettingsview_moc.ui" line="227"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation>Переклад Heroes III</translation> <translation>Переклад Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="429"/> <location filename="../settingsView/csettingsview_moc.ui" line="516"/>
<source>Check on startup</source> <source>Check on startup</source>
<translation>Перевіряти на старті</translation> <translation>Перевіряти на старті</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="158"/> <location filename="../settingsView/csettingsview_moc.ui" line="537"/>
<source>Fullscreen</source> <source>Fullscreen</source>
<translation>Повноекранний режим</translation> <translation>Повноекранний режим</translation>
</message> </message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="172"/>
<source>Neutral AI</source>
<translation>Нейтральний ШІ</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="266"/>
<source>Real</source>
<translation>Повний</translation>
</message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="69"/> <location filename="../settingsView/csettingsview_moc.ui" line="69"/>
<location filename="../settingsView/csettingsview_moc.ui" line="354"/> <location filename="../settingsView/csettingsview_moc.ui" line="414"/>
<source>General</source> <source>General</source>
<translation>Загальні налаштування</translation> <translation>Загальні налаштування</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="144"/> <location filename="../settingsView/csettingsview_moc.ui" line="344"/>
<source>VCMI Language</source> <source>VCMI Language</source>
<translation>Мова VCMI</translation> <translation>Мова VCMI</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="422"/> <location filename="../settingsView/csettingsview_moc.ui" line="421"/>
<source>Friendly AI</source>
<translation>Дружній ШІ</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="165"/>
<source>Resolution</source> <source>Resolution</source>
<translation>Роздільна здатність</translation> <translation>Роздільна здатність</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="179"/> <location filename="../settingsView/csettingsview_moc.ui" line="550"/>
<source>Autosave</source> <source>Autosave</source>
<translation>Автозбереження</translation> <translation>Автозбереження</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="375"/> <location filename="../settingsView/csettingsview_moc.ui" line="282"/>
<source>Display index</source> <source>Display index</source>
<translation>Дісплей</translation> <translation>Дісплей</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="151"/> <location filename="../settingsView/csettingsview_moc.ui" line="166"/>
<source>Network port</source> <source>Network port</source>
<translation>Мережевий порт</translation> <translation>Мережевий порт</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="84"/>
<location filename="../settingsView/csettingsview_moc.ui" line="317"/>
<source>Data Directories</source> <source>Data Directories</source>
<translation>Теки даних гри</translation> <translation type="vanished">Теки даних гри</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="74"/> <location filename="../settingsView/csettingsview_moc.ui" line="74"/>
<location filename="../settingsView/csettingsview_moc.ui" line="192"/> <location filename="../settingsView/csettingsview_moc.ui" line="125"/>
<source>Video</source> <source>Video</source>
<translation>Графіка</translation> <translation>Графіка</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="466"/>
<source>Extra data directory</source>
<translation>Додаткова тека даних</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.ui" line="583"/>
<source>Log files directory</source> <source>Log files directory</source>
<translation>Тека файлів журналу</translation> <translation type="vanished">Тека файлів журналу</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="361"/> <location filename="../settingsView/csettingsview_moc.ui" line="364"/>
<source>Show intro</source> <source>Show intro</source>
<translation>Вступні відео</translation> <translation>Вступні відео</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="341"/>
<source>Build version</source> <source>Build version</source>
<translation>Версія збірки</translation> <translation type="vanished">Версія збірки</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.ui" line="534"/> <location filename="../settingsView/csettingsview_moc.cpp" line="401"/>
<source>Enemy AI</source>
<translation>Ворожий ШІ</translation>
</message>
<message>
<location filename="../settingsView/csettingsview_moc.cpp" line="385"/>
<source>Active</source> <source>Active</source>
<translation>Активні</translation> <translation>Активні</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="390"/> <location filename="../settingsView/csettingsview_moc.cpp" line="406"/>
<source>Disabled</source> <source>Disabled</source>
<translation>Деактивований</translation> <translation>Деактивований</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="391"/> <location filename="../settingsView/csettingsview_moc.cpp" line="407"/>
<source>Enable</source> <source>Enable</source>
<translation>Активувати</translation> <translation>Активувати</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="396"/> <location filename="../settingsView/csettingsview_moc.cpp" line="412"/>
<source>Not Installed</source> <source>Not Installed</source>
<translation>Не встановлено</translation> <translation>Не встановлено</translation>
</message> </message>
<message> <message>
<location filename="../settingsView/csettingsview_moc.cpp" line="397"/> <location filename="../settingsView/csettingsview_moc.cpp" line="413"/>
<source>Install</source> <source>Install</source>
<translation>Встановити</translation> <translation>Встановити</translation>
</message> </message>
@@ -542,17 +662,17 @@
<translation>Початкові модифікації</translation> <translation>Початкові модифікації</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="146"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="127"/>
<source>Select your language</source> <source>Select your language</source>
<translation>Оберіть свою мову</translation> <translation>Оберіть свою мову</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="196"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="177"/>
<source>Have a question? Found a bug? Want to help? Join us!</source> <source>Have a question? Found a bug? Want to help? Join us!</source>
<translation>Маєте питання? Виявили помилку? Хочете допомогти? Приєднуйтесь до нас!</translation> <translation>Маєте питання? Виявили помилку? Хочете допомогти? Приєднуйтесь до нас!</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="205"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="186"/>
<source>Thank you for installing VCMI! <source>Thank you for installing VCMI!
Before you can start playing, there are a few more steps that need to be completed. Before you can start playing, there are a few more steps that need to be completed.
@@ -569,149 +689,144 @@ Heroes® of Might and Magic® III HD is currently not supported!</source>
Heroes® of Might and Magic® III HD наразі не підтримується!</translation> Heroes® of Might and Magic® III HD наразі не підтримується!</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="276"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="257"/>
<source>Locate Heroes III data files</source> <source>Locate Heroes III data files</source>
<translation>Пошук файлів даних Heroes III</translation> <translation>Пошук файлів даних Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="365"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="346"/>
<source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source> <source>If you don&apos;t have a copy of Heroes III installed, you can use our automatic installation tool &apos;vcmibuilder&apos;, which only requires the GoG.com Heroes III installer. Please visit our wiki for detailed instructions.</source>
<translation>Якщо у вас не встановлена копія Heroes III, ви можете скористатися нашим засобом встановлення &quot;vcmibuilder&quot;, яка вимагає лише інсталятора GoG.com. Докладні інструкції можна знайти у нашій вікі.</translation> <translation>Якщо у вас не встановлена копія Heroes III, ви можете скористатися нашим засобом встановлення &quot;vcmibuilder&quot;, яка вимагає лише інсталятора GoG.com. Докладні інструкції можна знайти у нашій вікі.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="381"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="362"/>
<source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source> <source>To run VCMI, Heroes III data files need to be present in one of the specified locations. Please copy the Heroes III data to one of these directories.</source>
<translation>VCMI потребує файлів даних Heroes III в одному з перелічених вище розташувань. Будь ласка, скопіюйте дані Heroes III в одну з цих директорій.</translation> <translation>VCMI потребує файлів даних Heroes III в одному з перелічених вище розташувань. Будь ласка, скопіюйте дані Heroes III в одну з цих директорій.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="416"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="397"/>
<source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source> <source>Alternatively, you can provide the directory where Heroes III data is installed and VCMI will copy the existing data automatically.</source>
<translation>Або ж ви можете вибрати директорію зі встановленими даними Heroes III, і VCMI автоматично скопіює ці дані.</translation> <translation>Або ж ви можете вибрати директорію зі встановленими даними Heroes III, і VCMI автоматично скопіює ці дані.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="445"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="426"/>
<source>Your Heroes III data files have been successfully found.</source> <source>Your Heroes III data files have been successfully found.</source>
<translation>Файли даних вашої гри Heroes III успішно знайдено.</translation> <translation>Файли даних вашої гри Heroes III успішно знайдено.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="466"/>
<source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source> <source>The automatic detection of the Heroes III language has failed. Please select the language of your Heroes III manually</source>
<translation>Не вдалося визначити мову гри. Будь ласка, виберіть мову вашої копії Heroes III</translation> <translation>Не вдалося визначити мову гри. Будь ласка, виберіть мову вашої копії Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="759"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="740"/>
<source>Install a translation of Heroes III in your preferred language</source> <source>Install a translation of Heroes III in your preferred language</source>
<translation>Встановити переклад Heroes III на вашу мову</translation> <translation>Встановити переклад Heroes III на вашу мову</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="775"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="756"/>
<source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source> <source>Optionally, you can install additional mods either now, or at any point later, using the VCMI Launcher</source>
<translation>За бажанням ви можете встановити додаткові модифікації зараз або пізніше, використовуючи VCMI Launcher</translation> <translation>За бажанням ви можете встановити додаткові модифікації зараз або пізніше, використовуючи VCMI Launcher</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="791"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="772"/>
<source>Install support for playing Heroes III in resolutions higher than 800x600</source> <source>Install support for playing Heroes III in resolutions higher than 800x600</source>
<translation>Встановити підтримку для гри в Heroes III у роздільних здатностях, більших за 800x600</translation> <translation>Встановити підтримку для гри в Heroes III у роздільних здатностях, більших за 800x600</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="807"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="788"/>
<source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source> <source>Install compatible version of &quot;Horn of the Abyss&quot;, a fan-made Heroes III expansion ported by the VCMI team</source>
<translation>Встановити сумісну версію доповнення &quot;Horn of the Abyss&quot;, фанатське доповнення Heroes III, портоване командою VCMI</translation> <translation>Встановити сумісну версію доповнення &quot;Horn of the Abyss&quot;, фанатське доповнення Heroes III, портоване командою VCMI</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="823"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="804"/>
<source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source> <source>Install compatible version of &quot;In The Wake of Gods&quot;, a fan-made Heroes III expansion</source>
<translation>Встановити сумісну версію доповнення &quot;In The Wake of Gods&quot;, фанатське доповнення до Heroes III</translation> <translation>Встановити сумісну версію доповнення &quot;In The Wake of Gods&quot;, фанатське доповнення до Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="870"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="851"/>
<source>Finish</source> <source>Finish</source>
<translation>Завершити</translation> <translation>Завершити</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="111"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="156"/>
<source>Step %v out of %m</source>
<translation>Крок %v з %m</translation>
</message>
<message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="175"/>
<source>VCMI on Github</source> <source>VCMI on Github</source>
<translation>VCMI на Github</translation> <translation>VCMI на Github</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="182"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="163"/>
<source>VCMI on Slack</source> <source>VCMI on Slack</source>
<translation>VCMI на Slack</translation> <translation>VCMI на Slack</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="189"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="170"/>
<source>VCMI on Discord</source> <source>VCMI on Discord</source>
<translation>VCMI на Discord</translation> <translation>VCMI на Discord</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="239"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="220"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="554"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="535"/>
<source>Next</source> <source>Next</source>
<translation>Далі</translation> <translation>Далі</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="307"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="288"/>
<source>Open help in browser</source> <source>Open help in browser</source>
<translation>Відкрити довідку у браузері</translation> <translation>Відкрити довідку у браузері</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="320"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="301"/>
<source>Search again</source> <source>Search again</source>
<translation>Повторити пошук</translation> <translation>Повторити пошук</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="403"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="384"/>
<source>Heroes III data files</source> <source>Heroes III data files</source>
<translation>Файли даних Heroes III</translation> <translation>Файли даних Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="432"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="413"/>
<source>Copy existing data</source> <source>Copy existing data</source>
<translation>Копіювати наявні дані</translation> <translation>Копіювати наявні дані</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="475"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="456"/>
<source>Your Heroes III language has been successfully detected.</source> <source>Your Heroes III language has been successfully detected.</source>
<translation>Мову вашої гри Heroes III успішно визначено.</translation> <translation>Мову вашої гри Heroes III успішно визначено.</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="504"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="485"/>
<source>Heroes III language</source> <source>Heroes III language</source>
<translation>Мова Heroes III</translation> <translation>Мова Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="547"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="528"/>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="863"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="844"/>
<source>Back</source> <source>Back</source>
<translation>Назад</translation> <translation>Назад</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="585"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="566"/>
<source>Install VCMI Mod Preset</source> <source>Install VCMI Mod Preset</source>
<translation>Встановлення початкових модифікацій VCMI</translation> <translation>Встановлення початкових модифікацій VCMI</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="635"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="616"/>
<source>Horn of the Abyss</source> <source>Horn of the Abyss</source>
<translation>Horn of the Abyss</translation> <translation>Horn of the Abyss</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="657"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="638"/>
<source>Heroes III Translation</source> <source>Heroes III Translation</source>
<translation>Переклад Heroes III</translation> <translation>Переклад Heroes III</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="721"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="702"/>
<source>High Definition Support</source> <source>High Definition Support</source>
<translation>Підтримка високих роздільних здатностей</translation> <translation>Підтримка високих роздільних здатностей</translation>
</message> </message>
<message> <message>
<location filename="../firstLaunch/firstlaunch_moc.ui" line="743"/> <location filename="../firstLaunch/firstlaunch_moc.ui" line="724"/>
<source>In The Wake of Gods</source> <source>In The Wake of Gods</source>
<translation>In The Wake of Gods</translation> <translation>In The Wake of Gods</translation>
</message> </message>
@@ -728,66 +843,101 @@ Heroes® of Might and Magic® III HD наразі не підтримуєтьс
<name>Language</name> <name>Language</name>
<message> <message>
<location filename="../languages.cpp" line="23"/> <location filename="../languages.cpp" line="23"/>
<source>Czech</source>
<translation>Чеська</translation>
</message>
<message>
<location filename="../languages.cpp" line="24"/>
<source>Chinese</source> <source>Chinese</source>
<translation>Китайська</translation> <translation>Китайська</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="24"/> <location filename="../languages.cpp" line="25"/>
<source>English</source> <source>English</source>
<translation>Англійська</translation> <translation>Англійська</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="25"/> <location filename="../languages.cpp" line="26"/>
<source>Finnish</source>
<translation>Фінська</translation>
</message>
<message>
<location filename="../languages.cpp" line="27"/>
<source>French</source> <source>French</source>
<translation>Французька</translation> <translation>Французька</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="26"/> <location filename="../languages.cpp" line="28"/>
<source>German</source> <source>German</source>
<translation>Німецька</translation> <translation>Німецька</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="27"/> <location filename="../languages.cpp" line="29"/>
<source>Hungarian</source>
<translation>Угорська</translation>
</message>
<message>
<location filename="../languages.cpp" line="30"/>
<source>Italian</source>
<translation>Італійська</translation>
</message>
<message>
<location filename="../languages.cpp" line="31"/>
<source>Korean</source> <source>Korean</source>
<translation>Корейська</translation> <translation>Корейська</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="28"/> <location filename="../languages.cpp" line="32"/>
<source>Polish</source> <source>Polish</source>
<translation>Польська</translation> <translation>Польська</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="29"/> <location filename="../languages.cpp" line="33"/>
<source>Portuguese</source>
<translation>Португальська</translation>
</message>
<message>
<location filename="../languages.cpp" line="34"/>
<source>Russian</source> <source>Russian</source>
<translation>Російська</translation> <translation>Російська</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="30"/> <location filename="../languages.cpp" line="35"/>
<source>Spanish</source> <source>Spanish</source>
<translation>Іспанська</translation> <translation>Іспанська</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="31"/> <location filename="../languages.cpp" line="36"/>
<source>Swedish</source>
<translation>Шведська</translation>
</message>
<message>
<location filename="../languages.cpp" line="37"/>
<source>Turkish</source>
<translation>Турецька</translation>
</message>
<message>
<location filename="../languages.cpp" line="38"/>
<source>Ukrainian</source> <source>Ukrainian</source>
<translation>Українська</translation> <translation>Українська</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="32"/> <location filename="../languages.cpp" line="39"/>
<source>Other (East European)</source> <source>Other (East European)</source>
<translation>Інша (східноєвропейська)</translation> <translation>Інша (східноєвропейська)</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="33"/> <location filename="../languages.cpp" line="40"/>
<source>Other (Cyrillic Script)</source> <source>Other (Cyrillic Script)</source>
<translation>Інша (кирилиця)</translation> <translation>Інша (кирилиця)</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="34"/> <location filename="../languages.cpp" line="41"/>
<source>Other (West European)</source> <source>Other (West European)</source>
<translation>Інша (західноєвропейська)</translation> <translation>Інша (західноєвропейська)</translation>
</message> </message>
<message> <message>
<location filename="../languages.cpp" line="56"/> <location filename="../languages.cpp" line="63"/>
<source>Auto (%1)</source> <source>Auto (%1)</source>
<translation>Авто (%1)</translation> <translation>Авто (%1)</translation>
</message> </message>
@@ -937,12 +1087,17 @@ Heroes® of Might and Magic® III HD наразі не підтримуєтьс
<translation>Лобі</translation> <translation>Лобі</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="226"/> <location filename="../mainwindow_moc.ui" line="207"/>
<source>Help</source>
<translation>Допомога</translation>
</message>
<message>
<location filename="../mainwindow_moc.ui" line="276"/>
<source>Map Editor</source> <source>Map Editor</source>
<translation>Редактор мап</translation> <translation>Редактор мап</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow_moc.ui" line="279"/> <location filename="../mainwindow_moc.ui" line="329"/>
<source>Start game</source> <source>Start game</source>
<translation>Грати</translation> <translation>Грати</translation>
</message> </message>

View File

@@ -14,14 +14,21 @@ namespace Languages
enum class ELanguages enum class ELanguages
{ {
CZECH,
CHINESE, CHINESE,
ENGLISH, ENGLISH,
FINNISH,
FRENCH, FRENCH,
GERMAN, GERMAN,
KOREAN, // currently has no translations or detection HUNGARIAN,
ITALIAN,
KOREAN,
POLISH, POLISH,
PORTUGUESE,
RUSSIAN, RUSSIAN,
SPANISH, SPANISH,
SWEDISH,
TURKISH,
UKRAINIAN, UKRAINIAN,
// Pseudo-languages, that have no translations but can define H3 encoding to use // Pseudo-languages, that have no translations but can define H3 encoding to use
@@ -46,8 +53,8 @@ struct Options
/// encoding that is used by H3 for this language /// encoding that is used by H3 for this language
std::string encoding; std::string encoding;
/// VCMI is capable of detecting H3 install in this language /// primary IETF language tag
bool hasDetection = false; std::string tagIETF;
/// VCMI supports translations into this language /// VCMI supports translations into this language
bool hasTranslation = false; bool hasTranslation = false;
@@ -55,21 +62,28 @@ struct Options
inline const auto & getLanguageList() inline const auto & getLanguageList()
{ {
static const std::array<Options, 12> languages static const std::array<Options, 19> languages
{ { { {
{ "chinese", "Chinese", "简体中文", "GBK", true, true }, // Note: actually Simplified Chinese { "czech", "Czech", "Čeština", "CP1250", "cs", true },
{ "english", "English", "English", "CP1252", true, true }, { "chinese", "Chinese", "简体中文", "GBK", "zh", true }, // Note: actually Simplified Chinese
{ "french", "French", "Français", "CP1252", true, true }, { "english", "English", "English", "CP1252", "en", true },
{ "german", "German", "Deutsch", "CP1252", true, true }, { "finnish", "Finnish", "Suomi", "CP1252", "fi", true },
{ "korean", "Korean", "한국어", "CP949", false, false }, { "french", "French", "Français", "CP1252", "fr", true },
{ "polish", "Polish", "Polski", "CP1250", true, true }, { "german", "German", "Deutsch", "CP1252", "de", true },
{ "russian", "Russian", "Русский", "CP1251", true, true }, { "hungarian", "Hungarian", "Magyar", "CP1250", "hu", true },
{ "spanish", "Spanish", "Español", "CP1252", false, true }, { "italian", "Italian", "Italiano", "CP1250", "it", true },
{ "ukrainian", "Ukrainian", "Українська", "CP1251", true, true }, { "korean", "Korean", "한국어", "CP949", "ko", true },
{ "polish", "Polish", "Polski", "CP1250", "pl", true },
{ "portuguese", "Portuguese", "Português", "CP1252", "pt", true }, // Note: actually Brazilian Portuguese
{ "russian", "Russian", "Русский", "CP1251", "ru", true },
{ "spanish", "Spanish", "Español", "CP1252", "es", true },
{ "swedish", "Swedish", "Svenska", "CP1252", "sv", true },
{ "turkish", "Turkish", "Türkçe", "CP1254", "tr", true },
{ "ukrainian", "Ukrainian", "Українська", "CP1251", "uk", true },
{ "other_cp1250", "Other (East European)", "", "CP1251", false, false }, { "other_cp1250", "Other (East European)", "", "CP1250", "", false },
{ "other_cp1251", "Other (Cyrillic Script)", "", "CP1250", false, false }, { "other_cp1251", "Other (Cyrillic Script)", "", "CP1251", "", false },
{ "other_cp1252", "Other (West European)", "", "CP1252", false, false } { "other_cp1252", "Other (West European)", "", "CP1252", "", false }
} }; } };
static_assert(languages.size() == static_cast<size_t>(ELanguages::COUNT), "Languages array is missing a value!"); static_assert(languages.size() == static_cast<size_t>(ELanguages::COUNT), "Languages array is missing a value!");

View File

@@ -22,7 +22,7 @@
VCMI_LIB_NAMESPACE_BEGIN VCMI_LIB_NAMESPACE_BEGIN
PlayerSettings::PlayerSettings() PlayerSettings::PlayerSettings()
: bonus(RANDOM), castle(NONE), hero(RANDOM), heroPortrait(RANDOM), color(0), handicap(NO_HANDICAP), team(0), compOnly(false) : bonus(RANDOM), castle(NONE), hero(RANDOM), heroPortrait(RANDOM), color(0), handicap(NO_HANDICAP), compOnly(false)
{ {
} }

View File

@@ -43,7 +43,6 @@ struct DLL_LINKAGE PlayerSettings
PlayerColor color; //from 0 - PlayerColor color; //from 0 -
enum EHandicap {NO_HANDICAP, MILD, SEVERE}; enum EHandicap {NO_HANDICAP, MILD, SEVERE};
EHandicap handicap;//0-no, 1-mild, 2-severe EHandicap handicap;//0-no, 1-mild, 2-severe
TeamID team;
std::string name; std::string name;
std::set<ui8> connectedPlayerIDs; //Empty - AI, or connectrd player ids std::set<ui8> connectedPlayerIDs; //Empty - AI, or connectrd player ids
@@ -60,7 +59,6 @@ struct DLL_LINKAGE PlayerSettings
h & handicap; h & handicap;
h & name; h & name;
h & connectedPlayerIDs; h & connectedPlayerIDs;
h & team;
h & compOnly; h & compOnly;
} }

View File

@@ -658,7 +658,6 @@ void CGameState::initNewGame(const IMapService * mapService, bool allowSavingRan
{ {
PlayerSettings & playerSettings = scenarioOps->playerInfos[PlayerColor(i)]; PlayerSettings & playerSettings = scenarioOps->playerInfos[PlayerColor(i)];
playerSettings.compOnly = !playerInfo.canHumanPlay; playerSettings.compOnly = !playerInfo.canHumanPlay;
playerSettings.team = playerInfo.team;
playerSettings.castle = playerInfo.defaultCastle(); playerSettings.castle = playerInfo.defaultCastle();
if(playerSettings.isControlledByAI() && playerSettings.name.empty()) if(playerSettings.isControlledByAI() && playerSettings.name.empty())
{ {

View File

@@ -72,6 +72,7 @@ set(editor_FORMS
set(editor_TS set(editor_TS
translation/english.ts translation/english.ts
translation/french.ts
translation/german.ts translation/german.ts
translation/polish.ts translation/polish.ts
translation/russian.ts translation/russian.ts

View File

@@ -0,0 +1,779 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="fr_FR">
<context>
<name>ArmyWidget</name>
<message>
<location filename="../inspector/armywidget.ui" line="20"/>
<source>Army settings</source>
<translation>Paramètres de l'armée</translation>
</message>
<message>
<location filename="../inspector/armywidget.ui" line="162"/>
<source>Wide formation</source>
<translation>Formation large</translation>
</message>
<message>
<location filename="../inspector/armywidget.ui" line="290"/>
<source>Tight formation</source>
<translation>Formation serrée</translation>
</message>
</context>
<context>
<name>GeneratorProgress</name>
<message>
<location filename="../generatorprogress.ui" line="29"/>
<source>Generating map</source>
<translation>Générer une carte</translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<location filename="../mainwindow.ui" line="14"/>
<source>VCMI Map Editor</source>
<translation>Éditeur de carte VCMI</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="59"/>
<source>File</source>
<translation>Fichier</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="68"/>
<source>Map</source>
<translation>Carte</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="78"/>
<source>Edit</source>
<translation>Modifier</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="89"/>
<source>View</source>
<translation>Afficher</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="97"/>
<source>Player</source>
<translation>Joueur</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="117"/>
<source>Toolbar</source>
<translation>Barre d'outils</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="163"/>
<source>Minimap</source>
<translation>Mini-carte</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="239"/>
<source>Map Objects View</source>
<translation>Vue des objets cartographiques</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="283"/>
<source>Browser</source>
<translation>Navigateur</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="361"/>
<source>Inspector</source>
<translation>Inspecteur</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="400"/>
<source>Property</source>
<translation>Propriété</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="405"/>
<source>Value</source>
<translation>Valeur</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="432"/>
<source>Terrains View</source>
<translation>Vue des terrains</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="484"/>
<source>Brush</source>
<translation>Pinceau</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="763"/>
<source>Terrains</source>
<translation>Terrains</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="806"/>
<source>Roads</source>
<translation>Routes</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="842"/>
<source>Rivers</source>
<translation>Rivières</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="889"/>
<source>Open</source>
<translation>Ouvrir</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="901"/>
<source>Save</source>
<translation>Enregistrer</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="913"/>
<source>New</source>
<translation>Nouveau</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="921"/>
<source>Save as</source>
<translation>Enregistrer sous</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="924"/>
<source>Ctrl+Shift+S</source>
<translation>Ctrl+Maj+S</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="933"/>
<source>U/G</source>
<translation>U/G</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="936"/>
<location filename="../mainwindow.cpp" line="746"/>
<source>View underground</source>
<translation>Voir le sous terrain</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="951"/>
<source>Pass</source>
<translation>Passer</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="963"/>
<source>Cut</source>
<translation>Couper</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="975"/>
<source>Copy</source>
<translation>Copier</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="987"/>
<source>Paste</source>
<translation>Coller</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="999"/>
<source>Fill</source>
<translation>Remplir</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1002"/>
<source>Fills the selection with obstacles</source>
<translation>Remplir la sélection d'obstacles</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1017"/>
<source>Grid</source>
<translation>Grille</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1028"/>
<source>General</source>
<translation>Général</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1031"/>
<source>Map title and description</source>
<translation>Titre et description de la carte</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1042"/>
<source>Players settings</source>
<translation>Paramètres des joueurs</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1057"/>
<location filename="../mainwindow.ui" line="1060"/>
<source>Undo</source>
<translation>Annuler</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1078"/>
<source>Redo</source>
<translation>Rétablir</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1096"/>
<source>Erase</source>
<translation>Effacer</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1107"/>
<source>Neutral</source>
<translation>Neutre</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1115"/>
<source>Validate</source>
<translation>Valider</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1126"/>
<source>Update appearance</source>
<translation>Mettre à jour l'apparence</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1137"/>
<source>Recreate obstacles</source>
<translation>Recréer des obstacles</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1148"/>
<source>Player 1</source>
<translation>Joueur 1</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1159"/>
<source>Player 2</source>
<translation>Joueur 2</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1170"/>
<source>Player 3</source>
<translation>Joueur 3</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1181"/>
<source>Player 4</source>
<translation>Joueur 4</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1192"/>
<source>Player 5</source>
<translation>Joueur 5</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1203"/>
<source>Player 6</source>
<translation>Joueur 6</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1214"/>
<source>Player 7</source>
<translation>Joueur 7</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="1225"/>
<source>Player 8</source>
<translation>Joueur 8</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="346"/>
<source>Open map</source>
<translation>Ouvrir la carte</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="348"/>
<source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
<translation>Toutes les cartes prises en charge (*.vmap *.h3m);;Cartes VCMI (*.vmap);;Cartes HoMM3 (*.h3m)</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="397"/>
<location filename="../mainwindow.cpp" line="424"/>
<source>Save map</source>
<translation>Enregistrer la carte</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="397"/>
<location filename="../mainwindow.cpp" line="424"/>
<source>VCMI maps (*.vmap)</source>
<translation>Cartes VCMI (*.vmap)</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="582"/>
<source>Type</source>
<translation>Type</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="750"/>
<source>View surface</source>
<translation>Afficher la surface</translation>
</message>
</context>
<context>
<name>MapSettings</name>
<message>
<location filename="../mapsettings.ui" line="23"/>
<source>Map settings</source>
<translation>Paramètres de la carte</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="40"/>
<source>General</source>
<translation>Général</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="46"/>
<source>Map name</source>
<translation>Nom de la carte</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="56"/>
<source>Map description</source>
<translation>Description de la carte</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="66"/>
<source>Difficulty</source>
<translation>Difficulté</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="111"/>
<source>Events</source>
<translation>Événements</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="121"/>
<source>Victory</source>
<translation>Victoire</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="135"/>
<source>Victory message</source>
<translation>Message de victoire</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="150"/>
<source>Only for human players</source>
<translation>Uniquement pour les joueurs humains</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="157"/>
<source>Allow standard victory</source>
<translation>Autoriser la victoire standard</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="170"/>
<location filename="../mapsettings.ui" line="218"/>
<source>Parameters</source>
<translation>Paramètres</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="186"/>
<source>Loss</source>
<translation>Perte</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="195"/>
<source>7 days without town</source>
<translation>7 jours sans ville</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="202"/>
<source>Defeat message</source>
<translation>Message de défaite</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="235"/>
<source>Abilities</source>
<translation>Capacités</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="261"/>
<source>Spells</source>
<translation>Sorts</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="287"/>
<source>Artifacts</source>
<translation>Artefacts</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="313"/>
<source>Heroes</source>
<translation>Héros</translation>
</message>
<message>
<location filename="../mapsettings.ui" line="29"/>
<source>Ok</source>
<translation>OK</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="163"/>
<source>No special victory</source>
<translation>Pas de victoire spéciale</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="164"/>
<source>Capture artifact</source>
<translation>Récupérer l'artefact</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="165"/>
<source>Hire creatures</source>
<translation>Engagez des créatures</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="166"/>
<source>Accumulate resources</source>
<translation>Accumuler des ressources</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="167"/>
<source>Construct building</source>
<translation>Construire un bâtiment</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="168"/>
<source>Capture town</source>
<translation>Conquérir une ville</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="169"/>
<source>Defeat hero</source>
<translation>Battre un héros</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="170"/>
<source>Transport artifact</source>
<translation>Transporter un artefact</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="173"/>
<source>No special loss</source>
<translation>Aucune perte spéciale</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="174"/>
<source>Lose castle</source>
<translation>Perdre un château</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="175"/>
<source>Lose hero</source>
<translation>Perdre un héros</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="176"/>
<source>Time expired</source>
<translation>Délai expiré</translation>
</message>
<message>
<location filename="../mapsettings.cpp" line="177"/>
<source>Days without town</source>
<translation>Jours sans ville</translation>
</message>
</context>
<context>
<name>MessageWidget</name>
<message>
<location filename="../inspector/messagewidget.ui" line="20"/>
<source>Message</source>
<translation>Message</translation>
</message>
</context>
<context>
<name>PlayerParams</name>
<message>
<location filename="../playerparams.ui" line="57"/>
<source>No team</source>
<translation>Aucune équipe</translation>
</message>
<message>
<location filename="../playerparams.ui" line="65"/>
<source>Human/CPU</source>
<translation>Human/Ordinateur</translation>
</message>
<message>
<location filename="../playerparams.ui" line="72"/>
<source>CPU only</source>
<translation>Ordinateur uniquement</translation>
</message>
<message>
<location filename="../playerparams.ui" line="79"/>
<source>Team</source>
<translation>Équipe</translation>
</message>
<message>
<location filename="../playerparams.ui" line="86"/>
<source>Main town</source>
<translation>Ville principale</translation>
</message>
<message>
<location filename="../playerparams.ui" line="93"/>
<source>Random faction</source>
<translation>Faction aléatoire</translation>
</message>
<message>
<location filename="../playerparams.ui" line="100"/>
<source>Generate hero at main</source>
<translation>Générer un héros dans le principal</translation>
</message>
<message>
<location filename="../playerparams.ui" line="108"/>
<source>(default)</source>
<translation>(par défaut)</translation>
</message>
<message>
<location filename="../playerparams.cpp" line="86"/>
<source>Player ID: %1</source>
<translation>Identifiant du joueur : %1</translation>
</message>
</context>
<context>
<name>PlayerSettings</name>
<message>
<location filename="../playersettings.ui" line="20"/>
<source>Player settings</source>
<translation>Paramètres du joueur</translation>
</message>
<message>
<location filename="../playersettings.ui" line="63"/>
<source>Players</source>
<translation>Joueurs</translation>
</message>
<message>
<location filename="../playersettings.ui" line="112"/>
<source>Ok</source>
<translation>OK</translation>
</message>
</context>
<context>
<name>QuestWidget</name>
<message>
<location filename="../inspector/questwidget.ui" line="14"/>
<source>Mission goal</source>
<translation>Objectif de la mission</translation>
</message>
</context>
<context>
<name>RewardsWidget</name>
<message>
<location filename="../inspector/rewardswidget.ui" line="14"/>
<source>Rewards</source>
<translation>Récompenses</translation>
</message>
<message>
<location filename="../inspector/rewardswidget.ui" line="20"/>
<source>Remove selected</source>
<translation>Supprimer ce qui est sélectionné</translation>
</message>
<message>
<location filename="../inspector/rewardswidget.ui" line="40"/>
<source>Delete all</source>
<translation>Tout supprimer</translation>
</message>
<message>
<location filename="../inspector/rewardswidget.ui" line="47"/>
<source>Add or change</source>
<translation>Ajouter ou modifier</translation>
</message>
</context>
<context>
<name>TownBulidingsWidget</name>
<message>
<location filename="../inspector/townbulidingswidget.ui" line="26"/>
<source>Buildings</source>
<translation>Bâtiments</translation>
</message>
</context>
<context>
<name>Validator</name>
<message>
<location filename="../validator.ui" line="17"/>
<source>Map validation results</source>
<translation>Résultats de la validation de la carte</translation>
</message>
<message>
<location filename="../validator.cpp" line="101"/>
<source>Town %1 has undefined owner %2</source>
<translation>La ville %1 a le propriétaire indéfini %2</translation>
</message>
</context>
<context>
<name>WindowNewMap</name>
<message>
<location filename="../windownewmap.ui" line="32"/>
<source>Create new map</source>
<translation>Créer une nouvelle carte</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="47"/>
<source>Map size</source>
<translation>Taille de la carte</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="62"/>
<source>Two level map</source>
<translation>Carte à deux niveaux</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="82"/>
<source>Height</source>
<translation>Hauteur</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="114"/>
<source>Width</source>
<translation>Largeur</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="152"/>
<source>S (36x36)</source>
<translation>Petite (36x36)</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="157"/>
<source>M (72x72)</source>
<translation>Moyenne (72x72)</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="162"/>
<source>L (108x108)</source>
<translation>Grande (108x108)</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="167"/>
<source>XL (144x144)</source>
<translation>Très grande (144x144)</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="193"/>
<source>Random map</source>
<translation>Carte aléatoire</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="205"/>
<source>Players</source>
<translation>Joueurs</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="736"/>
<source>0</source>
<translation>0</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="268"/>
<source>Human/Computer</source>
<translation>Human/Ordinateur</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="288"/>
<location filename="../windownewmap.ui" line="357"/>
<location filename="../windownewmap.ui" line="455"/>
<location filename="../windownewmap.ui" line="596"/>
<source>Random</source>
<translation>Aléatoire</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="336"/>
<source>Computer only</source>
<translation>Ordinateur uniquement</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="428"/>
<source>Monster strength</source>
<translation>Force des monstres</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="477"/>
<source>Weak</source>
<translation>Faible</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="496"/>
<location filename="../windownewmap.ui" line="637"/>
<source>Normal</source>
<translation>Normale</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="515"/>
<source>Strong</source>
<translation>Forte</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="569"/>
<source>Water content</source>
<translation>Proportion des eaux</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="618"/>
<source>None</source>
<translation>Aucun</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="656"/>
<source>Islands</source>
<translation>Îles</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="701"/>
<source>Template</source>
<translation>Modèle</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="749"/>
<source>Custom seed</source>
<translation>Graine personnalisée</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="763"/>
<source>Generate random map</source>
<translation>Générer une carte aléatoire</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="797"/>
<source>Ok</source>
<translation>OK</translation>
</message>
<message>
<location filename="../windownewmap.ui" line="816"/>
<source>Cancel</source>
<translation>Annuler</translation>
</message>
</context>
<context>
<name>main</name>
<message>
<location filename="../mainwindow.cpp" line="98"/>
<source>Filepath of the map to open.</source>
<translation>Chemin du fichier de la carte à ouvrir.</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="101"/>
<source>Extract original H3 archives into a separate folder.</source>
<translation>Extraire les archives H3 d'origine dans un dossier séparé.</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="102"/>
<source>From an extracted archive, it Splits TwCrPort, CPRSMALL, FlagPort, ITPA, ITPt, Un32 and Un44 into individual PNG&apos;s.</source>
<translation>À partir d'une archive extraite, il divise TwCrPort, CPRSMALL, FlagPort, ITPA, ITPt, Un32 et Un44 en fichiers PNG individuels.</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="103"/>
<source>From an extracted archive, Converts single Images (found in Images folder) from .pcx to png.</source>
<translation>À partir d'une archive extraite, convertit des images uniques (trouvées dans le dossier Images) de .pcx en png.</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="104"/>
<source>Delete original files, for the ones splitted / converted.</source>
<translation>Supprimer les fichiers d'origine, pour ceux fractionnés/convertis.</translation>
</message>
</context>
</TS>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS> <!DOCTYPE TS>
<TS version="2.1" language="en_US"> <TS version="2.1" language="es_ES">
<context> <context>
<name>ArmyWidget</name> <name>ArmyWidget</name>
<message> <message>
@@ -144,12 +144,12 @@
<message> <message>
<location filename="../mainwindow.ui" line="924"/> <location filename="../mainwindow.ui" line="924"/>
<source>Ctrl+Shift+S</source> <source>Ctrl+Shift+S</source>
<translation></translation> <translation>Ctrl+Shift+S</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.ui" line="933"/> <location filename="../mainwindow.ui" line="933"/>
<source>U/G</source> <source>U/G</source>
<translation></translation> <translation>U/G</translation>
</message> </message>
<message> <message>
<location filename="../mainwindow.ui" line="936"/> <location filename="../mainwindow.ui" line="936"/>