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

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

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

Автор: Sinsei 30.1.2011, 9:45

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




Код
local sBot = SetMan.GetString(21)

local Hub=[[Текст]]


function UserConnected(tUser)
Core.SendToUser(tUser,"$UserCommand 1 3 Меню хаба\\Информатор $<%[mynick]> !hub|")

end
RegConnected=UserConnected
OpConnected=UserConnected



function ChatArrival(tUser, sData)
local sCmd = sData:match"%b<>%s+[!%+%*](%S+).*|$"
    if sCmd == "hub" then
            Core.SendToUser(tUser,"<"..sBot.."> "..Hub)
          return true
    end
end

Автор: Tsd 30.1.2011, 10:32

Заменить строку Core.SendToUser(tUser,"<"..sBot.."> "..Hub)
на
Core.SendToAll("<"..sBot.."> "..Hub)

Автор: AirKobra45 30.1.2011, 12:52

Цитата(Sinsei @ 30.1.2011, 15:45) *
Вот у меня есть скрип запроса информации, но нужно сделать что бы при запросе информации все в чате могли видеть ее а не тот кто ее запросил?


По моему мнению все сообщения просто "засоряют" чат, поэтому при особой извращённости можно сделать так:
Код
local sBot = SetMan.GetString(21)    --присваиваем переменной Ник БОТа ХАБа
local Hub=[[Текст]]                    --Ваш текст сообщения
--------------------
function UserConnected(tUser)        --Отсылаем меню
Core.SendToUser(tUser,"$UserCommand 1 3 Меню хаба\\Информатор $<%[mynick]> !hub||")
end
RegConnected,OpConnected=UserConnected,UserConnected
--------------------
function ChatArrival(tUser, sData)    --Вылавливаем сообщение чата
local sCmd = sData:match"%b<>%s+[!%+%*](%S+).*|$"    --Выделяем команду
    if sCmd == "hub" then            --Проверяем что это нужная команда
            local users = Core.GetOnlineUsers()        --Запрашиваем список всех пользователей
            for i = 1, #users do                    --Перебираем таблицу пользователей
            Core.SendPmToUser(users[i], sBot, "Здравствуйте "..users[i].sNick.."\n"..Hub.."\n")    --Посылаем сообщение каждому пользователю в личку (с приветствием ника)
            end
            return true                --После выполнения команды не даём сообщению (!hub) попасть в чат
    end
end

Буду рад если смог чем то помочь!

Автор: Ksan 30.1.2011, 15:19

Ага, ну очень будут рады юзеры...представляю, если бы мне в течение дня то и дело приходили в приват ненужные мне сообщения...Это обычный спам. Нафиг оно надо?
Я уже не говорю про излишний никчёмный напряг хаба такой операцией (сбор всех юзеров в таблицу и отсылка каждому в приват).

Автор: Sinsei 30.1.2011, 16:08

То что подсказал Tsd, это лучшей вариант, иму спасибо.

А с ЛС это точно изврат.

Автор: AirKobra45 30.1.2011, 16:17

Цитата(Sinsei @ 30.1.2011, 22:08) *
То что подсказал Tsd, это лучшей вариант, иму спасибо.

А с ЛС это точно изврат.

А это никто не читал.. "при особой извращённости можно сделать так:" я так и написал. Вот если отправка сообщение доступна админам и отправляется в случае необходимости можно и так, но если он хочет постоянно чтоб юзеры это слали то лучше послать в общий чат тут не спорю.
P.S:
Тем более вариантов не оставалось.. то что я хотел написать уже написали раньше. Я предложил ещё 1 вариант и написал даже какой он.