Автор: Артём 3.4.2009, 22:10
Подскажите как исправить ошибку в скрипте 359: attempt to concatenate field 'sNick' (a nil value)
Антиреклама.lua ( 4.89 килобайт )
: 17
Автор: Setuper 3.4.2009, 22:38
там всего 170 строк. Откуда ошибка в 359 строке?
Автор: Артём 3.4.2009, 23:32
Цитата(Setuper @ 3.4.2009, 22:38)
там всего 170 строк. Откуда ошибка в 359 строке?
их там больше....просто я большую часть списка всевозможных видов рекламы удалил прежде чем закинуть.....
CODE
function Core.ChatArrival(tUser,sData,bPM)
if CanDo[tUser.iProfile] == 0 then
return false
end
local s,e,msg = string.find(sData,"%b<>%s(.*)")
if checkForAdvertising(msg) then
if checkForSafe(msg) then
return false
end
if bPM == nil then
if UserSay == 1 then
Core.SendToAll("<"..tUser.sNick.."> "..MessageToAll[math.random(PhrasLen)])
end
Core.SendPmToOps(sBot, "*** "..tUser.sNick.." "..text_to_op..msg)
else
Core.SendPmToOps(sBot, "*** "..tUser.sNick.." "..text_to_op_pm..msg)
end
if bPM == nil then
Fuckit(tUser,Chat)
else
Fuckit(tUser,PM)
end
return true
end
end
в этом кусочке ошибку выдаёт,а именно Core.SendPmToOps(sBot, "*** "..tUser.sNick.." "..text_to_op_pm..msg)
Автор: Setuper 3.4.2009, 23:35
Потому что неправильно перевёл скрипт под api1.
в функциях OnStartup и ToArrival спереди тоже надо писать Core. !
Автор: Артём 3.4.2009, 23:41
Спасибо за помощь,парочку пропустил при переводе)))
P.S. У меня вопрос,а можно сделать чтобы только определённый ник получал сообщения о том что кто-то пытается кинуть рекламу,а не все операторы и админы.......?
Автор: ustas 4.4.2009, 10:05
Код
Core.SendPmToOps(sBot, "*** "..tUser.sNick.." "..text_to_op..msg)
заменяешь на
Код
Core.SendPmToNick(Nick, sBot "*** "..tUser.sNick.." "..text_to_op..msg)
Автор: Wariner 4.4.2009, 10:09
при этом ещё надо не забыть
Код
Nick = "ник кому приходит"
Автор: Артём 4.4.2009, 13:53
2Wariner
что-то не хочет....я уже и пробовал sNick,может я просто не туда его поставил или разници нету куда ставить....
Автор: ustas 4.4.2009, 15:22
хотя бы написал, какие ошибки выдает
Код
Nick = "Артём"
Core.SendPmToNick(Nick, sBot "*** "..tUser.sNick.." "..text_to_op..msg)
сообщение придет Артёму
Код
Core.SendPmToOps(sBot, "*** "..tUser.sNick.." "..text_to_op_pm..msg)
тоже надо исправить на
Код
Core.SendPmToNick(Nick, sBot "*** "..tUser.sNick.." "..text_to_op_pm..msg..msg)
Автор: Артём 4.4.2009, 15:59
Цитата(ustas @ 4.4.2009, 15:22)
хотя бы написал, какие ошибки выдает
attempt to call global 'sBot' (a string value)
Автор: Setuper 4.4.2009, 16:02
После sBot пропущена запятая.
Автор: Артём 5.4.2009, 9:08
Цитата(Setuper @ 4.4.2009, 16:02)
После sBot пропущена запятая.
пасипа