Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

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 такого скрипта

 BirthdayMan.v4.07.lua ( 16.04 килобайт ) : 17
 

Автор: Gangster 4.7.2008, 13:37

ну так кто сможет зделать под API 2 скрипт?big_smile.gif

Автор: Wariner 4.7.2008, 14:01

прошу

 BirthdayMan.v4.08_newapi.lua ( 18.24 килобайт ) : 111
 

Автор: Strannik 4.7.2008, 16:18

Цитата(Wariner @ 4.7.2008, 14:01) *
прошу


Спасибо большое все работает

Автор: Gangster 4.7.2008, 18:04

дни рождения с рабочим меню тоесть не показывает команды в чате big_smile.gif как мне перенести со старой 4.07 версии базу данных юзеров?big_smile.gifчтобы они не заполняли занова big_smile.gif

 BirthdayMan.v4.08_newapi.lua ( 18.18 килобайт ) : 20
 

Автор: 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)

Попробуй вот этот:

 Birthday_bot.rar ( 62.13 килобайт ) : 77
 

Автор: Ва ва а 19.7.2008, 15:51

Цитата(Infernus-pro @ 19.7.2008, 12:50) *
Попробуй вот этот:

Напрягает что
Код
[16:39:09] <[PIN]Ser-reg78> !mybirthday 09/11/1941
видят все! doubt.gif

Автор: Infernus-pro 19.7.2008, 16:30

Цитата(Ва ва а @ 19.7.2008, 16:51) *
Напрягает что
Код
[16:39:09] <[PIN]Ser-reg78> !mybirthday 09/11/1941
видят все! doubt.gif

Так они же все равно увидят стоит зайти в меню и посмотреть дни рождения всех юзеров.

Автор: kylibyaka 19.7.2008, 20:41

Цитата(Infernus-pro @ 19.7.2008, 12:50) *
Попробуй вот этот:

Спасибо всё отлично работает благодарю feel_good.gif

Автор: kylibyaka 25.7.2008, 0:05

Цитата(kylibyaka @ 19.7.2008, 20:41) *
Спасибо всё отлично работает благодарю feel_good.gif

Работал сркипт и чёто перестал пишет такую ошибку Синтаксис 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
видят все! doubt.gif

и все таки как убрать что бы команды не пропускались в основной чат? ))))

Автор: 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

дайте рабочий скрипт чтобы команды в чате не писалbig_smile.gif