function getPeripheral( p_type, p_side )
if( peripheral.isPresent(p_side) )then
if( peripheral.getType(p_side)==p_type )then
return peripheral.wrap(p_side)
end
end
print( "Error: "..p_type.." not found at "..p_side.." side" )
exit()
end
Смысл функции состоит в том, что она проверяет наличие нужной периферии с определенной стороны и в случае успеха возвращает соответствующий объект. В противном же случае функция должна сообщить об ошибке и завершить работу программы.
Вопрос - как завершить работу программы правильно.
return не подходит, т.к. происходит выход лишь из функции.
os.shutdown полностью выключает компьютер, убирая сообщение об ошибке.
Другие известные мне варианты вроде приведенного в коде выдают дополнительную ошибку "attempt to call nil".
Есть код для ComputerCraft:
Смысл функции состоит в том, что она проверяет наличие нужной периферии с определенной стороны и в случае успеха возвращает соответствующий объект. В противном же случае функция должна сообщить об ошибке и завершить работу программы.
Вопрос - как завершить работу программы правильно.
return не подходит, т.к. происходит выход лишь из функции.
os.shutdown полностью выключает компьютер, убирая сообщение об ошибке.
Другие известные мне варианты вроде приведенного в коде выдают дополнительную ошибку "attempt to call nil".
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах