Difference between revisions of "Точечный сканер материалов"
Jump to navigation
Jump to search
Line 21: | Line 21: | ||
|volume=167,69 кВ | |volume=167,69 кВ | ||
|corrosionResistance=560 | |corrosionResistance=560 | ||
|primaryMaterial= | |primaryMaterial=Бастиум | ||
|suppressUnitsKg | |suppressUnitsKg | ||
|suppressUnitsKv | |suppressUnitsKv |
Revision as of 20:32, 12 November 2021
Точечный сканер материалов
Тип Utility device
Функция Determines object composition
Размер 108x48x48 см
Масса 1 948,94 кг кг
Объем 167,69 кВ кВокс
Сопротивление коррозии 560
Основной материал Бастиум
Потребление / Расход
Потребление электричества ~300 e/s
Состав
Описание устройства
Точечный сканер материалов позволяет определить состав любого объекта в игре, а именно какие материалы и в каком объеме содержатся в сканированном объекте. Сканер испускает синий луч, длиной 100 метров. При пересечении луча объектом появляется небольшая голограмма в месте пересечения.
Принцип работы сканера
- Включение поискового луча осуществляется установкой поля Activave в значение "1"
- Для начала сканирования предмета необходимо установить поле Scan в значение "1"
- Луч следует навести на объект (например, на астероид) и подождать несколько секунд
- После успешного сканирования, поле Scan сбросит свое значение в "0"
- Результаты сканирования помещаются в массив, каждый элемент которого содержит значение Material (название материала) и Volume (объем материала в кв). Количество элементов массива будет равно количеству разных материалов, содержащихся в объекте
- Доступ к элементам массива осуществляется через поле Index, где "0" - первый элемент массива
Поля устройства
YOLOL поле | Описание | Диапазон значений |
---|---|---|
Active | Отвечает за включение сканера. Значение "1" включает, "0" - выключает | 0 - 1 |
Index | Номер сохраненного результата сканирования в массиве | 0 - |
ScanResults | Количество сохраненных результатов сканирования | 0 - |
Material | Название сканированного материала | String |
Volume | Объем сканированного материала в киловокселях | 0 - |
Scan | При установлении значения поля "1", инициирует сканирование. Поле автоматически сбрасывается в "0" после успешного сканирования | 0 - 1 |
Reset | Очищает массив сохраненных результатов сканирования | 0 - 1 |
Узнать больше об использовании полей устройств можно на следующих страницах:
Пример скрипта для сканера
Данный скрипт подходит для сканирования астероидов. Астероиды всегда содержат не более двух видов материалов, поэтому вместо цикла в отдельных строках вызывается нужный элемент массива
GOTO1+:Active :Scan=1 IF :ScanResults>0 THEN GOTO3 ELSE :Scanner="" GOTO1 END :Index=0 Vol=:Volume/1728 :Scanner=:Material+": "+Vol+"\n" :Index=1 Vol=:Volume/1728 :Scanner+=:Material+": "+Vol :Active=0 :Reset=1 GOTO1
- Первая строка отвечает за включение сканера
- Вторая строка инициирует сканирование и ждет его успешного завершения. Понять, что сканирование завершено можно по значению поля :ScanResults, которое указывает текущее количество элементов массива
- Третья и четвертая строки читают элементы массива и записывают результат в поле :Scanner (текстовая панель). Объем делится на 1728 кв чтобы получить результат в стаках, а не в киловокселях
- После сохранения результата в текстовой панели, сканер выключается, массив очищается