通过修改方块的方块标签实现以下功能:
①修改物品挖掘所需要的工具,工具等级;
②修改某类型工具可以加速方块的挖掘;
【方块标签】的用法不仅于此,还有非常非常多;
【举个栗子】
要求游戏版本:1.18.2+(包括1.18)
代码:写入server_scripts\script.js
onEvent('tags.blocks', event => {
event.add('minecraft:mineable/pickaxe', 'minecraft:dirt')
event.add('minecraft:needs_iron_tool', 'minecraft:coal_ore')
event.add('minecraft:mineable/axe', 'minecraft:coal_ore')
})
效果:
①第一条语句给泥土添加了#minecraft:mineable/pickaxe标签,现在使用稿子可以加速泥土的挖掘(就像使用铲子挖泥土一样快)
②第二条语句给煤矿添加了#minecraft:needs_iron_tool标签,现在需要使用铁工具或品质等级更高的工具才能挖掘煤炭矿物
(否则就像拿木镐挖铁矿石一样,挖得很慢且什么都不掉)
③第三条语句给煤矿添加了#minecraft:mineable/axe标签,现在使用铁斧、钻石斧、下界合金斧挖煤炭矿石也会掉落煤炭
(就像用镐子挖煤炭一样)
没有展示作用的效果图:
手持木稿时,显示无法挖掘煤炭矿石;手持铁镐时,显示可以挖掘煤炭矿石
补充及更多资料:
①既然有event.add,同理也存在event.remove()函数能够移除方块的标签,用法相同
②这里的方块标签block.tags,区别于物品标签item.tags,详细参见 KubeJS官方wiki中关于标签的说明
③如果想要知道某个方块上有什么标签,以及获取更多的标签来解锁更多用法:
游戏内准心对准某个方块,按F3在右下角会显示当前方块所有的标签,如图