MTUtils
阅读
2021-02-07更新
最新编辑:Steins-YueSha
阅读:
更新日期:2021-02-07
最新编辑:Steins-YueSha
——“修改Greg-API下的配方成为可能。”
MTUtils是由LionZXY与zetti68开发的,由YueSha维护的辅助Minetweaker3魔改的工具模组,
简介
MTUtils为Minetweaker3提供了额外的mods.MTUtils包,提供了实现更多的魔改功能的可能性。除此之外,本模组还提供了mods.MTUtilsGT包,提供对所有基于Greg-API模组(包括格雷科技6以及格雷科技6非官方版)的配方修改支持。
模组截图
图中显示使用MTUtils添加的格雷科技6配方。
基础功能
MTUtils的基础功能在mods.MTUtils包内,在使用时需要在ZenScript文件顶端添加:import mods.MTUtils;
1. 物品相关函数
- MTUtils.setItemMaxDamage(itemstack, damage); 设置物品栈最大Damage(Meta)值
- MTUtils.getItemMaxDamage(itemstack); (Return int) 获取物品栈最大Damage(Meta)值
- MTUtils.getItemDamage(itemstack); 获取物品栈当前Damage(Meta)值
2. 方块相关函数
- MTUtils.setHarvestLevel(itemstack, String tooltip, int harvestLevel); 设置方块采掘等级
- MTUtils.setBlockUnbreakable(itemstack); 设置方块无法挖掘
- MTUtils.setHardness(itemstack, float hardness; 设置方块硬度
- MTUtils.setLightLevel(itemstack, float lightLevel); 设置方块光照水平
- MTUtils.setLightOpacity(itemstack, int lightOpacity); 设置方块透明度
- MTUtils.setResistance(itemstack, float resistance); 设置方块抗性
- MTUtils.setTextureName(itemstack, String texturename); 设置方块材质路径
- MTUtils.getHarvestLevel(itemstack); (Return int) 获取方块采掘等级
- MTUtils.getHarvestTool(itemstack); (Return String) 获取方块采掘工具类型
- MTUtils.getTextureName(itemstack, int side); 获取方块材质路径
3. 实用函数
- MTUtils.getIntFromString(string); (Return int) 从字符串获取整数
- MTUtils.getFloatFromString(string); (Return float) 从字符串获取浮点值
- MTUtils.getStringFromInt(int); (Return String) 从整数获取字符串
- MTUtils.getStringFromFloat(float); (Return String) 从浮点值获取字符串
- MTUtils.getStringFromFormattedText(IFormattedText text); (Return String) 从格式化文本IFormattedText获取字符串
- MTUtils.getStringFromFormattedString(IMCFormattedString text); (Return String) 从格式化字符串IMCFormattedString获取字符串
- MTUtils.getCrossMatch(IOreDictEntry ... oreDictEntries); (Return IItemStack[]) 从矿物词典IOreDictEntry获取物品栈IItemStack数组
- MTUtils.getIngredientFromString(String in); (Return IIngredient) 从字符串获取原料IIngredient
- MTUtils.getItemStackFromString(String in); (Return IItemStack) 从字符串获取物品栈IItemStack
- MTUtils.getIOreDictEntryFromString(String in); (Return IOreDictEntry) 从字符串获取矿物词典IOreDictEntry
- MTUtils.getIFormatedTextFromString(String in); (Return IFormattedText) 从字符串获取格式化文本IFormattedText
- MTUtils.getIMCFormattedTextFromString(String in); (Return IMCFormattedString) 从字符串获取格式化字符串IMCFormattedString
4. 掉落函数
- MTUtils.clearDrops(); 移除方块挖掘掉落物
- MTUtils.setBlockDrops(@Nullable IItemStack harvester, IItemStack block, IItemStack drops[], float quantiDrop[], IItemStack falseDrops[]); 设置方块挖掘掉落五
Greg-API配方修改功能
MTUtils的Greg-API配方修改功能在mods.MTUtilsGT包内,在使用时需要在ZenScript文件顶端添加:import mods.MTUtilsGT;
1. 指令
- /MTUtils GTKeys [1...] (MTUtils可简写为MTU)
用于查看Greg-API下注册的所有配方键(RecipeKey),可通过第三个参数设置显示的配方键数量。 提示:格雷科技6本体拥有超过50个配方键,非官方版另有10余个,故配方键数量很大,无法在聊天界面显示完全。使用者可在minetweaker.log找到完整的配方键列表。
2. 添加配方
- MTUtilsGT.addCustomRecipe(String gtkey, boolean useNBT, long XenergyPerTick, long Ytick, [long ZprobabilityPer10000], [IItemStack inputItemStack],[ILiquidStack inputLiquidStack], [ILiquidStack outputLiquidStack], [IItemStack outputItemStack]);
功能:向配方键指向的Greg-API配方映射表添加一个忽略/不忽略NBT的每刻耗能 X GU 时长 Y 刻,输入物品栈和流体栈;输出流体栈,并有万分之Z的概率输出输出物品栈。
- MTUtilsGT.addCustomRecipe(String 配方键, boolean 不忽略NBT, long 每刻耗能, long 刻, [long 概率(万分之)], [IItemStack 输入物品栈],[ILiquidStack 输入流体栈], [ILiquidStack 输出流体栈], [IItemStack 输出物品栈]);
3. 移除配方
- MTUtilsGT.removeAllRecipes(String gtkey, IItemStack outputItemStack);
功能:移除配方键指向的Greg-API配方映射表中所有输出outputItemStack的配方。
- MTUtilsGT.removeAllRecipes(String 配方键, IItemStack 输出物品栈);
4. 流体替换
MTUtilsGT.addFluidInput(ILiquidStack 流体X, ILiquidStack 流体Y); 功能:所有流体X作为输入流体栈的配方都可以用流体Y替代。
前置模组
MTUtils的前置模组是Minetweaker3。
关于非官方版
由于LionZXY于2017年后再无更新本模组且无法联系,YueSha于2020年对此模组的mods.MTUtilsGT包进行了重大Bug修复,使得大量、稳定地修改格雷科技6的配方成为可能,并将本模组依照GNU Affero General Public License开源协议发布。