Переменные из других скриптов: различия между версиями

Материал из UoPilot
Перейти к навигации Перейти к поиску
(Новая страница: «== Описание == '''.''' - используется в ссылках на переменные и массивы в параллельных скрипта...»)
 
 
Строка 1: Строка 1:
 
== Описание ==
 
== Описание ==
 
'''.''' - используется в ссылках на переменные и массивы в параллельных скриптах.
 
'''.''' - используется в ссылках на переменные и массивы в параллельных скриптах.
<br>При этом скрипт, к которому обращаются за переменной, должен работать или быть на паузе.
+
<br>При этом скрипт, к которому обращаются за переменной, должен работать или быть на паузе.
  
 
== Синтаксис ==
 
== Синтаксис ==
 
Привязка к окну: нет.
 
Привязка к окну: нет.
&lt;br>Работа со свернутым окном: да.
+
<br>Работа со свернутым окном: да.
&lt;br>При двух или более запущенных скриптах вы можете обращаться к переменным, определенным в других скриптах пилота. Синтаксис указания таких переменных следующий:
+
<br>При двух или более запущенных скриптах вы можете обращаться к переменным, определенным в других скриптах пилота. Синтаксис указания таких переменных следующий:
 
  #i.2 - обращаемся к переменной #i из скрипта, находящегося в окне номер 2.
 
  #i.2 - обращаемся к переменной #i из скрипта, находящегося в окне номер 2.
 
== Примеры ==
 
== Примеры ==
Строка 31: Строка 31:
  
 
  // Пример 6
 
  // Пример 6
  while #b.1 &lt; 10              // пока переменная '#b' из первого скрипта меньше 10  
+
  while #b.1 < 10              // пока переменная '#b' из первого скрипта меньше 10  
 
     hint ++++
 
     hint ++++
 
     wait 100
 
     wait 100
Строка 43: Строка 43:
  
 
[[Set]]
 
[[Set]]
&lt;br>[[Массивы]]
+
<br>[[Массивы]]
&lt;br>[[Init_arr]]
+
<br>[[Init_arr]]
  
 
== История развития ==
 
== История развития ==
  
 
'''1.07'''
 
'''1.07'''
&lt;br>Добавил возможность использовать переменные из параллельных скриптов, добавив к имени переменной номер скрипта через точку.
+
<br>Добавил возможность использовать переменные из параллельных скриптов, добавив к имени переменной номер скрипта через точку.
 
  set #i.2 5
 
  set #i.2 5
 
  say $test.2 #i.2
 
  say $test.2 #i.2
Строка 57: Строка 57:
  
 
'''2.25'''
 
'''2.25'''
&lt;br>Научил понимать переменные из других скриптов в формате #a.#b, #a.$b, #a.active_script
+
<br>Научил понимать переменные из других скриптов в формате #a.#b, #a.$b, #a.active_script
 
'''2.33'''
 
'''2.33'''
&lt;br>Подправил ссылку на переменные 'timer' и 'workwindow' других скриптов.
+
<br>Подправил ссылку на переменные 'timer' и 'workwindow' других скриптов.
  
 
'''2.35'''
 
'''2.35'''
&lt;br>Исправил ошибку, возникающую при одновременном вычислении выражений в параллельных скриптах.
+
<br>Исправил ошибку, возникающую при одновременном вычислении выражений в параллельных скриптах.
  
 
'''2.39'''
 
'''2.39'''
&lt;br>Исправил присваивание строковых переменных в параллельных скриптах, при указании индекса скрипта переменной.
+
<br>Исправил присваивание строковых переменных в параллельных скриптах, при указании индекса скрипта переменной.
  
 
[[Категория: Массивы]]
 
[[Категория: Массивы]]

Текущая версия на 11:35, 28 августа 2019

Описание

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

Синтаксис

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

#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
Исправил присваивание строковых переменных в параллельных скриптах, при указании индекса скрипта переменной.