魔兽6.0用户界面插件改动:插件信息将只能显示在自定义聊天频道
2014-07-16 12:28:57 作者:网易 来源: 浏览次数:0
摘要:在《德拉诺之王》的前夕补丁中,我们将对用户界面插件相关的功能进行一些更新和修改。我们将在未来的某个内测版本(待定)中允许使用插件,以方便插件制作者测试这些改动。
6.0用户界面插件改动
在《德拉诺之王》的前夕补丁中,我们将对用户界面插件相关的功能进行一些更新和修改。我们将在未来的某个内测版本(待定)中允许使用插件,以方便插件制作者测试这些改动。
为了方便查看,请在提供反馈时注明您所参考的段落。
==保存快捷键/宏/用户界面设置==
保存快捷键/宏/用户界面设置稍有改动。大部分属于后端改动,以便插件与我们当前的客户端结构保持一致。
主要的变化在于我们不再比较本地版本和服务器版本的保存快捷键/宏/用户界面设置以确定应该将哪一个加载到客户端,而是改为由CVars切换使用本地文件或服务器文件。所有客户端将默认使用服务器端。如果你不想这样设置,可以修改下列CVars设置来只使用本地文件。
“synchronizeConfig” [0/1] – 默认值为1,将角色和账号界面配置(即CVars)储存到服务器。
“synchronizeBindings” [0/1] –默认值为1,将角色和账号快捷键储存到服务器。
“synchronizeMacros” [0/1] –默认值为1,将角色和账号宏储存到服务器。
“synchronizeSettings” [0/1] –默认值为1,将角色和账号信息储存到服务器(该设置效果与将前三条设置为1或0一样)。
== 插件信息 ==
插件信息现在只能显示在自定义聊天频道。
SendAddonMessage()的类型为“频道”,目标为频道名。
== 键值 ==
为了让大家制作的更好的独立模板更容易配置(例如,你不用记得覆盖OnLoad并呼叫源文件),我们将允许按键和值类型改为分别使用“键类”和“类型”。两者默认为“字符串”。其他可选类型包括:字符串、布尔、数值,全局(将在所有表格中查找值)。
当我们制作使用此类选项的模板时,我们计划添加一个含注释的键值段落,列出所有可用选项,让大家不用再辛苦地挖掘代码。
示例
<Frame name="RoleButtonTemplate" virtual="true">
<!-- Available options
<KeyValues>
<KeyValue key="role" value="tank"/>
<KeyValue key="tooltip" value="TALENT_SPEC_TANK_TOOLTIP" type="global"/>
<KeyValue key="roleID" value="1" type="number"/>
</KeyValues>
-->
<OnLoad>
self.Texture:SetTexture(GetTextureForRole(self.role));
</OnLoad>
<OnClick>
DoSomethingWithRole(self.role);
DoSomethingWithRoleID(self.roleID);
</OnClick>
<OnEnter>
GameTooltip:SetText(self.tooltip);
GameTooltip:SetOwner(self, "ANCHOR_RIGHT");
GameTooltip:Show();
</OnEnter>
<OnLeave function="GameTooltip_Hide"/>
</Frame>
<Frame name="TankButton" inherits="RoleButtonTemplate">
<KeyValues>
<KeyValue key="role" value="tank"/>
<KeyValue key="tooltip" value="TALENT_SPEC_TANK_TOOLTIP" type="global"/>
<KeyValue key="roleID" value="1" type="number"/>
</KeyValues>
</Frame>
<Frame name="HealerButton" inherits="RoleButtonTemplate">
<KeyValues>
<KeyValue key="role" value="healer"/>
<KeyValue key="tooltip" value="TALENT_SPEC_HEALER_TOOLTIP" type="global"/>
<KeyValue key="roleID" value="2" type="number"/>
</KeyValues>
</Frame>
== Atlas ==
Atlas是一种映射到标准贴图上的贴图,包括标准贴图坐标。
useAtlasSize – 使用和游戏内矩形尺寸一样的底层贴图的实际像素尺寸。
示例
XML
<Texture atlas="_Garr_InfoBox-Top" horizTile="true" useAtlasSize="true">
<Anchors>
<Anchor point="TOPLEFT" y="7"/>
<Anchor point="TOPRIGHT" y="7"/>
</Anchors>
<!--This uses the top-left quarter of this atlas entry, not the top-left quarter of the whole texture-->
<TexCoords left="0" right="0.5" top="0.0" bottom="0.5"/>
</Texture>
Lua
filename, width, height, left, right, top, bottom, tilesHoriz, tilesVert = GetAtlasInfo("name")
someTexture:SetAtlas("_Garr_InfoBox-Top");
atlas = someTexture:GetAtlas()
== 全新计时系统==
加入了全新的计时系统,相关文件可在C_TimerAugment.lua中查看。
功能:
C_Timer.After(duration, callback) –在持续时间读秒结束后呼叫回叫信息。
timer = C_Timer.NewTimer(duration, callback) – 在持续时间读秒结束后呼叫回叫信息。该指令比C_Timer.After的成本更高,适合在需要将指令设置为可取消时使用。
timer:Cancel() – 取消计时
ticker = C_Timer.NewTicker(duration, callback, iterations) –在持续时间内每秒呼叫一次回叫信息(最高不超过迭代次数)。
ticker:Cancel() – 取消读秒
== 动画系统==
对动画系统进行了一些改动并修正了一系列错误。
Alpha animation has fromAlpha and toAlpha. This is a variant from just a change delta.
Scale animataion has fromScale and toScale.
childKey is the same as targetKey with automatically pre-pending “$parent.$parent.”
AnimGroups新增“setToFinalAlpha”设置,setting that will apply the animations final resulting alpha to all animating regions.
提示:为了方便查看,请在提供反馈时注明您所参考的段落。
相关报道: