WarCraft 3: [lua] Фрэймы

[lua] Фрэймы
» Раздел: Триггеры и объекты

Эта статья открывает цикл статей по редактированию интерфейса и в ней будут собраны все ссылки по данной теме. Пишите в комментариях, что ещё стоит добавить и с чего начать.

Полезные ссылки


Просмотров: 490

Castiel #1 - 4 недели назад 0
а что на счет бафов-дебафов ? и циферок панели здоровья и маны ? Где это взять?
NazarPunk #2 - 4 недели назад (отредактировано ) 0
а что на счет бафов-дебафов ? и циферок панели здоровья и маны ? Где это взять?
К бафам, цифрам и индикатору дня/ночи доступа нет.
Ещё, если двигать миникарту, то она неправильно курсор отлавливает. Поэтому приходится извращаться.
прикреплены файлы
Castiel #3 - 4 недели назад (отредактировано ) 0
Вот странно получается, до рефорджа еще месяца 2-2.5, кажется, что все это пофиксят и все равно придется половину переделывать...еще и верхняя панель глючная. А золото дерево и расходы все равно отображаются на невидимой панели, если навести курсор...
ScopteRectuS #4 - 4 недели назад 1
Так-так-так, что тут у нас? Очередная годнота от Назара подъехала!

Допустим, убрал я все через:
BlzHideOriginFrames( true )
BlzFrameSetAllPoints( BlzGetOriginFrame( ORIGIN_FRAME_WORLD_FRAME, 0 ), BlzGetOriginFrame( ORIGIN_FRAME_GAME_UI, 0 ) )
А как теперь показать то, что мне нужно? Например, кнопку меню. setVisible не помогает.
Castiel #5 - 4 недели назад (отредактировано ) 0
ScopteRectuS:
Так-так-так, что тут у нас? Очередная годнота от Назара подъехала!

Допустим, убрал я все через:
BlzHideOriginFrames( true )
BlzFrameSetAllPoints( BlzGetOriginFrame( ORIGIN_FRAME_WORLD_FRAME, 0 ), BlzGetOriginFrame( ORIGIN_FRAME_GAME_UI, 0 ) )
А как теперь показать то, что мне нужно? Например, кнопку меню. setVisible не помогает.
в закладках должно быть, но это не суть )))
local frame=BlzGetFrameByName("UpperButtonBarFrame",0)
BlzFrameSetVisible(frame,true)
у меню, если память не изменяет нужно сначала показать вот это вот , а потом скрыть нужные элементы, если нужно чисто меню. Но вот когда передвигаешь, чет текст скачет по всему экрану, вот в этом я помочь не могу(текст с глючным расположением, еще через mpq смотрел). получается вот так, если нужно именно меню:
local frame=BlzGetFrameByName("UpperButtonBarFrame",0)
BlzFrameSetVisible(frame,true)
 frame=BlzGetFrameByName("UpperButtonBarQuestsButton",0)
BlzFrameSetVisible(frame,false)
 frame=BlzGetFrameByName("UpperButtonBarAlliesButtonn",0)
BlzFrameSetVisible(frame,false)
 frame=BlzGetFrameByName("UpperButtonBarChatButton",0)
BlzFrameSetVisible(frame,false)
Или можно просто создать кнопку меню через Simple frame, но это уже другая история
NazarPunk #6 - 4 недели назад (отредактировано ) 0
А как теперь показать то, что мне нужно? Например, кнопку меню. setVisible не помогает.
local InitGlobalsOrigin = InitGlobals
function InitGlobals()
	InitGlobalsOrigin()
	local GAME_UI     = BlzGetOriginFrame(ORIGIN_FRAME_GAME_UI, 0)
	local WORLD_FRAME = BlzGetOriginFrame(ORIGIN_FRAME_WORLD_FRAME, 0)
	
	BlzHideOriginFrames(true)
	BlzFrameSetAllPoints(WORLD_FRAME, GAME_UI)
	
	BlzFrameSetVisible(BlzGetFrameByName("UpperButtonBarFrame", 0), true)
	BlzFrameSetVisible(BlzGetFrameByName("ResourceBarFrame", 0), true)
	BlzFrameSetVisible(BlzGetOriginFrame(ORIGIN_FRAME_PORTRAIT, 0), true)
	BlzFrameSetVisible(BlzGetOriginFrame(ORIGIN_FRAME_HERO_BAR, 0), true)
	BlzFrameSetVisible(BlzGetOriginFrame(ORIGIN_FRAME_MINIMAP, 0), true)
	BlzFrameSetVisible(BlzFrameGetParent(BlzGetFrameByName("SimpleInfoPanelUnitDetail", 0)), true)
	BlzFrameSetParent(BlzFrameGetParent(BlzGetOriginFrame(ORIGIN_FRAME_ITEM_BUTTON, 0)), BlzFrameGetParent(BlzGetOriginFrame(ORIGIN_FRAME_COMMAND_BUTTON, 0)))
