Версия для печати темы
MyDC.ru _ Kорзина _ От: Birthdayman
Автор: Strannik 3.7.2008, 17:36
Цитата(Infernus-pro @ 25.6.2008, 13:10)
Собсно описывать нечего, менюшка есть, все работает на API 1, тока переконвертировать и подправить под API 2 не смог, конвертора нету, перевидите плиз кто нибудь.
Переконвертировал скрипт под API 2 в меню хаба видется , но команды не проходят.
не могу найти в чем проблема, знающий народ плиз исправте скрипт. зарание спасибо
почемуто не найти готовых под API 2 такого скрипта
Автор: Gangster 4.7.2008, 13:37
ну так кто сможет зделать под API 2 скрипт?
Автор: Wariner 4.7.2008, 14:01
прошу
Автор: Strannik 4.7.2008, 16:18
Цитата(Wariner @ 4.7.2008, 14:01)
прошу
Спасибо большое все работает
Автор: Gangster 4.7.2008, 18:04
дни рождения с рабочим меню тоесть не показывает команды в чате как мне перенести со старой 4.07 версии базу данных юзеров?чтобы они не заполняли занова
Автор: Infernus-pro 19.7.2008, 12:50
Цитата
У тебя на какой птоке работает ? а то у меня на 4.1.1 не хочет пишет команды в чат и выключается , я даже его конвертировал и бесполезно .
пишет такую ошибку [23:40] Синтаксис D:\0.4.1.1\scripts\Дни рождения_newapi.lua:65: attempt to index field 'Core' (a nil value)
Попробуй вот этот:
Автор: Ва ва а 19.7.2008, 15:51
Цитата(Infernus-pro @ 19.7.2008, 12:50)
Попробуй вот этот:
Напрягает что
Код
[16:39:09] <[PIN]Ser-reg78> !mybirthday 09/11/1941
видят все!
Автор: Infernus-pro 19.7.2008, 16:30
Цитата(Ва ва а @ 19.7.2008, 16:51)
Напрягает что
Код
[16:39:09] <[PIN]Ser-reg78> !mybirthday 09/11/1941
видят все!
Так они же все равно увидят стоит зайти в меню и посмотреть дни рождения всех юзеров.
Автор: kylibyaka 19.7.2008, 20:41
Цитата(Infernus-pro @ 19.7.2008, 12:50)
Попробуй вот этот:
Спасибо всё отлично работает благодарю
Автор: kylibyaka 25.7.2008, 0:05
Цитата(kylibyaka @ 19.7.2008, 20:41)
Спасибо всё отлично работает благодарю
Работал сркипт и чёто перестал пишет такую ошибку Синтаксис D:\0.4.1.1\scripts\BirthdayMan.v4.08_newapi.lua:421: attempt to index local 'hFile' (a nil value) на птоке 4.1.1 , только не понял почему после 5 дней работы , он вдруг остановился с ошибкой . пробую прописать дату пишет команды в ощий чат и выключается .
Автор: Nickolya 25.7.2008, 0:14
Подобные ошибки вылетают из-за неправильности указанных путей, пробуйте абсолюные пути к файлам.
А вообще, в идеале делается вот такой код, его надо вставить в самое начало скрипта:
Код
sScriptsPath = Core.GetPtokaXPath():gsub("/", "\\").."scripts\\"
и sScriptsPath приписывается ко всем путям. Допустим, было sWay = "tTable.tbl", надо сделать вот так: sWay = sScriptsPath.."tTable.tbl". Но работает эта фишка только при условии что вы запускаете скрипт при включенном хабе, при выключенном вылетит ошибка.
Автор: kylibyaka 25.7.2008, 1:13
Цитата(Nickolya @ 25.7.2008, 0:14)
Подобные ошибки вылетают из-за неправильности указанных путей, пробуйте абсолюные пути к файлам.
А вообще, в идеале делается вот такой код, его надо вставить в самое начало скрипта:
Код
sScriptsPath = Core.GetPtokaXPath():gsub("/", "\\").."scripts\\"
и sScriptsPath приписывается ко всем путям. Допустим, было sWay = "tTable.tbl", надо сделать вот так: sWay = sScriptsPath.."tTable.tbl". Но работает эта фишка только при условии что вы запускаете скрипт при включенном хабе, при выключенном вылетит ошибка.
Ага ясно , щя будем пробывать .
Автор: vovansa 31.7.2008, 22:05
Цитата(Ва ва а @ 19.7.2008, 18:51)
Напрягает что
Код
[16:39:09] <[PIN]Ser-reg78> !mybirthday 09/11/1941
видят все!
и все таки как убрать что бы команды не пропускались в основной чат? ))))
Автор: Nickolya 31.7.2008, 22:32
Ищем вот такой код:
Код
ChatArrival = function(user,data)
local _,_, to = string.find(data, "^$To:%s(%S+)%s+From:")
local _,_, cmd = string.find(data, "%b<>%s+[%!%+](%S+).*|$")
if cmd then
if tCommands[string.lower(cmd)] then
cmd = string.lower(cmd)
if tCommands[cmd].tLevels[user.iProfile] then
return tCommands[cmd].tFunc(user, data), 1
else
return Core.SendToNick(user.sNick,"<"..Settings.sBot.."> *** Ошибка! У Вас нет прав, чтобы использовать эту команду!"), 1
end
end
end
end
ToArrival = ChatArrival
Затем везде где в строке есть return (в данном случае 2 строки), там исправляем после запятой единицу на true, к примеру:
было "return tCommands[cmd].tFunc(user, data), 1", переделали и стало "return tCommands[cmd].tFunc(user, data), true"
Автор: vovansa 31.7.2008, 23:12
Цитата
от Nickolya: Не надо цитировать предыдущий пост, получается захламление обсуждения! Цитата - хороший способ показать о чем идет речь если вы хотите поднять вопрос, обсуждаемый довольно давно в теме.
Учтем и примем к сведенью. Спасибо будем пробовать.
Автор: Strannik 1.8.2008, 20:20
Цитата(Nickolya @ 31.7.2008, 22:32)
Ищем вот такой код:
Код
ChatArrival = function(user,data)
local _,_, to = string.find(data, "^$To:%s(%S+)%s+From:")
local _,_, cmd = string.find(data, "%b<>%s+[%!%+](%S+).*|$")
if cmd then
if tCommands[string.lower(cmd)] then
cmd = string.lower(cmd)
if tCommands[cmd].tLevels[user.iProfile] then
return tCommands[cmd].tFunc(user, data), 1
else
return Core.SendToNick(user.sNick,"<"..Settings.sBot.."> *** Ошибка! У Вас нет прав, чтобы использовать эту команду!"), 1
end
end
end
end
ToArrival = ChatArrival
Затем везде где в строке есть return (в данном случае 2 строки), там исправляем после запятой единицу на true, к примеру:
было "return tCommands[cmd].tFunc(user, data), 1", переделали и стало "return tCommands[cmd].tFunc(user, data), true"
Менял 1 на true потом скрип не запускается
Вот ещё один баг после выключения ХАБа и запуски его база юзеров обнуляется
Автор: fly 1.8.2008, 21:37
Странно. После всех манипуляций у меня работает скрипт.
Автор: Gangster 23.8.2008, 21:09
дайте рабочий скрипт чтобы команды в чате не писал