Собсна решил вкатиться в кастомные фреймы и для начала хочу сделать перекомпозицию стандартного UI.
Я немного разобрался, я так понимаю это всё на FDF файлах (местный аналог QML но без javascript), как-то с горем по-полам создал свой фрейм, но все гайды уже начинают с навороченных UI, но как перерисовать стандартный интерфейс?

Принятый ответ

как заставить игру в него вставить модель выбранного юнита
Посмотри в ресурсах у Hate "Пак анимированных фреймов-спрайтов выделения", там пример работы с фрймом Sprite, который отображает модели.
Drulia_san:
Или фрейм надо называть так же, чтоб он типа переезжал собой оригинал
Еще не пробовал.
Drulia_san:
В каких единицах вообще измеряется высота и ширина, судя по всему в попугаях а не пикселях
Не в пикселях. Здесь хорошо показана координатная система интерфейса. В твоем распоряжении координаты от [0, 0] до [0.8, 0.6]. Можно пытаться выходит за пределы этих значений, но отображаться фреймы тогда могут криво.
Исключением из этой системы координат являются стандартные фреймы выходящие за приделы показанного в статье квадрата - мультиборд, иконки героев, фрейм игрового мира, портрет юнита. В их случае упомянутые выше координаты будут соответствовать всему игровому окну, а не только указанному квадрату.
надо ли писать у элемента INHERITS чего-то там
Один фрейм может наследовать параметры другого. В этом случае пишется слово INHERITS и следом имя наследуемого фрейма. При этом вложенные фреймы не наследуются. Чтобы наследовались вложенные фремы тоже, нужно между INHERITS и именем наследуемого фрейма вставить ключевое слово WITHCHILDREN.
Drulia_san:
что такое UseActiveContext
Указывает потомку (вложенному фрейму) использовать контекст родителя (объемлющего фрейма). То бишь, id привязанный к экземпляру фрейма во время игры. Например у панели ресурсов (золото/дерево/еда) 24 контекста, на каждого игрока.
SetAllPoints и прочее, какие поинтс, куда их сет, зачем
Точки крепления. У каждого фрейма есть 9 точек крепления
TOPLEFT
TOP
TOPRIGHT
LEFT
CENTER
RIGHT
BOTTOMLEFT
BOTTOM
BOTTOMRIGHT
Фрейм перемещается по экрану с использованием одной и этих точек. Например
SetPoint BOTTOMLEFT, "MyFrame", TOPLEFT, 0.001, 0.001,
Привязывает левый-нижний угол фрейма MyFrame к левому-верхнему углу родительского фрейма, со смещением 0.001, 0.001.
SetAllPoints просто привязывает все точки крепления потомка ко всем точкам крепления родителя.
Drulia_san:
с этим даже экспериментировать болезненно и проблемно
Не бесполезно и не проблемно. Каталог игры содержит файлы шаблонов
ui\framedef\ui\infopaneltemplates.fdf
ui\framedef\ui\escmenutemplates.fdf
ui\framedef\glue\battlenettemplates.fdf
для изучения и использования.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
19
4 года назад
2
0
26
4 года назад
0
что имеется ввиду под "перерисовать"
0
16
4 года назад
Отредактирован Drulia_san
0
Hate:
что имеется ввиду под "перерисовать"
Ну то и имеется ввиду, что неясного-то. Взять и всё переделать, добавить новых панелек на стандартные фреймы, сделать новую композицию элементов, поменять текстуры, размеры, взять да переделать всё это. Каким образом? Может гайд какой-то хоть есть
Я так понимаю где-то есть FDF стандартных фреймов или типа того
0
26
4 года назад
Отредактирован Hate
0
обычно убирают все стандартные фреймы и делают свои надстройки, либо оставляя совсем куски оригинала оставляя например инвентарь. текстуры стандартного интерфейса уже давным давно заменяют, ничего нового в этом плане нет давно
берутся коробки либо от esc_menu и кнопки типа script dialog button
0
16
4 года назад
0
Хоть бы какую-то спецификацию всего синтаксиса и оформления FDF выложили, инфы куча, текста много, толку ноль, все гайды начинают с того что "ну у вас уже есть крутой UI и мы расскажем как сделать его еще круче"

