Ребята, пытаюсь вывести на экран в игре составную строку, часть которой находится в war3map.wts (STRING 1)
STRING 1
{
Дистанция камеры:
}
{
Дистанция камеры:
}
Вторая часть получается через:
I2S(R2I(GetCameraField(CAMERA_FIELD_TARGET_DISTANCE)))
I2S(R2I(GetCameraField(CAMERA_FIELD_TARGET_DISTANCE)))
А вывожу вот так:
1-й способ через GetLocalizedString()
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0, 5.0, GetLocalizedString("TRIGSTR_1" + " " + I2S(R2I(GetCameraField(CAMERA_FIELD_TARGET_DISTANCE)))))
1-й способ через GetLocalizedString()
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0, 5.0, GetLocalizedString("TRIGSTR_1" + " " + I2S(R2I(GetCameraField(CAMERA_FIELD_TARGET_DISTANCE)))))
2-й способ обычный
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0, 5.0, "TRIGSTR_1" + " " + I2S(R2I(GetCameraField(CAMERA_FIELD_TARGET_DISTANCE))))
call DisplayTimedTextToPlayer(GetTriggerPlayer(),0,0, 5.0, "TRIGSTR_1" + " " + I2S(R2I(GetCameraField(CAMERA_FIELD_TARGET_DISTANCE))))
В обоих случая на экран выводится:
"Дистанция камеры: "
"Дистанция камеры: "
Без конкатенации строк, если отдельно выводить I2S(R2I(GetCameraField(CAMERA_FIELD_TARGET_DISTANCE)))
то число конвертированное в строку выводится, например 1650
то число конвертированное в строку выводится, например 1650
Есть идеи где я накосячил?
Принятый ответ
В GetLocalizedString отправляй только идентификатор строки из базы wts, а соединяй уже результат вызова функции
И не стесняйся выделять под промежуточные результаты временные переменные - повысит читаемость кода.
Или красиво форматировать:
Или красиво форматировать:
Локалка = Вызов1(
Вызов2(
Аргумент
)
)
`
ОЖИДАНИЕ РЕКЛАМЫ...
Чтобы оставить комментарий, пожалуйста, войдите на сайт.
Отредактирован ScorpioT1000
Или красиво форматировать: