Xash3D на русском.

 

mittorn

Active member
22.04.2010
1 223
15
38
Награды
0
2 Дядя Миша:
в каком месте нестабильное? Где-то баги всплыли из-за старой студии?
У меня к лапше в виде старого меню доверия меньше. Стоит ошибиться чуть чуть в индексах и баг. А чтобы добавить кнопку или чекбокс нужно внести изменения в 5 разных мест в одном файле. Куда уж хуже то? даже если оно и правда нестабильное в каких-то местах, это всё равно лучше
 
 
Команда форума
28.03.2010
15 384
242
63
Награды
0
Кубань
Вы его с Кувертусом тогда потестируйте как следует на разных модах. Это будет гарантия качества. Вот когда Кувертус не сможет ничего найти, тогда я соглашусь что оно стабильное.
 
 

mittorn

Active member
22.04.2010
1 223
15
38
Награды
0
2 Дядя Миша:
ну да. реально под won не пускали, а оказалось, что там крашит. Можно scr от этого won (именно русского)?
 
 

TigerHeart01

New member
26.06.2017
100
0
0
Награды
0
2 Дядя Миша: Надеюсь, я не заставил долго себя ждать ? ;)
Если вдруг где-нибудь накосячил - прошу прощения. Вроде бы старался ничего не запороть. Вроде бы всё проверял. Но ведь я же не святой. Мог где-то и ошибиться. Так что извини, если чё не так.
 

Вложения

  • 74.5 КБ Просмотров: 16
 

TigerHeart01

