Приветствуем вас на форуме проекта WoW Circle. Если вы читаете это, значит не зарегистрировались у нас. Для того, чтобы получить доступ к расширенным возможностям нашего форума нажмите сюда и пройди регистрацию, которая не займет у вас много времени. После регистрации будут доступны новые, более расширенные, возможности.
Нужна помощь с Аддоном/Кодом - Страница 2

Упомянутые в теме пользователи:

Показано с 13 по 18 из 18

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Старожил Аватар для Raxaji
    Регистрация
    06.07.2014
    Адрес
    Мир Грёз
    Сообщений
    188
    Поблагодарил(а)
    120
    Получено благодарностей: 105 (сообщений: 45).
    Репутация: 105

    Lightbulb Нужна помощь с Аддоном/Кодом (Фильтр чата)

    Нужна помощь с Аддоном/Кодом

    В общем задача в следующем.

    1. Поймать сообщение в определенном окне чата по набору ключевых слов.
    К примеру: гильдия+pve+набор
    Стоит учесть, что если не будет хватать одного из ключевых слов, то сообщение не перехватывать.
    2. Заблокировать его в том окне.
    3. Скопировать его в другое окно.

    Звучит просто, но знаю, что на самом деле все куда сложнее, потому и прошу помочь, сам врятли осилю. =З




    Большое СПАСИБО! Ururu за помощь!

    В общем вот такой полезный небольшой аддончик получился:

    PHP код:
    -- Автор Ururu WoWCircle

    do
        
    local o=ChatFrame3.AddMessage -- Окно чатав котором ловить сообщения
        local f 
    = {
        
    -- 
    Пример применения фильтров
    --        {
    --            {
    3,4,5},        --Окна чатав которые копировать сообщения
    --            {"+","-"},        --Игнорировать сообщенияесли в нём эти слова (В случае ненадобностиоставить скобки пустыми - {} )
    --            {
    "=","*"},        --Копировать сообщенияесли в нём эти слова (Для использования комбинированного фильтразаполнить значения в поля ниже)
    --            {
    "1","2"}        --Копировать сообщенияесли в нём эти слова (Для использования одиночного фильтравставить вместо значения пробел - {" "})
    --        },

    -- 
    Список всех фильтров

            
    {
                {
    8}, -- Набор в Гильдии
                
    {"хватит""надоели""флуд""куплю""продам"},
                {
    "ги ""guild""гильди"" ги"" рт""рт "" рт ""йотунхейм""faradenza""all we need is luck""tuman"},
                {
    "набор""нужны""мск""людей""бойцов""набираю""epgp""принимает""нид"}
            },
            {
                {
    7}, -- РСЦЛКИВК
                
    {"куплю""продам"},
                {
    "цлк""рс""ивк"},
                {
    " 10""10 ""10об""10гер""10хм""10 об""10 гер""10 хм"," 25""25 ""25об""25гер""25хм""25 об""25 гер""25 хм"}
            },
            {
                {
    9}, -- ИКОССА
                
    {"куплю""продам"},
                {
    "ик""ос""са"},
                {
    " 10""10 ""10об""10гер""10хм""10 об""10 гер""10 хм"," 25""25 ""25об""25гер""25хм""25 об""25 гер""25 хм"}
            },



        }
        
        function 
    ChatFrame3:AddMessage(m,...) -- Окно чатав котором ловить сообщения
            
    for _,v in ipairs(f) do
                
    local n 0
                
    for _,j in ipairs(v[2]) do if m:lower():find(jthen n=break end end
                
    if n==0 then
                    
    for i=3,#v do
                        
    for _,j in ipairs(v[i]) do if m:lower():find(jthen n=break end end
                        
    if n==0 then break else n=
                            
    if i==#v then 
                                
    if Prat then 
                                    Prat
    .loading true 
                                    
    for _,n in ipairs(v[1]) do _G["ChatFrame"..n]:AddMessage(m,...) end
                                    Prat
    .loading false
                                
    else
                                    for 
    _,n in ipairs(v[1]) do _G["ChatFrame"..n]:AddMessage(m,...) end
                                end
                                
    return
                            
    end 
                        end
                    end
                end
            end
            o
    (self,m,...)
        
    end
    end 



    Есть незначительный баг. В фильтре не используйте квадратные или круглые скобки. Иначе будет игнорироваться второй фильтр. То есть если выставить в первом фильтре "са", а во втором "10", тогда фильтр будет применяться не только к сообщениям с комбинацией слов "са" и "10". Но и просто к "са". Игнорируя второй фильтр.




    А может кто нибудь этот аддончик оформить визуально? То есть добавить возможность настройки во время игры?

    То есть допустим тыкаем кнопку "добавить фильтр", а он нам выдает вот такой список для заполнения:

    Выбор окна(окон) из которого будут копироваться сообщения.
    Выбор окна(окон) в которые будут копироваться сообщения.
    Первый фильтр сообщений
    Второй фильтр сообщений.
    Фильтр исключений.


    Так же, в отдельном окне аддона отображение всех внесенных фильтров и возможность их редатирования и удаления...
    Примерно так же, как в коде.


    Я понимаю, что это уже сложнее, чем сырой код, но может кто нибудь поможет? =З

Похожие темы

  1. Нужна помощь с аддоном.
    от Слайд в разделе Аддоны
    Ответов: 19
    Последнее сообщение: 02.07.2016, 14:28
  2. Нужна помощь с аддоном
    от Faunt в разделе Корзина
    Ответов: 0
    Последнее сообщение: 24.04.2016, 21:01
  3. Прошу помочь с Аддоном!
    от Практолог в разделе Аддоны
    Ответов: 5
    Последнее сообщение: 07.06.2014, 19:12
  4. Нид помощ с аддоном.
    от Wackylol в разделе Корзина
    Ответов: 3
    Последнее сообщение: 22.06.2012, 14:35
  5. Нужна помощь с аддоном...
    от fallenworld в разделе Корзина
    Ответов: 4
    Последнее сообщение: 04.02.2012, 20:02

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •