myDC.ru

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

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

> Бот "новинки"

Теги
Нет тегов для показа
Herurg
сообщение 9.11.2008, 21:10
Сообщение #1


Участник
**

Группа: Пользователи
Сообщений: 32
Регистрация: 4.11.2008
Пользователь №: 983
Спасибо сказали: 1 раз




Помогите переделать скрипт под птоху новой версии PtokaX 0.4.1.1
Буду очень признателен... bad_smile.gif
Прикрепленные файлы
Прикрепленный файл  bulletin.lua ( 10.74 килобайт ) Кол-во скачиваний: 30
 
Go to the top of the page
+Quote Post
district
сообщение 9.11.2008, 21:55
Сообщение #2


Постоялец
******

Группа: Пользователи
Сообщений: 454
Регистрация: 17.10.2008
Из: Новосибирск
Пользователь №: 825
Спасибо сказали: 90 раз




MsgBoard Lua v3.1 ?
А под какой птокой он у тебя ходит, если не секрет?
Go to the top of the page
+Quote Post
Herurg
сообщение 10.11.2008, 1:22
Сообщение #3


Участник
**

Группа: Пользователи
Сообщений: 32
Регистрация: 4.11.2008
Пользователь №: 983
Спасибо сказали: 1 раз




он стоял на Verli Hub но хотелось бы его поставить на птаху, но вот он неподходит
Go to the top of the page
+Quote Post
district
сообщение 10.11.2008, 1:31
Сообщение #4


Постоялец
******

Группа: Пользователи
Сообщений: 454
Регистрация: 17.10.2008
Из: Новосибирск
Пользователь №: 825
Спасибо сказали: 90 раз




Есть вот какой ботик. Переделан из гостевой книги, сделаной размашисто, от широкой души и с юмором. ))) Сконвертировать под API2 думаю проблемы не составит, тут тема конвертации где-то неоднократно поднималась.
А к корифеям попутный вопрос: т к я честно скажу, в архитектуре данного скрипта вообще ничего не понимаю, не допишете ли искусства ради функцию получения юзером при входе, например, трех крайних записей раздела "Релизы"? Только упаси Бог не в личку, знаю, как бесят рядовых нормальных юзеров сообщения в личку при входе на хаб.
Прикрепленные файлы
Прикрепленный файл  Новости_Релизы_Запросы.lua ( 8.33 килобайт ) Кол-во скачиваний: 34
 
Go to the top of the page
+Quote Post
Nickolya
сообщение 11.11.2008, 0:35
Сообщение #5


Главный ра******й тут...
*********

Группа: Главные администраторы
Сообщений: 1 727
Регистрация: 18.5.2008
Из: RF, 2la
Пользователь №: 1
Спасибо сказали: 776 раз




По поводу архитектуры ты прав, просто сумашедший гений писал этот скрипт... Он еще и оооочень криво написан! Но я все-таки прикрутил требуемую функцию, пробуй big_smile.gif
Прикрепленные файлы
Прикрепленный файл  Новости_Релизы_Запросы.lua ( 8.38 килобайт ) Кол-во скачиваний: 70
 
Go to the top of the page
+Quote Post
district
сообщение 11.11.2008, 9:14
Сообщение #6


Постоялец
******

Группа: Пользователи
Сообщений: 454
Регистрация: 17.10.2008
Из: Новосибирск
Пользователь №: 825
Спасибо сказали: 90 раз




Nickolya

Снимаю шляпу ;) Говорил же, знающему человеку - труда особого не составит...
А я - что такое "wtf"-то узнал только неделю назад, от отдного мегахакера big_smile1.gif

Единственно, чего не понял спросонья - почему ОПы получают новости тоже, несмотря на то, что нет OpConnected = NewUserConnected, и быть не должно в общем-то.

Потом пригляделся - вот она хитрая строчка:
Цитата
OpConnected = function(user)
NewUserConnected(user)

