构建材料
导包
import mods.contenttweaker.tconstruct.MaterialBuilder;构建器
记得导包!
var myMat as MaterialBuilder = MaterialBuilder.create(identifier as string);可设置参数
字段
设定值类型
描述
identifier
string
材料名称
color
int
材料颜色
hidden
bool
是否隐藏材料
craftable
bool (默认false)
部件加工台是否可制作此材料
castable
bool (默认false)
冶炼炉是否可制作此材料
localizedName
string
本地化描述
方法
方法
描述
addItem(ingredient as IIngredient, amountNeeded as int, amountMatched as int)
使 ingredient 可以在部件加工台制作此材料对应的模板的部件, amountNeeded 为需求数量, amountMatched 为匹配数量, 后两个参数选填, 默认为 1
removeItem(itemStack as IItemStack)
使 itemStack 不能制作此材料
材料特性
可以向材料对应的部件添加一个或一些特性
增删特性至部件的方法
CoT 自带的部件类型
ContentTweaker 自带的部件类型有以下几种
(只有匠魂及其前置 Mod 的情况下)
"head"-镐头,斧刃,铲头,剑刃,宽剑刃,锤头,开掘铲头,园艺镰头,盘,牌板
"handle"-手柄, 坚韧手柄
"extra"-大板, 绑定节, 坚韧手柄, 坚韧绑定节, 护手, 宽护手, 十字柄
"bow"-弓箭
"bowstring"-弓弦
"projectile"-刀刃, 箭头
"shaft"-箭杆, 弩箭核心
"fletching"-箭羽
为什么没有碎片部件
答 : 你只要使用一次 addMaterialTrait 方法就会自动添加碎片部件
怎么知道我想要的特性的 identifier ?
1.手持具有该特性的物品, 输入 /ct nbt, 然后去 crafttweaker.log 找刚才输出的结果, 在结果找 "trait", trait 数组内的字符串即是特性名称
2.安装 Infini-TiC Mod, 进入游戏后输入 /infinitic traits 获取所有已注册的特性
3.使用 Tinkers Exporter Mod 导出匠魂各类数据
部件属性
如果未调用对应部件的 add 方法则该部件不会出现在游戏内
有以下方法增删部件属性 (MaterialStats)
参数解析
durability-耐久度
miningSpeed-挖掘速度
attackDamage-伤害
harvestLevel-挖掘等级
modifier-系数
extraDurability-耐久度
drawSpeed-蓄力时间
range-射程
bonusDamage-箭矢的附加伤害
bonusAmmo-额外弹药
accuracy-精准度
注册材料
最后记得调用一下 register 零参方法, 否则游戏内会无反应
本地化key
本地化 key 为 material.材料名.name
实例
最后更新于
这有帮助吗?