浏览代码

Regenerated translations

kdmcser 1 年之前
父节点
当前提交
d7a504dd86

文件差异内容过多而无法显示
+ 190 - 216
launcher/translation/chinese.ts


文件差异内容过多而无法显示
+ 190 - 212
launcher/translation/czech.ts


+ 192 - 162
launcher/translation/english.ts

@@ -24,65 +24,65 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="227"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="220"/>
         <source>Build Information</source>
         <source>Build Information</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="189"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="182"/>
         <source>User data directory</source>
         <source>User data directory</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="88"/>
         <location filename="../aboutProject/aboutproject_moc.ui" line="95"/>
         <location filename="../aboutProject/aboutproject_moc.ui" line="95"/>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="102"/>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="168"/>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="254"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="161"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="247"/>
         <source>Open</source>
         <source>Open</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="128"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="121"/>
         <source>Check for updates</source>
         <source>Check for updates</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="196"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="189"/>
         <source>Game version</source>
         <source>Game version</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="121"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="114"/>
         <source>Log files directory</source>
         <source>Log files directory</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="114"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="107"/>
         <source>Data Directories</source>
         <source>Data Directories</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="175"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="168"/>
         <source>Game data directory</source>
         <source>Game data directory</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="182"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="175"/>
         <source>Operating System</source>
         <source>Operating System</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="234"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="227"/>
         <source>Configuration files directory</source>
         <source>Configuration files directory</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="297"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="290"/>
         <source>Project homepage</source>
         <source>Project homepage</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../aboutProject/aboutproject_moc.ui" line="310"/>
+        <location filename="../aboutProject/aboutproject_moc.ui" line="303"/>
         <source>Report a bug</source>
         <source>Report a bug</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -233,7 +233,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../modManager/cmodlistview_moc.ui" line="163"/>
         <location filename="../modManager/cmodlistview_moc.ui" line="163"/>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="348"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="350"/>
         <source>Description</source>
         <source>Description</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -293,179 +293,179 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="283"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="285"/>
         <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="284"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="286"/>
         <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="285"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="287"/>
         <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="288"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="290"/>
         <source>Size</source>
         <source>Size</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="290"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="292"/>
         <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="292"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="294"/>
         <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="295"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="297"/>
         <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="298"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="300"/>
         <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="307"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="309"/>
         <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="309"/>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="317"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="311"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="319"/>
         <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="315"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="317"/>
         <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="315"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="317"/>
         <source>please upgrade mod</source>
         <source>please upgrade mod</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="187"/>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="802"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="189"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="809"/>
         <source>mods repository index</source>
         <source>mods repository index</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="317"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="319"/>
         <source>or newer</source>
         <source>or newer</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="322"/>
         <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="344"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="346"/>
         <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="346"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="348"/>
         <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="347"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="349"/>
         <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="352"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="354"/>
         <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="353"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="355"/>
         <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="354"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="356"/>
         <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="355"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="357"/>
         <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="356"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="358"/>
         <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="371"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="373"/>
         <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="633"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="639"/>
         <source>All supported files</source>
         <source>All supported files</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="633"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="639"/>
         <source>Maps</source>
         <source>Maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="633"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="639"/>
         <source>Campaigns</source>
         <source>Campaigns</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="633"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="639"/>
         <source>Configs</source>
         <source>Configs</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="633"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="639"/>
         <source>Mods</source>
         <source>Mods</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="634"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="640"/>
         <source>Select files (configs, mods, maps, campaigns) to install...</source>
         <source>Select files (configs, mods, maps, campaigns) to install...</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="658"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="665"/>
         <source>Replace config file?</source>
         <source>Replace config file?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="658"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="665"/>
         <source>Do you want to replace %1?</source>
         <source>Do you want to replace %1?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="701"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="708"/>
         <source>Downloading %1. %p% (%v MB out of %m MB) finished</source>
         <source>Downloading %1. %p% (%v MB out of %m MB) finished</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="726"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="733"/>
         <source>Download failed</source>
         <source>Download failed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="727"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="734"/>
         <source>Unable to download all files.
         <source>Unable to download all files.
 
 
 Encountered errors:
 Encountered errors:
@@ -474,40 +474,40 @@ Encountered errors:
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="728"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="735"/>
         <source>
         <source>
 
 
 Install successfully downloaded?</source>
 Install successfully downloaded?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="874"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="881"/>
         <source>Installing mod %1</source>
         <source>Installing mod %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="943"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="950"/>
         <source>Operation failed</source>
         <source>Operation failed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="944"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="951"/>
         <source>Encountered errors:
         <source>Encountered errors:
 </source>
 </source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="973"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="986"/>
         <source>screenshots</source>
         <source>screenshots</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../modManager/cmodlistview_moc.cpp" line="979"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="992"/>
         <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="278"/>
+        <location filename="../modManager/cmodlistview_moc.cpp" line="280"/>
         <source>Mod is incompatible</source>
         <source>Mod is incompatible</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -611,242 +611,272 @@ Install successfully downloaded?</source>
 <context>
 <context>
     <name>CSettingsView</name>
     <name>CSettingsView</name>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.cpp" line="85"/>
+        <location filename="../settingsView/csettingsview_moc.cpp" line="90"/>
         <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="309"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="307"/>
         <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="1080"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1072"/>
         <source>Interface Scaling</source>
         <source>Interface Scaling</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="930"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="924"/>
         <source>Neutral AI in battles</source>
         <source>Neutral AI in battles</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="742"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="738"/>
         <source>Enemy AI in battles</source>
         <source>Enemy AI in battles</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="826"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="821"/>
         <source>Additional repository</source>
         <source>Additional repository</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="937"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="931"/>
         <source>Adventure Map Allies</source>
         <source>Adventure Map Allies</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="492"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="490"/>
         <source>Online Lobby port</source>
         <source>Online Lobby port</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="333"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="331"/>
         <source>Autocombat AI in battles</source>
         <source>Autocombat AI in battles</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="354"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="352"/>
         <source>Sticks Sensitivity</source>
         <source>Sticks Sensitivity</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="803"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="618"/>
+        <source>Automatic (Linear)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../settingsView/csettingsview_moc.ui" line="798"/>
         <source>Haptic Feedback</source>
         <source>Haptic Feedback</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="840"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="835"/>
         <source>Software Cursor</source>
         <source>Software Cursor</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="139"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1166"/>
+        <source>Automatic</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1171"/>
+        <source>None</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1176"/>
+        <source>xBRZ x2</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1181"/>
+        <source>xBRZ x3</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1186"/>
+        <source>xBRZ x4</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../settingsView/csettingsview_moc.ui" line="138"/>
         <source>Online Lobby address</source>
         <source>Online Lobby address</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="899"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1158"/>
         <source>Upscaling Filter</source>
         <source>Upscaling Filter</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="319"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="317"/>
         <source>Use Relative Pointer Mode</source>
         <source>Use Relative Pointer Mode</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="612"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="608"/>
         <source>Nearest</source>
         <source>Nearest</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="617"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="613"/>
         <source>Linear</source>
         <source>Linear</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="622"/>
-        <source>Best (Linear)</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="755"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="750"/>
         <source>Input - Touchscreen</source>
         <source>Input - Touchscreen</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="906"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="900"/>
         <source>Adventure Map Enemies</source>
         <source>Adventure Map Enemies</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1152"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1144"/>
         <source>Show Tutorial again</source>
         <source>Show Tutorial again</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1159"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1151"/>
         <source>Reset</source>
         <source>Reset</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="860"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="854"/>
         <source>Network</source>
         <source>Network</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="540"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="536"/>
         <source>Audio</source>
         <source>Audio</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="847"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="842"/>
         <source>Relative Pointer Speed</source>
         <source>Relative Pointer Speed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1145"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1137"/>
         <source>Music Volume</source>
         <source>Music Volume</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="772"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="767"/>
         <source>Ignore SSL errors</source>
         <source>Ignore SSL errors</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="950"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="943"/>
         <source>Input - Mouse</source>
         <source>Input - Mouse</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="347"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="345"/>
         <source>Long Touch Duration</source>
         <source>Long Touch Duration</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="116"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="115"/>
         <source>%</source>
         <source>%</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1045"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1037"/>
         <source>Controller Click Tolerance</source>
         <source>Controller Click Tolerance</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="361"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="359"/>
         <source>Touch Tap Tolerance</source>
         <source>Touch Tap Tolerance</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1028"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1020"/>
         <source>Input - Controller</source>
         <source>Input - Controller</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1094"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1086"/>
         <source>Sound Volume</source>
         <source>Sound Volume</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="404"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="402"/>
         <source>Windowed</source>
         <source>Windowed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="409"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="407"/>
         <source>Borderless fullscreen</source>
         <source>Borderless fullscreen</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="414"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="412"/>
         <source>Exclusive fullscreen</source>
         <source>Exclusive fullscreen</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="782"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="777"/>
         <source>Autosave limit (0 = off)</source>
         <source>Autosave limit (0 = off)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1038"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="893"/>
+        <source>Downscaling Filter</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1030"/>
         <source>Framerate Limit</source>
         <source>Framerate Limit</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="765"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="760"/>
         <source>Autosave prefix</source>
         <source>Autosave prefix</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="833"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="828"/>
         <source>Mouse Click Tolerance</source>
         <source>Mouse Click Tolerance</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="95"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="94"/>
         <source>Sticks Acceleration</source>
         <source>Sticks Acceleration</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="1015"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1008"/>
         <source>empty = map name prefix</source>
         <source>empty = map name prefix</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="102"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="101"/>
         <source>Refresh now</source>
         <source>Refresh now</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="250"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="249"/>
         <source>Default repository</source>
         <source>Default repository</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="296"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="295"/>
         <source>Renderer</source>
         <source>Renderer</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.cpp" line="83"/>
+        <location filename="../settingsView/csettingsview_moc.cpp" line="88"/>
         <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="391"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="389"/>
         <source>Select display mode for game
         <source>Select display mode for game
 
 
 Windowed - game will run inside a window that covers part of your screen
 Windowed - game will run inside a window that covers part of your screen
@@ -857,92 +887,92 @@ Fullscreen Exclusive Mode - game will cover entirety of your screen and will use
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="132"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="131"/>
         <source>Reserved screen area</source>
         <source>Reserved screen area</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="270"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="269"/>
         <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="650"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="646"/>
         <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="326"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="324"/>
         <source>Fullscreen</source>
         <source>Fullscreen</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="65"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="64"/>
         <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="211"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="210"/>
         <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="1087"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="1079"/>
         <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="796"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="791"/>
         <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="597"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="593"/>
         <source>VSync</source>
         <source>VSync</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="340"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="338"/>
         <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="870"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="864"/>
         <source>Network port</source>
         <source>Network port</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../settingsView/csettingsview_moc.ui" line="524"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="521"/>
         <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="454"/>
+        <location filename="../settingsView/csettingsview_moc.ui" line="452"/>
         <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.cpp" line="494"/>
+        <location filename="../settingsView/csettingsview_moc.cpp" line="503"/>
         <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="499"/>
+        <location filename="../settingsView/csettingsview_moc.cpp" line="508"/>
         <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="500"/>
+        <location filename="../settingsView/csettingsview_moc.cpp" line="509"/>
         <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="505"/>
+        <location filename="../settingsView/csettingsview_moc.cpp" line="514"/>
         <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="506"/>
+        <location filename="../settingsView/csettingsview_moc.cpp" line="515"/>
         <source>Install</source>
         <source>Install</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -998,12 +1028,12 @@ Fullscreen Exclusive Mode - game will cover entirety of your screen and will use
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="176"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="169"/>
         <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="185"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="178"/>
         <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.
@@ -1014,83 +1044,83 @@ 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="255"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="248"/>
         <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="304"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="297"/>
         <source>Use offline installer from gog.com</source>
         <source>Use offline installer from gog.com</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="317"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="310"/>
         <source>You can manually copy directories Maps, Data and Mp3 from the original game directory to VCMI data directory that you can see on top of this page</source>
         <source>You can manually copy directories Maps, Data and Mp3 from the original game directory to VCMI data directory that you can see on top of this page</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="336"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="329"/>
         <source>Install gog.com files</source>
         <source>Install gog.com files</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="495"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="488"/>
         <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="749"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="742"/>
         <source>Interface Improvements</source>
         <source>Interface Improvements</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="629"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="622"/>
         <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="395"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="388"/>
         <source>Installing... %p%</source>
         <source>Installing... %p%</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="424"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="417"/>
         <source>If you already have Heroes III files on your device, you can select this directory and VCMI will copy the existing data automatically.</source>
         <source>If you already have Heroes III files on your device, you can select this directory 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="466"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="459"/>
         <source>Copy existing files</source>
         <source>Copy existing files</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="511"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="504"/>
         <source>If you own Heroes III on gog.com you can download backup offline installer from gog.com, and VCMI will import Heroes III data using offline installer. 
         <source>If you own Heroes III on gog.com you can download backup offline installer from gog.com, and VCMI will import Heroes III data using offline installer. 
 Offline installer consists of two parts, .exe and .bin. Make sure you download both of them.</source>
 Offline installer consists of two parts, .exe and .bin. Make sure you download both of them.</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="696"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="689"/>
         <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="795"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="788"/>
         <source>Install mod that provides various interface improvements, such as better interface for random maps and selectable actions in battles</source>
         <source>Install mod that provides various interface improvements, such as better interface for random maps and selectable actions in battles</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="680"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="673"/>
         <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="779"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="772"/>
         <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="874"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="867"/>
         <source>Finish</source>
         <source>Finish</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1100,59 +1130,59 @@ Offline installer consists of two parts, .exe and .bin. Make sure you download b
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="169"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="162"/>
         <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="219"/>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="571"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="212"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="564"/>
         <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="354"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="347"/>
         <source>Manual Installation</source>
         <source>Manual Installation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="367"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="360"/>
         <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="448"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="441"/>
         <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="286"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="279"/>
         <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="564"/>
-        <location filename="../firstLaunch/firstlaunch_moc.ui" line="867"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="557"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="860"/>
         <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="601"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="594"/>
         <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="717"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="710"/>
         <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="650"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="643"/>
         <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="816"/>
+        <location filename="../firstLaunch/firstlaunch_moc.ui" line="809"/>
         <source>In The Wake of Gods</source>
         <source>In The Wake of Gods</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1416,12 +1446,12 @@ Please select directory with Heroes III: Complete Edition or Heroes III: Shadow
 <context>
 <context>
     <name>QObject</name>
     <name>QObject</name>
     <message>
     <message>
-        <location filename="../main.cpp" line="121"/>
+        <location filename="../main.cpp" line="122"/>
         <source>Error starting executable</source>
         <source>Error starting executable</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../main.cpp" line="122"/>
+        <location filename="../main.cpp" line="123"/>
         <source>Failed to start %1
         <source>Failed to start %1
 Reason: %2</source>
 Reason: %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>

文件差异内容过多而无法显示
+ 189 - 215
launcher/translation/french.ts


文件差异内容过多而无法显示
+ 190 - 216
launcher/translation/german.ts


文件差异内容过多而无法显示
+ 190 - 216
launcher/translation/polish.ts


文件差异内容过多而无法显示
+ 190 - 216
launcher/translation/portuguese.ts


文件差异内容过多而无法显示
+ 189 - 203
launcher/translation/russian.ts


文件差异内容过多而无法显示
+ 190 - 212
launcher/translation/spanish.ts


文件差异内容过多而无法显示
+ 190 - 216
launcher/translation/ukrainian.ts


文件差异内容过多而无法显示
+ 190 - 208
launcher/translation/vietnamese.ts


+ 113 - 78
mapeditor/translation/chinese.ts

