Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

UoKit.com Форумы _ UO Pilot в онлайн играх _ Пауза между символами во время набора текста.

Автор: Nickon 21.2.2017, 23:06

Ребята, реально ли вывести текст из переменной так, буд-то бы он набирается с клавиатуры. Тоесть не весь сразу а с паузами между символами.

Я думал сделать через цикл For но не могу найти функции которая будет читать 1 символ из строки по порядковому номеру.

Автор: cirus 22.2.2017, 8:05

Цитата
не могу найти функции которая будет читать 1 символ из строки по порядковому номеру.

http://uopilot.tati.pro/index.php?title=Copy
Если текст без пробелов:
Код
set $str Hello      // строка
for #i 1 size($str)
    set $a copy($str #i 1)  
    log $a                    // можно убрать
    send $a
    wait 200 + random(200)    // пауза в 200-400 мсек
end_for
end_script

Текст с пробелами:
Код
set $str Hello my friend   // строка
for #i 1 size($str)
    set $a copy($str #i 1)
    log $a                    // можно убрать
    if  ord($a) = 32      // если пробел
        send {Space}    // нажать пробел
    else                      // иначе нажать символ
        send $a
        wait 200 + random(200)    // пауза в 200-400 мсек
    end_if
end_for
end_script

Если вместо send использовать sendex, то во вкладке 'Ещё' есть пауза между нажатиями. Но sendex работает только для активного окна.

Автор: Nickon 27.2.2017, 13:27

Спасибо огромное, счас буду попробовать)

Автор: vis77 31.5.2017, 16:15

Цитата(Nickon @ 21.2.2017, 23:06) *

Ребята, реально ли вывести текст из переменной так, буд-то бы он набирается с клавиатуры. Тоесть не весь сразу а с паузами между символами.

Я думал сделать через цикл For но не могу найти функции которая будет читать 1 символ из строки по порядковому номеру.



https://forum.uokit.com/index.php?showtopic=68112

я так делаю
set SendExDelay 500
sendex_down {ENTER}
sendex_UP {ENTER}
sendex ping
sendex_down {ENTER}
sendex_UP {ENTER}

sendex_down и sendex_up активируют и закрывают окно чата

если с переменными то так:
//СООБЩЕНИЕ в чат
sendex {enter}
wait 200
set %a [1] текст1
set %a [2] текст2
set %a [3] текст4
set %a [4] текст5
set %a [5] текст6
set #number 1 + random (5)
sendex %a[#number]
sendex {enter}

Русская версия Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)