XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов> Jass
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
Strayiker
Warcraft Forever
offline
Опыт: 3,406
Активность:
Глюки с функцией.
Сделал функцию:
Код:
function MBShow takes string str returns nothing
    local integer c
    local integer t = 1
    local string s = ""
    if ( StringLength(str) > 25 ) then
        set c = R2I( StringLength(str) / 25 + 0.5)
        loop
            exitwhen t > c
            set s = s + SubStringBJ( str, 1, 25 ) + "|n"
            set str = SubStringBJ( str, 26, StringLength(str) )
            set t = t + 1
        endloop
    endif
    call CreateTextTagUnitBJ( s, gg_unit_nvlw_0106, 0, 9, 100, 100, 100, 0 )
endfunction


Функция должна разбить строку, переданную в неё на несколько строк, в каждой из которорых по 25 символов. Но когда передаёшь нормальный текст получается всякий маразм: строки получаются все разной длинны и ещё фиг знает чё там творится...

Мож кто знает из-за чего это ???
Старый 11.06.2008, 15:26
dk

offline
Опыт: 60,293
Активность:
Один русский символ по длине равняется 2 символам... В варе такая система. А английский символ, пробел, запятая, и прочии международные символы по длине равны 1, из-за этого у тебя
Цитата:
строки получаются все разной длинны и ещё фиг знает чё там творится...
Старый 11.06.2008, 15:34
Strayiker
Warcraft Forever
offline
Опыт: 3,406
Активность:
Мдя уж... люди добрые, помогите составить функцию, которая правильно разбивала бы смешаный текст. Пытался сделать сам, получается, но не совсем точно. Оч нужна такая функция, на карте текста много, форматить каждый раж вручную просто бессмысленно...
Старый 12.06.2008, 01:05
ScorpioT1000
Работаем
online
Опыт: отключен
ты в стринг всеравно не забьеш больше чем 255(128) символов http://xgm.guru/forum/showthread.php?t=12863&highlight=string
Старый 12.06.2008, 04:25
dk

offline
Опыт: 60,293
Активность:
Для распознавания русских символов в строке используй следующую библеотеку... Там улучшенные функции по разделению строк и еще много полезного
Старый 12.06.2008, 05:29
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 03:17.