Помощь по настройке скрипта, скрипт скидывания тестовых файлов |
Здравствуйте, гость ( Вход | Регистрация )
Помощь по настройке скрипта, скрипт скидывания тестовых файлов |
4.3.2012, 23:21
Сообщение
#1
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
создал текстовые файлы "FAQ" и "правила", создал в меню хаба соответствующие кнопки для их скидывания в чат, но содержания этих TXT приходят всем на хаб, а нужно что бы их видел только тот, кто воспользовался соответствующей кнопкой в меню. сам скрипт вроде работает нормально, только думаю эти лишние сообщения будут мешать другим пользователям на хабе, по этому прошу кто разбирается в скриптостроении, помочь с решением данной проблемы. вот весь скрипт:
Код -- LUA 5 --04/03/05 --TiMeTrAVelleRs Version Bot = "[PB]Ares" -- your main bot here CDFolder = Core.GetPtokaXPath().."scripts/text" -- make folder in your scripts put your ascii there SendComm = 1 -- Send user command [right click] "1"=yes "0"=no tMenu = "Помощь" -- ArtBotMenu Name SetTo = { [0] = 1, -- Admin [1] = 1, -- Moder [2] = 1, -- Vip [3] = 1, -- Reg [-1] = 0, -- Не зарегестрированый } -------------------------------------------------------------------------------------------------------------------- --$UserCommand 1 X Where -> 1=Hub Menu 2=User Menu 3=Hub/User Menu -- function UserConnected(user) if SendComm == 1 and SetTo[user.iProfile] == 1 then Core.SendToNick(user.sNick,"$UserCommand 1 3 "..tMenu.."\\Ответы на вопросы$<%[mynick]> !faq||") Core.SendToNick(user.sNick,"$UserCommand 1 3 "..tMenu.."\\Правила$<%[mynick]> !pravila||") end end OpConnected = UserConnected function OnStartup() end function ChatArrival(user,data) Core.GetUserAllData(user) data=string.sub(data,1,string.len(data)-1) if( string.sub(data, 1, 1) == "<" ) then s,e,cmd = string.find(data,"%b<>%s+(%S+)") cmd = string.sub(cmd, 1,string.len(cmd)) if io.open(CDFolder.."/"..cmd..".txt",r) ~= nil then showtext(user, cmd) return true end end end function showtext(user, file) local contents ="\r\n\r\n" for line in io.lines(CDFolder.."/"..file..".txt") do contents = contents..line.."\r\n" end Core.SendToAll(user.sNick.."\r\n"..contents.."\r\n|") end function showtextold(user, cmd) local lines="\r\n\r\n" for line in io.lines(file) do lines = lines..line.."\r\n" end Core.SendPmToNick(user.sNick,Bot, lines.." |") end RegConnected = UserConnected ещё хотел чтоб в скрипте была возможность выбора куда будут приходить сообщения - в чат или в лс, и удалить создание лишних пустых строк очень прошу, если есть возможность, помогите правильно настроить скрипт, я столько хотел его найти, а тут такая вот проблема вышла в случаи необходимости, могу прикрепить сам скрипт. к скрипту так же привязана папка "text", где хранятся TXT |
|
|
4.3.2012, 23:47
Сообщение
#2
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
|
|
|
5.3.2012, 0:19
Сообщение
#3
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
Код function UserConnected(tUser) Core.SendToUser(tUser,"$UserCommand 1 3 Меню хаба\\Правила хаба$<%[mynick]> !rules||".. "$UserCommand 1 3 Меню хаба\\Хабы-друзья$<%[mynick]> !hubs||".. "$UserCommand 1 3 Меню хаба\\Сетевое радио$<%[mynick]> !radio||") end RegConnected,OpConnected=UserConnected,UserConnected как мне с помощью этого кода создать скрипт? нужно ещё сделать возможность выбора кому предоставлять возможности скрипта или команды. не лучше ли будет исправить ошибки "моего" скрипта? хочу ещё добавить, что почти не разбираюсь в скриптах, только и умею изменять меню скрипта |
|
|
5.3.2012, 0:42
Сообщение
#4
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
dag-m, этот код и есть скрипт, а ещё надо было прочесть текст...
А здесь Цитата сделать возможность выбора кому предоставлять возможности скрипта или команды. P.S. В твоём скрипте строка Код Core.SendToAll шлёт всем текст, сделай Код Core.SendToNick будет видно только тому кто запросил |
|
|
5.3.2012, 13:58
Сообщение
#5
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
Артём,
читал, но я не понимаю что надо делать я не разбираюсь особо в скриптах а скрипт ещё дополнительно лишние строки пустые создаёт, их как убрать поменял параметр, но теперь в чат выходит просто команда без её выполнения, т.е. скрипт перестал правильно работать и скидывать содержимое TXT в чат |
|
|
5.3.2012, 14:56
Сообщение
#6
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
dag-m, возьми код из сообщения #3 , в папку txt закинь файлы и перезагрузи текстовые файлы, зачем тебе скрипт из первого поста если всё это можно сделать хабом?
|
|
|
5.3.2012, 19:50
Сообщение
#7
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
Артём,
засунул в папку texts 2 файла - faq и pravila, создал скрипт по тем самым кодам из сообщения 3, в скрипте создал для них соответствующие меню. получилось это "$UserCommand 1 3 Меню хаба\\Хабы-друзья$<%[mynick]> faq.txt||".. и как в тех кодах ставил (!), и по другому сделал, но текст ни как не хочет вписываться в чат, вообще никак, даже без скрипта пробовал отправить команды в чат - не хочет работать, опять же задаю вопрос - не лучше ли будет исправить код скрипта из 1го сообщения? |
|
|
5.3.2012, 20:14
Сообщение
#8
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
dag-m, надо просто !faq без txt
нет, не лучше, нагружать хаб уг скриптом не надо, это и так в хаб встроено. Кстати, в Настройках - Больше настроек - Включить текстовые файлы не забыл включить(галочки поставить)? |
|
|
5.3.2012, 21:05
Сообщение
#9
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
в папке птоки, где папка "текст", создал 2 текстовых файла - !faq.txt и !rules.txt. знак потому что думал что он привязывает эти команды к хабу, и без этого знака пробовал - писал в чат команду !faq и ничего в чат не появляется, всё сделал так как было указано на странице по ссылке 2го сообщения. а про работоспособность скрипта я вообще молчу
Артём, в папке птоки, где папка "текст", создал 2 текстовых файла - !faq.txt и !rules.txt. знак потому что думал что он привязывает эти команды к хабу, и без этого знака пробовал - писал в чат команду !faq и ничего в чат не появляется, всё сделал так как было указано на странице по ссылке 2го сообщения. а про работоспособность скрипта я вообще молчу |
|
|
5.3.2012, 21:31
Сообщение
#10
|
|
Site Reliability Engineer Группа: Модераторы Сообщений: 1 772 Регистрация: 27.6.2009 Из: Чувашия, г. Чебоксары Пользователь №: 3 719 Спасибо сказали: 479 раз |
А !reloadtxt не забыл?
|
|
|
12.3.2012, 18:57
Сообщение
#11
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
перезагружал я текстовые файлы, тем более эта кнопка в птоке присутствует, только разницы нет скрипт написан или не написан - вообще не работают команды на эти файлы. может как то нужно привязать команду к определённому текстовому файлу?
|
|
|
12.3.2012, 19:00
Сообщение
#12
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
Как по команде сделать показ сообщения (например правил хаба)?
1. Открываем папку, где располагается файл PtokaX.exe, и заходим в папку texts. 2. Создаём в этой папке текстовый файл. 3. Переименовываем этот файл (например в имя rules.txt) 4. Открываем его, и пишем сообщение (например правила хаба) 5. Ищем в настройках хаба настройку: "Включить текстовые файлы" (В старых версиях настройка находится во вкладке "Настройки" справа. В новых версиях в "основных настройках" - "Больше настроек"). Там же можно (если необходимо) установить отправку этого сообщения в приват. 6. Для старых версий там же в настройках нужно перезагрузить текстовые файлы (или просто воспользоваться командой в чат !reloadtxt). Всё готово и по команде !rules можно будет увидеть правила хаба. Таким образом можно создать любые текстовые сообщения по команде. Например, можно сделать правила, сайты, хабы сети, информацию для операторов и тд. и тп. Ничего больше не надо! |
|
|
16.3.2012, 17:17
Сообщение
#13
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
Артём, я очень хорошо разбираюсь в компах и не плохо знаю саму птоку, но в программировании я почти полный 0, по этому я вполне могу всё сделать так как там написано, однако ничего не помогло... я создал 2 файла в папке птоки Texts - faq.txt и rules.txt. в птоке все галочки как надо поставил, в чат отправлял команду !faq и никакой реакции, тоже самое с другим файлом. может надо каким то образом привязать к команде файл? или скрипт создать? версия птоки 0.4.1.2, виндовс 7 х32
|
|
|
16.3.2012, 17:34
Сообщение
#14
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
dag-m, значит не так уж и "не плохо" знаешь птоку.
ничего ни к чему не надо привязывать, просто открыть папку texts и там создать, потом команду в чат !reloadtxt , у всех работает, а у тебя нет... P.S. Держи скрипт, если не можешь с простым добавлением справиться, только здесь в сам скрипт вписывать надо Rules.lua ( 2.3 килобайт ) Кол-во скачиваний: 15 |
|
|
16.3.2012, 19:50
Сообщение
#15
|
|
Начинающий Группа: Пользователи Сообщений: 11 Регистрация: 3.2.2010 Пользователь №: 5 943 Спасибо сказали: 0 раз |
может птока моросит, не знаю даже)))
решил "чистой" птокой воспользоваться - на ней опция пашет без проблем. перекинул папку со скриптами со старой папки в новую, и опять мороснуло. теперь буду искать виновный скрипт))) |
|
|
15.10.2012, 2:48
Сообщение
#16
|
|
Начинающий Группа: Пользователи Сообщений: 16 Регистрация: 13.10.2012 Пользователь №: 10 908 Спасибо сказали: 0 раз |
Артём, а можно ли создать скрипт, который сам будет выводить содержимое текстовика по определённому событию?
Требуется: на хаб заходит именинник, и ему в общий чат кидается поздравлялка, т.е. сообщение из текстового файла congratulation.txt |
|
|
15.10.2012, 11:17
Сообщение
#17
|
|
Наруто на аваторке Группа: Пользователи Сообщений: 2 606 Регистрация: 11.10.2008 Из: Харькова Пользователь №: 771 Спасибо сказали: 774 раза |
Alex Dancer, зачем создавать созданное? Есть на форуме скрипт такой и не только такой, поиском пользуйся
http://mydc.ru/topic79.html |
|
|
16.10.2012, 15:41
Сообщение
#18
|
|
Начинающий Группа: Пользователи Сообщений: 16 Регистрация: 13.10.2012 Пользователь №: 10 908 Спасибо сказали: 0 раз |
Alex Dancer, зачем создавать созданное? Есть на форуме скрипт такой и не только такой, поиском пользуйся http://mydc.ru/topic79.html Дык есть у меня скрипт день рождения. там есть строки: Код fText = sPath.."Cake.txt", -- Текст поздравлялки bSendText = true, -- Посылать содержимое файла (true = включить, false = выключить) tFunctions.OnTimer = function(user, i, v, sTopic) user = Core.GetUser(i) if user then -- Send File Content if Settings.bSendText then local f = io.open(Settings.fText) if f then Core.SendToAll("<"..Settings.sBot.."> \r\n\r\n"..f:read("*all")) f:close() end end ...... но вот нифига он не посылает поздравлялку из тескстовика Cake.txt |
|
|
Похожие темы
|
Сейчас: 23.11.2024, 5:13 |