@@ -42,7 +42,7 @@
         <translation>移除</translation>
         <translation>移除</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation>新事件</translation>
         <translation>新事件</translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation>地图描述</translation>
         <translation>地图描述</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation>限制英雄最大等级</translation>
         <translation>限制英雄最大等级</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation>难度</translation>
         <translation>难度</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>查看地下</translation>
         <translation>查看地下</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>更新外观</translation>
         <translation>更新外观</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation>Ctrl+Shift+=</translation>
         <translation>Ctrl+Shift+=</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>确认</translation>
         <translation>确认</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation>未保存的改动会丢失,你确定要这么做吗?</translation>
         <translation>未保存的改动会丢失,你确定要这么做吗?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>打开地图</translation>
         <translation>打开地图</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>所有支持的地图类型(*.vmap *.h3m);;VCMI地图(*.vmap);;英雄无敌3地图(*.h3m)</translation>
         <translation>所有支持的地图类型(*.vmap *.h3m);;VCMI地图(*.vmap);;英雄无敌3地图(*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>保存地图</translation>
         <translation>保存地图</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>VCMI地图(*.vmap)</translation>
         <translation>VCMI地图(*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>类型</translation>
         <translation>类型</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>查看地上</translation>
         <translation>查看地上</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation>未选择任何物体</translation>
         <translation>未选择任何物体</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation>此操作无法被撤销,你确定要继续么?</translation>
         <translation>此操作无法被撤销,你确定要继续么?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation>发生错误!%1 物体未完成更新</translation>
         <translation>发生错误!%1 物体未完成更新</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation>保存为图片</translation>
         <translation>保存为图片</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation>选择待转换的地图</translation>
         <translation>选择待转换的地图</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation>英雄无敌3地图文件(*.h3m)</translation>
         <translation>英雄无敌3地图文件(*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation>选择保存转换地图的目录</translation>
         <translation>选择保存转换地图的目录</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation>操作完成</translation>
         <translation>操作完成</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation>成功转换 %1 地图</translation>
         <translation>成功转换 %1 地图</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation>转换地图失败,操作终止</translation>
         <translation>转换地图失败,操作终止</translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(默认)</translation>
         <translation>(默认)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>玩家ID: %1</translation>
         <translation>玩家ID: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation>没有旗帜</translation>
         <translation>没有旗帜</translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished">无法放置物体</translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation>禁止所有建筑</translation>
         <translation>禁止所有建筑</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation>类型</translation>
         <translation>类型</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation>已允许</translation>
         <translation>已允许</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation>已建造</translation>
         <translation>已建造</translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation>建筑</translation>
         <translation>建筑</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation>生物</translation>
         <translation>生物</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation>确定</translation>
         <translation>确定</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation>%1级生物 / 升级后的%1级生物</translation>
         <translation>%1级生物 / 升级后的%1级生物</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation>%1 - %2 日</translation>
         <translation>%1 - %2 日</translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation>移除</translation>
         <translation>移除</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation>%1 - %2 日</translation>
         <translation>%1 - %2 日</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation>新事件</translation>
         <translation>新事件</translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>未加载地图</translation>
         <translation>未加载地图</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation>玩家 %1 没有可使用的种族</translation>
         <translation>玩家 %1 没有可使用的种族</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>该地图未设置任何玩家</translation>
         <translation>该地图未设置任何玩家</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>该地图只有一个玩家,无法开始游戏</translation>
         <translation>该地图只有一个玩家,无法开始游戏</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>该地图缺少人类玩家</translation>
         <translation>该地图缺少人类玩家</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation>部队实例 %1 没有旗帜,需要设置为中立或任一玩家所有</translation>
         <translation>部队实例 %1 没有旗帜,需要设置为中立或任一玩家所有</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>物体 %1 属于无法游戏的玩家 %2</translation>
         <translation>物体 %1 属于无法游戏的玩家 %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>城镇 %1 拥有者 %2 未定义</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>监狱 %1 需要为中立</translation>
         <translation>监狱 %1 需要为中立</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>英雄 %1 需要有一个所有者</translation>
         <translation>英雄 %1 需要有一个所有者</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>英雄 %1 被地图设置禁止</translation>
         <translation>英雄 %1 被地图设置禁止</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>英雄 %1 在地图上有多个</translation>
         <translation>英雄 %1 在地图上有多个</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation>英雄 %1 属于空类型,必须移除</translation>
         <translation>英雄 %1 属于空类型,必须移除</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>魔法卷轴 %1 被地图设置禁止</translation>
         <translation>魔法卷轴 %1 被地图设置禁止</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation>魔法卷轴 %1 未和任一实例关联,需要被移除</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>宝物 %1 被地图设置禁止</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>玩家 %1 没有一座起始城镇</translation>
         <translation>玩家 %1 没有一座起始城镇</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>地图名字为空</translation>
         <translation>地图名字为空</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>地图描述为空</translation>
         <translation>地图描述为空</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation>地图包含模组 %1 的物体,但没有声明依赖该模组</translation>
         <translation>地图包含模组 %1 的物体,但没有声明依赖该模组</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>在验证地图期间发生异常:%1</translation>
         <translation>在验证地图期间发生异常:%1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>在验证地图期间发生未知异常</translation>
         <translation>在验证地图期间发生未知异常</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation>参数</translation>
         <translation>参数</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation>无特殊胜利条件</translation>
         <translation>无特殊胜利条件</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation>获取宝物</translation>
         <translation>获取宝物</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation>雇佣生物</translation>
         <translation>雇佣生物</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation>获得资源</translation>
         <translation>获得资源</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation>建造神器</translation>
         <translation>建造神器</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation>占领城镇</translation>
         <translation>占领城镇</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation>击败英雄</translation>
         <translation>击败英雄</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation>运送宝物</translation>
         <translation>运送宝物</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation>击杀怪物</translation>
         <translation>击杀怪物</translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>取消</translation>
         <translation>取消</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation>缺少模版</translation>
         <translation>缺少模版</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation>未指定任一模版作为参数,随机地图无法生成。</translation>
         <translation>未指定任一模版作为参数,随机地图无法生成。</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation>随机地图生成失败</translation>
         <translation>随机地图生成失败</translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/czech.ts

@@ -42,7 +42,7 @@
         <translation>Odebrat</translation>
         <translation>Odebrat</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation>Nová událost</translation>
         <translation>Nová událost</translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation>Popis mapy</translation>
         <translation>Popis mapy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation>Omezit max. úroveň hrdinů</translation>
         <translation>Omezit max. úroveň hrdinů</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation>Obtížnost</translation>
         <translation>Obtížnost</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Zobrazit podzemí</translation>
         <translation>Zobrazit podzemí</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Aktualizovat vzhled</translation>
         <translation>Aktualizovat vzhled</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation>Ctrl+Shift+=</translation>
         <translation>Ctrl+Shift+=</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>Potvrzení</translation>
         <translation>Potvrzení</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation>Neuložené změny budou ztraceny, jste si jisti?</translation>
         <translation>Neuložené změny budou ztraceny, jste si jisti?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Otevřít mapu</translation>
         <translation>Otevřít mapu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Všechny podporované mapy (*.vmap *.h3m);; Mapy VCMI(*.vmap);;Mapy HoMM3(*.h3m)</translation>
         <translation>Všechny podporované mapy (*.vmap *.h3m);; Mapy VCMI(*.vmap);;Mapy HoMM3(*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Uložit mapu</translation>
         <translation>Uložit mapu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Mapy VCMI (*.vmap)</translation>
         <translation>Mapy VCMI (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Druh</translation>
         <translation>Druh</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Zobrazit povrch</translation>
         <translation>Zobrazit povrch</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation>Nejsou vybrány žádné objekty</translation>
         <translation>Nejsou vybrány žádné objekty</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation>Tento úkon je nezvratný. Chcete pokračovat?</translation>
         <translation>Tento úkon je nezvratný. Chcete pokračovat?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation>Nastaly chyby. Nebylo aktualizováno %1 objektů</translation>
         <translation>Nastaly chyby. Nebylo aktualizováno %1 objektů</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation>Uložit do obrázku</translation>
         <translation>Uložit do obrázku</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation>Vyberte mapy pro převod</translation>
         <translation>Vyberte mapy pro převod</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation>Mapy HoMM3 (*.h3m)</translation>
         <translation>Mapy HoMM3 (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation>Vyberte složku pro uložení převedených map</translation>
         <translation>Vyberte složku pro uložení převedených map</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation>Operace dokončena</translation>
         <translation>Operace dokončena</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation>Úspěšně převedeno %1 map</translation>
         <translation>Úspěšně převedeno %1 map</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation>Převod map selhal. Úkon zrušen</translation>
         <translation>Převod map selhal. Úkon zrušen</translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(výchozí)</translation>
         <translation>(výchozí)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>ID hráče: %1</translation>
         <translation>ID hráče: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation>NEOZNAČITELNÝ</translation>
         <translation>NEOZNAČITELNÝ</translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished">Nelze umístit objekt</translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Druh</translation>
         <translation type="unfinished">Druh</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Budovy</translation>
         <translation type="unfinished">Budovy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished">Jednotky</translation>
         <translation type="unfinished">Jednotky</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished">Odebrat</translation>
         <translation type="unfinished">Odebrat</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished">Nová událost</translation>
         <translation type="unfinished">Nová událost</translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>Mapa není načtena</translation>
         <translation>Mapa není načtena</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>Žádní hráči nejsou dovoleni hrát tuto mapu</translation>
         <translation>Žádní hráči nejsou dovoleni hrát tuto mapu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>Mapa je pouze pro jednoho hráče na nemůže být spuštěna</translation>
         <translation>Mapa je pouze pro jednoho hráče na nemůže být spuštěna</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>Žádní lidští hráči nejsou dovoleni hrát tuto mapu</translation>
         <translation>Žádní lidští hráči nejsou dovoleni hrát tuto mapu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>Objekt %1 je přiřazen nehratelnému hráči %2</translation>
         <translation>Objekt %1 je přiřazen nehratelnému hráči %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>Město %1 nemá definovaného vlastníka %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>Vězení %1 musí být NEUTRÁLNÍ</translation>
         <translation>Vězení %1 musí být NEUTRÁLNÍ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>Hrdina %1 musí mít vlastníka</translation>
         <translation>Hrdina %1 musí mít vlastníka</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>Hrdina %1 je zakázaný nastavením mapy</translation>
         <translation>Hrdina %1 je zakázaný nastavením mapy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>Hrdina %1 má na mapě dvojníka</translation>
         <translation>Hrdina %1 má na mapě dvojníka</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>Kouzlo %1 je zakázáno nastavením mapy</translation>
         <translation>Kouzlo %1 je zakázáno nastavením mapy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation type="unfinished"></translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>Artefakt %1 je zakázán nastavením mapy</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>Hráč %1 nemá žádné počáteční město</translation>
         <translation>Hráč %1 nemá žádné počáteční město</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>Mapa nemá název</translation>
         <translation>Mapa nemá název</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>Mapa nemá popis</translation>
         <translation>Mapa nemá popis</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation>Mapa obsahuje objekt z modifikace &quot;%1&quot;. ale nevyžaduje ji</translation>
         <translation>Mapa obsahuje objekt z modifikace &quot;%1&quot;. ale nevyžaduje ji</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>Při posudku nastala výjimka: %1</translation>
         <translation>Při posudku nastala výjimka: %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>Nasta neznámá výjimka při posudku</translation>
         <translation>Nasta neznámá výjimka při posudku</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation>Parametry</translation>
         <translation>Parametry</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation>Bez speciálního vítězství</translation>
         <translation>Bez speciálního vítězství</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation>Získat artefakt</translation>
         <translation>Získat artefakt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation>Najmout bojovníky</translation>
         <translation>Najmout bojovníky</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation>Nashromáždit zdroje</translation>
         <translation>Nashromáždit zdroje</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation>Postavit budovu</translation>
         <translation>Postavit budovu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation>Získat město</translation>
         <translation>Získat město</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation>Porazit hrdinu</translation>
         <translation>Porazit hrdinu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation>Přesunout artefakt</translation>
         <translation>Přesunout artefakt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation>Zabít příšeru</translation>
         <translation>Zabít příšeru</translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Zrušit</translation>
         <translation>Zrušit</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation>Bez šablony</translation>
         <translation>Bez šablony</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation>Žádná šablona pro vybrané parametry. Náhodná mapa nemůže být vygenerována.</translation>
         <translation>Žádná šablona pro vybrané parametry. Náhodná mapa nemůže být vygenerována.</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation>Chyba RMG</translation>
         <translation>Chyba RMG</translation>
     </message>
     </message>

+ 112 - 77
mapeditor/translation/english.ts

@@ -42,7 +42,7 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
-        <source>Prison %1 must be a NEUTRAL</source>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
-        <source>Hero %1 must have an owner</source>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
-        <source>Hero %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="116"/>
+        <source>Prison %1 must be a NEUTRAL</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
-        <source>Hero %1 has duplicate on map</source>
+        <location filename="../validator.cpp" line="121"/>
+        <source>Hero %1 must have an owner</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
-        <source>Hero %1 has an empty type and must be removed</source>
+        <location filename="../validator.cpp" line="128"/>
+        <source>Hero %1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
-        <source>Spell scroll %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="131"/>
+        <source>Hero %1 has duplicate on map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
+        <location filename="../validator.cpp" line="134"/>
+        <source>Hero %1 has an empty type and must be removed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="145"/>
+        <source>Spell scroll %1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/french.ts

@@ -42,7 +42,7 @@
         <translation>Supprimer</translation>
         <translation>Supprimer</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation>Nouvel évènement</translation>
         <translation>Nouvel évènement</translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation>Description de la carte</translation>
         <translation>Description de la carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation>Limiter le niveau maximum des héros</translation>
         <translation>Limiter le niveau maximum des héros</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation>Difficulté</translation>
         <translation>Difficulté</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Voir le sous-sol</translation>
         <translation>Voir le sous-sol</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Mettre à jour l&apos;apparence</translation>
         <translation>Mettre à jour l&apos;apparence</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation>Ctrl+Maj+=</translation>
         <translation>Ctrl+Maj+=</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>Confirmation</translation>
         <translation>Confirmation</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Ouvrir la carte</translation>
         <translation>Ouvrir la carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <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>
         <translation>Toutes les cartes prises en charge (*.vmap *.h3m);;Cartes VCMI (*.vmap);;Cartes HoMM3 (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Enregistrer la carte</translation>
         <translation>Enregistrer la carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Cartes VCMI (*.vmap)</translation>
         <translation>Cartes VCMI (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Type</translation>
         <translation>Type</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Afficher la surface</translation>
         <translation>Afficher la surface</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation>Pas d&apos;objets sélectionnés</translation>
         <translation>Pas d&apos;objets sélectionnés</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation>Cette opération est irreversible. Voulez-vous continuer ?</translation>
         <translation>Cette opération est irreversible. Voulez-vous continuer ?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation>Erreur rencontrée. %1 objets n&apos;ont pas étés mis à jour</translation>
         <translation>Erreur rencontrée. %1 objets n&apos;ont pas étés mis à jour</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation>Sauvegarder en tant qu&apos;image</translation>
         <translation>Sauvegarder en tant qu&apos;image</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation>Sélectionner les cartes à convertir</translation>
         <translation>Sélectionner les cartes à convertir</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation>Cartes HoMM3(*.h3m)</translation>
         <translation>Cartes HoMM3(*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation>Sélectionner le dossier ou sauvegarder les cartes converties</translation>
         <translation>Sélectionner le dossier ou sauvegarder les cartes converties</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation>Opération terminée</translation>
         <translation>Opération terminée</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation>Conversion éffectuée avec succès des %1 cartes</translation>
         <translation>Conversion éffectuée avec succès des %1 cartes</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation>Erreur de conversion de carte. Opération annulée</translation>
         <translation>Erreur de conversion de carte. Opération annulée</translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(par défaut)</translation>
         <translation>(par défaut)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>Identifiant du joueur : %1</translation>
         <translation>Identifiant du joueur : %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation>INCLASSABLE</translation>
         <translation>INCLASSABLE</translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished">Impossible de placer l&apos;objet</translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Type</translation>
         <translation type="unfinished">Type</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Bâtiments</translation>
         <translation type="unfinished">Bâtiments</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished">Créatures</translation>
         <translation type="unfinished">Créatures</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished">Supprimer</translation>
         <translation type="unfinished">Supprimer</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished">Nouvel évènement</translation>
         <translation type="unfinished">Nouvel évènement</translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>Aucune carte n&apos;est chargée</translation>
         <translation>Aucune carte n&apos;est chargée</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation>Pas de factions autorisées pour le joueur %1</translation>
         <translation>Pas de factions autorisées pour le joueur %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>Aucun joueur autorisé à jouer sur cette carte</translation>
         <translation>Aucun joueur autorisé à jouer sur cette carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>La carte est autorisée pour un joueur et ne peut pas être démarrée</translation>
         <translation>La carte est autorisée pour un joueur et ne peut pas être démarrée</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>Aucun joueur humain n&apos;est autorisé à jouer sur cette carte</translation>
         <translation>Aucun joueur humain n&apos;est autorisé à jouer sur cette carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation>L&apos;instance blindée %1 est IMMARQUABLE mais doit avoir un propriétaire NEUTRE ou joueur</translation>
         <translation>L&apos;instance blindée %1 est IMMARQUABLE mais doit avoir un propriétaire NEUTRE ou joueur</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>L&apos;objet %1 est attribué au joueur non jouable %2</translation>
         <translation>L&apos;objet %1 est attribué au joueur non jouable %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>La ville %1 a le propriétaire indéfini %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>La prison %1 doit être NEUTRE</translation>
         <translation>La prison %1 doit être NEUTRE</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>Le héros %1 doit avoir un propriétaire</translation>
         <translation>Le héros %1 doit avoir un propriétaire</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>Le héros %1 est interdit par les paramètres de la carte</translation>
         <translation>Le héros %1 est interdit par les paramètres de la carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>Le héros %1 a un doublon sur la carte</translation>
         <translation>Le héros %1 a un doublon sur la carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation>Le héros %1 a un type vide et doit être supprimé</translation>
         <translation>Le héros %1 a un type vide et doit être supprimé</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>Le défilement des sorts %1 est interdit par les paramètres de la carte</translation>
         <translation>Le défilement des sorts %1 est interdit par les paramètres de la carte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation>Le parchemin de sort %1 n&apos;a pas d&apos;instance assignée et doit être supprimé</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>L&apos;artefact %1 est interdit par les paramètres de la carte</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>Le joueur %1 n&apos;a pas de ville de départ</translation>
         <translation>Le joueur %1 n&apos;a pas de ville de départ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>Le nom de la carte n&apos;est pas spécifié</translation>
         <translation>Le nom de la carte n&apos;est pas spécifié</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>La description de la carte n&apos;est pas spécifiée</translation>
         <translation>La description de la carte n&apos;est pas spécifiée</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation>La carte contient des objets du mod &quot;%1&quot;, mais il n&apos;est pas requis</translation>
         <translation>La carte contient des objets du mod &quot;%1&quot;, mais il n&apos;est pas requis</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>Une exception se produit lors de la validation : %1</translation>
         <translation>Une exception se produit lors de la validation : %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>Une exception inconnue se produit lors de la validation</translation>
         <translation>Une exception inconnue se produit lors de la validation</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation>Paramètres</translation>
         <translation>Paramètres</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation>Pas de victoire spéciale</translation>
         <translation>Pas de victoire spéciale</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation>Récupérer l&apos;artefact</translation>
         <translation>Récupérer l&apos;artefact</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation>Engagez des créatures</translation>
         <translation>Engagez des créatures</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation>Accumuler des resources</translation>
         <translation>Accumuler des resources</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation>Construire un bâtiment</translation>
         <translation>Construire un bâtiment</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation>Conquérir une ville</translation>
         <translation>Conquérir une ville</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation>Battre un héros</translation>
         <translation>Battre un héros</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation>Transporter un artefact</translation>
         <translation>Transporter un artefact</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation>Tuer un monster</translation>
         <translation>Tuer un monster</translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Annuler</translation>
         <translation>Annuler</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation>Pas de modèle</translation>
         <translation>Pas de modèle</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation>Pas de modèles pour les paramètres spécifiés. La carte aléatoire ne peut pas être générée.</translation>
         <translation>Pas de modèles pour les paramètres spécifiés. La carte aléatoire ne peut pas être générée.</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation>Echec de RMG</translation>
         <translation>Echec de RMG</translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/german.ts

@@ -42,7 +42,7 @@
         <translation>Entfernen</translation>
         <translation>Entfernen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation>Neues Ereignis</translation>
         <translation>Neues Ereignis</translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation>Kartenbeschreibung</translation>
         <translation>Kartenbeschreibung</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation>Maximales Level des Helden begrenzen</translation>
         <translation>Maximales Level des Helden begrenzen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation>Schwierigkeit</translation>
         <translation>Schwierigkeit</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Ansicht Untergrund</translation>
         <translation>Ansicht Untergrund</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Aussehen aktualisieren</translation>
         <translation>Aussehen aktualisieren</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation>Strg+Umschalt+=</translation>
         <translation>Strg+Umschalt+=</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>Bestätigung</translation>
         <translation>Bestätigung</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation>Ungespeicherte Änderungen gehen verloren, sind sie sicher?</translation>
         <translation>Ungespeicherte Änderungen gehen verloren, sind sie sicher?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Karte öffnen</translation>
         <translation>Karte öffnen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Alle unterstützten Karten (*.vmap *.h3m);;VCMI-Karten (*.vmap);;HoMM3-Karten (*.h3m)</translation>
         <translation>Alle unterstützten Karten (*.vmap *.h3m);;VCMI-Karten (*.vmap);;HoMM3-Karten (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Karte speichern</translation>
         <translation>Karte speichern</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>VCMI-Karten (*.vmap)</translation>
         <translation>VCMI-Karten (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Typ</translation>
         <translation>Typ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Oberfläche anzeigen</translation>
         <translation>Oberfläche anzeigen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation>Keine Objekte selektiert</translation>
         <translation>Keine Objekte selektiert</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation>Diese Operation ist unumkehrbar. Möchten sie fortsetzen?</translation>
         <translation>Diese Operation ist unumkehrbar. Möchten sie fortsetzen?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation>Fehler sind aufgetreten. %1 Objekte konnten nicht aktualisiert werden</translation>
         <translation>Fehler sind aufgetreten. %1 Objekte konnten nicht aktualisiert werden</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation>Als Bild speichern</translation>
         <translation>Als Bild speichern</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation>Zu konvertierende Karten auswählen</translation>
         <translation>Zu konvertierende Karten auswählen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation>HoMM3-Karten (*.h3m)</translation>
         <translation>HoMM3-Karten (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation>Verzeichnis zum Speichern der konvertierten Karten wählen</translation>
         <translation>Verzeichnis zum Speichern der konvertierten Karten wählen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation>Vorgang abgeschlossen</translation>
         <translation>Vorgang abgeschlossen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation>Erfolgreiche Konvertierung von %1 Karten</translation>
         <translation>Erfolgreiche Konvertierung von %1 Karten</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation>Die Karte konnte nicht konvertiert werden. Vorgang abgebrochen</translation>
         <translation>Die Karte konnte nicht konvertiert werden. Vorgang abgebrochen</translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(Standard)</translation>
         <translation>(Standard)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>Spieler-ID: %1</translation>
         <translation>Spieler-ID: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation>UNFLAGGBAR</translation>
         <translation>UNFLAGGBAR</translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished">Objekt kann nicht platziert werden</translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Typ</translation>
         <translation type="unfinished">Typ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Gebäude</translation>
         <translation type="unfinished">Gebäude</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished">Kreaturen</translation>
         <translation type="unfinished">Kreaturen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished">Entfernen</translation>
         <translation type="unfinished">Entfernen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished">Neues Ereignis</translation>
         <translation type="unfinished">Neues Ereignis</translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>Karte ist nicht geladen</translation>
         <translation>Karte ist nicht geladen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation>Keine Fraktionen für Spieler %1 erlaubt</translation>
         <translation>Keine Fraktionen für Spieler %1 erlaubt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>Keine Spieler dürfen diese Karte spielen</translation>
         <translation>Keine Spieler dürfen diese Karte spielen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>Karte ist für einen Spieler erlaubt und kann nicht gestartet werden</translation>
         <translation>Karte ist für einen Spieler erlaubt und kann nicht gestartet werden</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>Keine menschlichen Spieler dürfen diese Karte spielen</translation>
         <translation>Keine menschlichen Spieler dürfen diese Karte spielen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation>Gepanzerte Instanz %1 ist UNFLAGGABLE, muss aber NEUTRAL oder Spielerbesitzer haben</translation>
         <translation>Gepanzerte Instanz %1 ist UNFLAGGABLE, muss aber NEUTRAL oder Spielerbesitzer haben</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>Objekt %1 ist dem nicht spielbaren Spieler %2 zugewiesen</translation>
         <translation>Objekt %1 ist dem nicht spielbaren Spieler %2 zugewiesen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>Stadt %1 hat undefinierten Besitzer %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>Gefängnis %1 muss NEUTRAL sein</translation>
         <translation>Gefängnis %1 muss NEUTRAL sein</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>Held %1 muss einen Besitzer haben</translation>
         <translation>Held %1 muss einen Besitzer haben</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>Held %1 ist durch Karteneinstellungen verboten</translation>
         <translation>Held %1 ist durch Karteneinstellungen verboten</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>Held %1 hat Duplikat auf Karte</translation>
         <translation>Held %1 hat Duplikat auf Karte</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation>Held %1 hat einen leeren Typ und muss entfernt werden</translation>
         <translation>Held %1 hat einen leeren Typ und muss entfernt werden</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>Zauberschriftrolle %1 ist durch Karteneinstellungen verboten</translation>
         <translation>Zauberschriftrolle %1 ist durch Karteneinstellungen verboten</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation>Zauberschriftrolle %1 hat keine Instanz zugewiesen und muss entfernt werden</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>Artefakt %1 ist durch Karteneinstellungen verboten</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>Spieler %1 hat keine Startstadt</translation>
         <translation>Spieler %1 hat keine Startstadt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>Kartenname ist nicht angegeben</translation>
         <translation>Kartenname ist nicht angegeben</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>Kartenbeschreibung ist nicht angegeben</translation>
         <translation>Kartenbeschreibung ist nicht angegeben</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation>Karte enthält Objekt aus Mod &quot;%1&quot;, benötigt es aber nicht</translation>
         <translation>Karte enthält Objekt aus Mod &quot;%1&quot;, benötigt es aber nicht</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>Bei der Validierung ist eine Ausnahme aufgetreten: %1</translation>
         <translation>Bei der Validierung ist eine Ausnahme aufgetreten: %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>Unbekannte Ausnahme trat während der Validierung auf</translation>
         <translation>Unbekannte Ausnahme trat während der Validierung auf</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation>Parameter</translation>
         <translation>Parameter</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation>Kein besonderer Sieg</translation>
         <translation>Kein besonderer Sieg</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation>Artefakt sammeln</translation>
         <translation>Artefakt sammeln</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation>Kreaturen anheuern</translation>
         <translation>Kreaturen anheuern</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation>Ressourcen ansammeln</translation>
         <translation>Ressourcen ansammeln</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation>Gebäude errichten</translation>
         <translation>Gebäude errichten</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation>Stadt einnehmen</translation>
         <translation>Stadt einnehmen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation>Held besiegen</translation>
         <translation>Held besiegen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation>Artefakt transportieren</translation>
         <translation>Artefakt transportieren</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation>Monster töten</translation>
         <translation>Monster töten</translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Abbrechen</translation>
         <translation>Abbrechen</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation>Kein Template</translation>
         <translation>Kein Template</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation>Es wurde kein Template für Parameter erstellt. Zufällige Karte kann nicht generiert werden.</translation>
         <translation>Es wurde kein Template für Parameter erstellt. Zufällige Karte kann nicht generiert werden.</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation>RMG-Fehler</translation>
         <translation>RMG-Fehler</translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/polish.ts

@@ -42,7 +42,7 @@
         <translation>Usuń</translation>
         <translation>Usuń</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation>Nowe zdarzenie</translation>
         <translation>Nowe zdarzenie</translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation>Opis mapy</translation>
         <translation>Opis mapy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation>Ogranicz maksymalny poziom bohaterów</translation>
         <translation>Ogranicz maksymalny poziom bohaterów</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation>Poziom trudności</translation>
         <translation>Poziom trudności</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Pokaż podziemia</translation>
         <translation>Pokaż podziemia</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Aktualizuj wygląd</translation>
         <translation>Aktualizuj wygląd</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation>Ctrl+Shift+=</translation>
         <translation>Ctrl+Shift+=</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>Potwierdzenie</translation>
         <translation>Potwierdzenie</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation>Niezapisane zmiany zostaną utracone, jesteś pewny?</translation>
         <translation>Niezapisane zmiany zostaną utracone, jesteś pewny?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Otwórz mapę</translation>
         <translation>Otwórz mapę</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Wszystkie wspierane mapy (*.vmap *.h3m);;Mapy VCMI(*.vmap);;Mapy HoMM3(*.h3m)</translation>
         <translation>Wszystkie wspierane mapy (*.vmap *.h3m);;Mapy VCMI(*.vmap);;Mapy HoMM3(*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Zapisz mapę</translation>
         <translation>Zapisz mapę</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Mapy VCMI (*.vmap)</translation>
         <translation>Mapy VCMI (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Typ</translation>
         <translation>Typ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Pokaż powierzchnię</translation>
         <translation>Pokaż powierzchnię</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation>Brak wybranych obiektów</translation>
         <translation>Brak wybranych obiektów</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation>Ta operacja jest nieodwracalna. Czy chcesz kontynuować?</translation>
         <translation>Ta operacja jest nieodwracalna. Czy chcesz kontynuować?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation>Wystąpiły błędy. %1 obiektów nie zostało zaktualizowanych</translation>
         <translation>Wystąpiły błędy. %1 obiektów nie zostało zaktualizowanych</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation>Zapisz jako obraz</translation>
         <translation>Zapisz jako obraz</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation>Wybierz mapy do konwersji</translation>
         <translation>Wybierz mapy do konwersji</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation>Mapy HoMM3(*.h3m)</translation>
         <translation>Mapy HoMM3(*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation>Wybierz folder zapisu skonwertowanych map</translation>
         <translation>Wybierz folder zapisu skonwertowanych map</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation>Operacja zakończona</translation>
         <translation>Operacja zakończona</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation>Pomyślnie skonwertowano %1 map</translation>
         <translation>Pomyślnie skonwertowano %1 map</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation>Nieudana konwersja mapy. Przerywanie operacji</translation>
         <translation>Nieudana konwersja mapy. Przerywanie operacji</translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(domyślny)</translation>
         <translation>(domyślny)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>ID gracza: %1</translation>
         <translation>ID gracza: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation>NIEOFLAGOWYWALNY</translation>
         <translation>NIEOFLAGOWYWALNY</translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished">Nie można umieścić obiektu</translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation>Wyłącz wszystkie</translation>
         <translation>Wyłącz wszystkie</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Typ</translation>
         <translation>Typ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation>Włączony</translation>
         <translation>Włączony</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation>Zbudowany</translation>
         <translation>Zbudowany</translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation>Budynki</translation>
         <translation>Budynki</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation>Stworzenia</translation>
         <translation>Stworzenia</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation>OK</translation>
         <translation>OK</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation>Stworzenie poziomu %1 / Ulepszone stworzenie poziomu %1</translation>
         <translation>Stworzenie poziomu %1 / Ulepszone stworzenie poziomu %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation>Dzień %1 - %2</translation>
         <translation>Dzień %1 - %2</translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation>Usuń</translation>
         <translation>Usuń</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation>Dzień %1 - %2</translation>
         <translation>Dzień %1 - %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation>Nowe zdarzenie</translation>
         <translation>Nowe zdarzenie</translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>Mapa nie została wczytana</translation>
         <translation>Mapa nie została wczytana</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation>Brak dozwolonych frakcji dla gracza %1</translation>
         <translation>Brak dozwolonych frakcji dla gracza %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>Żaden gracz nie jest dozwolony do rozegrania tej mapy</translation>
         <translation>Żaden gracz nie jest dozwolony do rozegrania tej mapy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>Mapa jest dozwolona dla jednego gracza i nie może być rozpoczęta</translation>
         <translation>Mapa jest dozwolona dla jednego gracza i nie może być rozpoczęta</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>Żaden gracz ludzki nie został dozwolony by rozegrać tą mapę</translation>
         <translation>Żaden gracz ludzki nie został dozwolony by rozegrać tą mapę</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation>Obiekt z armią %1 jest nie do oflagowania, lecz musi mieć właściciela neutralnego lub gracza</translation>
         <translation>Obiekt z armią %1 jest nie do oflagowania, lecz musi mieć właściciela neutralnego lub gracza</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>Obiekt %1 został przypisany do niegrywalnego gracza %2</translation>
         <translation>Obiekt %1 został przypisany do niegrywalnego gracza %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>Miasto %1 ma niezdefiniowanego właściciela %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>Więzienie %1 musi być neutralne</translation>
         <translation>Więzienie %1 musi być neutralne</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>Bohater %1 musi mieć właściciela</translation>
         <translation>Bohater %1 musi mieć właściciela</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>Bohater %1 jest zabroniony przez ustawienia mapy</translation>
         <translation>Bohater %1 jest zabroniony przez ustawienia mapy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>Bohater %1 posiada duplikat na mapie</translation>
         <translation>Bohater %1 posiada duplikat na mapie</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation>Bohater %1 jest pustego typu i musi zostać usunięty</translation>
         <translation>Bohater %1 jest pustego typu i musi zostać usunięty</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>Zwój z zaklęciem %1 jest zabroniony przez ustawienia mapy</translation>
         <translation>Zwój z zaklęciem %1 jest zabroniony przez ustawienia mapy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation>Zwój z zaklęciem %1 nie ma przypisanej instancji i musi zostać usunięty</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>Artefakt %1 jest zabroniony przez ustawienia mapy</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>Gracz %1 nie ma żadnego startowego miasta</translation>
         <translation>Gracz %1 nie ma żadnego startowego miasta</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>Nazwa mapy nie została ustawiona</translation>
         <translation>Nazwa mapy nie została ustawiona</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>Opis mapy nie został ustawiony</translation>
         <translation>Opis mapy nie został ustawiony</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation>Mapa zawiera obiekt z modyfikacji %1 ale nie wymaga tej modyfikacji</translation>
         <translation>Mapa zawiera obiekt z modyfikacji %1 ale nie wymaga tej modyfikacji</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>Wystąpił wyjątek podczas walidacji: %1</translation>
         <translation>Wystąpił wyjątek podczas walidacji: %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>Wystąpił nieznane wyjątek podczas walidacji</translation>
         <translation>Wystąpił nieznane wyjątek podczas walidacji</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation>Parametry</translation>
         <translation>Parametry</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation>Bez specjalnych warunków zwycięstwa</translation>
         <translation>Bez specjalnych warunków zwycięstwa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation>Zdobądź artefakt</translation>
         <translation>Zdobądź artefakt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation>Zdobądź stworzenia</translation>
         <translation>Zdobądź stworzenia</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation>Zbierz zasoby</translation>
         <translation>Zbierz zasoby</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation>Zbuduj budynek</translation>
         <translation>Zbuduj budynek</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation>Zdobądź miasto</translation>
         <translation>Zdobądź miasto</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation>Pokonaj bohatera</translation>
         <translation>Pokonaj bohatera</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation>Przenieś artefakt</translation>
         <translation>Przenieś artefakt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation>Zabij potwora</translation>
         <translation>Zabij potwora</translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Anuluj</translation>
         <translation>Anuluj</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation>Brak szablonu</translation>
         <translation>Brak szablonu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation>Brak szablonu dla wybranych parametrów. Mapa losowa nie może zostać wygenerowana.</translation>
         <translation>Brak szablonu dla wybranych parametrów. Mapa losowa nie może zostać wygenerowana.</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation>Niepowodzenie generatora map losowych</translation>
         <translation>Niepowodzenie generatora map losowych</translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/portuguese.ts

@@ -42,7 +42,7 @@
         <translation>Remover</translation>
         <translation>Remover</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation>Novo evento</translation>
         <translation>Novo evento</translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation>Descrição do mapa</translation>
         <translation>Descrição do mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation>Limite máximo do nível dos heróis</translation>
         <translation>Limite máximo do nível dos heróis</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation>Dificuldade</translation>
         <translation>Dificuldade</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Visualizar subterrâneo</translation>
         <translation>Visualizar subterrâneo</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Atualizar aparência</translation>
         <translation>Atualizar aparência</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation>Ctrl+Shift+=</translation>
         <translation>Ctrl+Shift+=</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>Confirmação</translation>
         <translation>Confirmação</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation>As alterações não salvas serão perdidas. Tem certeza?</translation>
         <translation>As alterações não salvas serão perdidas. Tem certeza?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Abrir mapa</translation>
         <translation>Abrir mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Todos os mapas suportados (*.vmap *.h3m);;Mapas do VCMI (*.vmap);;Mapas do HoMM3 (*.h3m)</translation>
         <translation>Todos os mapas suportados (*.vmap *.h3m);;Mapas do VCMI (*.vmap);;Mapas do HoMM3 (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Salvar mapa</translation>
         <translation>Salvar mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Mapas do VCMI (*.vmap)</translation>
         <translation>Mapas do VCMI (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Tipo</translation>
         <translation>Tipo</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Visualizar superfície</translation>
         <translation>Visualizar superfície</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation>Nenhum objeto selecionado</translation>
         <translation>Nenhum objeto selecionado</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation>Esta operação é irreversível. Deseja continuar?</translation>
         <translation>Esta operação é irreversível. Deseja continuar?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation>Ocorreram erros. %1 objetos não foram atualizados</translation>
         <translation>Ocorreram erros. %1 objetos não foram atualizados</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation>Salvar como imagem</translation>
         <translation>Salvar como imagem</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation>Selecionar mapas para converter</translation>
         <translation>Selecionar mapas para converter</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation>Mapas do HoMM3 (*.h3m)</translation>
         <translation>Mapas do HoMM3 (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation>Escolher diretório para salvar mapas convertidos</translation>
         <translation>Escolher diretório para salvar mapas convertidos</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation>Operação concluída</translation>
         <translation>Operação concluída</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation>%1 mapas foram convertidos com sucesso</translation>
         <translation>%1 mapas foram convertidos com sucesso</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation>Falha ao converter o mapa. Abortar operação</translation>
         <translation>Falha ao converter o mapa. Abortar operação</translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(padrão)</translation>
         <translation>(padrão)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>ID do Jogador: %1</translation>
         <translation>ID do Jogador: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation>NÃO TEM BANDEIRA</translation>
         <translation>NÃO TEM BANDEIRA</translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished">Não é possível colocar objeto</translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Tipo</translation>
         <translation type="unfinished">Tipo</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Estruturas</translation>
         <translation type="unfinished">Estruturas</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished">Criaturas</translation>
         <translation type="unfinished">Criaturas</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished">Remover</translation>
         <translation type="unfinished">Remover</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished">Novo Evento</translation>
         <translation type="unfinished">Novo Evento</translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>O mapa não está carregado</translation>
         <translation>O mapa não está carregado</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation>Nenhuma facção permitida para o jogador %1</translation>
         <translation>Nenhuma facção permitida para o jogador %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>Nenhum jogador permitido para jogar este mapa</translation>
         <translation>Nenhum jogador permitido para jogar este mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>O mapa é permitido para um jogador e não pode ser iniciado</translation>
         <translation>O mapa é permitido para um jogador e não pode ser iniciado</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>Nenhum jogador humano permitido para jogar este mapa</translation>
         <translation>Nenhum jogador humano permitido para jogar este mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation>A instância protegida %1 não tem bandeira mas precisa set definida como neutra ou pertencente a um dos jogadores</translation>
         <translation>A instância protegida %1 não tem bandeira mas precisa set definida como neutra ou pertencente a um dos jogadores</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>O objeto %1 é atribuído a um jogador não jogável %2</translation>
         <translation>O objeto %1 é atribuído a um jogador não jogável %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>A cidade %1 possui proprietário indefinido %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>A prisão %1 deve set NEUTRA</translation>
         <translation>A prisão %1 deve set NEUTRA</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>O herói %1 deve ter um proprietário</translation>
         <translation>O herói %1 deve ter um proprietário</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>O herói %1 é proibido pelas configurações do mapa</translation>
         <translation>O herói %1 é proibido pelas configurações do mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>O herói %1 possui duplicata no mapa</translation>
         <translation>O herói %1 possui duplicata no mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation>O herói %1 possui um tipo vazio e deve set removido</translation>
         <translation>O herói %1 possui um tipo vazio e deve set removido</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>O pergaminho mágico %1 é proibido pelas configurações do mapa</translation>
         <translation>O pergaminho mágico %1 é proibido pelas configurações do mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation>O pergaminho mágico %1 não tem instância atribuída e deve set removido</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>O artefato %1 é proibido pelas configurações do mapa</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>O jogador %1 não possui nenhuma cidade inicial</translation>
         <translation>O jogador %1 não possui nenhuma cidade inicial</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>O nome do mapa não está especificado</translation>
         <translation>O nome do mapa não está especificado</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>A descrição do mapa não está especificada</translation>
         <translation>A descrição do mapa não está especificada</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation>O mapa contém objeto do mod &quot;%1&quot;, mas não o requer</translation>
         <translation>O mapa contém objeto do mod &quot;%1&quot;, mas não o requer</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>Ocorreu uma exceção durante a validação: %1</translation>
         <translation>Ocorreu uma exceção durante a validação: %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>Ocorreu uma exceção desconhecida durante a validação</translation>
         <translation>Ocorreu uma exceção desconhecida durante a validação</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation>Parâmetros</translation>
         <translation>Parâmetros</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation>Nenhuma vitória especial</translation>
         <translation>Nenhuma vitória especial</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation>Capturar artefato</translation>
         <translation>Capturar artefato</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation>Contratar criaturas</translation>
         <translation>Contratar criaturas</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation>Acumular recursos</translation>
         <translation>Acumular recursos</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation>Construir edifício</translation>
         <translation>Construir edifício</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation>Capturar cidade</translation>
         <translation>Capturar cidade</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation>Derrotar herói</translation>
         <translation>Derrotar herói</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation>Transporter artefato</translation>
         <translation>Transporter artefato</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation>Matar monstro</translation>
         <translation>Matar monstro</translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Cancelar</translation>
         <translation>Cancelar</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation>Sem modelo</translation>
         <translation>Sem modelo</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation>Sem modelo para os parâmetros especificados. O mapa aleatório não pode set gerado.</translation>
         <translation>Sem modelo para os parâmetros especificados. O mapa aleatório não pode set gerado.</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation>Falha do GMA</translation>
         <translation>Falha do GMA</translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/russian.ts

@@ -42,7 +42,7 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation type="unfinished">Описание карты</translation>
         <translation type="unfinished">Описание карты</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation type="unfinished">Сложность</translation>
         <translation type="unfinished">Сложность</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Вид на подземелье</translation>
         <translation>Вид на подземелье</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Обновить вид</translation>
         <translation>Обновить вид</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Открыть карту</translation>
         <translation>Открыть карту</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Все поддерживаемые карты  (*.vmap *.h3m);;Карты VCMI (*.vmap);;Карты Героев III (*.h3m)</translation>
         <translation>Все поддерживаемые карты  (*.vmap *.h3m);;Карты VCMI (*.vmap);;Карты Героев III (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Сохранить карту</translation>
         <translation>Сохранить карту</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Карты VCMI (*.vmap)</translation>
         <translation>Карты VCMI (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Тип</translation>
         <translation>Тип</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Вид на поверхность</translation>
         <translation>Вид на поверхность</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(по умолчанию)</translation>
         <translation>(по умолчанию)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>Игрок: %1</translation>
         <translation>Игрок: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Тип</translation>
         <translation type="unfinished">Тип</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Постройки</translation>
         <translation type="unfinished">Постройки</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>У города %1 неопределенный владелец %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
-        <source>Prison %1 must be a NEUTRAL</source>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
-        <source>Hero %1 must have an owner</source>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
-        <source>Hero %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="116"/>
+        <source>Prison %1 must be a NEUTRAL</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
-        <source>Hero %1 has duplicate on map</source>
+        <location filename="../validator.cpp" line="121"/>
+        <source>Hero %1 must have an owner</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
-        <source>Hero %1 has an empty type and must be removed</source>
+        <location filename="../validator.cpp" line="128"/>
+        <source>Hero %1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
-        <source>Spell scroll %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="131"/>
+        <source>Hero %1 has duplicate on map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
+        <location filename="../validator.cpp" line="134"/>
+        <source>Hero %1 has an empty type and must be removed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="145"/>
+        <source>Spell scroll %1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation type="unfinished">Параметры</translation>
         <translation type="unfinished">Параметры</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation type="unfinished">Нет специальной победы</translation>
         <translation type="unfinished">Нет специальной победы</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation type="unfinished">Взять артефакт</translation>
         <translation type="unfinished">Взять артефакт</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation type="unfinished">Нанять существ</translation>
         <translation type="unfinished">Нанять существ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation type="unfinished">Собрать ресурсы</translation>
         <translation type="unfinished">Собрать ресурсы</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation type="unfinished">Построить</translation>
         <translation type="unfinished">Построить</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation type="unfinished">Захватить город</translation>
         <translation type="unfinished">Захватить город</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation type="unfinished">Победить героя</translation>
         <translation type="unfinished">Победить героя</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation type="unfinished">Переместить артефакт</translation>
         <translation type="unfinished">Переместить артефакт</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Отмена</translation>
         <translation>Отмена</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/spanish.ts

@@ -42,7 +42,7 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation type="unfinished">Descripción del mapa</translation>
         <translation type="unfinished">Descripción del mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation type="unfinished">Dificultad</translation>
         <translation type="unfinished">Dificultad</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Ver subterráneo</translation>
         <translation>Ver subterráneo</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Actualizar apariencia</translation>
         <translation>Actualizar apariencia</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>Confirmación</translation>
         <translation>Confirmación</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation>Los cambios no guardados se perderán. Está usted seguro ?</translation>
         <translation>Los cambios no guardados se perderán. Está usted seguro ?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Abrir mapa</translation>
         <translation>Abrir mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Todos los mapas soportados (*.vmap *.h3m);;Mapas VCMI (*.vmap);;Mapas HoMM3 (*.h3m)</translation>
         <translation>Todos los mapas soportados (*.vmap *.h3m);;Mapas VCMI (*.vmap);;Mapas HoMM3 (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Guardar mapa</translation>
         <translation>Guardar mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Mapas VCMI (*.vmap)</translation>
         <translation>Mapas VCMI (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Tipo</translation>
         <translation>Tipo</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Ver superficie</translation>
         <translation>Ver superficie</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(predeterminado)</translation>
         <translation>(predeterminado)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>ID de jugador: %1</translation>
         <translation>ID de jugador: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Tipo</translation>
         <translation type="unfinished">Tipo</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Edificios</translation>
         <translation type="unfinished">Edificios</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>No se ha cargado ningún mapa</translation>
         <translation>No se ha cargado ningún mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>No hay jugadores autorizados a jugar en este mapa</translation>
         <translation>No hay jugadores autorizados a jugar en este mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>El mapa está autorizado para un jugador y no se puede iniciar</translation>
         <translation>El mapa está autorizado para un jugador y no se puede iniciar</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>Ningún jugador humano puede jugar en este mapa</translation>
         <translation>Ningún jugador humano puede jugar en este mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation>La instancia protegida %1 NOSEPUEDEMARCAR, pero debe tener un propietario NEUTRAL o jugador</translation>
         <translation>La instancia protegida %1 NOSEPUEDEMARCAR, pero debe tener un propietario NEUTRAL o jugador</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>El artículo %1 está asignado al jugador no jugable %2</translation>
         <translation>El artículo %1 está asignado al jugador no jugable %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>La ciudad %1 no tiene un propietario definido %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>%1 prisión debe ser NEUTRA</translation>
         <translation>%1 prisión debe ser NEUTRA</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>El héroe %1 debe tener un propietario</translation>
         <translation>El héroe %1 debe tener un propietario</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>El héroe %1 está prohibido por la configuración del mapa</translation>
         <translation>El héroe %1 está prohibido por la configuración del mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>El héroe %1 tiene un duplicado en el mapa</translation>
         <translation>El héroe %1 tiene un duplicado en el mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation>El héroe %1 tiene un tipo vacío y debe eliminarse</translation>
         <translation>El héroe %1 tiene un tipo vacío y debe eliminarse</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>%1 desplazamiento de hechizos está prohibido por la configuración del mapa</translation>
         <translation>%1 desplazamiento de hechizos está prohibido por la configuración del mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation>Pergamino ortográfico %1 no tiene una instancia asignada y debe eliminarse</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>El artefacto %1 está prohibido por la configuración del mapa</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>El jugador %1 no tiene ciudad inicial</translation>
         <translation>El jugador %1 no tiene ciudad inicial</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>No se especifica el nombre del mapa</translation>
         <translation>No se especifica el nombre del mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>No se especifica la descripción del mapa</translation>
         <translation>No se especifica la descripción del mapa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>Se produce una excepción durante la validación: %1</translation>
         <translation>Se produce una excepción durante la validación: %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>Se produce una excepción desconocida durante la validación</translation>
         <translation>Se produce una excepción desconocida durante la validación</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation type="unfinished">Parámetros</translation>
         <translation type="unfinished">Parámetros</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation type="unfinished">Sin victoria especial</translation>
         <translation type="unfinished">Sin victoria especial</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation type="unfinished">Capturar artefacto</translation>
         <translation type="unfinished">Capturar artefacto</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation type="unfinished">Contratar criaturas</translation>
         <translation type="unfinished">Contratar criaturas</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation type="unfinished">Acumular recursos</translation>
         <translation type="unfinished">Acumular recursos</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation type="unfinished">Construir edificio</translation>
         <translation type="unfinished">Construir edificio</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation type="unfinished">Capturar ciudad</translation>
         <translation type="unfinished">Capturar ciudad</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation type="unfinished">Vencer héroe</translation>
         <translation type="unfinished">Vencer héroe</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation type="unfinished">Transportar artefacto</translation>
         <translation type="unfinished">Transportar artefacto</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Cancelar</translation>
         <translation>Cancelar</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/ukrainian.ts

@@ -42,7 +42,7 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation type="unfinished">Опис мапи</translation>
         <translation type="unfinished">Опис мапи</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation type="unfinished">Обмежити максимальний рівень героїв</translation>
         <translation type="unfinished">Обмежити максимальний рівень героїв</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation type="unfinished">Складність</translation>
         <translation type="unfinished">Складність</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Дивитись підземелля</translation>
         <translation>Дивитись підземелля</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Оновити вигляд</translation>
         <translation>Оновити вигляд</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Відкрити мапу</translation>
         <translation>Відкрити мапу</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Всі підтримувані мапи (*.vmap *.h3m);;Мапи VCMI (*.vmap);;Мапи HoMM3 (*.h3m)</translation>
         <translation>Всі підтримувані мапи (*.vmap *.h3m);;Мапи VCMI (*.vmap);;Мапи HoMM3 (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Зберегти мапу</translation>
         <translation>Зберегти мапу</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Мапи VCMI</translation>
         <translation>Мапи VCMI</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Тип</translation>
         <translation>Тип</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Дивитись поверхню</translation>
         <translation>Дивитись поверхню</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(за замовчуванням)</translation>
         <translation>(за замовчуванням)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>Гравець %1</translation>
         <translation>Гравець %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Тип</translation>
         <translation type="unfinished">Тип</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Будівлі</translation>
         <translation type="unfinished">Будівлі</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>Місто %1 має невизначеного володаря %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
-        <source>Prison %1 must be a NEUTRAL</source>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
-        <source>Hero %1 must have an owner</source>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
-        <source>Hero %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="116"/>
+        <source>Prison %1 must be a NEUTRAL</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
-        <source>Hero %1 has duplicate on map</source>
+        <location filename="../validator.cpp" line="121"/>
+        <source>Hero %1 must have an owner</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
-        <source>Hero %1 has an empty type and must be removed</source>
+        <location filename="../validator.cpp" line="128"/>
+        <source>Hero %1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
-        <source>Spell scroll %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="131"/>
+        <source>Hero %1 has duplicate on map</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
+        <location filename="../validator.cpp" line="134"/>
+        <source>Hero %1 has an empty type and must be removed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
+        <location filename="../validator.cpp" line="145"/>
+        <source>Spell scroll %1 is prohibited by map settings</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation type="unfinished">Параметри</translation>
         <translation type="unfinished">Параметри</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation type="unfinished">Немає особливої перемоги</translation>
         <translation type="unfinished">Немає особливої перемоги</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation type="unfinished">Отримати артефакт</translation>
         <translation type="unfinished">Отримати артефакт</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation type="unfinished">Найняти істот</translation>
         <translation type="unfinished">Найняти істот</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation type="unfinished">Накопичити ресурси</translation>
         <translation type="unfinished">Накопичити ресурси</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation type="unfinished">Побудувати будівлю</translation>
         <translation type="unfinished">Побудувати будівлю</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation type="unfinished">Захопити місто</translation>
         <translation type="unfinished">Захопити місто</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation type="unfinished">Перемогти героя</translation>
         <translation type="unfinished">Перемогти героя</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation type="unfinished">Доставити артефакт</translation>
         <translation type="unfinished">Доставити артефакт</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Скасувати</translation>
         <translation>Скасувати</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>

+ 113 - 78
mapeditor/translation/vietnamese.ts

@@ -42,7 +42,7 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/eventsettings.cpp" line="101"/>
+        <location filename="../mapsettings/eventsettings.cpp" line="118"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -65,12 +65,32 @@
         <translation type="unfinished">Mô tả bản đồ</translation>
         <translation type="unfinished">Mô tả bản đồ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="76"/>
+        <location filename="../mapsettings/generalsettings.ui" line="52"/>
+        <source>Author</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="62"/>
+        <source>Author contact (e.g. email)</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="72"/>
+        <source>Map Creation Time</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="86"/>
+        <source>Map Version</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapsettings/generalsettings.ui" line="120"/>
         <source>Limit maximum heroes level</source>
         <source>Limit maximum heroes level</source>
         <translation type="unfinished">Giới hạn cấp tướng tối đa</translation>
         <translation type="unfinished">Giới hạn cấp tướng tối đa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/generalsettings.ui" line="85"/>
+        <location filename="../mapsettings/generalsettings.ui" line="129"/>
         <source>Difficulty</source>
         <source>Difficulty</source>
         <translation type="unfinished">Độ khó</translation>
         <translation type="unfinished">Độ khó</translation>
     </message>
     </message>
@@ -339,7 +359,7 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1051"/>
         <location filename="../mainwindow.ui" line="1051"/>
-        <location filename="../mainwindow.cpp" line="806"/>
+        <location filename="../mainwindow.cpp" line="822"/>
         <source>View underground</source>
         <source>View underground</source>
         <translation>Xem hang ngầm</translation>
         <translation>Xem hang ngầm</translation>
     </message>
     </message>
@@ -421,9 +441,9 @@
     </message>
     </message>
     <message>
     <message>
         <location filename="../mainwindow.ui" line="1205"/>
         <location filename="../mainwindow.ui" line="1205"/>
-        <location filename="../mainwindow.cpp" line="1077"/>
-        <location filename="../mainwindow.cpp" line="1081"/>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Update appearance</source>
         <source>Update appearance</source>
         <translation>Cập nhật hiện thị</translation>
         <translation>Cập nhật hiện thị</translation>
     </message>
     </message>
@@ -554,92 +574,92 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Confirmation</source>
         <source>Confirmation</source>
         <translation>Xác nhận</translation>
         <translation>Xác nhận</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="280"/>
+        <location filename="../mainwindow.cpp" line="296"/>
         <source>Unsaved changes will be lost, are you sure?</source>
         <source>Unsaved changes will be lost, are you sure?</source>
         <translation>Thay đổi chưa lưu sẽ bị mất, bạn có chắc chắn?</translation>
         <translation>Thay đổi chưa lưu sẽ bị mất, bạn có chắc chắn?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="406"/>
+        <location filename="../mainwindow.cpp" line="422"/>
         <source>Open map</source>
         <source>Open map</source>
         <translation>Mở bản đồ</translation>
         <translation>Mở bản đồ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="408"/>
+        <location filename="../mainwindow.cpp" line="424"/>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <source>All supported maps (*.vmap *.h3m);;VCMI maps(*.vmap);;HoMM3 maps(*.h3m)</source>
         <translation>Tất cả bản đồ hỗ trợ (*.vmap *.h3m);;Bản đồ VCMI (*.vmap);;Bản đồ HoMM3 (*.h3m)</translation>
         <translation>Tất cả bản đồ hỗ trợ (*.vmap *.h3m);;Bản đồ VCMI (*.vmap);;Bản đồ HoMM3 (*.h3m)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>Save map</source>
         <source>Save map</source>
         <translation>Lưu bản đồ</translation>
         <translation>Lưu bản đồ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="459"/>
+        <location filename="../mainwindow.cpp" line="475"/>
         <source>VCMI maps (*.vmap)</source>
         <source>VCMI maps (*.vmap)</source>
         <translation>Bản đồ VCMI (*.vmap)</translation>
         <translation>Bản đồ VCMI (*.vmap)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="648"/>
+        <location filename="../mainwindow.cpp" line="664"/>
         <source>Type</source>
         <source>Type</source>
         <translation>Loại</translation>
         <translation>Loại</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="810"/>
+        <location filename="../mainwindow.cpp" line="826"/>
         <source>View surface</source>
         <source>View surface</source>
         <translation>Xem bề mặt</translation>
         <translation>Xem bề mặt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1077"/>
+        <location filename="../mainwindow.cpp" line="1093"/>
         <source>No objects selected</source>
         <source>No objects selected</source>
         <translation>Không mục tiêu được chọn</translation>
         <translation>Không mục tiêu được chọn</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1081"/>
+        <location filename="../mainwindow.cpp" line="1097"/>
         <source>This operation is irreversible. Do you want to continue?</source>
         <source>This operation is irreversible. Do you want to continue?</source>
         <translation>Thao tác này không thể đảo ngược. Bạn muốn tiếp tục?</translation>
         <translation>Thao tác này không thể đảo ngược. Bạn muốn tiếp tục?</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1138"/>
+        <location filename="../mainwindow.cpp" line="1154"/>
         <source>Errors occurred. %1 objects were not updated</source>
         <source>Errors occurred. %1 objects were not updated</source>
         <translation>Xảy ra lỗi. %1 mục tiêu không được cập nhật</translation>
         <translation>Xảy ra lỗi. %1 mục tiêu không được cập nhật</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1178"/>
+        <location filename="../mainwindow.cpp" line="1194"/>
         <source>Save to image</source>
         <source>Save to image</source>
         <translation>Lưu thành ảnh</translation>
         <translation>Lưu thành ảnh</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1197"/>
+        <location filename="../mainwindow.cpp" line="1213"/>
         <source>Select maps to convert</source>
         <source>Select maps to convert</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1199"/>
+        <location filename="../mainwindow.cpp" line="1215"/>
         <source>HoMM3 maps(*.h3m)</source>
         <source>HoMM3 maps(*.h3m)</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1203"/>
+        <location filename="../mainwindow.cpp" line="1219"/>
         <source>Choose directory to save converted maps</source>
         <source>Choose directory to save converted maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Operation completed</source>
         <source>Operation completed</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1216"/>
+        <location filename="../mainwindow.cpp" line="1232"/>
         <source>Successfully converted %1 maps</source>
         <source>Successfully converted %1 maps</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mainwindow.cpp" line="1220"/>
+        <location filename="../mainwindow.cpp" line="1236"/>
         <source>Failed to convert the map. Abort operation</source>
         <source>Failed to convert the map. Abort operation</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -824,7 +844,7 @@
         <translation>(mặc định)</translation>
         <translation>(mặc định)</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../playerparams.cpp" line="111"/>
+        <location filename="../playerparams.cpp" line="110"/>
         <source>Player ID: %1</source>
         <source>Player ID: %1</source>
         <translation>ID người chơi: %1</translation>
         <translation>ID người chơi: %1</translation>
     </message>
     </message>
@@ -924,6 +944,21 @@
         <source>UNFLAGGABLE</source>
         <source>UNFLAGGABLE</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="405"/>
+        <source>Can&apos;t place object</source>
+        <translation type="unfinished">Không thể đặt vật thể</translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="577"/>
+        <source>There can only be one grail object on the map.</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../mapcontroller.cpp" line="583"/>
+        <source>Hero %1 cannot be created as NEUTRAL.</source>
+        <translation type="unfinished"></translation>
+    </message>
 </context>
 </context>
 <context>
 <context>
     <name>QuestWidget</name>
     <name>QuestWidget</name>
@@ -1456,17 +1491,17 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Type</source>
         <source>Type</source>
         <translation type="unfinished">Loại</translation>
         <translation type="unfinished">Loại</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Enabled</source>
         <source>Enabled</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/townbuildingswidget.cpp" line="77"/>
+        <location filename="../inspector/townbuildingswidget.cpp" line="132"/>
         <source>Built</source>
         <source>Built</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1529,22 +1564,22 @@
         <translation type="unfinished">Công trình</translation>
         <translation type="unfinished">Công trình</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="216"/>
+        <location filename="../inspector/towneventdialog.ui" line="219"/>
         <source>Creatures</source>
         <source>Creatures</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.ui" line="255"/>
+        <location filename="../inspector/towneventdialog.ui" line="258"/>
         <source>OK</source>
         <source>OK</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="177"/>
+        <location filename="../inspector/towneventdialog.cpp" line="163"/>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <source>Creature level %1 / Creature level %1 Upgrade</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventdialog.cpp" line="219"/>
+        <location filename="../inspector/towneventdialog.cpp" line="205"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1572,12 +1607,12 @@
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="105"/>
+        <location filename="../inspector/towneventswidget.cpp" line="106"/>
         <source>Day %1 - %2</source>
         <source>Day %1 - %2</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../inspector/towneventswidget.cpp" line="126"/>
+        <location filename="../inspector/towneventswidget.cpp" line="127"/>
         <source>New event</source>
         <source>New event</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -1695,107 +1730,107 @@
         <translation>Bản đồ không thể tải</translation>
         <translation>Bản đồ không thể tải</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="72"/>
+        <location filename="../validator.cpp" line="74"/>
         <source>No factions allowed for player %1</source>
         <source>No factions allowed for player %1</source>
         <translation>Không có tộc được phép cho người chơi %1</translation>
         <translation>Không có tộc được phép cho người chơi %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="75"/>
+        <location filename="../validator.cpp" line="77"/>
         <source>No players allowed to play this map</source>
         <source>No players allowed to play this map</source>
         <translation>Không có người chơi được phép chơi bản đồ này</translation>
         <translation>Không có người chơi được phép chơi bản đồ này</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="77"/>
+        <location filename="../validator.cpp" line="79"/>
         <source>Map is allowed for one player and cannot be started</source>
         <source>Map is allowed for one player and cannot be started</source>
         <translation>Bản đồ cho phép 1 người chơi nhưng không thể bắt đầu</translation>
         <translation>Bản đồ cho phép 1 người chơi nhưng không thể bắt đầu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="79"/>
+        <location filename="../validator.cpp" line="81"/>
         <source>No human players allowed to play this map</source>
         <source>No human players allowed to play this map</source>
         <translation>Không có người nào được phép chơi bản đồ này</translation>
         <translation>Không có người nào được phép chơi bản đồ này</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="95"/>
+        <location filename="../validator.cpp" line="97"/>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <source>Armored instance %1 is UNFLAGGABLE but must have NEUTRAL or player owner</source>
         <translation>Thực thể %1 không gắn cờ nhưng phải có quái trung lập hoặc người chơi sở hữu</translation>
         <translation>Thực thể %1 không gắn cờ nhưng phải có quái trung lập hoặc người chơi sở hữu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="101"/>
+        <location filename="../validator.cpp" line="103"/>
         <source>Object %1 is assigned to non-playable player %2</source>
         <source>Object %1 is assigned to non-playable player %2</source>
         <translation>Vật thể %1 được gán cho người không thể chơi %2</translation>
         <translation>Vật thể %1 được gán cho người không thể chơi %2</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="108"/>
-        <source>Town %1 has undefined owner %2</source>
-        <translation>Thành %1 có chủ nhân không xác định %2</translation>
+        <location filename="../validator.cpp" line="148"/>
+        <source>Spell scroll % 1 doesn&apos;t have instance assigned and must be removed</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="154"/>
+        <source>Artifact % 1 is prohibited by map settings</source>
+        <translation type="unfinished"></translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="118"/>
+        <location filename="../validator.cpp" line="168"/>
+        <source>Player %1 has no towns and heroes assigned</source>
+        <translation type="unfinished"></translation>
+    </message>
+    <message>
+        <location filename="../validator.cpp" line="116"/>
         <source>Prison %1 must be a NEUTRAL</source>
         <source>Prison %1 must be a NEUTRAL</source>
         <translation>Nhà giam %1 phải trung lập</translation>
         <translation>Nhà giam %1 phải trung lập</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="124"/>
+        <location filename="../validator.cpp" line="121"/>
         <source>Hero %1 must have an owner</source>
         <source>Hero %1 must have an owner</source>
         <translation>Tướng %1 phải có chủ</translation>
         <translation>Tướng %1 phải có chủ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="129"/>
+        <location filename="../validator.cpp" line="128"/>
         <source>Hero %1 is prohibited by map settings</source>
         <source>Hero %1 is prohibited by map settings</source>
         <translation>Tướng %1 bị cấm bởi bản đồ</translation>
         <translation>Tướng %1 bị cấm bởi bản đồ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="132"/>
+        <location filename="../validator.cpp" line="131"/>
         <source>Hero %1 has duplicate on map</source>
         <source>Hero %1 has duplicate on map</source>
         <translation>Tướng %1 bị trùng trên bản đồ</translation>
         <translation>Tướng %1 bị trùng trên bản đồ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="135"/>
+        <location filename="../validator.cpp" line="134"/>
         <source>Hero %1 has an empty type and must be removed</source>
         <source>Hero %1 has an empty type and must be removed</source>
         <translation>Tướng %1 có kiểu rỗng và phải được xóa</translation>
         <translation>Tướng %1 có kiểu rỗng và phải được xóa</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="146"/>
+        <location filename="../validator.cpp" line="145"/>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <source>Spell scroll %1 is prohibited by map settings</source>
         <translation>Cuộn phép %1 bị cấm bởi bản đồ</translation>
         <translation>Cuộn phép %1 bị cấm bởi bản đồ</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="149"/>
-        <source>Spell scroll %1 doesn&apos;t have instance assigned and must be removed</source>
-        <translation>Cuộn phép %1 không có đối tượng được gán và phải được xóa</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="155"/>
-        <source>Artifact %1 is prohibited by map settings</source>
-        <translation>Vật phẩm %1 bị cấm bởi bản đồ</translation>
-    </message>
-    <message>
-        <location filename="../validator.cpp" line="164"/>
+        <location filename="../validator.cpp" line="170"/>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <source>Player %1 doesn&apos;t have any starting town</source>
         <translation>Người chơi %1 không có thành khởi đầu nào</translation>
         <translation>Người chơi %1 không có thành khởi đầu nào</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="168"/>
+        <location filename="../validator.cpp" line="176"/>
         <source>Map name is not specified</source>
         <source>Map name is not specified</source>
         <translation>Tên bản đồ không có</translation>
         <translation>Tên bản đồ không có</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="170"/>
+        <location filename="../validator.cpp" line="178"/>
         <source>Map description is not specified</source>
         <source>Map description is not specified</source>
         <translation>Mô tả bản đồ không có</translation>
         <translation>Mô tả bản đồ không có</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="177"/>
+        <location filename="../validator.cpp" line="185"/>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <source>Map contains object from mod &quot;%1&quot;, but doesn&apos;t require it</source>
         <translation>Bản đồ chứa đối tượng từ bản mở rộng &quot;%1&quot;, nhưng bản mở rộng đó không được yêu cầu</translation>
         <translation>Bản đồ chứa đối tượng từ bản mở rộng &quot;%1&quot;, nhưng bản mở rộng đó không được yêu cầu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="183"/>
+        <location filename="../validator.cpp" line="191"/>
         <source>Exception occurs during validation: %1</source>
         <source>Exception occurs during validation: %1</source>
         <translation>Ngoại lệ xuất hiện trong quá trình phê chuẩn: %1</translation>
         <translation>Ngoại lệ xuất hiện trong quá trình phê chuẩn: %1</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../validator.cpp" line="187"/>
+        <location filename="../validator.cpp" line="195"/>
         <source>Unknown exception occurs during validation</source>
         <source>Unknown exception occurs during validation</source>
         <translation>Ngoại lệ chưa biết xuất hiện trong quá trình phê chuẩn: %1</translation>
         <translation>Ngoại lệ chưa biết xuất hiện trong quá trình phê chuẩn: %1</translation>
     </message>
     </message>
@@ -1828,47 +1863,47 @@
         <translation type="unfinished">Tham số</translation>
         <translation type="unfinished">Tham số</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="36"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
         <source>No special victory</source>
         <source>No special victory</source>
         <translation type="unfinished">Không có chiến thắng đặc biệt</translation>
         <translation type="unfinished">Không có chiến thắng đặc biệt</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="37"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
         <source>Capture artifact</source>
         <source>Capture artifact</source>
         <translation type="unfinished">Đoạt vật phẩm</translation>
         <translation type="unfinished">Đoạt vật phẩm</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="38"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
         <source>Hire creatures</source>
         <source>Hire creatures</source>
         <translation type="unfinished">Thuê quái</translation>
         <translation type="unfinished">Thuê quái</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="39"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
         <source>Accumulate resources</source>
         <source>Accumulate resources</source>
         <translation type="unfinished">Cộng dồn tài nguyên</translation>
         <translation type="unfinished">Cộng dồn tài nguyên</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="40"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
         <source>Construct building</source>
         <source>Construct building</source>
         <translation type="unfinished">Xây công trình</translation>
         <translation type="unfinished">Xây công trình</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="41"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
         <source>Capture town</source>
         <source>Capture town</source>
         <translation type="unfinished">Đoạt thành</translation>
         <translation type="unfinished">Đoạt thành</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="42"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
         <source>Defeat hero</source>
         <source>Defeat hero</source>
         <translation type="unfinished">Đánh bại tướng</translation>
         <translation type="unfinished">Đánh bại tướng</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="43"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="45"/>
         <source>Transport artifact</source>
         <source>Transport artifact</source>
         <translation type="unfinished">Vận chuyển vật phẩm</translation>
         <translation type="unfinished">Vận chuyển vật phẩm</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../mapsettings/victoryconditions.cpp" line="44"/>
+        <location filename="../mapsettings/victoryconditions.cpp" line="46"/>
         <source>Kill monster</source>
         <source>Kill monster</source>
         <translation type="unfinished"></translation>
         <translation type="unfinished"></translation>
     </message>
     </message>
@@ -2040,17 +2075,17 @@
         <translation>Hủy</translation>
         <translation>Hủy</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template</source>
         <source>No template</source>
         <translation>Không dùng mẫu</translation>
         <translation>Không dùng mẫu</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="246"/>
+        <location filename="../windownewmap.cpp" line="248"/>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <source>No template for parameters specified. Random map cannot be generated.</source>
         <translation>Không có mẫu cho tham số chỉ định. Bản đồ ngẫu nhiên không thể tạo</translation>
         <translation>Không có mẫu cho tham số chỉ định. Bản đồ ngẫu nhiên không thể tạo</translation>
     </message>
     </message>
     <message>
     <message>
-        <location filename="../windownewmap.cpp" line="266"/>
+        <location filename="../windownewmap.cpp" line="268"/>
         <source>RMG failure</source>
         <source>RMG failure</source>
         <translation>Tạo bản đồ ngẫu nhiên thất bại</translation>
         <translation>Tạo bản đồ ngẫu nhiên thất bại</translation>
     </message>
     </message>

部分文件因为文件数量过多而无法显示