【中文翻译】泰拉瑞亚tModLoader官方教程:Basic Recipe Guide(基本合成表指南) |
您所在的位置:网站首页 › terraria创建人物后崩溃 › 【中文翻译】泰拉瑞亚tModLoader官方教程:Basic Recipe Guide(基本合成表指南) |
建议在学习完《基础物品指南》后再阅读本文: 合成表可以在2个地方被添加到游戏中。在Mod.AddRecipes和ModItem.AddRecipes中。你在哪里添加你的合成表是由你的组织偏好决定的,但是请注意下面代码中的 "mod "和 "this "反映了来自ModItem的代码。 合成表由原料(制作结果所消耗的物品)、瓦片(你需要准备的合成场所,如工作台、砧等)和结果(合成后获得的物品)组成。 基本合成表的结构首先,确保你在.cs文件的顶部使用了Terraria.ModLoader包(一般的IDE(如VS、Rider)会自动导入),这样你就可以使用ModRecipe类。如果你打算使用任何原版的物品,你也需要使用Terraria.ID。 为了开始一个合成表,我们创建一个ModRecipe类的实例。 现在,我们添加不同的物品(最多可以添加14种)。 使用recipe.AddIngredient来向合成表中添加物品。 AddIngredient还有一个可选的参数来指定一个物品的数量。 前面的例子通过引用ItemID类将原版就有的物品添加到合成表中。在一个有能力的IDE(如Visual Studio)中,你会发现自动完成和智能感应非常有用,你可以通过ItemID.XXX(后面是物品的英文名)来引用泰拉瑞亚原版物品ID,当然,你也可以通过搜索引擎搜索某个物品的ID来将它添加到合成表中。 我们还可以添加由这个mod添加的mod物品。我们有几种方法可以做到这一点。选择你喜欢的任何方法: 接下来,我们可以指定制作站(最多可以指定14个)。这与物品的模式相同。下面的方法任选一种即可。 接下来,我们需要为ModRecipe设置结果,即合成完成后获得的物品。每个ModRecipe只能有一个结果。这也是与AddIngredient类似的做法。这里也有一个可选的物品数量参数。 最后,我们需要告诉tModLoader,我们的ModRecipe已经完成,并将其添加到游戏中。 例子 使用原版物品与mod物品的区别 总结:原版物品和制作站使用ItemID和TileID类,而mod物品和制作站使用ItemType和TileType方法。 水、蜂蜜、岩浆 水、蜂蜜和岩浆在技术上说不是瓦片(Tile,之后会详细说明),所以要使合成需要站在这些东西旁边,请使用以下方法之一。 请注意,水槽也能满足needWater的需求,所以不要单独添加水槽瓦片。还要注意的是,你也可以设置recipe.needSnowBiome(需要雪地生物群落),你也可以使用ModRecipe.RecipeAvailable方法(用于判断合成表是否可用)为你的合成表添加更高级的功能。(之后会详细介绍) 多个合成表在同一个 AddRecipes 中可以有多个 ModRecipe,请确保不要重复声明你的变量名称。以下情况将导致错误: 你可以给你的变量命名为recipe1、recipe2等,但更简洁的方法是重复使用同一个变量: 完整例子这里有2个完整的例子。 从技术上讲,制作合成表的代码可以放在Mod或ModItem中,但是大多数情况下,将配方放在ModItem类中是最好的。 ModItem.AddRecipes例子:Mod.AddRecipes例子:注意这里的this是指mod本身,而不是像ModItem例子中那样指代某个特定物品。 常见错误 Error CS0117 'ItemID' (or TileID) does not contain a definition for 'MyModItem'不要使用添加原版物品的语法来添加mod物品! Error CS0103 The name 'recipe' does not exist in the current contextModRecipe recipe = new ModRecipe(mod); Error CS0128 A local variable named 'recipe' is already defined in this scope再次阅读“多个合成表”一节。 游戏中没有我的合成表!请检查你是否重写了AddRecipes方法。 请确保你只在Mod或ModItem中重写AddRecipes。 相关参考资料Vanilla ItemIDs:https://github.com/tModLoader/tModLoader/wiki/Vanilla-Item-IDs Vanilla TileIDs:https://github.com/tModLoader/tModLoader/wiki/Vanilla-Tile-IDs ModRecipe Documentation:http://tmodloader.github.io/tModLoader/html/class_terraria_1_1_mod_loader_1_1_mod_recipe.html Mod Documentation:http://tmodloader.github.io/tModLoader/html/class_terraria_1_1_mod_loader_1_1_mod.html 基本指南未涉及的内容ModRecipes的其他方面将在更高级的指南中涉及。 RecipeGroups 允许单一合成原料成为一个组中的一个,就像大多数涉及木材的配方可以使用Boreal Wood或Pearl Wood。("任何木材") ModRecipe.OnCraft ModRecipe.ConsumeItem ModRecipe.RecipeAvailable RecipeFinder/RecipeEditor 允许你修改和删除原版的合成表。 Cross-Mod Content 在你的合成中使用其他模组的物品或瓦片。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |