myDC.ru

Здравствуйте, гость ( Вход | Регистрация )

 
 
Ответить в данную темуНачать новую тему

> Easy OPChat, Скрипт реализующий простой ОП чат

Saymon21
сообщение 28.8.2010, 22:41
Сообщение #1


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Название: Easy OPChat
Автор: Nickolya
Описание: Скрипт реализующий простой ОП чат. Конечно он будет виден простым смертным юзерам, но они не смогут видеть разговоры ОПов и не смогут писать в него. big_smile.gif


Прикрепленные файлы
Прикрепленный файл  EasyChat.lua ( 1.13 килобайт ) Кол-во скачиваний: 109
 


Спасибо сказали:
Go to the top of the page
+Quote Post
Saymon21
сообщение 7.9.2010, 18:43
Сообщение #2


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Чтобы добавить описание боту, мы делаем вот так:
Код
sChatName = "RH_OpChat"
sIP = Core.GetConfig("sMainBotIP")
sMyINFO = "Самый_простой_ОП_чат_только_реализован_Lua_скриптом :) <V:".._VERSION..",M:A,H:0/0/1,S:0>$ $144,00 KiB/s;$no-reply@hub21.ru$0$"
function OnStartup()
    Core.RegBot(sChatName, true, sMyINFO, sIP)
end
Go to the top of the page
+Quote Post
Saymon21
сообщение 27.10.2010, 18:43
Сообщение #3


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Вообщем, я таки не забыл вопрос, о том, как скрыть оп чат из списка юзеров, и решил попробовать всётаки это сделать....
На моё удивление это оказалось достаточно просто big_smile.gif

Сделал я это так:
Пишем переменную, например:
Код
sMyINFO_2 = "$MyINFO $ALL "..sChatName.." Самый_простой_ОП_чат_только_реализован_Lua_скриптом :)<V:".._VERSION..",M:A,H:0/0/1,S:0>$$ $0.005    $$0$"

После чего, в функции OnStartup, просто закоментируем Core.RegBot(sChatName, true, sMyINFO, sIP)
И вместо этого напишем:
Код
Core.SendToProfile({0, 1}, sMyINFO_2.."|")
Core.SendToProfile({0, 1}, "$OpList "..sChatName.."$$|")

Теперь при старте скрипта, мы просто будем посылать MyINFO и OpList профилям 0 и 1.
Но, также нам нужно чтобы вновь подключившимся ОПам также был виден наш оп чат.
Для этого просто в любое место допишем:
Код
function OnUserEnter(UID)
    Core.SendToProfile({0, 1}, sMyINFO_2.."|")
    Core.SendToProfile({0, 1}, "$OpList "..sChatName.."$$|")
end

Ну и в OnExit мы анрегали бота, сейчас можно:
Код
Core.SendToProfile({0, 1}, "$Quit "..sChatName.."|")


Ну вроде всё... У меня такой метод действительно работал big_smile.gif
Если есть какие-то поправки - пишите))
Go to the top of the page
+Quote Post
Setuper
сообщение 27.10.2010, 21:58
Сообщение #4


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




А зачем ты добавляешь в конец разделитель | ? Ведь он автоматически будет прибавляться если его нету


Спасибо сказали:
Go to the top of the page
+Quote Post
Saymon21
сообщение 27.10.2010, 22:00
Сообщение #5


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Хм.... вот про автоматическое добавление не знал :(
Go to the top of the page
+Quote Post
Setuper
сообщение 27.10.2010, 22:02
Сообщение #6


RusHub team lead
**************

Группа: Модераторы
Сообщений: 4 030
Регистрация: 20.6.2008
Из: г. Королёв (Моск. обл.)
Пользователь №: 46
Спасибо сказали: 1708 раз




Все функции отсылки добавляют. Поэтому про разделитель в принципе можно забыть. Разделитель нужен только если отсылать за раз несколько команд, то есть пихать в функцию отсылки строку из нескольких команд


Спасибо сказали:
Go to the top of the page
+Quote Post
Saymon21
сообщение 27.10.2010, 23:56
Сообщение #7


Site Reliability Engineer
*********

Группа: Модераторы
Сообщений: 1 772
Регистрация: 27.6.2009
Из: Чувашия, г. Чебоксары
Пользователь №: 3 719
Спасибо сказали: 479 раз




Пробуем big_smile.gif

Код
sShow = "ops"     -- Будет ли оп чат виден всем или только профилям 0 и 1 ? all - Всем. ops - Профилям 0,1

Прикрепленные файлы
Прикрепленный файл  EasyChat.lua ( 2.69 килобайт ) Кол-во скачиваний: 57
 


Спасибо сказали:
Go to the top of the page
+Quote Post

Ответить в данную темуНачать новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

Collapse

> Похожие темы

  Тема Ответов Автор Просмотров Последнее сообщение
No New Posts Topic has attachmentsOpChat History
История сообщений в OpChat
0 Alexey 5 141 1.3.2015, 23:35 Посл. сообщение: Alexey
No New Posts Topic has attachmentsOpChat
комната для операторов
6 Alexey 10 868 6.12.2013, 9:22 Посл. сообщение: Setuper
No New Posts Topic has attachmentsOffline OpChat
Eximius
0 Артём 5 934 7.8.2010, 16:22 Посл. сообщение: Артём
Closed Ошибки Скриптов В Opchat
2 dimetrius 7 568 1.2.2009, 20:13 Посл. сообщение: alex82

 



RSS Сейчас: 29.3.2024, 18:28