zh_cn:tutorial:blocks
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
zh_cn:tutorial:blocks [2022/12/16 01:20] – [自定义形状e] solidblock | zh_cn:tutorial:blocks [2023/11/18 08:35] – solidblock | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== 添加一个方块 ====== | + | ====== 添加方块 ====== |
- | 将方块添加到你的模组过程与[[zh_cn: | + | 将方块添加到你的模组过程与[[zh_cn: |
- | ===== 创建一个方块 ===== | + | ===== 创建方块 ===== |
首先创建 '' | 首先创建 '' | ||
Line 17: | Line 17: | ||
| | ||
- | | + | |
*/ | */ | ||
- | public static final Block EXAMPLE_BLOCK = new Block(FabricBlockSettings.of(Material.METAL).hardness(4.0f)); | + | |
- | | + | |
@Override | @Override | ||
public void onInitialize() { | public void onInitialize() { | ||
Line 45: | Line 45: | ||
</ | </ | ||
- | 您的方块不能作为物品存入背包,但可以通过使用 ''/ | + | 您的方块不能作为物品存入背包,但可以通过使用 ''/ |
==== 为方块注册物品 ==== | ==== 为方块注册物品 ==== | ||
Line 54: | Line 54: | ||
public class ExampleMod implements ModInitializer { | public class ExampleMod implements ModInitializer { | ||
- | public static final Block EXAMPLE_BLOCK = new Block(FabricBlockSettings.of(Material.METAL).strength(4.0f)); | + | public static final Block EXAMPLE_BLOCK = new Block(FabricBlockSettings.create().strength(4.0f)); |
| | ||
@Override | @Override | ||
Line 64: | Line 64: | ||
</ | </ | ||
- | ===== 给您的方块一个外观 ===== | + | ===== 给予方块外观 ===== |
- | 您可能已经注意到,新的方块只是游戏中紫色和黑色棋盘格图案。这表明Minecraft加载方块资源或外观时出错。运行客户端时,完整的问题列表会输出在你的日志中。你需要以下文件来给予方块外观: | + | 你可能已经注意到,新的方块只是游戏中紫色和黑色棋盘格图案。这表明Minecraft加载方块资源或外观时出错。运行客户端时,完整的问题列表会输出在你的日志中。你需要以下文件来给予方块外观: |
* 方块状态文件 | * 方块状态文件 | ||
Line 75: | Line 75: | ||
这些文件位于: | 这些文件位于: | ||
- | 方块状态:src/ | + | |
- | 方块模型:src/ | + | |
- | 物品模型:src/ | + | |
- | 方块纹理:src/ | + | |
方块状态文件根据其方块装填确定该方块应使用的模型。由于我们的方块没有所谓状态,所以我们用空字符串表示所有: | 方块状态文件根据其方块装填确定该方块应使用的模型。由于我们的方块没有所谓状态,所以我们用空字符串表示所有: | ||
Line 113: | Line 113: | ||
===== 配置方块掉落物 ===== | ===== 配置方块掉落物 ===== | ||
- | 该方块必须有一个// | + | 该方块必须有// |
<code JavaScript src/ | <code JavaScript src/ | ||
Line 136: | Line 136: | ||
} | } | ||
</ | </ | ||
+ | |||
+ | 条件 '' | ||
在1.17,破坏方块有所改变,定义采集工具和采集等级需要使用标签,请参考[[zh_cn: | 在1.17,破坏方块有所改变,定义采集工具和采集等级需要使用标签,请参考[[zh_cn: | ||
- | | + | |
- | 采集等级:src/ | + | * 采集等级:'' |
<code JavaScript src/ | <code JavaScript src/ | ||
Line 160: | Line 162: | ||
</ | </ | ||
- | 对于采集等级标签(needs_stone_tool、needs_iron_tool和needs_diamond_tool)生效,在方块定义中将requiresTool()到FabricToolSettings: | + | 对于采集等级标签('' |
<code java [enable_line_numbers=" | <code java [enable_line_numbers=" | ||
- | public static final Block EXAMPLE_BLOCK = new ExampleBlock(FabricBlockSettings.of(Material.METAL).strength(4.0f).requiresTool()); | + | public static final Block EXAMPLE_BLOCK = new ExampleBlock(FabricBlockSettings.create().strength(4.0f).requiresTool()); |
</ | </ | ||
===== 创建自定义方块类 ===== | ===== 创建自定义方块类 ===== | ||
- | 当创建一个简单的方块时,上述方法效果很好,但是有时您想要一个具有// | + | 当创建一个简单的方块时,上述方法效果很好,但是有时您想要一个具有// |
<code java [enable_line_numbers=" | <code java [enable_line_numbers=" | ||
Line 191: | Line 193: | ||
public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) { | public ActionResult onUse(BlockState state, World world, BlockPos pos, PlayerEntity player, Hand hand, BlockHitResult hit) { | ||
if (!world.isClient) { | if (!world.isClient) { | ||
- | player.sendMessage(Text.of(" | + | player.sendMessage(Text.literal(" |
} | } | ||
Line 204: | Line 206: | ||
public class ExampleMod implements ModInitializer { | public class ExampleMod implements ModInitializer { | ||
- | public static final ExampleBlock EXAMPLE_BLOCK = new ExampleBlock(FabricBlockSettings.of(Material.STONE).hardness(4.0f)); | + | public static final ExampleBlock EXAMPLE_BLOCK = new ExampleBlock(FabricBlockSettings.create().hardness(4.0f)); |
| | ||
@Override | @Override | ||
Line 236: | Line 238: | ||
{{: | {{: | ||
- | ==== 下一步 ==== | + | ===== 下一步 |
[[zh_cn: | [[zh_cn: | ||
- | [[zh_cn: | + | [[zh_cn: |
+ | |||
+ | 要让方块可燃(也就是说,可以被火燃烧),可使用 '' |
zh_cn/tutorial/blocks.txt · Last modified: 2024/04/15 01:52 by solidblock