New member
26.06.2017
100
0
0
Награды
0
2 a1batross:
a1batross сказал(а):
2 TigerHeart01: Перевод лежит в resource/valve_english.txt. То есть <gamedir>_<language>.txt.
Что-то всё равно ничего не получается. Добавил файл resource/valve_english.txt, но все строки всё равно пустые. (((
В-общем, хорошая у тебя задумка с твоей менюшкой, но пока что она не совсем работает !
А жаль....
 
Последнее редактирование:
 
Команда форума
28.03.2010
15 384
242
63
Награды
0
Кубань
2 TigerHeart01: я пока другим занят, на сл. неделе постараюсь посмотреть.
 
 
Команда форума
28.03.2010
15 384
242
63
Награды
0
Кубань
Немного поработал с меню. Первое что я сделал - это взял из меню альбатросса код загрузки BackgroundLayout. Там кода немного совсем. зато теперь будут грузиться все сплэши из steam-модов. ну и можно заняться русификацией.

[ADDED=Дядя Миша]1543268277[/ADDED]
Мда. Вот что в итоге получилось (в аттаче). Искать что там и куда сдвинулось я не буду. Русификация отменяется.
 

Вложения

Последнее редактирование:
 

TigerHeart01

New member
26.06.2017
100
0
0
Награды
0
Дядя Миша сказал(а):
Мда. Вот что в итоге получилось (в аттаче). Искать что там и куда сдвинулось я не буду. Русификация отменяется.
Отставить панику ! Щас разберёмся !

[ADDED=TigerHeart01]1544677066[/ADDED]
Ага, всё понятно. Всё съехало ровно на одну строку. Осталось только выяснить, с какой строки это началось. Покажите-ка мне, батенька, скрин настроек мыши.

[ADDED=TigerHeart01]1544678117[/ADDED]
Короче, суть проблемы такова - строка с номером 190 уже съехавшая. То есть, пропуск строки получился где-то раньше. Просто пробуйте вставить один дополнительный "", в разных местах процедуры MenuStrings, и наблюдайте, в какой позиции всё поправится.
Например, если настройки звука тоже съехавшие, то пробуйте вставить дополнительную пустую строку в позицию 140.

[ADDED=TigerHeart01]1544681938[/ADDED]
Кажется я допёр, где собака порылась.
У вас же MenuStrings - это массив ! А в массиве нумерация индексов начинается с нуля !!!
А в strings.lst - с единицы !
Вот поэтому и произошёл сдвиг не единицу.
Добавьте пустой нулевой индекс в MenuStrings !!
 
Последнее редактирование:
 

TigerHeart01

New member
26.06.2017
100
0
0
Награды
0
Дядя Миша сказал(а):
ага. вот я и не хочу разбираться с какой.
Я уже за вас разобрался.
У вас MenuStrings - это массив !
А в массиве нумерация индексов начинается с нуля !!!
А в strings.lst - с единицы ! Вот поэтому и произошёл сдвиг не единицу.
Добавьте пустой нулевой индекс в MenuStrings !!
 
 
Команда форума
28.03.2010
15 384
242
63
Награды
0
Кубань
2 TigerHeart01: представь на минуточку, что мержинг твои сорцев занимает почти час. А потом еще сдвиг на еденицу. И тут опа - не помогло. Дальше что?
Опять впустую потраченное время?
 
 

mittorn

Active member
22.04.2010
1 223
15
38
Награды
0
Оффтоп
 
Последнее редактирование:
 

TigerHeart01

New member
26.06.2017
100
0
0
Награды
0
Дядя Миша сказал(а):
2 TigerHeart01: представь на минуточку, что мержинг твои сорцев занимает почти час. А потом еще сдвиг на еденицу. И тут опа - не помогло.
Печально... (
Я просто почему именно к этой мысли пришёл ? Я видел, что у тебя в menu_strings.cpp стоят комменты через каждые 10 строк. Но я только сейчас заметил, что коммент с цифрой 10, на самом деле, стоит в 11-й строке. А я этого не знал и лепил индексы 1 в 1. Ну очень уж сильно это похоже на причину.
Ну просто даже чисто по логике - ничего же, кроме этого в сорцах практически не менялось.
А нельзя ли поставить комп на мержинг, например, на ночь ? Ну, или когда на работу уходишь.
Как вариант, можно попробовать даже сделать наоборот - не менять ничего в сорцах, а просто уменьшить на единицу все индексы в strings.lst. Ну чисто для эксперимента. Ведь такая элементарная проверка займёт гораздо меньше времени, чем пересборка сорцов.
 
 
Команда форума
28.03.2010
15 384
242
63
Награды
0
Кубань
2 TigerHeart01: ну поменяю я. Всё съедет. Мне что запоминать что и куда съехало? Нет, тут надо именно вдумчиво разобраться. Может оно и так, а может и нет. Время нужно на это дело. Потом.
 
 

mittorn

Active member
22.04.2010
1 223
15
38
Награды
0
2 TigerHeart01:
мержинг происходит мгновенно, час уходит на ручные правки/проверки
 
 

TigerHeart01

New member
26.06.2017
100
0
0
Награды
0
Дядя Миша сказал(а):
2 TigerHeart01: тут надо именно вдумчиво разобраться.
Согласен.
Итак...
Сначала дефинятся индексы (возьмём для примера HINT_NEWGAME), то есть HINT_NEWGAME дефинится на 189.
В UI_LoadCustomStrings читаются строки из "gfx/shell/strings.lst",
и в строке
MenuStrings[string_num] = StringCopy( token );
строка из файла (в нашем примере) № 189 ( "Старт новой игры." ) записывается в элемент массива MenuStrings[189] (а это у нас - :shock: "Learn how to play Half-Life.") %)
Вот даже смотри, если взять MenuStrings[0], то у нас это будет - "English".
А в strings.lst не бывает нулевой строки. Это же абсурд. То есть, строка "English" не может быть нулевой, она должна быть как минимум первой. Ну правильно же ?
А если теперь добавить в MenuStrings нулевой элемент, то тогда получится... считаем... считаем... О! "Start a new game." Теперь всё правильно.
Или я где-то ошибся ? Проверьте меня, кто шарит.