Надо взять на вооружение )
ну и добавил условие if user b.registered then для получения 3-х крайних записей - если человек не зарегистрирован, то может ему и неинтересно, и незачем тогда.
Go to the top of the page
+Quote Post
Herurg
сообщение 11.11.2008, 18:14
Сообщение #7


Участник
**

Группа: Пользователи
Сообщений: 32
Регистрация: 4.11.2008
Пользователь №: 983
Спасибо сказали: 1 раз




так а мне то помогут?!
Go to the top of the page
+Quote Post
district
сообщение 11.11.2008, 22:02
Сообщение #8


Постоялец
******

Группа: Пользователи
Сообщений: 454
Регистрация: 17.10.2008
Из: Новосибирск
Пользователь №: 825
Спасибо сказали: 90 раз




Herurg

По-моему, выложенный Bulletin переделать, да еще и под новый АПИ нереально. Поэтому и предложил альтернативный, схожий вариант... Хотя, может, сути этого bulletina просто не понял.
----------------------------------------------------------------------------------------------------------
Охо-хо, сам плохо понял, что именно сделал, но идея была такая: чтобы сообщения о новых поступлениях юзер получал, как бы это выразиться, не каждый раз при заходе на хаб.
Чтобы оскомину не набивали.
Увязывать с os.date - опыта пока маловато, в общем, соорудил примитивный счетчик, вот крайняя часть кода.
Работать работает, прореживает, правда, сам пока не пойму, как именно big_smile1.gif
Наверное, нужно раздвигать значения if t==0 or t==4, как-то увязав их с числом входов и выходов посетителей (UserDisconnected ведь реагирует на все события дисконнектов, всех юзеров, так?)
Может, кто возьмется прокомментировать и посоветовать?

Код
NewUserConnected = function(user)
user:SendData("$UserCommand 1 2 "..wMenu.."\\Объявления\\Смотреть$<%[mynick]> !news||")
user:SendData("$UserCommand 1 2 "..wMenu.."\\Объявления\\Добавить$<%[mynick]> !addnews %[line:Введите текст вашего сообщения:]||")
user:SendData("$UserCommand 1 2 "..wMenu.."\\Запросник\\Смотреть$<%[mynick]> !showrequests||")
user:SendData("$UserCommand 1 2 "..wMenu.."\\Запросник\\Добавить$<%[mynick]> !addrequest %[line:Введите текст вашего сообщения:]||")
user:SendData("$UserCommand 1 2 "..wMenu.."\\Релизы\\Смотреть$<%[mynick]> !showreleases||")
user:SendData("$UserCommand 1 2 "..wMenu.."\\Релизы\\Добавить$<%[mynick]> !addrelease %[line:Введите описание и магнет на релиз:]||")
if user.bRegistered then
if t = 0 or t = 4 then
showshit2(user,entries,gbname,gbfile,levgbcmd1,"MAIN")
end
end
end

-- меню для ОПов
OpConnected = function(user)
NewUserConnected(user)
user:SendData("$UserCommand 1 2 "..wMenu.."\\Объявления\\Удалить$<%[mynick]> !delnews %[line:Введите номер записи:]||")
user:SendData("$UserCommand 1 2 "..wMenu.."\\Запросник\\Удалить$<%[mynick]> !delrequest %[line:Введите номер записи:]||")
user:SendData("$UserCommand 1 2 "..wMenu.."\\Релизы\\Удалить$<%[mynick]> !delrelease %[line:Введите номер записи:]||")
end

iWeNeedNumberCount = 3    -- кол-во записей нужных нам

