Fdf
来自咸鱼维基
魔兽地图编辑器导航
编辑器 编辑器(1.31) 游戏 QQ群 制图教程 魔兽制图资源 制图工具 命令行指令 常见问题 Lua制图 Lua制图(1.31)
社区 Hiveworkshop WOW8 百度魔兽地图编辑器吧 魔兽争霸官方对战平台 CSDN魔兽地图编辑器
fdf,可能是指“frame define file”。
fdf是魔兽争霸3的界面布局文件,在魔兽争霸3的MPQ文件中有诸多fdf文件。除了fdf外,魔兽争霸3中的界面制作往往也需要结合toc文件,可在toc页面查看说明。
注意:如果你发现fdf文件在魔兽地图中无效,请先检查toc文件是否被加载,或者toc文件最后一行是否留了空行。详见toc页面。
1 结构/语法说明[编辑]
结构/语法:
IncludeFile "UI\FrameDef\..\filename.fdf", Frame "基础控件类型" "控件名称" { 参数1 参数值1, 参数2 参数值2, 参数3 参数值3, ... 参数N 参数值N, Frame "基础控件类型" "控件名称" { 参数1 参数值1, 参数2 参数值2, 参数3 参数值3, ... 参数N 参数值N, } Frame "基础控件类型" "控件名称" { 参数1 参数值1, 参数2 参数值2, 参数3 参数值3, ... 参数N 参数值N, } } Frame "基础控件类型" "控件名称" INHERITS "继承的控件名称" { 参数1 参数值1, 参数2 参数值2, 参数3 参数值3, ... 参数N 参数值N, } Frame "基础控件类型" "控件名称" INHERITS WITHCHILDREN "继承的控件名称" { 参数1 参数值1, 参数2 参数值2, 参数3 参数值3, ... 参数N 参数值N, }
其中“基础控件类型”可以在“fdf/基础控件类型”页面查询。“控件名称”则是用于在Jass脚本中被索引的标记。开发者可以通过“控件名称”来创建Frame,也可以通过“控件名称”来索引Frame,或者索引Frame中的子Frame。
关键词说明:
- InlcudeFile 用于导入一个 fdf 的数据,以实现复用控件。
- Frame 用于声明一个新的控件,以更方便地创建可被多次复用的控件数据。
- INHERITS 可以用于继承某个先前定义过的控件,以实现对控件的复用。
- INHERITS WITHCHILDREN 不仅继承定义的控件,还继承其定义的子控件。
- …… 更多待完善。
示例:
(本示例由 @裂魂 提供) IncludeFile "UI\FrameDef\Glue\BattleNetTemplates.fdf", Frame "BACKDROP" "HPBar"{ Width 0.5, Height 0.04, BackdropTileBackground, BackdropBackground "blank.blp", BackdropBackgroundSize 0.128, BackdropBackgroundInsets 0.01 0.01 0.01 0.01, BackdropCornerFlags "UL|UR|BL|BR|T|L|B|R", BackdropCornerSize 0.030, BackdropEdgeFile "UI\Widgets\BattleNet\bnet-dialoguebox-border.blp", BackdropBlendAll, Frame "BACKDROP" "HPBarBG"{ Width 0.5, Height 0.04, SetPoint LEFT, "HPBar", LEFT, 0, 0, BackdropTileBackground, BackdropBackgroundSize 0.128, BackdropBackgroundInsets 0.008 0.008 0.008 0.008, BackdropBackground "ReplaceableTextures\TeamColor\TeamColor07.blp", BackdropBlendAll, } Frame "TEXT" "HPText" { SetAllPoints, FontJustificationH JUSTIFYCENTER, FontJustificationV JUSTIFYMIDDLE, FontFlags "FIXEDSIZE", Text "0/0", } }
2 模板文件[编辑]
fdf模板文件定义了绝大多数游戏中使用到的各类fdf控件。
- war3.mpq\UI\FrameDef\Glue\StandardTemplates.fdf - These are standard templates to be inherited by most components in the glue screens. The one exception being Battle.Net screens which should utilize the templates in BattleNetTemplates.fdf.
- war3.mpq\UI\FrameDef\Glue\BattleNetTemplates.fdf - These are BattleNet templates to be inherited by components in the Battle.Net glue screens.
- war3.mpq\UI\FrameDef\UI\EscMenuTemplates.fdf - These are EscMenu templates to be inherited by most components in the in-game menus.
- war3.mpq\UI\FrameDef\UI\InfoPanelTemplates.fdf - These are templates to be inherited by most components in the in-game info panels.