Переменные из других скриптов

Материал из UoPilot
Версия от 11:35, 28 августа 2019; Tatikoma (обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к навигации Перейти к поиску

Описание

. - используется в ссылках на переменные и массивы в параллельных скриптах.
При этом скрипт, к которому обращаются за переменной, должен работать или быть на паузе.

Синтаксис

Привязка к окну: нет.
Работа со свернутым окном: да.
При двух или более запущенных скриптах вы можете обращаться к переменным, определенным в других скриптах пилота. Синтаксис указания таких переменных следующий:

#i.2 - обращаемся к переменной #i из скрипта, находящегося в окне номер 2.

Примеры

// Пример 1
log #a.1              // отобразить в логе значение переменной '#a' из первого скрипта
log $a.1              // отобразить в логе значение переменной '$a' из первого скрипта
log %a.1 [1 1]        // отобразить в логе значение элемента массива '%a [1 1]' из первого скрипта
// Пример 2
set #a #a.3           // присвоить переменной '#a' значение переменной '#a' из 3 скрипта
set %arr [1 1] #a.2   // присвоить элементу массива '%arr [1 1]' значение переменной '#a' из 2 скрипта
// Пример 3
set #handle workwindow.4     // присвоить переменной '#handle' значение переменной 'workwindow' из 4 скрипта
set workwindow #handle       // сделать окно рабочим для текущего скрипта
// Пример 4
set %arr.2 [1 1] 321         // присвоить '321' элементу массива '%arr [1 1]' 2 скрипта
// Пример 5
if #a.3 = 10                 // если переменная '#a' из 3 скрипта равна 10
    log !!!
end_if
// Пример 6
while #b.1 < 10              // пока переменная '#b' из первого скрипта меньше 10 
    hint ++++
    wait 100
end_while
// Пример 7
set #b 3
set #d #a.#b                 // присвоить переменной '#d' значение переменной '#a' из 3 скрипта

Смотрите также

Set
Массивы
Init_arr

История развития

1.07
Добавил возможность использовать переменные из параллельных скриптов, добавив к имени переменной номер скрипта через точку.

set #i.2 5
say $test.2 #i.2

Добавил возможность использовать характеристики персонажа из параллельных скриптов, добавив к имени переменной номер скрипта через точку.

set lasttargetid.1 7
say hits.1

2.25
Научил понимать переменные из других скриптов в формате #a.#b, #a.$b, #a.active_script 2.33
Подправил ссылку на переменные 'timer' и 'workwindow' других скриптов.

2.35
Исправил ошибку, возникающую при одновременном вычислении выражений в параллельных скриптах.

2.39
Исправил присваивание строковых переменных в параллельных скриптах, при указании индекса скрипта переменной.