123 - API文档汉化 - 自定义毛皮
Updated a week ago自定义毛皮
由猎人与毛皮商买卖的毛皮由两个组件构成:CardInfo(卡牌信息)与PeltData(毛皮数据)。
CardInfo代表你可获取并出售的实际卡牌,其创建方式与常规卡牌相同,均通过CardManager实现。而PeltData则需使用API的PeltManager进行创建。
PeltData决定了猎人与毛皮商如何处理CardInfo,包括购买价格、单局游戏中价格的上涨幅度,以及毛皮商会为该毛皮提供哪些卡牌及其数量。
添加自定义毛皮
第一步是创建卡牌:
CardInfo bonePeltInfo = CardManager.New(PluginGuid, "Bone Pelt", "Bone Pelt", 0, 2);
bonePeltInfo.portraitTex = TextureHelper.GetImageAsTexture(Path.Combine(PluginDirectory, "Art/portrait_skin_bone.png")).ConvertTexture();
bonePeltInfo.cardComplexity = CardComplexity.Simple;
bonePeltInfo.temple = CardTemple.Nature;
bonePeltInfo.SetPelt();
必须优先创建卡牌,再创建毛皮数据。
完成卡牌创建后,即可创建毛皮数据。其中最复杂的部分在于创建用于决定毛皮商提供卡牌的函数。
本例中,毛皮商仅会提供消耗骨头且属于“自然神殿”(即仅限第一章卡牌)的卡牌:
Func<List<CardInfo>> cardChoices = ()
{
return CardManager.AllCardsCopy.FindAll((CardInfo x) => x.BonesCost > 0 && x.temple == CardTemple.Nature);
};
PeltManager.CustomPeltData bonePelt = PeltManager.New(yourPluginGuid, bonePeltInfo, baseBuyPrice: 3, extraAbilitiesToAdd: 0, choicesOfferedByTrader: 8, cardChoices);
该毛皮当前需花费3颗牙齿从猎人处购买,毛皮商将提供8张卡牌供选择,且提供的卡牌不会附加任何额外能力。
毛皮扩展功能
以下扩展方法可用于进一步自定义:
- SetPluginGuid: 设置添加该毛皮的插件Guid。若未使用PeltManager.New()创建毛皮时尤为实用。
- SetBuyPrice: 设置毛皮的基础购买价格(即未计算修正值前的初始价格),亦可同时设置最高购买价格(默认价格为20)。
- SetMaxBuyPrice: 专用于设置毛皮最高购买价格的扩展方法。例如当已通过PeltManager.New()设置过基础价格时适用。
- SetBuyPriceModifiers: 设置用于计算游戏内事件(如击败猎人或毛皮商,或激活“昂贵毛皮”挑战)对价格影响的参数。
- SetBuyPriceAdjustment: 设置用于计算单局游戏中价格变化规律的函数。默认情况下每次上涨1颗牙齿,但可实现更复杂逻辑。
- SetModifyCardChoiceAtTrader: 允许进一步修改毛皮商提供的卡牌,例如添加装饰图案或调整其消耗。
- SetIsSoldByTrapper: 决定该毛皮是否由猎人出售。
- SetNumberOfCardChoices: 设置交易毛皮时可选择的卡牌数量。
- SetCardChoices: 设置用于决定毛皮商可能提供哪些卡牌的函数。
Pages
- 0 - 邪恶冥刻模组简体中文语言包Wiki
- 100 - API文档汉化 - 首页
- 110 - API文档汉化 - 入门指南
- 120 - API文档汉化 - 卡牌
- 121 - API文档汉化 - 自定义卡牌费用系统
- 122 - API文档汉化 - 会说话的卡牌
- 123 - API文档汉化 - 自定义毛皮
- 130 - API文档汉化 - 能力
- 131 - API文档汉化 - 自定义触发器
- 132 - API文档汉化 - 自定义狙击逻辑
- 133 - API文档汉化 - 伤害护盾行为
- 134 - API文档汉化 - 卡槽修改功能
- 135 - API文档汉化 - 触发器与执行顺序
- 140 - API文档汉化 - 自定义/扩展属性
- 150 - API文档汉化 - 扬升(凯茜模组)
- 160 - API文档汉化 - 地图与遭遇战
- 170 - API文档汉化 - 对手
- 180 - API文档汉化 - 图腾
- 190 - API文档汉化 - 道具
- 1A0 - API文档汉化 - 规则书
- 1A1 - API文档汉化 - 添加自定义页面
- 1A2 - API文档汉化 - 添加文本重定向功能
- 1B0 - API文档汉化 - 本地化
- 1B0 - API文档汉化 - 声音
- 1B0 - API文档汉化 - 资产包
- 1C0 - API文档汉化 - 其他特性
- 200 - JSONLoader文档汉化 - Wiki
- 201 - JSONLoader文档汉化 - 枚举值