Добавляются лишние символы перевода строки
Всем доброго времени. Заранее прошу прощения, если задаю вопрос не туда (тема “Как сделать?”, я думаю, не подходит).
В общем, при восстановлении текста, сохраненного с помощью функции $maintxt, добавляются лишние переводы строки (каждый раз по 1 строке).
Код для проверки (также прикрепляю готовый файл в формате игры с этим кодом):
Spoiler
_i = 0
_max = 34
:loc_loop
if _i < _max:
'lorem ipsum dolor sit amet'
_i += 1
jump 'loc_loop'
end
act 'Сохранить и восстановить основной текст':
$_maintxt = $maintxt
*clr
$_maintxt
killvar '_maintxt'
end
Проверил данный код на двух версиях плеера (5.7.0 и 5.8.0 Beta7), и на обоих его поведение одинаковое.
Причем, если получить размер сохраненного текста с помощью len, и выполнить код из act, то количество символов увеличивается на 2 каждый раз.
Вопрос: как избежать этих лишних добавлений переводов строк?
Пробовал использовать $trim, и даже $mid, чтобы вырезать последние 1-2 символа, но вырезаются только символы из самого текста, а сами символ(ы) перевода строки остаются на месте.
studentik,
но ты ведь выводишь текст с помощью неявного оператора, а он ведёт себя, как оператор *pl в этом случае.
Используй *p при выводе, и не будет лишнего перевода строк.
act 'Сохранить и восстановить основной текст':
$_maintxt = $maintxt
*clr
*p $_maintxt
killvar '_maintxt'
end
Aleks Versus,
Вот я дурак… я совсем забыл про эти *p, *pl, *nl…
Спасибо большое =)