function DisplayTimedTextToForce takes force toForce, real duration, string message returns nothing
if (IsPlayerInForce(GetLocalPlayer(), toForce)) then
Use only local code (no net traffic) within this block to avoid desyncs.
call DisplayTimedTextToPlayer(GetLocalPlayer(), 0, 0, duration, message)
endif
endfunction
Используется только для местного код только локально , без сетевого трафика, чтобы избежать рассинхрона.
На сколько это предупреждение актуально?
Второй вопрос. Как правильно заменить ""TRIGSTR_3044" В Текстовом сообщении. Если пишу в кавчках, что - то кроме, то сообщение не меняется
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
27
2 месяца назад
0
На сколько это предупреждение актуально?
Если убрать локал плеер то сообщение просто отобразится всем игрокам

Как правильно заменить ""TRIGSTR_3044"
Гуишные строки превращаются в это подобие переменных, их можно найти в архиве карты. Чтобы такого не происходило, писать текст желательно кодом (учитывая, что эти тригстр имеют свойство стираться)
2
26
2 месяца назад
Отредактирован Extremator
2
Цельные строки специально так выносятся в .wts файл
Есть даже функция в GUI, которая специально преобразует конкретную строку в такой "макрос".
Так в ряде случаев проще работать с текстом.
Версия карты остаётся ровно та же самая, а вот тексты можно именять и/или переводить на другой язык.

На счет локал-плеера - актуально как в первый же день.
Функция вывода текста работает на конкретных указанных игроков. Что бы показать текст всем игрокам, нужно пройтись по ним как циклом (для этого есть группа игроков - force). Но есть уникальная в своём роде функция "локал-плеер", которая возвращает того игрока, у которого она отрабатывает (проще говоря если вывести всем игрокам "имя локал-плеера", то каждый игрок увидит своё собственной имя). Для того что бы не юзать цикл на всех игроков (или форс) можно вывести текст для конкретного игрока, но указать там "локал-плеера", таким образом каждый игрок получит для себя самого текст. Разница лишь в том что игра будет по-факту отправлять одно сообщение, а получат их все игроки, и они могут разниться. А если через форс - игра отсправит по олному сообщению каждому игроку (итого до 12).
Почему гуишная функция использует проверку на форс, но работает с локал-плеером? - да потому что таким образом проще отсеять тех, кому надо выводить сообщения (и оно будет одно, как я сказал выше). Иначе мы бы просто писали каждому игроку через форс по отдельному сообщению.
0
37
2 месяца назад
Отредактирован ScorpioT1000
0
Какое большое объяснение...
Эта функция проверяет, если твоя машина в группе, то вывести текст себе же, а не передавать по сети кому-то ещё.
А вызывается она обычно в синхронном коде - на всех машинах в примерно один момент времени
Чтобы оставить комментарий, пожалуйста, войдите на сайт.