Слышал, что с версии 1.31 можно менять интерфейс. Подскажите: как мне сделать, чтоб у способности типа "книга заклинаний" было не 11 свободных ячеек на панели(как это обычно), а на 3 больше, то есть всего 14? Без мемхака.

DopaMine, нельзя поменять кол-во ячеек в книге заклинаний.
Можно набросать в интерфейс кнопок и обрабатывать нажатия на них, без абилок юнитов. Но есть три нюанса
  1. нет визуального редактора интерфейса, все делается в коде и файлах разметки
  2. только жасс или луа, а гуй не справится с этой задачей
  3. это сложно
примерно алгоритм выглядит так
  1. разобраться в файлах разметки фреймов fdf
  2. запилить свой фрейм в fdf файле, засунуть этот файл в карту
  3. в нужный момент создать и отобразить фрейм триггером
  4. динамически добавить триггеры для обработки нажатий на кнопки фрейма после его создания
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
24
Должен быть файл в формате .casc? Нету такого.
Нет, вся папка Data это один большой распределенный CASC-архив
11
Просто если в рефорджеде новых возможностей не будет, то всё равно менять интерфейс - лучше щас разобраться.
prog:
Нет, вся папка Data это один большой распределенный CASC-архив
Нет, вся папка Data это один большой распределенный CASC-архив
В этой папке фреймворки все?
Загруженные файлы
24
Все что не лежит в war3.w3mod тебя не интересует в принципе.
Тебя интересует ui\framedef в war3.w3mod.
11
Тебя интересует ui\framedef в war3.w3mod.
Отлично, спасибо! А теперь немножко теории плз:D Это файлы игры как бы. По какой логике я могу изменённые файлы сохранить не в папке Data, а как бы только в своей карте, чтоб у других игроков отображалось всё, как я настрою?
Bergi_Bear:
и всё разжевали xgm.guru/p/wc3/frame
И из статей вот вопрос: это лишь отображение интерфейса или фактически изменённый интерфейс? То есть панели делаются прозрачными и сквозь них нельзя кликнуть по игровой области, чтоб выбрать юнита, к примеру или эти панели именно удаляются?
24
DopaMine, тебе нужен toc файл и fdf файл с твоим фреймом, оба импортированные в карту. А дальше триггерами сперва грузиш toc, потом создаеш фрейм по айдишнику.
11
тебе нужен toc файл и fdf файл с твоим фреймом, оба импортированные в карту
Что такое toc и откуда импортировать эти оба файла?
native BlzGetOriginFrame takes originframetype frameType, integer index returns framehandle
Эта функция импортирует?
prog:
fdf файл с твоим фреймом
И тут имеется в виду, что он уже изменён где-то или "твой фрейм" - это тот, который надо изменить уже в самом редакторе?
24
Что такое toc и откуда импортировать эти оба файла?
Что значит откуда, тебе нужно их создать, естественно, а потом засунуть в карту через импорт.
BlzLoadTOCFile для загрузки toc файла. Внутри должен быть список fdf файлов которые ты хочешь чтобы игра загрузила, пример toc файла смотри в архивах игры (в твоем toc файле должны быть только те fdf которые тебе нужны, не надо туда стандартные копировать).
А дальше создаешь фрейм функцией создания фрейма.
BlzGetOriginFrame - получает уже созданый стандартный фрейм и для твоей задачи не подходит.

Еще, для простых задач, можно в коде собирать то что нужно из стандартных фреймов по кусочкам, не создавая свой fdf, но это еще больший геморой, чем fdf файлы.
11
Оо~prog:
пример toc файла смотри в архивах игры
Не понял, toc файл - это папка с fdf файлами?
24
DopaMine, toc файл это список fdf файлов. В архивах игры есть war3.w3mod:ui\framedef\framedef.toc, в который можно заглянуть чтобы понять как должен выглядеть toc файл внутри.
11
DopaMine, toc файл это список fdf файлов. В архивах игры есть war3.w3mod:ui\framedef\framedef.toc, в который можно заглянуть чтобы понять как должен выглядеть toc файл внутри.
А, понял. А как мне понять, какой именно fdf файл отвечает за панель с заклинаниями?(
Если я константу знаю: "ORIGIN_FRAME_COMMAND_BUTTON"
Proshel_Doty:
А ещё можно заглянуть сюда xgm.guru/p/wc3/frame
Спасибо! Заглядывал, не поверите! т
Там начинается не с того, что я не знаю, а дальше...
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.