XEEN: RU Translated all constants.h strings for Clouds. Ready for test.

This commit is contained in:
Maxim Kovalenko 2021-07-19 18:56:59 +03:00 committed by Eugene Sandulenko
parent 325eb338fe
commit 9f80f452e4
11 changed files with 51 additions and 38 deletions

View file

@ -1359,7 +1359,7 @@ public:
} }
const char *FIX_IDENTIFY_GOLD() { const char *FIX_IDENTIFY_GOLD() {
return "\x3l\v000\t000%s %s\fd for %u gold?"; return "\x3l\v000\t000%s %s\fd for %u %s?";
} }
const char *IDENTIFY_ITEM_MSG() { const char *IDENTIFY_ITEM_MSG() {

View file

@ -804,28 +804,17 @@ public:
} }
const char *CHARACTER_DETAILS() { const char *CHARACTER_DETAILS() {
return "\x3" return "\x3""l\v041\t196%s\t000\v002%s : %s %s %s"
"l\v041\t196%s\t000\v002%s : %s %s %s" "\x3""r\t053\v028\f%02u%u\fd\t103\f%02u%u\fd"
"\x3" "\x3""l\t131\f%02u%d\fd\t196\f15%lu\fd\x3""r"
"r\t053\v028\f%02u%u\fd\t103\f%02u%u\fd"
"\x3"
"l\t131\f%02u%d\fd\t196\f15%lu\fd\x3"
"r"
"\t053\v051\f%02u%u\fd\t103\f%02u%u\fd" "\t053\v051\f%02u%u\fd\t103\f%02u%u\fd"
"\x3" "\x3""l\t131\f%02u%u\fd\t196\f15%lu\fd"
"l\t131\f%02u%u\fd\t196\f15%lu\fd" "\x3""r\t053\v074\f%02u%u\fd\t103\f%02u%u\fd"
"\x3" "\x3""l\t131\f15%u\fd\t196\f15%lu\fd"
"r\t053\v074\f%02u%u\fd\t103\f%02u%u\fd" "\x3""r\t053\v097\f%02u%u\fd\t103\f%02u%u\fd"
"\x3" "\x3""l\t131\f15%u\fd\t196\f15%u %s\fd"
"l\t131\f15%u\fd\t196\f15%lu\fd" "\x3""r\t053\v120\f%02u%u\fd\t103\f%02u%u\fd"
"\x3" "\x3""l\t131\f15%u\fd\t196\f%02u%s\fd"
"r\t053\v097\f%02u%u\fd\t103\f%02u%u\fd"
"\x3"
"l\t131\f15%u\fd\t196\f15%u %s\fd"
"\x3"
"r\t053\v120\f%02u%u\fd\t103\f%02u%u\fd"
"\x3"
"l\t131\f15%u\fd\t196\f%02u%s\fd"
"\t245%s%s%s%s\fd"; "\t245%s%s%s%s\fd";
} }
@ -1418,7 +1407,7 @@ public:
} }
const char *FIX_IDENTIFY_GOLD() { const char *FIX_IDENTIFY_GOLD() {
return "\x3""l\v000\t000%s %s\fd \xA7\xA0 %lu \xA7\xAE\xAB\xAE\xE2%s?"; // "\x3""l\v000\t000%s %s\fd за %lu золот%s?" return "\x3""l\v000\t000%s %s\fd \xA7\xA0 %lu %s?"; // "\x3""l\v000\t000%s %s\fd за %lu %s?"
} }
const char *IDENTIFY_ITEM_MSG() { const char *IDENTIFY_ITEM_MSG() {

Binary file not shown.

View file

@ -278,7 +278,7 @@ void CharacterInfo::addButtons() {
addPartyButtons(_vm); addPartyButtons(_vm);
} }
const char* CharacterInfo::getDaysPlurals(int val) { const char *CharacterInfo::getDaysPlurals(int val) {
if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) { if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) {
int i = val % 100; int i = val % 100;
if (i < 5 || i > 20) if (i < 5 || i > 20)

View file

@ -52,7 +52,7 @@ private:
/** /**
* Get plural day/days form * Get plural day/days form
*/ */
const char* getDaysPlurals(int val); const char *getDaysPlurals(int val);
/** /**
* Return a string containing the details of the character * Return a string containing the details of the character

View file

@ -752,7 +752,7 @@ int ItemsDialog::calcItemCost(Character *c, int itemIndex, ItemsMode mode,
return (mode == ITEMMODE_CHAR_INFO) ? 0 : result; return (mode == ITEMMODE_CHAR_INFO) ? 0 : result;
} }
const char* ItemsDialog::getGoldPlurals(int cost) { const char *ItemsDialog::getGoldPlurals(int cost) {
if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language")))
return Res.GOLDS[cost % 10 == 1 ? 0 : 1]; return Res.GOLDS[cost % 10 == 1 ? 0 : 1];
return Res.GOLDS[0]; return Res.GOLDS[0];
@ -933,7 +933,7 @@ int ItemsDialog::doItemOptions(Character &c, int actionIndex, int itemIndex, Ite
Common::String msg = Common::String::format(Res.FIX_IDENTIFY_GOLD, Common::String msg = Common::String::format(Res.FIX_IDENTIFY_GOLD,
Res.FIX_IDENTIFY[0], Res.FIX_IDENTIFY[0],
c._items[category].getFullDescription(itemIndex).c_str(), c._items[category].getFullDescription(itemIndex).c_str(),
cost); cost, getGoldPlurals(cost));
if (Confirm::show(_vm, msg) && party.subtract(CONS_GOLD, cost, WHERE_PARTY)) { if (Confirm::show(_vm, msg) && party.subtract(CONS_GOLD, cost, WHERE_PARTY)) {
item._state._broken = false; item._state._broken = false;
@ -946,7 +946,7 @@ int ItemsDialog::doItemOptions(Character &c, int actionIndex, int itemIndex, Ite
Common::String msg = Common::String::format(Res.FIX_IDENTIFY_GOLD, Common::String msg = Common::String::format(Res.FIX_IDENTIFY_GOLD,
Res.FIX_IDENTIFY[1], Res.FIX_IDENTIFY[1],
c._items[category].getFullDescription(itemIndex).c_str(), c._items[category].getFullDescription(itemIndex).c_str(),
cost); cost, getGoldPlurals(cost));
if (Confirm::show(_vm, msg) && party.subtract(CONS_GOLD, cost, WHERE_PARTY)) { if (Confirm::show(_vm, msg) && party.subtract(CONS_GOLD, cost, WHERE_PARTY)) {
Common::String details = c._items[category].getIdentifiedDetails(itemIndex); Common::String details = c._items[category].getIdentifiedDetails(itemIndex);

View file

@ -67,7 +67,7 @@ private:
/** /**
* Get plural gold form * Get plural gold form
*/ */
const char* getGoldPlurals(int val); const char *getGoldPlurals(int val);
int doItemOptions(Character &c, int actionIndex, int itemIndex, int doItemOptions(Character &c, int actionIndex, int itemIndex,
ItemCategory category, ItemsMode mode); ItemCategory category, ItemsMode mode);

View file

@ -20,6 +20,7 @@
* *
*/ */
#include "common/config-manager.h"
#include "xeen/dialogs/dialogs_quick_ref.h" #include "xeen/dialogs/dialogs_quick_ref.h"
#include "xeen/resources.h" #include "xeen/resources.h"
#include "xeen/xeen.h" #include "xeen/xeen.h"
@ -32,6 +33,24 @@ void QuickReferenceDialog::show(XeenEngine *vm) {
delete dlg; delete dlg;
} }
const char *QuickReferenceDialog::getDaysPlurals(int val) {
if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) {
int i = val % 100;
if (i < 5 || i > 20)
switch (val % 10) {
case 1:
return Res.DAYS[0];
case 2:
case 3:
case 4:
return Res.DAYS[1];
}
return Res.DAYS[2];
} else {
return Res.DAYS[val == 1 ? 0 : 1];
}
}
void QuickReferenceDialog::execute() { void QuickReferenceDialog::execute() {
Combat &combat = *_vm->_combat; Combat &combat = *_vm->_combat;
EventsManager &events = *_vm->_events; EventsManager &events = *_vm->_events;
@ -65,7 +84,7 @@ void QuickReferenceDialog::execute() {
lines[3].c_str(), lines[4].c_str(), lines[5].c_str(), lines[3].c_str(), lines[4].c_str(), lines[5].c_str(),
lines[6].c_str(), lines[7].c_str(), lines[6].c_str(), lines[7].c_str(),
party._gold, party._gems, party._gold, party._gems,
food, food == 1 ? "" : "s" food, getDaysPlurals(food)
); );
Window &w = windows[24]; Window &w = windows[24];

View file

@ -31,6 +31,11 @@ class QuickReferenceDialog : public ButtonContainer {
private: private:
QuickReferenceDialog(XeenEngine *vm) : ButtonContainer(vm) {} QuickReferenceDialog(XeenEngine *vm) : ButtonContainer(vm) {}
/**
* Get plural day/days form
*/
const char *getDaysPlurals(int val);
void execute(); void execute();
public: public:
static void show(XeenEngine *vm); static void show(XeenEngine *vm);

View file

@ -662,7 +662,7 @@ int Party::subtract(ConsumableType consumableId, uint amount, PartyBank whereId,
return true; return true;
} }
const char* Party::getConsumableForm(ConsumableType consumableId) { const char *Party::getConsumableForm(ConsumableType consumableId) {
switch (consumableId) { switch (consumableId) {
case CONS_GOLD: return Res.CONSUMABLE_GOLD_FORMS[0]; case CONS_GOLD: return Res.CONSUMABLE_GOLD_FORMS[0];
case CONS_GEMS: return Res.CONSUMABLE_GEM_FORMS[0]; case CONS_GEMS: return Res.CONSUMABLE_GEM_FORMS[0];
@ -821,7 +821,7 @@ bool Party::arePacksFull() const {
return total == (_activeParty.size() * NUM_ITEM_CATEGORIES); return total == (_activeParty.size() * NUM_ITEM_CATEGORIES);
} }
const char* Party::getFoundForm(const Character& c) { const char *Party::getFoundForm(const Character &c) {
if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) { if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) {
switch (c._sex) { switch (c._sex) {
case MALE: case MALE:
@ -1483,7 +1483,7 @@ bool Party::giveTake(int takeMode, uint takeVal, int giveMode, uint giveVal, int
return false; return false;
} }
const char* Party::getPickLockForm(const Character &c) { const char *Party::getPickLockForm(const Character &c) {
if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) { if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) {
switch (c._sex) { switch (c._sex) {
case MALE: case MALE:
@ -1495,7 +1495,7 @@ const char* Party::getPickLockForm(const Character &c) {
return Res.PICK_FORM[0]; return Res.PICK_FORM[0];
} }
const char* Party::getUnablePickLockForm(const Character &c) { const char *Party::getUnablePickLockForm(const Character &c) {
if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) { if (Common::RU_RUS == Common::parseLanguage(ConfMan.get("language"))) {
switch (c._sex) { switch (c._sex) {
case MALE: case MALE:

View file

@ -160,7 +160,7 @@ private:
/** /**
* Get gender form 'found' * Get gender form 'found'
*/ */
const char* getFoundForm(const Character &c); const char *getFoundForm(const Character &c);
/** /**
* Give a treasure item to the given character's inventory * Give a treasure item to the given character's inventory
@ -274,7 +274,7 @@ public:
int subtract(ConsumableType consumableId, uint amount, PartyBank whereId, MessageWaitType wait = WT_FREEZE_WAIT); int subtract(ConsumableType consumableId, uint amount, PartyBank whereId, MessageWaitType wait = WT_FREEZE_WAIT);
const char* getConsumableForm(ConsumableType consumableId); const char *getConsumableForm(ConsumableType consumableId);
void notEnough(ConsumableType consumableId, PartyBank whereId, bool mode, MessageWaitType wait); void notEnough(ConsumableType consumableId, PartyBank whereId, bool mode, MessageWaitType wait);
@ -305,12 +305,12 @@ public:
/* /*
* Get gender form 'picks' * Get gender form 'picks'
*/ */
const char* getPickLockForm(const Character &c); const char *getPickLockForm(const Character &c);
/* /*
* Get gender form 'unable to pick' * Get gender form 'unable to pick'
*/ */
const char* getUnablePickLockForm(const Character &c); const char *getUnablePickLockForm(const Character &c);
/** /**
* Gives up to three different item/amounts to various character and/or party properties * Gives up to three different item/amounts to various character and/or party properties