end
Если нужно оставить индикатор дня/ночи, иконку незанятого рабочего и цифры хп/маны под портретом, то берёте прозрачную текстуру и используете только
BlzFrameSetAllPoints(WORLD_FRAME, GAME_UI)
Всё, что мешает, в игровом интерфейсе заменяете на неё. Правда тогда ещё придётся два раза импотрировать её с путями:
  • UI\Console\Human\HumanUITile05.blp
  • UI\Console\Human\HumanUITile06.blp
Но вот когда передвигаешь, чет текст скачет по всему экрану
Если вы за текст в этих кнопках:
То фишка в том, чтоб принудительно задать им размер после передвижения.
прикреплены файлы
Castiel #7 - 4 недели назад 1
короче до рефорджа лучше не стоит играться с интерфейсом, он какой то странный, только через костыли делается адекватно, хоть как то, то не пашет, то нельзя, это не так, то не то...Та и с декорациями та же беда, вроде бы расставил все красиво, а потом уже другое будет и не так смотреться будет, да и вообще не то....
Proshel_Doty #8 - 4 недели назад (отредактировано ) 0
Castiel:
короче до рефорджа лучше не стоит играться с интерфейсом, он какой то странный, только через костыли делается адекватно, хоть как то, то не пашет, то нельзя, это не так, то не то...Та и с декорациями та же беда, вроде бы расставил все красиво, а потом уже другое будет и не так смотреться будет, да и вообще не то....
+
Щас главное запастись идеями, проработать сюжеты и концепции будущих мап, и бахать уже с приходом Рефоржа)
NazarPunk #9 - 4 недели назад (отредактировано ) 0
короче до рефорджа лучше не стоит играться с интерфейсом
Такую игрушку завезли, а вы говорите не играться?))
он какой то странный, только через костыли делается адекватно
Это же варкрафт. Что ещё так прокачает навык костылеписания?))
Та и с декорациями та же беда, вроде бы расставил все красиво, а потом уже другое будет и не так смотреться будет, да и вообще не то....
Это не значит, что ничего делать не нужно.
Щас главное запастись идеями, проработать сюжеты и концепции будущих мап, и бахать уже с приходом Рефоржа)
Я вам 100500 идей с головы подкину, только вот если их не реализовывать, то грош цена этим идеям. А ждать Рефоржа без наработки навыков можно до посинения, только если вам лень делать на "старом" варкрафте, так же лень будет и в новом, только в новом ещё и разобраться нужно будет.
GetLocalPlayer #10 - 4 недели назад (отредактировано ) 1
А ждать Рефоржа без наработки навыков можно до посинения
Ой да ну-у-у его. Лучше готовое подождать. Вон, кто-нибудь сделает графический редактор с генератором кода и привязкой колбеков на виджеты в пару кликов. Разбираться еще тут, понимаете ли, до посинения. Пусть кто-нибудь за меня сделает, я подожду, я терпеливый.
Proshel_Doty #11 - 4 недели назад 0
без наработки навыков
что за навыки такие?))
NazarPunk #12 - 4 недели назад 0
что за навыки такие?))
Костылеписание))
Zetox #13 - 4 недели назад 0
Кстати, получится поменять фреймы лобби при добавлении функций в function config ?
Morningstar #14 - 4 недели назад 0
Идеи и тзшки уже давно прописаны, теперь думаю как всё это реализовать.
И делать надо будет на чистом луа, это очевидно.
Nelloy #15 - 3 недели назад (отредактировано ) 2
Отличный набор инфы по UI !
прикреплены файлы