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

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

MyDC.ru _ Помощь по скриптам для PtokaX _ AvtoMsg

Автор: denis 15.2.2010, 19:06

Код
bot="xxx"

timer = 1 -- в минутах

messarray={
[[ текст сообщение]],

}

function OnStartup()
    tmr = TmrMan.AddTimer (timer*60*1000)
end

function OnTimer(tmr)
    Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
end


помогите реализовать вывод этого сообщения ещё с помощью команды (которая настраивалась бы) например !msg

тоесть по таймеру и по команде.

Большое спасибо

Автор: Saymon 15.2.2010, 20:26

Держи
Код
bot="xxx"

timer = 1 -- в минутах

messarray={
[[ тест тест тест]],

}

function OnStartup()
    tmr = TmrMan.AddTimer (timer*60*1000)
end

function OnTimer(tmr)
    Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
end

function ChatArrival(tUser, sData)
  local cmd = sData:match"%b<>%s+(%S+).*|"
  if cmd == "!тест" then
    Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
return true
  end    
end


у меня работает big_smile.gif

если надо сделать чтобы по команде отправлялось не всем, а только тому кто дал команду то
Код
Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])

меняем на
Код
Core.SendToUser(tUser, "<"..bot.."> "..messarray[math.random(1,#messarray)])

Для того что бы сделать, это надо было только прочитать http://mydc.ru/topic1164.html?view=findpost&p=11209. big_smile.gif
Не надо лениться

Автор: denis 15.2.2010, 22:05

а можно ещё кодик чтоб в личку кидал?) still_dreaming.gif

Автор: Saymon 15.2.2010, 22:13

Core.SendPmToUser
Прочитай не ленись http://mydc.ru/topic118.html

Автор: denis 15.2.2010, 23:24

просто нету времени..у меня сегодня сарики и разобраться хочу

выбило ошибку 82: bad argument count to 'SendPmToUser' (3 expected, got 2)

Автор: DrakonSP 15.2.2010, 23:37

Цитата(denis @ 15.2.2010, 23:24) *
просто нету времени..у меня сегодня сарики и разобраться хочу

выбило ошибку 82: bad argument count to 'SendPmToUser' (3 expected, got 2)

Код
Core.SendPmToUser(tUser, bot, messarray[math.random(1,#messarray)])

Автор: denis 15.2.2010, 23:40

Цитата(DrakonSP @ 15.2.2010, 23:37) *
Код
Core.SendPmToUser(tUser, bot, messarray[math.random(1,#messarray)])

та же ошибка

Автор: DrakonSP 16.2.2010, 0:03

Раскрывающийся текст
Цитата
bot="xxx"

timer = 1 -- в минутах

messarray={
[[ тест тест тест]],

}

function OnStartup()
tmr = TmrMan.AddTimer (timer*60*1000)
end

function OnTimer(tmr)
Core.SendToAll("<"..bot.."> "..messarray[math.random(1,#messarray)])
end

function ChatArrival(tUser, sData)
local cmd = sData:match"%b<>%s+(%S+).*|"
if cmd == "!тест" then
Core.SendPmToUser(tUser, bot, messarray[math.random(1,#messarray)])
return true
end
end

У меня вот так работает
Проверь переменную bot

Кстате неплохая идея...
в переменной messarray сделать ещё одну переменную которая будет генериться из новостей http://mydc.ru/r/?http://www.rbc.ru/
Код
messarray={
    "[Sports]",
    "[Olympics]",
    "[Politics]",
    "[World]",
}

Так же можно и http://mydc.ru/r/?http://pda.pogoda.rbc.ru/
Да всё что угодно! На http://mydc.ru/r/?http://www.rbc.ru/ есть всё!