1A2 - API文档汉化 - 添加文本重定向功能

Updated a week ago

添加文本重定向功能

磐石之身(Made of Stone)是一项原版(vanilla)能力,可抵消臭臭(Stinky)和死神之触(Touch of Death)的效果。这是一个能力行为直接关联其他能力的典型案例,在模组开发过程中,您可能会创建类似的功能,无论是能力、属性图标还是其他元素。

在此类情况下,您可能希望让玩家能便捷查看关联能力的效果,而非迫使他们翻阅整个规则书来回忆相关描述。

此时API便可发挥作用。

当创建能力、属性图标、奖励、道具或自定义规则书页面时,您可以在描述文本中将特定词语或短语标记为页面重定向。这些功能类似于互联网上的超链接:被标记的词语会显示为彩色带下划线样式,右键点击后将跳转至其他规则书页面。

例如,若要使磐石之身关联到臭臭和死神之触,您需要执行以下操作:

AbilityInfo info = AbilitiesUtil.GetInfo(Ability.MadeOfStone);

// 注意:提供的字符串区分大小写——若传入"touch of death"将无法生效
info.SetAbilityRedirect("Touch of Death", Ability.Deathtouch, GameColors.Instance.red);
info.SetAbilityRedirect("Stinky", Ability.DebuffEnemy, GameColors.Instance.orange);

完成设置后,当您打开磐石之身页面时,“Stinky”一词将显示为橙色并重定向至臭臭页面,“Touch of Death”将显示为红色并重定向至死神之触页面。

重定向功能同样适用于属性图标、道具、奖励和卡槽修改:

AbilityInfo info = AbilitiesUtil.GetInfo(Ability.MadeOfStone);
info.SetBoonRedirect("effects", BoonData.Type.DoubleDraw, GameColors.Instance.gray);

StatIconInfo stat = StatIconManager.AllStatIconInfos.Find(x => x.iconType == SpecialStatIcon.Ants);
stat.SetItemRedirect("represented", "Harpy Fan", GameColors.Instance.brightLimeGreen);

若需将重定向指向自定义规则书页面,可使用SetUniqueRedirect方法,此时需提供与自定义规则书页面pageId对应的字符串,而非Ability或Boon.Type枚举值。

文本颜色设置

如您所见,每个重定向方法都需传入Color参数。该参数用于改变文本颜色以标识可点击文本。上述示例仅使用了《邪恶冥刻》内置颜色,但您也可以创建并传入自定义颜色值。

需特别注意:并非所有颜色都能正常显示,尤其在第一章场景中受光照影响。虽然非典型颜色在各章节的兼容性尚未完全测试,但已确认第一章场景中蓝色文本会渲染为绿色,且白色与黄色文本在常规光照下会呈现透明效果。