Показать сообщение отдельно
Старый 25.09.2018, 16:18
Tails вне форума Посмотреть профиль Отправить личное сообщение для Tails Найти все сообщения от Tails
  № 6  
Ответить с цитированием
Tails
 
Аватар для Tails

блогер
Регистрация: Dec 2008
Адрес: г. Чебоксары
Сообщений: 2,259
Записей в блоге: 6
Просто держи все тексты локализации в одном файле, без этих динамических ключей. На каждую локализацию один файл: ключ - значение.
Фразы могут содержать вставки:
Код:
ATTRIBUTE_UP;{target} пополнил {value} {attribute}.
ATTRIBUTE_DOWN;{target} потерял {value} {attribute}.
И превращаться в:
Игрок пополнил 15.6 здоровья.
Npc потерял 16 ярости.

Если хочется иметь вариативность в выражениях, сделай свой интерпретатор чуть сложнее. Например так:
Код:
KILL;{target} {sex|убил|убила} {target2}.
Соответственно:
Маруся убила Злобная саранча.
Ваня убил Большой таракан.

Я специально написал название цели2 в именительном падеже и с большой буквы. Чем круче будет твой текстовый интерпретатор, тем более правильными будут сообщения. (Падежи, время и т.д.) Всё это - проблемы вью, а не модели.

Вообще, это не самая простая задача даже для опытного человека, сгенерировать идеально правильное сообщение на всех языках. Для простоты советую использовать только именительный падеж и не слишком париться, в случае русского языка. Там где возможно, пиши в правильном падеже. Игровые условности никто не отменял.
__________________
Дети не должны знать о своих родителях


Последний раз редактировалось Tails; 25.09.2018 в 16:33.