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

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

MyDC.ru _ Служебные скрипты [PtokaX] _ TotalGag

Автор: Ksan 29.9.2010, 18:26

Название: TotalGag
Версия: 1.0
Платформа: PtokaX 0.4.1.x
API: API 2
Автор: Ksan (aka Trans)
Дата написания: 16-03-2010
Назначение: Для экстренной заглушки всего хаба (и чата и привата), когда нет иного способа быстро пресечь спам или иное нарушение. Админов, опов и отдельные ники из таблицы не заглушит (это регулируется ниже таблицами). Заглушать могут профили из таблицы скрипта.
Дополнительно: При заглушке все сообщения, не пропущенные в чат (но НЕ приват), всё равно будут видны админам. Заглушка-разглушка - одной и той же кнопкой.

UPD: -- исправлена ошибка, из-за которого при тотальной заглушке юзер мог видеть свое сообщение вместо привата в чате. big_smile.gif


 TotalGag_api2.lua ( 1.89 килобайт ) : 77
 

Автор: infection 30.9.2010, 1:14

Ksan ОГРОМНОЕ СПАСИБОbig_smile.gif

Теперь как только увижу неадеквата, буду глушить.

Думаю добавить функцию, что-бы если чат заглушен, что-бы показывалось юзерам когда они пишут в чат и лс что-то топи такого.
Извините но в данный момент Чат и Приват не доступны!

Ещё хотельсьбы также-что-бы сами юзеры видели что чат и лс выключено админом. При команде.

Автор: Saymon 30.9.2010, 1:39

infection, Тупо попробуй

Код
Core.SendToUser(tUser, "<"..sBot.."> ••• ••• ••• Чат и приват заглушены ••• ••• •••")
Core.SendToAll("<"..sBot.."> ••• ••• ••• Чат и приват заглушены ••• ••• •••")
            else
Core.SendToUser(tUser, "<"..sBot.."> ••• ••• ••• Заглушка с чата и привата снята ••• ••• •••")
Core.SendToAll(, "<"..sBot.."> ••• ••• ••• Заглушка с чата и привата снята ••• ••• •••")

Автор: infection 30.9.2010, 21:10

[22:09] Скрипт остановлен.
[22:09] Синтаксис C:\HUB_\PtokaX\0.4.1.2\scripts\TotalGag_api2.lua:53: unexpected symbol near ','


after_boom.gif

Автор: Артём 30.9.2010, 21:14

запятую убери

Автор: Ksan 30.9.2010, 22:12

infection, думаю, лишнюю запятую ты сам внёс, корректируя сообщение..

Автор: infection 30.9.2010, 22:54

Цитата(Ksan @ 30.9.2010, 22:12) *
infection, думаю, лишнюю запятую ты сам внёс, корректируя сообщение..


разве?
это саймон!

Код
Core.SendToAll(, "<"..sBot.."> ••• ••• ••• Заглушка с чата и привата снята ••• ••• •••")


а вот заятая (,

Автор: Saymon 30.9.2010, 23:02

Да, точно. Убери её big_smile.gif

Автор: Milena 20.10.2010, 18:25

Не глушит не чат не приват( С чем может быть связано такое?

Автор: Ksan 20.10.2010, 20:31

Milena, никого не глушит?
Кинь файликом скрипт, я гляну, в чём у тебя дело. Думаю, ты внесла какие-то изменения, может, даже незначительные, но достаточные, чтоб перестал работать как надо.

Автор: Nickolya 20.10.2010, 20:35

Milena, ставить скрипт надо в самое начало, выше лонли и прочих гагов...

Автор: Milena 20.10.2010, 22:58

Спасибо ребята) разобрались) все в порядке)

Автор: absent 7.2.2011, 0:32

менюшка не появилась! скрипт выше всех стоит.

Автор: Marc 7.2.2011, 2:45

absent!

Сейчас подскажу, что сделать надо, чтобы появилось меню!
Меня тут научили уже...)

$UserCommand 1 1 замени на $UserCommand 1 2

и тогда меню появится!


Автор: Ksan 7.2.2011, 5:36

Я стараюсь систематизировать отправку команд через их направленность, то есть, зависит от объекта действия.
Поэтому в своих скриптах в меню на нике юзера отправляю только те команды, которые касаются этого самого юзера (причём, только команды работы с онлайн-юзером), а остальные - в меню на вкладке хаба внизу.
Правда, некоторые команды общего характера иногда и через меню на нике юзера выдаю.
Наверно, в данном скрипте следовало действительно делать "1 3", а не "1 1".

Автор: absent 7.2.2011, 16:10

менюшка появилась

Автор: RAZORkhv 23.12.2011, 20:46

как отключить только чат а приват оставить?

Автор: Артём 23.12.2011, 21:57

RAZORkhv, удалить это

Код
ToArrival = ChatArrival

Автор: MIKHAIL 13.1.2012, 19:42

Кстати, когда включена опция

Код
ToArrival = ChatArrival

сообщение привата заглушенного пользователя отображается в его общем чате. Как-то сбивает с толку.(
Ksan, как избавиться от этого?

Автор: Ksan 13.1.2012, 20:13

MIKHAIL, ага, есть такое, спасибо, что подсказал!
Это потому, что я

Код
ToArrival = ChatArrival
добавил в последний момент по просьбе кое-кого, не догадавшись проверить работу скрипта с изменением.
Исправляется так - вместо кода:
Код
        if sUngagable[tUser.sNick] ~= 1 and bFlag then
            Core.SendToUser(tUser, "<"..tUser.sNick.."> "..sMsg)
            if not (sData:match("From:") and sData:match("To:")) then
                Core.SendToOps("<"..tUser.sNick.."> ••• "..sMsg)
            end
            return true
        end
нужно вот это (тут всего 1 строка перемещена)
Код
        if sUngagable[tUser.sNick] ~= 1 and bFlag then
            if not (sData:match("From:") and sData:match("To:")) then
                Core.SendToOps("<"..tUser.sNick.."> ••• "..sMsg)
                Core.SendToUser(tUser, "<"..tUser.sNick.."> "..sMsg)
            end
            return true
        end

А строку
Код
ToArrival = ChatArrival
оставить включенным.

UPD: -- перезалил исправленный скрипт в первом сообщении.