魔兽争霸3 fdf文件的关键字
前几天我上hive去看Tasyen的UI教程时发现了这个

大意就是他找到了一些fdf中暴雪未引用的关键字,让Tasyen研究研究。
然后给了个表格链接https://docs.google.com/spreadsheets/d/1KlfwoEvAHQyhuFxF1H4tj1U969XhzxXm
我也挺好奇有什么,于是我就下了表格研究了一下午。
不过由于研究时间较短,所以可能对功能的描述并不完全和正确。

CursorSprite

参数为string,一个模型的路径,如果UI内有这个关键字,那么鼠标进入就会变成此模型,然后不断播放第一个动作,必须是可以响应鼠标事件的UI。如果按我的示例fdf,则鼠标进入HumanCursor会变成

需要注意会覆盖其他响应鼠标的Frame(也许你可以给按钮写上这个关键字,但是我没试过)

SpriteScale

三个参数,目测为(长宽高?),不过看表格里面说是只有第一个值有用,不清楚。
可以缩放SPRITE类的Frame,一般来讲魔兽中的模型至少得缩放至0.001才能看见,否则就黑屏或者白屏。
当然你也可以通过使用金皮蛋的模型缩放工具来达到这一效果https://tieba.baidu.com/p/7200398918
然后你就会发现你创建的单位变白了,这是因为魔兽原本的模型引用了队伍颜色之类的东西。
参考https://www.hiveworkshop.com/threads/ui-adding-sprite.321423/
此教程描述了如何使用SPRITE,注意1.27a不能直接使用Dz函数缩放SPRITE,这会使游戏崩溃。


EditTextOffset

输入框的字体偏移,因为我的输入框只能输入一个字母,如果不使用会导致变成这样。

这是用了EditTextOffset后的效果。

EditMaxChars同等于DzFrameSetTextSizeLimit
EditSetFocus同等于DzFrameSetFocus(frame, true)

就研究了这么多,比较短小,有疑问可以在评论区问,我会尽我所能回答。