1
0
forked from 0ad/0ad

Solve some issues reported on Transifex, and update translation files

This was SVN commit r20781.
This commit is contained in:
Adrián Chaves 2018-01-07 00:10:14 +00:00
parent ae2e045df5
commit 11bcc7c0e7
21 changed files with 62 additions and 62 deletions

View File

@ -54,7 +54,7 @@ function openURL(url)
messageBox(
600, 200,
sprintf(
translate("Opening %(url)s\n in default web browser. Please wait..."),
translate("Opening %(url)s\n in default web browser. Please wait"),
{ "url": url }
),
translate("Opening page")

View File

@ -19,7 +19,7 @@
</object>
<object type="text" style="ModernLabelText">
<translatableAttribute id="caption">Loading map data. Please wait...</translatableAttribute>
<translatableAttribute id="caption">Loading map data. Please wait</translatableAttribute>
</object>
</object>

View File

@ -85,7 +85,7 @@ Ctrl + 1 (and so on up to Ctrl + 0): Create control group 1 (to 0) from the sele
Shift + 1 (to 0): Add control group 1 (to 0) to the selected units/buildings
Ctrl + F5 (and so on up to F8): Mark the current camera position, for jumping back to later.
F5, F6, F7, and F8: Move the camera to a marked position. Jump back to the last location if the camera is already over the marked position.
Z, X, C, V, B, N, M: With training buildings selected. Add the 1st, 2nd, ... unit shown to the training queue for all the selected buildings.
Z, X, C, V, B, N, M: With training buildings selected. Add the 1st, 2nd unit shown to the training queue for all the selected buildings.
PageUp with units selected: Highlights the units/buildings guarded by the selection.
PageDown with units/buildings selected: Highlights the units guarding the selection.
Tab: See all status bars (which would also show the building progress)

View File

@ -38,7 +38,7 @@ function lobbyStartConnect()
let room = Engine.ConfigDB_GetValue("user", "lobby.room");
let history = Number(Engine.ConfigDB_GetValue("user", "lobby.history"));
feedback.caption = translate("Connecting...");
feedback.caption = translate("Connecting");
// If they enter a different password, re-encrypt.
if (password != g_EncryptedPassword.substring(0, 10))
g_EncryptedPassword = Engine.EncryptPassword(password, username);
@ -61,7 +61,7 @@ function lobbyStartRegister()
let password = Engine.GetGUIObjectByName("registerPassword").caption;
let feedback = Engine.GetGUIObjectByName("feedback");
feedback.caption = translate("Registering...");
feedback.caption = translate("Registering");
g_EncryptedPassword = Engine.EncryptPassword(password, account);
Engine.StartRegisterXmppClient(account, g_EncryptedPassword);
g_LobbyIsConnecting = true;

View File

@ -411,7 +411,7 @@ function updateDiplomacy(opening = false)
let diplomacyCeasefireCounter = Engine.GetGUIObjectByName("diplomacyCeasefireCounter");
diplomacyCeasefireCounter.caption = sprintf(
translateWithContext("ceasefire", "Time remaining until ceasefire is over: %(time)s."),
translateWithContext("ceasefire", "Remaining ceasefire time: %(time)s."),
{ "time": timeToString(simState.ceasefireTimeRemaining) }
);
diplomacyCeasefireCounter.hidden = !isCeasefireActive;

View File

@ -155,7 +155,7 @@ var g_StatusMessageTypes = {
"reason": getDisconnectReason(msg.reason, true)
}),
"waiting_for_players": msg => translate("Waiting for players to connect:"),
"join_syncing": msg => translate("Synchronising gameplay with other players..."),
"join_syncing": msg => translate("Synchronising gameplay with other players"),
"active": msg => ""
};

View File

@ -496,7 +496,7 @@ function initGUILabelsAndButtons()
assignedState.state == "won" ?
translate("You have won the battle!") :
assignedState.state == "defeated" ?
translate("You have been defeated...") :
translate("You have been defeated") :
translate("You have abandoned the game.");
Engine.GetGUIObjectByName("timeElapsed").caption = sprintf(

View File

@ -1,4 +1,4 @@
"Zeus \[...] established his law: wisdom comes through suffering. \[...] So men against their will learn to practice moderation. \[...] Such grace is harsh and violent." - Aeschylus ("Oresteia", I. 176-183)
"Zeus \[…] established his law: wisdom comes through suffering. \[…] So men against their will learn to practice moderation. \[…] Such grace is harsh and violent." - Aeschylus ("Oresteia", I. 176-183)
"She \[Helen] brought to Ilium her dowry, destruction." - Aeschylus ("Oresteia", I. 406)
"In every tyrant's heart there springs in the end this poison, that he cannot trust a friend." - Aeschylus ("Prometheus Bound", 224-225)
"Time in the long run teaches all things." - Aeschylus ("Prometheus Bound", 981)
@ -18,7 +18,7 @@
"Spartans do not ask how many, only where the enemy are." - Agis II of Sparta (Plutarch, "Moralia", XVI. "Sayings of Spartans", 215d)
"Weep not for me, as I suffer unjustly, I am in a happier situation than my murderers." - Agis IV of Sparta upon seeing one of his executioners cry (Plutarch, "Parallel Lives", "Agis", sec. 20)
"Sex and sleep alone make me conscious that I am mortal." - Alexander the Great (Plutarch, "Parallel Lives", "Alexander", sec. 22)
"It is very servile to live in luxury, but very royal to toil. \[...] Don't you know that the end and object of conquest is to avoid the vices and infirmities of the subdued?" - Alexander the Great (Plutarch, "Parallel Lives", "Alexander", sec. 40)
"It is very servile to live in luxury, but very royal to toil. \[] Don't you know that the end and object of conquest is to avoid the vices and infirmities of the subdued?" - Alexander the Great (Plutarch, "Parallel Lives", "Alexander", sec. 40)
"Glorious are the deeds of those who undergo labour and run the risk of danger; and it is delightful to live a life of valor and to die leaving behind immortal glory." - Alexander the Great, addressing his troops (Arrian, "The Anabasis of Alexander", 5.26)
"I for one think that to a brave man there is no end to labours except the labours themselves, provided they lead to glorious achievements." - Alexander the Great, addressing his troops (Arrian, "The Anabasis of Alexander", 5.26)
"If I were not Alexander, I should wish to be Diogenes \[of Sinope]." - Alexander the Great, impressed by the simplicity of the philosopher he had met (Plutarch, "Moralia", XXII. "On the Fortunes of Alexander the Great", 332a-b)
@ -37,8 +37,8 @@
"Both oligarch and tyrant mistrust the people, and therefore deprive them of their arms." - Aristotle ("Politics, V. 1311a.11)
"I have gained this by philosophy: that I do without being commanded what others do only from fear of the law." - Aristotle (Diogenes Laertius, "The Lives and Opinions of Eminent Philosophers", Aristotle, sec. 20)
"I count him braver who overcomes his desires than him who conquers his enemies, for the hardest victory is over the self." - Aristotle (Stobaeus, "Florilegium", 223)
"Alexander himself, plagued by thirst, with great pain and difficulty nevertheless led the army on foot \[...]. At this time a few of the light-armed soldiers \[...] found some water \[...], poured the water into a helmet and carried it to him. He took it, and commending the men who brought it, immediately poured it upon the ground in the sight of all." - Arrian about Alexander's march through the Gedrosian desert ("The Anabasis of Alexander", 6.26)
"Thrusting his spear into Mithridates' face, he \[Alexander] hurled him to the ground. Then Rhoesaces \[a Persian] \[...] struck him on the head with his sword. \[...] Alexander hurled him too to the ground, piercing with his lance through his breastplate into his chest. Sphithridates \[a Persian] had already raised his sword against Alexander from behind when Clitus \[...] cut his arm off." - Arrian about the Battle of the Granicus ("The Anabasis of Alexander", 1.15)
"Alexander himself, plagued by thirst, with great pain and difficulty nevertheless led the army on foot \[…]. At this time a few of the light-armed soldiers \[…] found some water \[…], poured the water into a helmet and carried it to him. He took it, and commending the men who brought it, immediately poured it upon the ground in the sight of all." - Arrian about Alexander's march through the Gedrosian desert ("The Anabasis of Alexander", 6.26)
"Thrusting his spear into Mithridates' face, he \[Alexander] hurled him to the ground. Then Rhoesaces \[a Persian] \[…] struck him on the head with his sword. \[…] Alexander hurled him too to the ground, piercing with his lance through his breastplate into his chest. Sphithridates \[a Persian] had already raised his sword against Alexander from behind when Clitus \[] cut his arm off." - Arrian about the Battle of the Granicus ("The Anabasis of Alexander", 1.15)
"Let every man remind their descendants that they also are soldiers who must not desert the ranks of their ancestors, or retreat out of cowardice." - Aspasia (Plato, "Menexenus", 246b)
"Quintilius Varus, give me back my legions!" - Augustus, after three legions were annihilated in the Battle of the Teutoburg Forest (Suetonius, "Divus Augustus", sec. 23)
"In my nineteenth year, on my own initiative and at my own expense, I raised an army with which I liberated the state, which was oppressed by the tyranny of a faction." - Augustus, in his autobiography ("Res Gestae Divi Augusti", sec. 1)
@ -58,8 +58,8 @@
"We did not flinch but gave our lives to save Greece when her fate hung on a razor's edge." - Corinthian epitaph to their fallen of the Persian Wars (Plutarch, "Moralia", XI. "On the Malice of Herodotus", 870e)
"Then the blood really flowed, for the two lines were so close that shield struck against shield, and they drove their swords into each other's faces. It was impossible for the weak or cowardly to retreat; man to man they fought like in single combat." - Curtius Rufus about the Battle of Issos ("Histories of Alexander the Great", III. 11.5)
"I am Cyrus, who won for the Persians their empire. Therefore do not begrudge me this bit of earth that covers my bones." - Cyrus the Great's epitaph (Plutarch, "Parallel Lives", "Alexander", sec. 69)
"I am Darius, the great king, king of kings, the king of Persia, the king of countries, \[...] 23 lands in total." - Darius I. (Behistun inscription, column I, 1-6)
"Phraortes was captured and brought before me. I cut off his nose, his ears, and his tongue, and I put out one eye, and he was kept in chains at my palace entrance, and all the people saw him. Then I crucified him in Ecbatana; and the men who were his foremost followers \[...] I flayed and hung out their skins, stuffed with straw." - Darius I. (Behistun inscription, column II, 32)
"I am Darius, the great king, king of kings, the king of Persia, the king of countries, \[] 23 lands in total." - Darius I. (Behistun inscription, column I, 1-6)
"Phraortes was captured and brought before me. I cut off his nose, his ears, and his tongue, and I put out one eye, and he was kept in chains at my palace entrance, and all the people saw him. Then I crucified him in Ecbatana; and the men who were his foremost followers \[] I flayed and hung out their skins, stuffed with straw." - Darius I. (Behistun inscription, column II, 32)
"By desiring little, a poor man makes himself rich." - Democritus (fragment)
"It is hard to be governed by one's inferior." - Democritus (fragment)
"Physical strength is only noble in cattle, it is strength of character that is noble in men." - Democritus (fragment)
@ -83,7 +83,7 @@
"It is not the well-fed long-haired man I fear, but the pale and the hungry looking." - Gaius Julius Caesar (Plutarch, "Parallel Lives", "Antony", sec. 11)
"After fighting from noon almost to sunset, with victory doubtful, the Germans, on one side charged the enemy in a compact body, and drove them back; and, when they were put to flight, the archers were surrounded and cut to pieces." - Gaius Julius Caesar about the Battle of Alesia ("De Bello Gallico", VII. 80)
"All the centurions of the fourth cohort were slain, and the standard-bearer killed, the standard itself lost, almost all the centurions of the other cohorts either wounded or slain, and among them the chief centurion of the legion, Publius Sextius Baculus, a very valiant man, who was so exhausted by many and severe wounds, that he was already unable to support himself." - Gaius Julius Caesar about the Battle of the Sabis ("De Bello Gallico", II. 25)
"But the enemy \[...] displayed such great courage, that when the front rank had fallen the men behind them stood on them and continue the fight from on top of the corpses; when these were killed the pile of bodies grew higher, while the survivors used the heap as a vantage point for throwing missiles at our men, or catching our spears and throwing them back." - Gaius Julius Caesar about the Battle of the Sabis ("De Bello Gallico", II. 27)
"But the enemy \[] displayed such great courage, that when the front rank had fallen the men behind them stood on them and continue the fight from on top of the corpses; when these were killed the pile of bodies grew higher, while the survivors used the heap as a vantage point for throwing missiles at our men, or catching our spears and throwing them back." - Gaius Julius Caesar about the Battle of the Sabis ("De Bello Gallico", II. 27)
"The die is cast." - Gaius Julius Caesar, when crossing the Rubicon river with his legion into Italy, a capital offense that led to his civil war against Pompey (Suetonius, "The Lives of the Twelve Caesars", 32)
"I'd rather be the first man here than the second man in Rome." - Gaius Julius Caesar, when passing through a barbarian village in the Alps (Plutarch, "Parallel Lives", "Caesar", sec. 11)
"Stop quoting laws, we carry weapons!" - Gnaeus Pompeius Magnus (Plutarch, "Parallel Lives", "Pompey", sec. 10)
@ -99,7 +99,7 @@
"This is the bitterest pain among men, to have much knowledge but no power." - Herodotus ("The Histories", IX. 16)
"Although he \[Xerces] had plenty of troops he had few men." - Herodotus ("The Histories", VII. 210)
"The Lacedaemonians \[Spartans] fought a memorable battle; they made it quite clear that they were the experts, and that they were fighting against amateurs." - Herodotus ("The Histories", VII. 211)
"Being informed \[...] that when the Barbarians discharged their arrows they obscured the light of the sun by the multitude of the arrows, he \[Dienekes] \[...] said that their guest \[...] brought them very good news, for if the Medes obscured the light of the sun, the battle against them would be in the shade and not in the sun." - Herodotus describing Dienekes, reputedly the bravest Spartan soldier at Thermopylae (Polybius, "Histories", VII. 226)
"Being informed \[] that when the Barbarians discharged their arrows they obscured the light of the sun by the multitude of the arrows, he \[Dienekes] \[…] said that their guest \[…] brought them very good news, for if the Medes obscured the light of the sun, the battle against them would be in the shade and not in the sun." - Herodotus describing Dienekes, reputedly the bravest Spartan soldier at Thermopylae (Polybius, "Histories", VII. 226)
"The judgement given to Kroisus by each of the two oracles \[Delphi and Thebes] was the same: If he sent an army against the Persians, he would destroy a great empire." - Herodotus, later mentioning that the empire Kroisos destroyed was his own ("The Histories", I. 53)
"He \[King Darius] asked who the Athenians were, and, being informed, called for his bow, and placing an arrow on the string, shot upward into the sky, saying, as he let fly the shaft: Grant me, Zeus, to revenge myself on the Athenians!" - Herodotus, narrating how the Athenian support for the Ionian revolt caught the wrath of Darius I., the Persian king ("The Histories", V. 105)
"He \[King Darius] asked one of his servants every day, when his dinner was spread, three times to repeat to him: Master, remember the Athenians!" - Herodotus, narrating how the Athenian support for the Ionian revolt lead to the Persian Wars ("The Histories", V. 105)
@ -107,12 +107,12 @@
"Anger is a momentary madness, so control your passion or it will control you." - Horace ("Epistles", epistle II., 62)
"It is your concern when your neighbour's wall is on fire." - Horace ("Epistles", epistle XVIII., 84)
"It is sweet and honorable to die for one's country." - Horace ("Odes", III., ode II., 13)
"I am Cyrus, king of the world..." - Inscription (Cyrus Cylinder)
"I am Cyrus, king of the world" - Inscription (Cyrus Cylinder)
"In peace the sons bury their fathers, but in war the fathers bury their sons." - Kroisos, king of Lydia (Herodotus, "The Histories", I. 87)
"Marry a good man, and bear good children." - Leonidas, to his wife who asked what to do if he died, before he left for Thermopylae (Plutarch, "Moralia", XVI. "Sayings of Spartans", 225a)
"Come and get them!" - Leonidas, to the Persian messenger who demanded that he and his men lay down their arms (Plutarch, "Moralia", XVI. "Sayings of Spartans", 225c)
"Some were discovered lying there alive, with thighs and tendons slashed, baring their necks and throats and bidding their conquerors drain the remnant of their blood. Others were found with their heads buried in holes dug in the ground. They had apparently made these pits for themselves." - Livius, describing the aftermath of the Battle of Cannae, where Hannibal inflicted the greatest defeat on the Romans in all their history ("Ab Urbe Condita", XXII. 51)
"There lay thousands upon thousands of Romans \[...]. Here and there amidst the slain rose a gory figure whose wounds had begun to throb with the chill of dawn, and was cut down by his enemies." - Livius, describing the aftermath of the Battle of Cannae, where Hannibal inflicted the greatest defeat on the Romans in all their history ("Ab Urbe Condita", XXII. 51)
"There lay thousands upon thousands of Romans \[]. Here and there amidst the slain rose a gory figure whose wounds had begun to throb with the chill of dawn, and was cut down by his enemies." - Livius, describing the aftermath of the Battle of Cannae, where Hannibal inflicted the greatest defeat on the Romans in all their history ("Ab Urbe Condita", XXII. 51)
"A city is well-fortified which has a wall of men instead of brick." - Lycurgus of Sparta (Plutarch, "Parallel Lives", "Lycurgus", sec. 19)
"Escape, yes, but this time with my hands, not my feet." - Marcus Junius Brutus, before committing suicide after losing a battle against Caesar's avengers (Plutarch, "Parallel Lives", "Brutus", sec. 52)
"O, the times, O, the customs!" - Marcus Tullius Cicero ("Against Catiline", speech I)
@ -143,11 +143,11 @@
"No guest is so welcome in a friend's house that he will not become a nuisance after three days." - Plautus ("The Swaggering Soldier", Act III, scene 1, 146)
"You cannot eat your cake and have it too, unless you think your money is immortal." - Plautus ("Trinummus", Act II, scene 4, 12)
"He \[Alexander] thought nothing invincible for the courageous, and nothing secure for the cowardly." - Plutarch ("Parallel Lives", "Alexander", sec. 58)
"One \[...] shot an arrow at him with such accuracy and force that it pierced his breastplate and got stuck in his ribs. \[...] Alexander recoiled and sank to his knees. \[...] At last Alexander killed the barbarian. But he received many wounds, at last was struck on the neck with a mace, and leaned against the city wall, his eyes still fixed upon his foes." - Plutarch about the Mallian Campaign ("Parallel Lives", "Alexander", sec. 63)
"One \[] shot an arrow at him with such accuracy and force that it pierced his breastplate and got stuck in his ribs. \[…] Alexander recoiled and sank to his knees. \[…] At last Alexander killed the barbarian. But he received many wounds, at last was struck on the neck with a mace, and leaned against the city wall, his eyes still fixed upon his foes." - Plutarch about the Mallian Campaign ("Parallel Lives", "Alexander", sec. 63)
"When the pirates demanded a ransom of twenty talents for him, Caesar burst out laughing. They did not know, he said, who it was that they had captured, and he volunteered to pay fifty." - Plutarch, who mentions later that Caesar got his money back and had his captors crucified ("Parallel Lives", "Caesar", sec. 2)
"They \[the Romans] want the centurions not so much to be adventurous and daredevils, as to be natural leaders, of a steady and reliable spirit. They do not so much want men who will initiate attacks and open the battle, but men who will hold their ground when beaten and hard-pressed, and will be ready to die at their posts." - Polybius ("Histories", VI. 24)
"The Roman battle line is hard to break, since it allows every man to fight both individually and collectively; so that a formation can fight in any direction, with the maniples nearest to the point of danger wheeling around to face it." - Polybius ("Histories", XV. 15)
"The Athenian people are always in the position of a ship without a commander. Fear of the enemy or a storm make the crew be of one mind and obey the helmsman, everything goes well; but if they recover \[...] they quarrel with each other \[...], and the result has often been that, after escaping the dangers of the widest seas and the most violent storms, they wreck their ship in harbour and close to shore." - Polybius on the Athenian constitution ("Histories", VI. 44)
"The Athenian people are always in the position of a ship without a commander. Fear of the enemy or a storm make the crew be of one mind and obey the helmsman, everything goes well; but if they recover \[…] they quarrel with each other \[…], and the result has often been that, after escaping the dangers of the widest seas and the most violent storms, they wreck their ship in harbour and close to shore." - Polybius on the Athenian constitution ("Histories", VI. 44)
"Most of the Romans were trampled to death by the enormous weight of the elephants; the rest were shot down in their ranks by the numerous cavalry: and there were only a very few who attempted to save themselves by flight." - Polybius on the Battle of Bagradas where a Roman army was annihilated during the First Punic War ("Histories", I. 34)
"Hannibal gave the signal for attack; and at the same time sent orders to the troops lying in ambush on the hills to do the same, and thus delivered an assault upon the enemy at every point at once." - Polybius on the beginning of a Roman disaster at the Trasymene Lake ("Histories", III. 84)
"In the phalanx, the men cannot turn around singly and defend themselves: this tribune, therefore, charged them \[from behind] and killed all he could get at; until, unable to resist, they were forced to throw away their shields and flee." - Polybius, describing the defeat of Philip V. of Macedon by Flaminius in the Battle of Cynoscephalae ("Histories", XVIII. 26)
@ -178,7 +178,7 @@
"It is a general rule of human nature that people despise those who treat them well, and look up to those who make no concessions." - Thucydides ("History of the Peloponnesian War", III. 39.5)
"This was the greatest action that happened in all this war, and all others that we have heard of amongst the Greeks, being to the victors most glorious and most calamitous to the vanquished. For they were utterly and at all points defeated, and their sufferings were many. Army and fleet and all they ever had perished, nothing was saved and few of so many ever returned home. Thus ended the Sicilian expedition." - Thucydides ("History of the Peloponnesian War", VII. 87.6-7)
"As the world goes, justice is only a matter between equals, while the strong do what they can and the weak suffer what they must." - Thucydides, describing Athenians addressing the defeated Melians who are unwilling to surrender ("History of the Peloponnesian War", V. 89.1)
"When the Lacedaemonians were no longer able to run after them, the skirmishers \[...] all charged them at once, casting stones, arrows, and darts to the closest man at hand." - Thucydides, describing the Spartan disaster at the Battle of Sphacteria ("History of the Peloponnesian War", IV. 34.2)
"When the Lacedaemonians were no longer able to run after them, the skirmishers \[] all charged them at once, casting stones, arrows, and darts to the closest man at hand." - Thucydides, describing the Spartan disaster at the Battle of Sphacteria ("History of the Peloponnesian War", IV. 34.2)
"The soldiers fight and die to support others in wealth and luxury and they are called masters of the world without owning a single piece of farmland of their own." - Tiberius Gracchus, advocating for land reform to the benefit of homeless and unemployed veterans whose lands had often been bought up why they were on campaign (Plutarch, "Parallel Lives", "Tiberius Gracchus", sec. 9)
"The wild beasts of Italy have their caves to retire to, but the brave veterans who spilled their blood in her cause have nothing left but air and light. They wander around homeless with their wives and children." - Tiberius Gracchus, advocating for land reform to the benefit of homeless and unemployed veterans whose lands had often been bought up why they were on campaign (Plutarch, "Parallel Lives", "Tiberius Gracchus", sec. 9)
"Do not trust the horse, Trojans! I fear the Greeks even when they bring gifts." - Virgil ("Aeneid", II. 48-49)
@ -186,7 +186,7 @@
"Homer and Hesiod ascribed to their Gods all things that are a disgrace among mortals: stealing, adultery, deceiving one another." - Xenophanes (fragment 11)
"If oxen and horses and lions had hands, and could paint, and produce works of art as men do, horses would paint the forms of the gods like horses, and oxen like oxen, and make their God's bodies each in their own image." - Xenophanes (fragment 15)
"The Ethiopians make their gods black and snub-nosed, the Thracians say theirs have blue eyes and red hair." - Xenophanes (fragment 16)
"These are the right questions to ask, in winter around the fire \[...]: Who are you, friend? What is your land? And how old were you when the Medes \[Persians] came?" - Xenophanes, likely referring to a punitive expedition against Greek cities in Ionia (fragment 17)
"These are the right questions to ask, in winter around the fire \[]: Who are you, friend? What is your land? And how old were you when the Medes \[Persians] came?" - Xenophanes, likely referring to a punitive expedition against Greek cities in Ionia (fragment 17)
"A prudent commander will never take risks unnecessarily, except when it is clear beforehand that he will have the advantage." - Xenophon ("The Cavalry General", 4.13)
"Attack the enemy where he is weakest, even if that is a long way off, since hard work is less dangerous than a struggle against superior forces." - Xenophon ("The Cavalry General", sec. 4.14)
"He should be inventive, ready to exploit all circumstances, to make a small force appear large and a large one small, to appear absent when close at hand, and within striking distance when a long way off." - Xenophon ("The Cavalry General", sec. 5)

View File

@ -2,7 +2,7 @@
"settings" : {
"Name" : "Extinct Volcano",
"Script" : "extinct_volcano.js",
"Description" : "[color=\"red\"]IMPORTANT NOTE: AI PLAYERS DO NOT WORK WITH THIS MAP[/color]\n\nA once fertile valley... desolated by the eruption of the long-dormant volcano in the heart of the region. Following years of empty, scorched deadness, signs of life started reappearing and spreading. Now the land is half-way to the full lushness of its former era. Alas, it is not to be: following a long stretch of drought, interminable rains have set in in the higher regions to the north. Water levels are rising at drastic levels, slowly forcing players to seek the high ground of the lesser, extinct volcanoes or the now again dormant great cone.",
"Description" : "[color=\"red\"]IMPORTANT NOTE: AI PLAYERS DO NOT WORK WITH THIS MAP[/color]\n\nA once fertile valley desolated by the eruption of the long-dormant volcano in the heart of the region. Following years of empty, scorched deadness, signs of life started reappearing and spreading. Now the land is half-way to the full lushness of its former era. Alas, it is not to be: following a long stretch of drought, interminable rains have set in in the higher regions to the north. Water levels are rising at drastic levels, slowly forcing players to seek the high ground of the lesser, extinct volcanoes or the now again dormant great cone.",
"DisabledTemplates": [
"structures/ptol_lighthouse"
],

View File

@ -2,7 +2,7 @@
"settings" : {
"Name" : "Unknown",
"Script" : "unknown.js",
"Description" : "The unknown... Warning: May be a naval map.",
"Description" : "The unknown Warning: May be a naval map.",
"BaseTerrain" : ["medit_sand_wet"],
"BaseHeight" : -5,
"Preview" : "unknown.png",

View File

@ -2,7 +2,7 @@
"settings" : {
"Name" : "Unknown Land",
"Script" : "unknown_land.js",
"Description" : "The unknown...",
"Description" : "The unknown",
"BaseTerrain" : ["medit_sand_wet"],
"BaseHeight" : -5,
"Preview" : "unknown.png",

View File

@ -2,7 +2,7 @@
"settings" : {
"Name" : "Unknown Nomad",
"Script" : "unknown_nomad.js",
"Description" : "The unknown... Players start with only some citizen soldiers and female citizens. [color=\"red\"]Warning: The starting resources should be set at least at Medium.[/color]",
"Description" : "The unknown Players start with only some citizen soldiers and female citizens. [color=\"red\"]Warning: The starting resources should be set at least at Medium.[/color]",
"BaseTerrain" : ["medit_sand_wet"],
"BaseHeight" : -5,
"Preview" : "unknown.png",

Binary file not shown.

View File

@ -12,7 +12,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("Select the citizen-soldier, right-click on a tree near the Civil Center to begin collecting wood. Citizen-soldiers gather wood faster than female citizens."),
"instructions": markForTranslation("Select the citizen-soldier, right-click on a tree near the Civic Center to begin gathering Wood. Citizen Soldiers gather Wood faster than female citizens."),
"OnPlayerCommand": function(msg)
{
if (msg.cmd.type == "gather" && msg.cmd.target &&
@ -23,7 +23,7 @@ Trigger.prototype.tutorialGoals = [
{
"instructions": [
{
"text": markForTranslation("Select the Civil Center building and hold %(hotkey)s while clicking on the Hoplite icon once to begin training a batch of Hoplites."),
"text": markForTranslation("Select the Civic Center building and hold %(hotkey)s while clicking on the Hoplite icon once to begin training a batch of Hoplites."),
"hotkey": "session.batchtrain"
}
],
@ -51,7 +51,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("When they are ready, select the newly trained Hoplites and assign them to build a storehouse beside some nearby trees. They will begin to gather wood when it's constructed."),
"instructions": markForTranslation("When they are ready, select the newly trained Hoplites and assign them to build a storehouse beside some nearby trees. They will begin to gather Wood when it's constructed."),
"OnPlayerCommand": function(msg)
{
if (msg.cmd.type == "repair" && TriggerHelper.EntityMatchesClassList(msg.cmd.target, "Storehouse"))
@ -61,7 +61,7 @@ Trigger.prototype.tutorialGoals = [
{
"instructions": [
{
"text": markForTranslation("Build a batch of Skirmishers by holding %(hotkey)s and clicking on the Skirmisher icon in the Civil Center."),
"text": markForTranslation("Build a batch of Skirmishers by holding %(hotkey)s and clicking on the Skirmisher icon in the Civic Center."),
"hotkey": "session.batchtrain"
}
],
@ -77,7 +77,7 @@ Trigger.prototype.tutorialGoals = [
cmpProductionQueue.ResetQueue();
let txt = +msg.count == 1 ?
markForTranslation("Do not forget to press the batch training hotkey while clicking to produce multiple units.") :
markForTranslation("Click on the SKIRMISHER icon.");
markForTranslation("Click on the Skirmisher icon.");
this.WarningMessage(txt);
return;
}
@ -85,7 +85,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("Build a farmstead in an open space beside the Civil Center using any idle builders."),
"instructions": markForTranslation("Build a farmstead in an open space beside the Civic Center using any idle builders."),
"OnPlayerCommand": function(msg)
{
if (msg.cmd.type == "repair" && TriggerHelper.EntityMatchesClassList(msg.cmd.target, "Farmstead"))
@ -133,7 +133,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("The field's builders will now automatically begin collecting food from the field. Using the newly created group of skirmishers, get them to build another house nearby."),
"instructions": markForTranslation("The field's builders will now automatically begin gathering food from the field. Using the newly created group of skirmishers, get them to build another house nearby."),
"OnPlayerCommand": function(msg)
{
if (msg.cmd.type == "repair" && TriggerHelper.EntityMatchesClassList(msg.cmd.target, "House"))
@ -141,7 +141,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("Train a batch of Hoplites at the Civil Center. Select the Civil Center and with it selected right click on a tree nearby. Units from the Civil Center will now automatically gather wood."),
"instructions": markForTranslation("Train a batch of Hoplites at the Civic Center. Select the Civic Center and with it selected right-click on a tree nearby. Units from the Civic Center will now automatically gather Wood."),
"Init": function()
{
this.rallyPointSet = false;
@ -159,7 +159,7 @@ Trigger.prototype.tutorialGoals = [
cmpProductionQueue.ResetQueue();
let txt = +msg.count == 1 ?
markForTranslation("Do not forget to press the batch training hotkey while clicking to produce multiple units.") :
markForTranslation("Click on the HOPLITE icon.");
markForTranslation("Click on the Hoplite icon.");
this.WarningMessage(txt);
return;
}
@ -173,7 +173,7 @@ Trigger.prototype.tutorialGoals = [
!msg.cmd.data.command || msg.cmd.data.command != "gather" ||
!msg.cmd.data.resourceType || msg.cmd.data.resourceType.specific != "tree")
{
this.WarningMessage(markForTranslation("Select the Civic Center, then hover your mouse over the tree and right-click when you see your cursor change into a Wood icon."));
this.WarningMessage(markForTranslation("Select the Civic Center, then hover the cursor over the tree and right-click when you see your cursor change into a Wood icon."));
return;
}
this.rallyPointSet = true;
@ -190,7 +190,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("Select the Civil Center again and advance to Town Phase by clicking on the 'II' icon (you have to wait for the outpost to be built first). This will allow Town Phase buildings to be constructed."),
"instructions": markForTranslation("Select the Civic Center again and advance to Town Phase by clicking on the 'II' icon (you have to wait for the outpost to be built first). This will allow Town Phase buildings to be constructed."),
"IsDone": function()
{
return TriggerHelper.HasDealtWithTech(this.playerID, "phase_town_generic");
@ -217,7 +217,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("Start building a batch of female citizens in the Civil Center and set its rally point to the farm (right click on it)."),
"instructions": markForTranslation("Start building a batch of female citizens in the Civic Center and set its rally point to the farm (right click on it)."),
"Init": function()
{
this.rallyPointSet = false;
@ -297,7 +297,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("The enemy's attack has been defeated. Now build a market and a temple while assigning new units to gather any required resources."),
"instructions": markForTranslation("The enemy attack has been thwarted. Now build a market and a temple while you assign new units to gather required resources."),
"Init": function()
{
this.marketStarted = false;
@ -318,7 +318,7 @@ Trigger.prototype.tutorialGoals = [
}
},
{
"instructions": markForTranslation("When that City Phase requirements have been reached, select your Civil Center and advance to City Phase."),
"instructions": markForTranslation("Once you meet the City Phase requirements, select your Civic Center and advance to City Phase."),
"OnResearchQueued": function(msg)
{
if (msg.technologyTemplate && TriggerHelper.EntityMatchesClassList(msg.researcherEntity, "CivilCentre"))
@ -356,7 +356,7 @@ Trigger.prototype.tutorialGoals = [
},
{
"instructions": [
markForTranslation("Stop all your soldiers gathering resources and instead task small groups to find the enemy Civil Center on the map. Once The enemy's base has been spotted, send your siege weapons and all remaining soldiers to destroy it.\n"),
markForTranslation("Stop all your soldiers gathering resources and instead task small groups to find the enemy Civic Center on the map. Once The enemy's base has been spotted, send your siege weapons and all remaining soldiers to destroy it.\n"),
markForTranslation("Female citizens should continue to gather resources.")
],
"OnOwnershipChanged": function(msg)

View File

@ -21,8 +21,8 @@ Trigger.prototype.tutorialGoals = [
},
{
"instructions": [
markForTranslation("Now that the Civic Center is selected, you will notice that a production panel will appear on the lower right of your screen detailing the actions that the buildings supports. For the production panel, available actions are not masked in any color, while an icon masked in either grey or red indicates that the action has not been unlocked or you do not have sufficient resources to perform that action, respectively. Additionally, you can hover your mouse over any icon to show a tooltip with more details.\n"),
markForTranslation("The top row of buttons contains portraits of units that may be trained at the building while the bottom one or two rows will have researchable technologies. Hover your mouse over the 'II' icon. The tooltip will tell us that advancing to 'Town Phase' requires both more constructed structures as well as more Food and Wood resources.")
markForTranslation("Now that the Civic Center is selected, you will notice that a production panel will appear on the lower right of your screen detailing the actions that the buildings supports. For the production panel, available actions are not masked in any color, while an icon masked in either grey or red indicates that the action has not been unlocked or you do not have sufficient resources to perform that action, respectively. Additionally, you can hover the cursor over any icon to show a tooltip with more details.\n"),
markForTranslation("The top row of buttons contains portraits of units that may be trained at the building while the bottom one or two rows will have researchable technologies. Hover the cursor over the 'II' icon. The tooltip will tell us that advancing to 'Town Phase' requires both more constructed structures as well as more Food and Wood resources.")
]
},
{
@ -40,7 +40,7 @@ Trigger.prototype.tutorialGoals = [
markForTranslation("At this point, food and wood are the most important resources for developing your economy, so let's start with gathering food. Female citizens gather vegetables faster than other units.\n"),
markForTranslation("There are primarily three ways to select units:\n"),
markForTranslation("1) Hold the left mouse button and drag a selection rectangle that encloses the units you want to select.\n"),
markForTranslation("2) Click on one of them and then add additional units to your selection by shift-clicking each additional unit (or also via the above selection rectangle).\n"),
markForTranslation("2) Click on one of them and then add additional units to your selection by holding Shift and clicking each additional unit (or also via the above selection rectangle).\n"),
markForTranslation("3) Double-click on a unit. This will select every unit of the same type as the specified unit in your visible window. Triple-click will select all units of the same type on the entire map.\n"),
markForTranslation("You can click on an empty space on the map to reset the selection. Try each of these methods before tasking all of your female citizens to gather the grapes to the southeast of your Civic Center by right-clicking on the grapes when you have all the female citizens selected.")
],
@ -85,7 +85,7 @@ Trigger.prototype.tutorialGoals = [
!msg.cmd.data.command || msg.cmd.data.command != "gather" ||
!msg.cmd.data.resourceType || msg.cmd.data.resourceType.specific != "tree")
{
this.WarningMessage(markForTranslation("Select the Civic Center, then hover your mouse over a tree and right-click when you see the cursor change into a Wood icon."));
this.WarningMessage(markForTranslation("Select the Civic Center, then hover the cursor over a tree and right-click when you see the cursor change into a Wood icon."));
return;
}
this.NextGoal();
@ -106,7 +106,7 @@ Trigger.prototype.tutorialGoals = [
cmpProductionQueue.ResetQueue();
let txt = +msg.count == 1 ?
markForTranslation("Do not forget to hold Shift while clicking to train several units.") :
markForTranslation("Shift-click on the HOPLITE icon.");
markForTranslation("Hold Shift and click on the Hoplite icon.");
this.WarningMessage(txt);
return;
}
@ -127,7 +127,7 @@ Trigger.prototype.tutorialGoals = [
{
"instructions": [
markForTranslation("The newly trained units automatically go to the trees and start gathering Wood.\n"),
markForTranslation("But as they have to bring it back to the Civic Center to deposit it, their gathering efficiency suffers from the distance. To fix that, we can build a storehouse, a dropsite for Wood, Stone, and Metal, close to the trees. To do so, select your five newly trained Citizen Soldiers and look for the construction panel on the bottom right, click on the storehouse icon, move the mouse as close as possible to the trees you want to collect and click on a valid place to build the dropsite.\n"),
markForTranslation("But as they have to bring it back to the Civic Center to deposit it, their gathering efficiency suffers from the distance. To fix that, we can build a storehouse, a dropsite for Wood, Stone, and Metal, close to the trees. To do so, select your five newly trained Citizen Soldiers and look for the construction panel on the bottom right, click on the storehouse icon, move the mouse as close as possible to the trees you want to gather and click on a valid place to build the dropsite.\n"),
markForTranslation("Invalid (obstructed) positions will show the building preview overlay in red.")
],
"OnPlayerCommand": function(msg)
@ -164,8 +164,8 @@ Trigger.prototype.tutorialGoals = [
let cmpProductionQueue = Engine.QueryInterface(entity, IID_ProductionQueue);
cmpProductionQueue.ResetQueue();
let txt = +msg.count == 1 ?
markForTranslation("Do not forget to shift-click to produce several units.") :
markForTranslation("Hold shift and click on the female citizen icon.");
markForTranslation("Do not forget to hold Shift and click to train several units.") :
markForTranslation("Hold shift and click on the Female Citizen icon.");
this.WarningMessage(txt);
return;
}
@ -341,8 +341,8 @@ Trigger.prototype.tutorialGoals = [
let cmpProductionQueue = Engine.QueryInterface(entity, IID_ProductionQueue);
cmpProductionQueue.ResetQueue();
let txt = +msg.count != 1 ?
markForTranslation("Do not shift-click to produce a single unit.") :
markForTranslation("Click on the female citizen icon.");
markForTranslation("Click without holding Shift to train a single unit.") :
markForTranslation("Click on the Female Citizen icon.");
this.WarningMessage(txt);
return;
}
@ -353,7 +353,7 @@ Trigger.prototype.tutorialGoals = [
{
"instructions": [
markForTranslation("You can increase the gather rates of your workers by researching new technologies available in some buildings.\n"),
markForTranslation("The farming rate, for example, can be improved with a researchable technology in the farmstead. Select the farmstead and look at its production panel on the bottom right. You will see several researchable technologies. Hover the mouse over them to see their costs and effects and click on the one you want to research.")
markForTranslation("The farming rate, for example, can be improved with a researchable technology in the farmstead. Select the farmstead and look at its production panel on the bottom right. You will see several researchable technologies. Hover the cursor over them to see their costs and effects and click on the one you want to research.")
],
"IsDone": function()
{
@ -368,7 +368,7 @@ Trigger.prototype.tutorialGoals = [
},
{
"instructions": [
markForTranslation("We should start preparing to phase up into 'Town Phase', which will unlock many more units and buildings. Select the Civic Center and hover the mouse over the 'Town Phase' icon to see what is still needed.\n"),
markForTranslation("We should start preparing to phase up into 'Town Phase', which will unlock many more units and buildings. Select the Civic Center and hover the cursor over the 'Town Phase' icon to see what is still needed.\n"),
markForTranslation("We now have enough resources, but one structure is missing. Although this is an economic tutorial, it is nonetheless useful to be prepared for defense in case of attack, so let's build barracks.\n"),
markForTranslation("Select four of your soldiers and ask them to build a barracks: as before, start selecting the soldiers, click on the barracks icon in the production panel and then lay down a foundation not far from your Civic Center where you want to build.")
],
@ -407,12 +407,12 @@ Trigger.prototype.tutorialGoals = [
{
"instructions": [
markForTranslation("In later phases, you need usually Stone and Metal to build bigger structures and train better soldiers. Hence, while waiting for the research to be done, you will send half of your idle Citizen Soldiers (who have finished building the Barracks) to gather Stone and the other half to gather Metal.\n"),
markForTranslation("To do so, we could select three Citizen Soldiers and right-click on the Stone mine on the west of the Civic Center (a Stone cursor is shown when you hover the mouse over it while your soldiers are selected). However, these soldiers were gathering Wood, so they may still carry some Wood which would be lost when starting to gather another resource.")
markForTranslation("To do so, we could select three Citizen Soldiers and right-click on the Stone mine on the west of the Civic Center (the cursor changes when hovering the Stone mine while your soldiers are selected). However, these soldiers were gathering Wood, so they may still carry some Wood which would be lost when starting to gather another resource.")
],
},
{
"instructions": [
markForTranslation("Thus, we should order them to deposit their Wood in the Civic Center along the way. To do so, we will queue orders with shift-click: select your soldiers, shift-right-click on the Civic Center to deposit their Wood and then shift-right-click on the Stone mine to gather it.\n"),
markForTranslation("Thus, we should order them to deposit their Wood in the Civic Center along the way. To do so, we will hold Shift while clicking to queue orders: select your soldiers, hold Shift and right-click on the Civic Center to deposit their Wood and then hold Shift and right-click on the Stone mine to gather it.\n"),
markForTranslation("Perform a similar order queue with the remaining soldiers and the Metal mine in the west.")
],
"Init": function()

View File

@ -36,7 +36,7 @@
"Class": "",
"Armament": "",
"Emblem": "",
"History": "Caractacus, the Roman form, is a simple change from Karatakos, his actual name, which was printed on his many, many coins. Under this name he is remembered as a fierce defender of Britain against the Romans after their invasion in 43 A.D. Son of King Cunobelin of the Catuvellauni tribal confederation, Karatakos fought for nine years against the Romans with little success, eventually fleeing to the tribes in Wales, where he was defeated decisively. Finally he entered Northern Britain, where was handed over to the Romans. Taken to Rome, Karatakos was allowed to live by the Emperor Claudius and died in Italy. Tradition states he converted to Christianity when his wife did, but there is nothing known of this as definite. Probably more notable is the matter that he was allowed to live once captured. Roman policy was typically to have such men killed in public displays to celebrate. Karatakos was brought before the Emperor and Senate at his request to explain himself. What he said is not known for certainty, but Tacitus applies to him a famous speech..."
"History": "Caractacus, the Roman form, is a simple change from Karatakos, his actual name, which was printed on his many, many coins. Under this name he is remembered as a fierce defender of Britain against the Romans after their invasion in 43 A.D. Son of King Cunobelin of the Catuvellauni tribal confederation, Karatakos fought for nine years against the Romans with little success, eventually fleeing to the tribes in Wales, where he was defeated decisively. Finally he entered Northern Britain, where was handed over to the Romans. Taken to Rome, Karatakos was allowed to live by the Emperor Claudius and died in Italy. Tradition states he converted to Christianity when his wife did, but there is nothing known of this as definite. Probably more notable is the matter that he was allowed to live once captured. Roman policy was typically to have such men killed in public displays to celebrate. Karatakos was brought before the Emperor and Senate at his request to explain himself. What he said is not known for certainty, but Tacitus applies to him a famous speech"
},
{
"Name": "Kunobelinos",

View File

@ -3,7 +3,7 @@
<Identity>
<Civ>gaia</Civ>
<SpecificName>Tuna Fish</SpecificName>
<Tooltip>Collect food from this bountiful oceanic resource.</Tooltip>
<Tooltip>Gather food from this bountiful oceanic resource.</Tooltip>
<Icon>gaia/fauna_fish.png</Icon>
</Identity>
<VisualActor>

View File

@ -3,7 +3,7 @@
<Identity>
<Civ>gaia</Civ>
<SpecificName>Tilapia Fish</SpecificName>
<Tooltip>Collect food from this bountiful riparian resource.</Tooltip>
<Tooltip>Gather food from this bountiful riparian resource.</Tooltip>
<Icon>gaia/fauna_fish.png</Icon>
</Identity>
<VisualActor>

View File

@ -3,7 +3,7 @@
<Identity>
<Civ>gaia</Civ>
<SpecificName>Tuna Fish</SpecificName>
<Tooltip>Collect food from this bountiful oceanic resource.</Tooltip>
<Tooltip>Gather food from this bountiful oceanic resource.</Tooltip>
<Icon>gaia/fauna_fish.png</Icon>
</Identity>
<VisualActor>

View File

@ -9,7 +9,7 @@
<Classes datatype="tokens">SeaCreature</Classes>
<Civ>gaia</Civ>
<GenericName>Cetacean</GenericName>
<Tooltip>Kill, then collect food from this bountiful oceanic resource.</Tooltip>
<Tooltip>Kill, then gather food from this bountiful oceanic resource.</Tooltip>
<Icon>gaia/fauna_fish.png</Icon>
</Identity>
<Loot>

View File

@ -1093,7 +1093,7 @@ std::string XmppClient::RegistrationResultToString(gloox::RegistrationResult res
#define DEBUG_CASE(X, Y) case gloox::X: return g_L10n.Translate("Error") + " (" + Y + ")"
switch (res)
{
CASE(RegistrationSuccess, g_L10n.Translate("Success"));
CASE(RegistrationSuccess, g_L10n.Translate("Your account has been successfully registered"));
CASE(RegistrationNotAcceptable, g_L10n.Translate("Not all necessary information provided"));
CASE(RegistrationConflict, g_L10n.Translate("Username already exists"));
DEBUG_CASE(RegistrationNotAuthorized, "Account removal timeout or insufficiently secure channel for password change");