• 🏆 Texturing Contest #33 is OPEN! Contestants must re-texture a SD unit model found in-game (Warcraft 3 Classic), recreating the unit into a peaceful NPC version. 🔗Click here to enter!
  • It's time for the first HD Modeling Contest of 2024. Join the theme discussion for Hive's HD Modeling Contest #6! Click here to post your idea!

HIVE

Tasyen
Tasyen
Error (UI\FrameDef\UI\CommandBar.fdf:66) that is from blizzard's fdf you should ignore it. Only your fdfs are your concern and errors for them are inside War3Log.txt.

One does not need (new) fdf to create UI. There already are the included Blizzard fdfs, most of it can be used without any work. But without fdf you lose some features or have a hard time recreating them. But as said, it works without.
BlzCreateFrameByType is your friend when you want to create UI-Frames without fdf. While BlzCreateFrame & BlzCreateSimpleFrame require fdf.

In my tutorial most of the Create Frame Section does not need any custom fdf, While the Sections after FDF are mostly about fdf/TOC.

I recomment to have static UI-frame structure/Layout which content you change: Displayed Images, Text, Models can be changed with one line async safe. If you don't want one frame anymore just hide it. Child frames need the visibility of their parent.

It is Lua code the approach is a bit dirty. But the idea is that they are self contained and work out of the box when copy pasted into world editor's trigger Editor and still are mp safe.
Dark-Zalor
Dark-Zalor
Hello thanks for your precious help

Your tutorial is very useful.

I have a buttonn frame and after a click event I want to destroy the clicked button frame and create a new one.
I got the parent of the clicked frame but when I create the new one (it is not visible if I use BlzFrameSetAllPoints) but if I use coords it works
(the problem I have is I don't find how to get the coordinates of the clicked frame)

I can avoid this problem if I can rename the frame)

Have you got an idea about that?
Tasyen
Tasyen
No, there is no api to get the current position of a Frame, nor to rename it.

if you use Lua vm you could add a proxy function for all the frame pos natives in which you store the position, then when there is stored data for the old button use it.

Could Reuse the button.

Might add in a new Frame as parent for the button that manages the position and you then attach it relative to it and the new Frame is where the button should be. Then you can delete the button create a new frame and just stick it relative to that Slot frame.
Dark-Zalor
Dark-Zalor
Hello man, I really move on with your precious answer and your tutorials.

I have a problem, I found that when I call that function "BlzHideOriginFrames(true)" the items inventory slots are not shown anymore...

So I decided to hide with blank files the race UI in the advancedInterface window.

The proble I have is I can't hide Unit Info Panel, I used what you said in your tutorial in section "Unit Info Panel" but it crashes my game... event when I select a unit first

Have you got an idea about that?
Thanks for your future answer
Top