MyDC.ru _ Готовые скрипты для PtokaX _ Eh.greeting.bot
Автор: Wariner 13.11.2008, 18:36
Название скрипта: Eh.Greeting.Bot Версия скрипта: v1.0 Версия API: API1, API2 Автор: S.t.0.n.e d.b Перевод API2: Nickolya Описание скрипта: - Можно контролировать, какие профили будут видеть случайные приветсвия - Можно контролировать, кто сможет добавить или удалить собственное приветствие - Администраторские команды - Менюшка - Добавление и удаление приветсвий с помощью команд - Модно менять начало и конец приветсвий - Описания к профилям - Команды в главном чате или привате - Можно видеть свое собственное приветсвие - Можно дать возможность видеть ОПам вновь добавленные приветсвия
Прикольный скрипт, мне и моим админам и опам очень даже понравился... Большое Спасибо!
Автор: NikseR 15.11.2008, 14:07
Из пожеланий скриптописцам:
1) Давно хочется, чтобы в этом скрипте дописали защиту от флуда. Потому что когда юзер очень часто перезаходит в хаб (даже не специально, а чаще, когда клиент глючит), то получается жесткий флуд в чате из его приветствий-прощаний. Птока естественно это не принимает за флуд, т.к. сообщения посылаются от бота. Приходится самому каждый раз лезть в базу и удалять приветствия этого юзера. Это очень надоедает, к тому же делается это, когда юзер уже нафлудил. Вот если б дописали функцию, что, если юзер заходит в хаб чаще, чем n-ное кол-во минут, то приветствия не посылались в чат. Это было бы просто отлично!
2) Хочется еще, чтобы была защита от анонимных приветствий (ибо я их всегда удаляю или пишу юзеру, чтобы добавлял свой ник - но это тоже муторно каждый раз делать). Что-то вроде, если юзер добавил приветствие без своего ника или не вставил (*) в конце, то ему выдавалась ошибка.
Автор: NikseR 10.1.2009, 23:51
Еще такая просьба: возможно ли добавить ники-исключения, которым запрещено добавлять свои приветствия? Кто-то просто флудит или пишет белиберду какую-то постоянно, кто-то пихает рекламу в приветствия. :(
Автор: MEXAHuK 11.1.2009, 10:35
Цитата
1) Давно хочется, чтобы в этом скрипте дописали защиту от флуда. Потому что когда юзер очень часто перезаходит в хаб (даже не специально, а чаще, когда клиент глючит), то получается жесткий флуд в чате из его приветствий-прощаний. Птока естественно это не принимает за флуд, т.к. сообщения посылаются от бота. Приходится самому каждый раз лезть в базу и удалять приветствия этого юзера. Это очень надоедает, к тому же делается это, когда юзер уже нафлудил. Вот если б дописали функцию, что, если юзер заходит в хаб чаще, чем n-ное кол-во минут, то приветствия не посылались в чат. Это было бы просто отлично!
+1. та же трабла.
Автор: BeSeR 4.3.2009, 20:31
М...а можно так когда ОП или Мастер заходит там автоматом пишет Поприветствуем (ОП или Мастера) на ***-хабе ?
Автор: Wariner 4.3.2009, 20:32
это скрипт своеписанных приветствий! Если хочешь по профилям то юзай поиск, на форуме есть такой скрипт
Автор: BeSeR 7.3.2009, 15:21
Что не могу найти
Автор: Wariner 7.3.2009, 21:15
плохо ищешь http://mydc.ru/topic601.html
Автор: Wariner 14.4.2009, 22:46
решение проблемы с никоми в которых есть квадратные скобки API 2:
Код
function sendGreeting(user,uTable) local pDesc = pDesc[user.iProfile].." "..user.sNick; if uTable.tCustom[user.sNick] and (pCustom[user.iProfile] == 1) then local ran = math.random(1,table.maxn(uTable.tCustom[user.sNick])); local sNick = (user.sNick):gsub("%[", "%%[") sNick = sNick:gsub("%]", "%%]") local msgGreeting = string.gsub(uTable.tCustom[user.sNick][ran], "%[username%]", user.sNick) if string.lower(tVar.sProfile) == "on" then msgGreeting = string.gsub(msgGreeting, sNick, pDesc); end Core.SendToAll("<"..tVar.sBot.."> "..tVar.sHeader..msgGreeting.." "..tVar.sFooter); if string.lower(tVar.sOwn) == "on" then Core.SendToUser(user, "<"..tVar.sBot.."> "..tVar.sHeader..msgGreeting.." "..tVar.sFooter); end return true; elseif table.maxn(uTable.tRandom) ~= 0 and (pRandom[user.iProfile] == 1) then local ran = math.random(1,table.maxn(uTable.tRandom)); local msgGreeting = string.gsub(uTable.tRandom[ran], "%[username%]", user.sNick) if string.lower(tVar.sProfile) == "on" then msgGreeting = string.gsub(msgGreeting, user.sNick, pDesc); end Core.SendToAll("<"..tVar.sBot.."> "..tVar.sHeader..msgGreeting.." "..tVar.sFooter); if string.lower(tVar.sOwn) == "on" then if (pCustom[user.iProfile] == 1) then Core.SendToUser(user, "<"..tVar.sBot.."> "..tVar.sHeader..msgGreeting.." "..tVar.sFooter.."\r\n"..tab.." <<< Сделай свое собственное приветствие! Напиши: "..tVar.sPrefix..tCmd.sHelp.." для помощи >>>\r\n"); else Core.SendToUser(user, "<"..tVar.sBot.."> "..tVar.sHeader..msgGreeting.." "..tVar.sFooter); end end return true; end end
Автор: R00T_ADMIN 27.2.2010, 16:36
Если кто-то из продвинутых скриптописцев поможет адаптировать его под Verlihub, буду премного благодарен
Автор: Nickolya 27.2.2010, 21:23
Попробуй http://mydc.ru/r/?http://verlihub.aliki.ru/forum/viewtopic.php?t=451 или по тамошнему совету поставь себе ледокол
Автор: as91 13.4.2010, 22:34
а у меня не работает, на линуксе. сначала ругался на пути, поменял 121 строчку на
13.04.2010 23:29:50 - /etc/ptokax/scripts/privet.lua:610: attempt to index local 'hFile' (a nil value) 13.04.2010 23:29:50 - /etc/ptokax/scripts/privet.lua:581: attempt to index global 'tblRandom' (a nil value)
кто поможет?
Автор: Nickolya 14.4.2010, 10:52
Попробуй после
Код
function OnStartup()
дописать
Код
tblRandom = {In = {}, Out ={}} tblCustom = {In = {}, Out ={}}
А вообще такой ошибки быть не должно, попробуй переместить из папки скрипта файлы custom.tbl и random.tbl при выключенном скрипте и запустить его заново...
Автор: as91 14.4.2010, 15:13
вроде заработало.
Автор: as91 15.4.2010, 21:30
такой вопрос мое приветствие выглядит таким образом: вот он админ [Админ] as91 можно ли как то убрать этот [Админ]? если да, ток как?
Автор: Wariner 16.4.2010, 9:47
Во многих скриптах сверху есть настройки!
открываем и видим:
Код
sProfile = "on", -- Добавить название профиля к нику: <"on"=да; "off"=нет>