Возникла идея у меня, сварганить скриптик! Но вот незадача... Делать вот это не совсем мне подходит!
О_о
Как по команде сделать показ сообщения (например правил хаба)?
1. Открываем папку, где располагается файл PtokaX.exe, и заходим в папку texts. 2. Создаём в этой папке текстовый файл. 3. Переименовываем этот файл (например в имя rules.txt) 4. Открываем его, и пишем сообщение (например правила хаба) 5. Ищем в настройках хаба настройку: "Включить текстовые файлы" (В старых версиях настройка находится во вкладке "Настройки" справа. В новых версиях в "основных настройках" - "Больше настроек"). Там же можно (если необходимо) установить отправку этого сообщения в приват. 6. Для старых версий там же в настройках нужно перезагрузить текстовые файлы (или просто воспользоваться командой в чат !reloadtxt).
Всё готово и по команде !rules можно будет увидеть правила хаба.
Таким образом можно создать любые текстовые сообщения по команде. Например, можно сделать правила, сайты, хабы сети, информацию для операторов и тд. и тп.
Я в скриптах не силён! Токо не-знаю как вообще его сделать так как мне нужно. А нужно мне вот что что-бы в ЛС отправлялись токо правила которые зарание уже подготовлены, а всё остальное кидалось в чат! Так вот подскажите что в скрипте делать изменять?! Пути т.д и т.п...
Можно например так ну по крайней мере я так планирую сам скрипт скажем test.lua папка например resourse и в ней txt которые будут загружатся при вызове скриптом в чат!
Спасибо всем за внимание!
Автор: Ksan 18.11.2010, 16:32
Попробуй это (скриптик можешь назвать TextToUser.lua):
Код
tCmds1 = { -- тут команды для отправки текста в приват "!rules", }
tCmds2 = { -- тут команды для отправки текста в чат "!faq", "!radio", "!hubs", }
function UserConnected(tUser) -- тут прописываете отправку всех своих команд в меню юзера local sMsg = "$UserCommand 1 3 Меню хаба\\Правила хаба$<%[mynick]> !rules||".. "$UserCommand 1 3 Меню хаба\\Хабы-друзья$<%[mynick]> !radio||".. "$UserCommand 1 3 Меню хаба\\Сетевое радио$<%[mynick]> !faq||" Core.SendToUser(tUser, sMsg) end RegConnected,OpConnected=UserConnected,UserConnected
function ChatArrival(tUser,sData) local sData = sData:sub(1,-2) local sCmd = sData:match"^%b<>%s+(%S+)" if tCmds1[sCmd] then SetMan.SetBool(32, true) elseif tCmds2[sCmd] then SetMan.SetBool(32, false) end end
Только не забудь заполнить таблицы и в UserConnected набить те же самые текстовые команды из таблиц. Хотя, думаю, и это можно организовать через таблицы.
Автор: Osimus 18.11.2010, 17:01
ммм... а вот скрипт не хочет работать! ничего не отправляется(
Автор: Ksan 18.11.2010, 17:03
Напиши, какие изменения ввёл.. И есть ли те команды в таблицах? И подвигай по списку вверх-вниз.
Автор: Osimus 18.11.2010, 17:08
Изминения я не вносил я его сначала так проверил, он ничего не выводил... rules.txt лежит в папке texts скрипт один в списке двигать его нет смысла.
Автор: Ksan 18.11.2010, 17:16
Ну а галочка "Включить текстовые файлы" стоит в настройках Птоки, в окне "Больше настроек"?
Автор: Osimus 18.11.2010, 17:19
Да. всё включено!
Автор: Ksan 18.11.2010, 18:02
Я был не прав. Не получается менять направление текстовых файлов. Куда стоит галочка, туда и идёт. Похоже, это на лету не изменить. :( Единственное решение, какое я вижу - организовать отправку сообщений с текстом правил хаба через альтернативную команду в скрипте. Но почему у тебя вообще никуда не приходит текстовое сообщение - не знаю.
Автор: Osimus 18.11.2010, 18:11
Пробовал все команды, менял их но резельтата нету...
Например !правила и усё ничего не вижу( Только через несколько минут вижу в чате команду !правила
Автор: Tsd 19.11.2010, 11:49
Вот тебе скриптик
http://mydc.ru/r/?http://paste.ubuntu.com/534205/ Думаю разберёшься - в меню ссылки на текстовые файлы.
Автор: Ksan 19.11.2010, 12:02
Tsd, ему надо, чтоб один текст приходил в приват, другие - в чат. Именно в этом его проблема изначальная.
Автор: Osimus 19.11.2010, 13:51
Ksan прав!
Может всё-таки ктонить поможет?
Автор: Ksan 19.11.2010, 13:55
Osimus, вопрос - а зачем тебе париться этим? Пущай всё приходит в приват! Нафиг чат-то засирать? Лично у меня так и сделано.
Автор: Osimus 19.11.2010, 14:17
ну на счёт засиранье я не согласен) правила много монотонного текста его в приват.
а вот астальное и в чат можно. текста не очень много...
например "меню хаба/ресурсы"
PtokaX наш сайт http://тест
ну разве это засирание чата?
Автор: Saymon 19.11.2010, 14:52
Ну сделай скриптом, типа:
Код
local bot = "Бот" -- если нужно с настроек хаба, то вместо "Бот" пиши SetMan.GetString(21) text1 = [[ тут куча текста для привата]] text2 = [[тут куча текста для главного чата]]
function ChatArrival(tUser, sData) local cmd = sData:match"%b<>%s+(%S+).*|" if cmd == "!show_text1" then Core.SendPmToUser(tUser, bot, text1) return true elseif cmd == "!show_text2" then Core.SendToUser(tUser,"<..bot..> "..text2) return true end end
Как-то так короче...
PS, Не проверял.
Автор: Ksan 19.11.2010, 14:53
Я всё равно не понял, почему именно в чат? ЧТО мешает получать в приват? Причина в чём? То, что МОЖНО в чат, не значит, - обязательно в чат..
Автор: Osimus 21.11.2010, 1:23
Может всё-таки мне поможет хоть кто-то? Очень хочется скрипт...
Автор: Nickolya 22.11.2010, 18:23
Как вариант: берем скрипт http://mydc.ru/index.html?showtopic=1231&view=findpost&p=30807. Затем в начало скрипта добавляем таблицу с файлами, которые будут идти в приват: