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

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

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

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

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

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

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

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

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

Подробнее

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

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

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

Помогите с созданием Аддона


worm

Рекомендуемые сообщения

1. Можно ли в аддоне сделать текстовые формы для ввода данных? Просто не встречал аддона с текстовым вводом.

EditLine.

/LuaApi/CategoryEditLine.html

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

.bin - binary data. В данном случае - текстуры. dds файл с отрезанным заголовком. Чекбокс - это кнопка с двумя вариантами (вкл/выкл). Сейчас в игре присутствует ошибка вызывающая зависание клиента при использовании вариантов кнопок в некоторых случаях, точной взаимосвязи установить пока не удалось.

Просто при реакции нажатия на кнопку если надо поставить галочку нужен код

Button:SetVariant(1) -- переключить кнопку в вариант 1 (отсчет начинается с 0).

И кнопка сменит вид на другой.

Ссылка на комментарий
Поделиться на другие сайты

  • Ответов 95
  • Создана
  • Последний ответ

Топ авторов темы

Топ авторов темы

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

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

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

1.полно у меня в аддонах в меню настроек ввода

самый первый аддон с вводом был AucEDSman - вот в Free

открытый код в AddonsTools - AddonsMenu - menuCls

в menuCls.lua ищи "_edl" или "_edn"

Ссылка на комментарий
Поделиться на другие сайты

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

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

Ссылка на комментарий
Поделиться на другие сайты

Ребяяяяяяяяяяяяяятаааа))))) Я сделал фон на главной панельки)))))

Ссылка на комментарий
Поделиться на другие сайты

А как организовать перетаскивание панельки? Смотрю ДПСметр там всего 1 функция на библиотеку с ДНД. а это поидеи и позволяет все перетаскивать. и вот нефига не работает(

Ссылка на комментарий
Поделиться на другие сайты

Что конкретно не работает? Желательно приводить конкретные примеры. "Нифига не работает" нифига не помогает понять проблему.

Ссылка на комментарий
Поделиться на другие сайты

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

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

Изменено пользователем worm
Ссылка на комментарий
Поделиться на другие сайты

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

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

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

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

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

Ссылка на комментарий
Поделиться на другие сайты

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

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

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

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

Изменено пользователем worm
Ссылка на комментарий
Поделиться на другие сайты

да я что, ты еще не видел как тут народ аддоны пишет - например AddonsManager - там вообще гений - ни фига не понятно что к чему а все пашет )

Ссылка на комментарий
Поделиться на другие сайты

Так и не понял ничего про фильтр( не подключается(

Ссылка на комментарий
Поделиться на другие сайты

Ребят помогите с подключением 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 )

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

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

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

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

Ссылка на комментарий
Поделиться на другие сайты

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

-- Получили координаты расположения объекта
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

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

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

Ссылка на комментарий
Поделиться на другие сайты

в библиотеке АТ - есть функция wtChain - вот она тебе нужна

function wtChain(w, wBase, dx, dy)

Ссылка на комментарий
Поделиться на другие сайты

Спасибо)) помогло немного)

А фильтром как Быть? Никто не знает как подключить7(

Ссылка на комментарий
Поделиться на другие сайты

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

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"]

Ссылка на комментарий
Поделиться на другие сайты

--[[
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)

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

Ссылка на комментарий
Поделиться на другие сайты

На данный момент вот что имеем

TradeManager.rar

И это работает при условии что не будут вводить буквы вместо цифр

что не принципиально где расположен аддон и что окно торговли на старом месте

что работает по таймеру а не по событию начала конца торговли(

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

Ссылка на комментарий
Поделиться на другие сайты

Гость
Ответить в этой теме...

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

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


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

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

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