Функция на основе message

Страницы: 1
RSS
Функция на основе message
 
Господа, замучился уже с этой функцией. Есть ли в ней ошибка?
Код
function ms (value)
   if type(value)~="table" then
      message (""..(value or "nil"),1)
      
   else
      for k,v in pairs(value) do
         message (k.." "..v,1)
      end
   end   
end
Объясню. Она то работает,то не работает. Будучи внутри колбека OnParam она в начале выдаёт нужные значения. Потом, не меняя код, начинает глючить и выдавать сообщение, что ms - это нил.
Ну например ms("бид="..bid)
После начала работы кода она пишет
бид=55.2
А потом начинает вылетать с описанной выше ошибкой.
Подскажите пожалуйста что с ней может быть не так.
 
Фунция занесена не в текст самого кода, а в текст библиотеки Lib.
В коде робота в начале текста идёт
require "Lib"
 
Если интерпретатор говорит, что ms есть nil и запустить функцию невозможно - не стоит сомневаться, так оно и есть. Ещите место, где вы или обнуляете его (типа ms = nil) или где присваивание значение ms другой переменной до об'явивший самой функции ms

a=f
function f() end
a() --  ошибка исполнения
www.bot4sale.ru

Пасхалочка для Алексея Иванникова: https://forum.quik.ru/messages/forum10/message63088/topic7052/#message63088
 
Код
function ms (value)
   if type(value)~="table" then
      message (""..tostring(value),1)
      
   else
      for k,v in pairs(value) do
         message (tostring(k).." "..tostring(v),1)
      end
   end   
end
Страницы: 1
Читают тему
Наверх