ФЭНДОМ


В данной статье приводится полное описание и примеры применения функций варп-ядра. Все функции вызываются через консоль lua в компьютерах из ComputerCraft. Для взаимодействия с ядром (читай: использования любых функций) вам понадобится интерфейс ядра, действующий как периферийное устройство ComputerCraft.

Начало работыПравить

См. использование интерфейса ядра.

Не забудь вызывать findCore() у интерфейса, когда подключаешься к нему, ёпта. Иначе он выдавать ошибку 5, означающую, что ядро не найдено.

Возвращаемые значения функцийПравить

Все функции, при выполнении которых не может произойти ошибки (пример: getMode), возвращают только одно значение.

Все функции, которые при выполнении имеют шанс потерпеть неудачу, возвращают два значения: первое - код ошибки (равен 0 в случае успеха), второе - собственно, результат выполнения функции. Не забывайте проверять успешность выполнения функции: в случае ошибки второе возвращаемое значение использовать крайне не рекомендуется (если вы это сделаете, к вам придёт Попобава).

Пример:

yoba = peripheral.wrap("back") --подключаем компьютер к интерфейсу варп-ядра
print( yoba.getMode() ) --выведет текущий режим ядра; функция не может не сработать, поэтому не проверяем код ошибки

errorCode, result = yoba.getX() --функция getX() требует 10 000 EU для успешного выполнения

if (errorCode == 0) then
	print( "Warp Core x-coord = ", result) --успешное выполнение, выводим результат
else
	print( "Not enough energy!" ) --ошибка. Т.к. недостаток энергии - единственная возможная ошибка у getX(), мы не производим дополнительного сравнения [[Коды ошибок|кода ошибки]].

Собственные функции ядраПравить

Для использования этих функций дополнительные модули не нужны.

Возвращают код ошибки и значение:

  • getX() - получает x-координату ядра, потребляет 10 000 EU (вы внимательно прочитали про возвращаемые значения, не так ли?)
  • getY() - получает y-координату ядра, потребляет 10 000 EU
  • getZ() - получает z-координату ядра, потребляет 10 000 EU

Возвращают только значение:


  • setMode() - устанавливает режим ядра(0-2)
  • getSizeX() - получает размер корабля по оси X
  • getSizeY() - получает размер корабля по оси Y
  • getSizeZ() - получает размер корабля по оси Z
  • getSize() - получает сумму размеров корабля
  • getMode() - выводит код текущего режима ядра
  • getNextMode() - если ядро находится в процессе смены режима, выводит код режима, на который переключается ядро. Иначе выводит то же, что и getMode()
  • getCooldown() - выводит оставшийся кулдаун ядра (в тиках). Не все действия подвержены кулдауну, в основном он влияет на прыги
  • getActivatingEnergy() - возвращает количество энергии, которое ядру необходимо поглотить до завершения процесса активации. Работает только во время смены режима.
  • getWakingTime() - возвращает время, оставшееся до завершения пробуждения(из 1 в 2).

Функции прыжкового модуляПравить

Энергопотребление и кулдауны смотрите в статье про прыги. Все функции возвращают код ошибки.

  • warpShort(x, y, z) - короткий прыжок на заданное расстояние. Координаты указываются относительно ядра. Если введете слишком большое расстояние, вместо него возьмется максимальное возможное.
  • warpLong(x, y, z) - длинный прыжок на заданное расстояние. Координаты указываются относительно ядра. Корабль всегда будет оказываться на максимальной высоте, т.е., y-координата не учитывается.

Функции гиперманипулятораПравить

  • jumpToBeacon(frequency) - прыжок к маяку с заданной частотой.
  • summonFromBeacon(frequency, x, y, z) - призывает игроков и другие entity с маяка. Да, сучечки, вы можете призывать (и подбрасывать другим людям) заряженные нюки, криперов, предметы, ну и себя, конечно же.
Материалы сообщества доступны в соответствии с условиями лицензии CC-BY-SA , если не указано иное.