function showshit2(user,container,wtf,file,cmdlevel,env)
    if cmdlevel~=0 then
        if CheckUserLevel(user) >= cmdlevel then
            local container=loadshit(file)
            local msg="\r\nПеред вами "..iWeNeedNumberCount.." последние записи из Новости-Релизы (см. меню на правой кнопке) :\r\n\r\n"
            if number>0 then
                local iToDo
                if number <= iWeNeedNumberCount then
                    iToDo = 1
                else
                    iToDo = number - iWeNeedNumberCount + 1
                end
                for i=iToDo,number do
                    s,e,who,when,entry=string.find(container[i], "(.+)|(.+)|(.+)")
                    msg=msg..i..".\t"..who.." - "..when.." ---> "..entry.."\r\n"
                end
                                
                user:SendData(Bot,msg)
            end
        end
    end
end

t = 0

function UserDisconnected(user)
t = t + 1
if t = 5 then
t = 0
end
end
OpDisconnected = UserDisconnected
Go to the top of the page
+Quote Post

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

Collapse

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

  Тема Ответов Автор Просмотров Последнее сообщение
No New Posts KCAHDEP DDoS & Flood на "Озерки"
ВЫГНАТЬ В ШЕЮ!
0 Болото 6 650 2.12.2015, 4:09 Посл. сообщение: Болото
No new Topic has attachmentsDalliance ; старое название "Anekdot+BashOrg"
Скрипт выдаёт Анекдоты , Цитаты с с BashOrg , Интересные факты .
19 Vizunchik 20 119 14.6.2013, 9:10 Посл. сообщение: Ksan
Closed ВАЖНО: Topic has attachmentsКто У Нас Откуда :) Или "ты С Какого Района?"
Признаемся кто где живет)
81 Jaska 101 297 18.3.2012, 3:14 Посл. сообщение: HOUSE
Closed Адаптация игры "Мафия" с PtokaX на RusHub
9 Mangust 14 560 26.1.2012, 0:39 Посл. сообщение: dimajak
No New Posts Topic has attachmentsГолосование "Опросы"
Скрипт для проведения опросов
0 Vizunchik 5 980 9.12.2011, 23:45 Посл. сообщение: Vizunchik
No new Topic has attachmentsЦены На Тарифы Или "у Кого Инет Почем?"
Обсуждаем своих провайдеров.
66 D'aspid 74 238 7.9.2011, 20:57 Посл. сообщение: AfLc
No New Posts Что дает "включение WEB-сервера"?
2 Angel_D 6 755 8.8.2011, 22:07 Посл. сообщение: Setuper
No new Обмен "DC блог <-> Хаб"
Информационный обмен
17 Otshelnik-Fm 21 448 3.5.2011, 1:44 Посл. сообщение: Otshelnik-Fm
No new Topic has attachmentsзахват символа "/"
символ / не ловится скриптом, перехватывается птокой
29 степашка 31 674 13.3.2011, 3:23 Посл. сообщение: Alexey
No new Topic has attachmentsСкрипт "Майор" Основан на "Подарки от деда мороза" API 2
Это мой первый скрипт не судите строго
14 Ferb 16 026 24.2.2011, 17:43 Посл. сообщение: Ferb
No new Topic has attachmentsСкрипт "Народная мудрость"
API2
17 HidDen 25 256 8.2.2011, 1:42 Посл. сообщение: Артём
No New Posts Topic has attachmentsАвтоматическое заполнение поля "Ник"
7 mishanspb 11 620 27.1.2011, 18:05 Посл. сообщение: mishanspb
Closed ChatLogMySQL и знак "%"
2 dimajak 6 789 18.11.2010, 23:20 Посл. сообщение: Saymon21
No new Topic has attachmentsДжинглы "русского Радио"
API2 | Вывод случайного джингла из текст.базы
22 SCALOlaz 33 383 7.11.2010, 7:26 Посл. сообщение: Click77
No New Posts Раздача домена в зоне "globalnet.net.ua"
Бесплатно сделаю домен в зоне - "globalnet.net.ua"
6 Slavon 13 056 6.11.2010, 12:14 Посл. сообщение: Артём

 



RSS Сейчас: 26.11.2024, 21:00