и оригинала оставляя например инвентарь. текстуры стандартного интерфейса уже давным давно заменяют, ничего нового в этом п
Верстать интерфейс с нуля это не совсем то чего бы хотелось, разве нельзя взять FDF стандартных фреймов интерфейса поменять его и просто импортировать с тем же путём что и оригинальный, чтоб он его как бы перекрыл?
0
26
4 года назад
0
если скрольнуть вниз второго поста там есть закладки на разные элементы для создания своего интерфейса


Верстать интерфейс с нуля это не совсем то чего бы хотелось, разве нельзя взять FDF стандартных фреймов интерфейса поменять его и просто импортировать с тем же путём что и оригинальный, чтоб он его как бы перекрыл?
проще и быстрее сделать с нуля
0
16
4 года назад
Отредактирован Drulia_san
0
Всё таки не совсем понимаю как. Ну нарисую я фрейм, как заставить игру в него вставить модель выбранного юнита или характеристики героя, его атаку, тип брони и всё в таком духе, всё слишком мутно и непонятно
Или фрейм надо называть так же, чтоб он типа переезжал собой оригинал
В каких единицах вообще измеряется высота и ширина, судя по всему в попугаях а не пикселях

И конечно нифига не задокументировано нигде, надо ли писать у элемента INHERITS чего-то там, когда он и так внутри того элемента объявлен, что такое UseActiveContext, SetAllPoints и прочее, какие поинтс, куда их сет, зачем, непонятно, по какому принципу оно берет текст из перевода, а по какому вписывать свой, всё бы ничего но с этим даже экспериментировать болезненно и проблемно
Да черт возьми, как хотя бы прямоугольник цветной без текстур нормально нарисовать из которого можно свой бар ресурса сделать типа маны
2
17
4 года назад
Отредактирован GetLocalPlayer
2
как заставить игру в него вставить модель выбранного юнита
Посмотри в ресурсах у Hate "Пак анимированных фреймов-спрайтов выделения", там пример работы с фрймом Sprite, который отображает модели.
Drulia_san:
Или фрейм надо называть так же, чтоб он типа переезжал собой оригинал
Еще не пробовал.
Drulia_san:
В каких единицах вообще измеряется высота и ширина, судя по всему в попугаях а не пикселях
Не в пикселях. Здесь хорошо показана координатная система интерфейса. В твоем распоряжении координаты от [0, 0] до [0.8, 0.6]. Можно пытаться выходит за пределы этих значений, но отображаться фреймы тогда могут криво.
Исключением из этой системы координат являются стандартные фреймы выходящие за приделы показанного в статье квадрата - мультиборд, иконки героев, фрейм игрового мира, портрет юнита. В их случае упомянутые выше координаты будут соответствовать всему игровому окну, а не только указанному квадрату.
надо ли писать у элемента INHERITS чего-то там
Один фрейм может наследовать параметры другого. В этом случае пишется слово INHERITS и следом имя наследуемого фрейма. При этом вложенные фреймы не наследуются. Чтобы наследовались вложенные фремы тоже, нужно между INHERITS и именем наследуемого фрейма вставить ключевое слово WITHCHILDREN.
Drulia_san:
что такое UseActiveContext
Указывает потомку (вложенному фрейму) использовать контекст родителя (объемлющего фрейма). То бишь, id привязанный к экземпляру фрейма во время игры. Например у панели ресурсов (золото/дерево/еда) 24 контекста, на каждого игрока.
SetAllPoints и прочее, какие поинтс, куда их сет, зачем
Точки крепления. У каждого фрейма есть 9 точек крепления
TOPLEFT
TOP
TOPRIGHT
LEFT
CENTER
RIGHT
BOTTOMLEFT
BOTTOM
BOTTOMRIGHT
Фрейм перемещается по экрану с использованием одной и этих точек. Например
SetPoint BOTTOMLEFT, "MyFrame", TOPLEFT, 0.001, 0.001,
Привязывает левый-нижний угол фрейма MyFrame к левому-верхнему углу родительского фрейма, со смещением 0.001, 0.001.
SetAllPoints просто привязывает все точки крепления потомка ко всем точкам крепления родителя.
Drulia_san:
с этим даже экспериментировать болезненно и проблемно
Не бесполезно и не проблемно. Каталог игры содержит файлы шаблонов
ui\framedef\ui\infopaneltemplates.fdf
ui\framedef\ui\escmenutemplates.fdf
ui\framedef\glue\battlenettemplates.fdf
для изучения и использования.
Принятый ответ
0
16
4 года назад
0
GetLocalPlayer:
Спасибо за развернутый ответ
Чтобы оставить комментарий, пожалуйста, войдите на сайт.