Перейти к содержанию

Дайджесты за январь-февраль

Обновления гайдов и аддонов

Январь Февраль

Мониторинг серверов и редактор аддонов

Представляем вам две легенды. То, о чем можно было только мечтать, стало реальностью.

Мониторинг серверов Редактор аддонов

Подсказки из игры на вашем сайте

Теперь вы можете отображать сведения о внутриигровых элементах простым наведением курсора мыши.

Подробнее

Апдейтер аддонов

Представляем вам программу для автообновления аддонов и делимся подробностями.

Подробнее Скачать

worm

Разработчик аддонов
  • Постов

    617
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные worm

  1. --[[
    local ContextPlayerTradeW = ContextPlayerTrade:GetChildChecked( "GoldEditLine", true )
    local nameA = ContextPlayerTradeW:GetInitialGlobalClass()
    wtTextLineInput:SetGlobalClasses( nameA )
    
    local names = {}
    names[1] = "RedColor"
    names[2] = "Font20"
    wtEditLine:SetGlobalClasses( names )
    ]]

    Хотел применить шаблон и опять ругается((

    function wtChain(w, wBase, dx, dy)

    Использовал это. сответственно тут выходит что при изменение экрана на больше меньше. Виджет как ненормальный прыгает по всемуу игровому пространству(

  2. Поскольку не получается фильтр подсоединить хотел хоть отсеять лишнее и опять таки ругается(

    textEditLine = string.match (textEditLine, '%s([0-9])')
    LogInfo( " textEditLine=", textEditLine )

    x: (где x - соответствует сам себе. (Он не может быть равен ни одному из волшебных символов ^$()%.[]*+-?).

    .: (точка) соответствует любому символу.

    %a: соответствует любой букве.

    %c: соответствует любому управляющему символу.

    %d: соответствует любой цифре.

    %l: соответствует любой букве в нижнем регистре.

    %p: соответствует любому символу пунктуации.

    %s: соответствует любому пробельному символу.

    %u: соответствует любой букве в верхнем регистре.

    %w: соответствует любому алфавитно-цифровые символу.

    %x: соответствует любой шестнадцатеричной цифре.

    %z: соответствует символу с представлением 0.

    %x: (где x - любой не алфавитно-цифровой символ), соответствует сам себе. Это - стандартный способ экранировки волшебных символов. Лучше следить за тем, чтобы любому символу пунктуации (даже не "волшебному") предшествовал '%', когда этот символ применен в шаблоне.

    [set]: соответствует любому символу из набора, заданного в set. Диапазон символов может быть определен, с помощью символа '-' отделяющего начало и конец диапазона. Все символьные классы %x описанные выше, могут использоваться как компоненты в наборе. Все другие символы в наборе представляются как есть. Например, [%w_] (или [_%w]) соответствует любому алфавитно-цифровому символу или символу подчеркивания, [0-9] соответствует любой десятичной цифре, и [0-9%l%-] соответствует любой десятичной цифре или любой букве в нижнем регистре или символу дефиса '-'.

    Взаимодействие между диапазонами и классами не определено. Поэтому, наборы подобные [%a-z] или [a-%%] не имеют никакого значения.

    [^set]: Отрицательный набор символов. Соответствует любому символу, кроме тех, что заданы в наборе set. Содержимое набора интерпретируется аналогично описанному выше [set].

    Для всех классов, представляемых одиночными символами (%a, %c, и т.п.), соответствующая прописная буква представляет отрицание класса. Например, %S представляет все НЕ пробельные символы.

    Представления символа, пробела и других символьных групп зависят от текущих региональных установок. В частности, класс [a-z] не эквивалентен %l.

    Элемент шаблона:

    Элементом шаблона может быть

    Одиночный символьный класс, который соответствует любому одиночному символу из заданного класса;

    Одиночный символьный класс, сопровождаемый '*', что соответствует 0 или большему количеству повторений символов из заданного класса. Эти элементы повторения будут всегда соответствовать самой длинной возможной последовательности.

    Одиночный символьный класс, сопровождаемый '+', что соответствует 1 или большему количеству повторений символов из заданного класса. Эти элементы повторения будут всегда соответствовать самой длинной возможной последовательности.

    Одиночный символьный класс, сопровождаемый '-', что также соответствует 0 или большему количеству повторений символов из заданного класса. В отличие от *, элементы повторения будут всегда соответствовать самой короткой возможной последовательности;

    Одиночный символьный класс, сопровождаемый '?', что соответствует 0 или единственному вхождению символа из заданного класса;

    %n, при n от 1 до 9; такой элемент равняется n-й зафиксированной подстроке (см. ниже);

    %bxy, здесь x и y - два различных символа. Такой элемент соответствует строкам, которые начинаются с x, заканчиваются на y, и в них сбалансированы x и y. Это означает, что, если читать строку слева направо, подсчитывая +1 для x и -1 для y, то последний y является первым y, для которого счетчик равен 0. Например, элемент %b() соответствует выражениям со сбалансированными круглыми скобками.

    Шаблон:

    Шаблон представляет собой последовательность описанных выше элементов. Символ '^' в начале шаблона, говорит о том, что заданная последовательность начинается с начала строки. Символ '$' в конце шаблона, говорит о том, что заданной последовательностью строка заканчивается. Символы '^' и '$', размещенные в других местах шаблона, не имеют никакого специального значения и представляются как есть.

    И нефига

    пишет

    Error: addon TradeManager: Error while running the chunk

    Error: addon TradeManager: [string "Mods/Addons/TradeManager/Scripts/TradeManager.lua"]:158: attempt to call field `match' (a nil value)

    Error: addon TradeManager: func: match, field, line: -1, defined: C, line: -1, [C]

    Error: addon TradeManager: func: GetDataItem, global, line: 158, defined: Lua, line: 149, [string "Mods/Addons/TradeManager/Scripts/TradeManager.lua"]

  3. а еще вопрос. Как можно приклеить свой аддон с стандартному окну в игре? делаю чтото на подобие этого. Т.е. получить координаты окна. и приплюсовал чтото передать в свой аддон

    -- Получили координаты расположения объекта
    local placeBuyTrade = ContextPlayerTrade:GetPlacementPlain()
    -- Считаем новые кординаты для последующего виджета
    --placeBuyTrade.posX = 40
    --placeBuyTrade.posY = 40
    
    -- Получили координаты расположения объекта
    local place = ContextPlayerTrade:GetPlacementPlain()
    -- Считаем новые кординаты для последующего виджета
    place.posX = placeBuyTrade.posX + 40
    place.posY = placeBuyTrade.posY + 40
    -- Задаем полученные координаты новым виджетам
    MainPanel:SetPlacementPlain(place)

    Но изначально окно торговли находится по центру и координаты Х и У у него равны 0

    и еще ругается что передаю какие то пустые значения((

    Конечно можно статически подогнать к нужному месту но при изменение разрешения или еще по каким либо причинам все съедит наверное(

  4. Ребят помогите с подключением DnD библиотеки . Ведь она отвечает за перемещение по экрану?

    Есть код подключения в 2х вариациях

    DnD:Init( 527, mainForm:GetChildChecked( "ListButton", true ), mainForm:GetChildChecked( "ListControl", true ), true )

    или

    MainPanel:DragNDrop( true, 680, nil, true, false )

    где

    function TWidget:DragNDrop( bDraggable, ID, wtMovable, bUseCfg, bLockedToScreenArea, Padding )
    if self.Widget then
    self.bDraggable = bDraggable
    if ID then
    DnD:Init( ID, self.Widget, wtMovable, bUseCfg, bLockedToScreenArea, Padding )
    else
    DnD:Enable( self.Widget, bDraggable )
    end
    end

    Собственно

    это необходимые данные для передачи

    function DnD:Init( ID, wtReacting, wtMovable, fUseCfg, fLockedToScreenArea, Padding )

    где

    ID, - произвольный инд номер аддона

    wtReacting - реакция в виджите на клик мыши

    wtMovable, - тот виджет что та форма что будет перемещатся и все то что в ней соответственно тоже

    fUseCfg - просто непонятная херня. все пишут true

    И я не могу понять в чем проблема

    если делаю так например привязавшись к кнопки закрытия то работает

    DnD:Init( 527, mainForm:GetChildChecked( "ButtonCornerCross", true ), mainForm:GetChildChecked( "MainPanel", true ), true )

    и это не лучший вариант

    но если делаю так

    MainPanel:DragNDrop( true, 680, nil, true, false )

    то скорее всего выходит гдето не реагирую на реакцию мышки

    Вопрос. я не прописал гдето в файле реакцию. или гдето был создан виджет с реакцией или что.?

    Мне бы хорошо перемещать всю панель зажав мышку на ней а не конкретно в области кнопки.

    Или гдето была создана прозрачная кнопка под панелью и щелкая по панели срабатывает с нее реакция на мышь?

  5. Ммм сейчас гляну... Но если честно не уверен что пойму. Розочка у тебя немного сложноваты аддоны в игре и в коде запутаться легко(

    Сетрас очень помог. много объяснил. Почти все готово. Осталось только фильтр этот сделать. и понять как Библиотеку днд использовать чтобы перемещать. и еще понять точнее это понятно что при наведение мыши реакция включает текстуру с прозрачностью и создается эффект свечения но непонятно где ошибка.

    Вот но самое главное фильтр.(

    Вообще столько интересных знаний появилось)) сейчас добью этот аддончик и перелопачу те 2)

  6. Ребят надо фильтр присобачить к строке ввода

    Вот нашел в доках

    <?xml version="1.0" encoding="UTF-8" ?>
    <UITextFilter>
    <ranges>
    <Item>
    <minChar>0</minChar>
    <maxChar>9</maxChar>
    </Item>
    </ranges>
    <isAllowObject>false</isAllowObject>
    </UITextFilter>

    Файл создал с названием EditLineTextFilter.(UITextFilter)

    Как его присоединить? или вообще как навести фильтр?

  7. Понять бы самому что конкретно там не пашет( Ладно это можно и под конец отложить. Теперь главное с текстовой формой разобраться

    Еще с деланна кнопочка при наведение не загорается( Видимо что-то с прозрачностью надо делать. Но это все украшательства. Сначала хочу понять саму механику работы форм

  8. Спасибо) А то я Сетраса уже достал наверное. Никак не пойму как эти бин файлы делать хотя в чек боксе делать нечего тока и понять надо 2 текстуры. А вот с текстовой формой тут паника. Так что обязательно все проштудирую.

    Такая интересная идейка есть и код то плевенький уже накатал, а вот граф часть хромает(

  9. Доброго времени суток) Возникло еще 2 вопроса.(

    1. Можно ли в аддоне сделать текстовые формы для ввода данных? Просто не встречал аддона с текстовым вводом. И если можно то возникает вопрос как узнать свойство виджета отвечающее за передачу данных

    2. Где почитать как создавать кнопки на подобие чекбокса. Пытался разобраться в том чекбоксе что есть. Вроде все понятно. Но где графика под него непосредственно, и что в .bin файлах зашито не знаю как посмотреть( По логике выходит что в bin-файлах и есть графика на кнопку?

    Просто зажегся еще одной штукой интересной но для реализации надо понять как эти два момента работают(

  10. Каждому свое. Любой аддон это облегчение игрового процесса если уж в корень смотреть. Спорить можно бесконечно. "Готово" нет на Домике потому что там оно по идеи может и нужно кому. Хотя на домике так с голосом в основном.

    Вот что не включил в аддон хотя лично для меня полезно, но не знаю как для других так это снятие таргета с петов.

  11. А можно ли его как-то переместить?

    Пока нельзя((

    чем вам не подошел Cuex

    Для меня он сложен да и то что там есть мне не нужно. Прогнозировать рост и падение кри можно по игре. Все что нужно мне это строчка с курсом перед глазами.)

  12. Выгружает стандартный аддон дележа или нет? Есть возможность отключения этого и авто готово по проверке?
    Пока просто заложено в коде. так что отключение не делал. нет не выгружает это еще высший пилотаж для меня. Пока цель была убрать таблички всплывающие на экране.
    Собсно вопрос, нахрена? Типа "смотрите я готов а на вас я хуй клал"? Если человек у компьютера - он в состоянии сам нажать "готов". Если человек отошел, нахуя жать "готов"? Х_х Предлагаю наоборот. Если в течении 5 секунд человек не нажал "готов" то аддон сам будет нажимать "не готов".

    Собственно если человек клал достоинство на все ему пофиг что и где нажато. если человек бегает а через каждые 5 секунд начинают кидать проверку то по середине экрана табличка просто отвлекает. В инстансах теперь нельзя выгнать. да и раньше когда выгоняли максимум что могло быть так это на арене символы не приходили. Есть те кто афкают есть те кто врагу сливаются специально ему проигрывая. И ничего сделать нельзя. Самое большое наказание и несправедливость это афкашер ролящий символы на арене. Опять таки если ты у экрана то нажать в состояние, а если положил трубу на клаву то пролетел с роллом и дал чуть больше шанса другим. Но и тут есть но. во-первых арена делится как правило на наша и не наша. где либо толком нехрена нет сундуков либо же на ней нет противника и тупо бегаешь собираешь их. Редко встречаются равные арены или где по домангу жмешь а сундуки другие тырят. И во-вторых кому это нужно и так наставят себе лут менеджеров и прочее (хотя честно я не знаю как он работает в игре. там надо и аддон еще какой-то ставить и настройки сложноваты).

    Не думал что аддон вызовет столько реакции. По сути просто тыкнулся во что-то свободное не занятое разработчиками. да и вспомнил когда летом усердно ходил на хутор с яром чтоб на кмв накопить что неудобно было когда нужно всего 2 инстанса из всех а приходится или искать их тыкать или все выделять. Увлекшись тема развилась в менеджер из простого выборщика.

    Я учусь на нем) а не пишу штуку для афкашеров или кого-то еще. и не думаю что он будет пользоваться большим интересом. Критика и предложения это хорошо) Это поставленные задачи которые автор или не догадался ввести или еще не умеет) а это интересно решить головоломку которую не знаешь)

  13. InstanceManager (free)

    Просмотр файла

    Аддон выполняет следующие функции:

    - Снимает выделение с инстансов на которые не хотите ходить (в настройках аддона первый столбец)

    - Автоматически принимает приглашение на выбранные вами инстансы (в настройках аддона второй столбец)

    - Добавлена кнопка отказаться от нескольких инстансов если не все выбраны

    В настройки аддона можно зайти нажав кнопку "Параметры" в окне выбора инстансов или ввести в чат команду /asi

    Имеется недостаток! При выборе всех инстансов сразу аддон может не успеть среагировать и не снять выделение.


    • Добавил
    • Добавлено
      04.02.2013
    • Категория

     

  14. KursKri (Курс валюты)

    Просмотр файла

    Выводит текущий курс покупки/продажи кристаллов и рассчитывает приблизительное количество которое можете приобрести.

    Для перемещения надписи включить CapsLock, навести указатель мышь, зажать и перетащить. (т.е. чувствительность к щелчкам мыши только при вкл. CapsLock)

     

    Настройка аддона осуществляется редактированием файла Scripts/KursKri.lua:

    • local WorkType = 1 - режим отображение (0-только цена покупки кри; 1-покупка/продажа через мигание надписи)
    • local viewMoney = 0 - формат вывода (0 - золото/серебро/медь; 1 - золото)

     

    При создании использовался аддон MyrrhMyrrh Автор: Cleric.

     

    Планы:

    При не необходимости можно сделать кнопку по переключению режимов и формата; расчет при продажи кри в обменник (будет не точно) Все зависит от пожеланий


    • Добавил
    • Добавлено
      04.02.2013
    • Категория

     

  15. Да больше понять хотелось. вопросы то они еще и с запасом на будущие.

    интересуют виджеты или виджет на проверку о готовности и приглашения в инстанс. на лут нашел.

    Вот кстати вопрос если виджет гасить так

    wt.RollGreedNeed:Show( false )

    то он потом ведь снова запустится при следующем запуске события или его надо как-то после гашения активизировать?

  16. Так сопли частично откладываются.) Скачал аддон который все в игре показывает.. перепровязал на сумку появление кнопки. но все таки не нашел как обзывается кнопка с выбором инстансов. создадим отдельно тогда кнопочку. Главное механика понятна

  17. В твоем коде ты можешь посмотреть откуда берется ссылка на кнопку и стойло. Она берется через детей stateMainForm и детей их детей и детей детей их детей.

    Все дело в том что я и не знаю как посмотреть. Если бы лежало в папке то тыкаешь файлик смотришь ссылки идешь дальше но как быть когда это в игре? там не потыкаешь файлик(

      wt.ContextStable = W('ContextStable',stateMainForm):GetChildChecked("MainPanel", false )

    я понимаю что он смотрит цепочку включения детей. Находит и выводит. Но я не знаю как узнать это имя ('ContextStable'.. Выходит както можно залезть в игру и почитать имя виджетов. Скачал AoTextureViewer_0.6.1 он не пашет. и выходит что я не могу посмотреть имя нужного мне виджета

×
×
  • Создать...

Важная информация

Пользуясь сайтом, вы принимаете Условия использования