前言
之前想和朋友一起玩生存,为了给游戏增加一些乐趣,就简单的做了这个东西,现在作为教程发出来。
要求:
建设抽奖机的区域必须是冒险模式
知道如何使用命令方块
拥有nbt编辑软件/插件
了解json基本语法
会使用翻译器
有陪你玩的朋友
一.制作抽奖机
抽奖机总共由四个命令方块和一个普通方块组成。
普通方块
可以是任意方块,但最好不是你周围建筑所使用的方块,可以选择符合奖品风格的方块(钻石块,铁块,苔石等等)
方块四周应该使用台阶包围起来,只将上表面暴露出来
第一个命令方块
脉冲,不受制约,红石激活,方向指向普通方块。
1 | setblock ~ ~2 ~ air |
目的:清除掉放置的按钮,避免一个按钮反复激活抽奖箱。
第二个命令方块
连锁,不受约制,保持开启,方向指向第一个命令方块。
1 | particle minecraft:sonic_boom ~ ~3 ~ |
目的:生成一个粒子特效(你也可以将minecraft:sonic_boom换成其他粒子)
第三个命令方块
连锁,不受约制,保持开启,方向指向第二个命令方块。
1 | loot spawn ~ ~4 ~ loot minecraft:chests/desert_pyramid |
目的:生成随机奖励
这里的随机奖励可以从任意战利品表抽取,也可以使用自定义战利品表(需要数据包),如果你想要修改奖品列表,只需要将minecraft:chests/desert_pyramid替换为你想要的战利品表即可。如果你不知道战利品表所对应的物品,可以尝试将其翻译为中文。(例:minecraft:chests/desert_pyramid->沙漠神殿宝箱)
第四个命令方块
连锁,不受约制,保持开启,方向指向第三个命令方块。
1 | playsound minecraft:entity.generic.explode block @p |
目的:给抽奖玩家播放音效
如果你不嫌吵或者奖励比较稀有也可以给更多玩家播放音效
二.制作抽奖钥匙
首先手持一个普通的按钮(我以石头按钮为例),然后打开nbt编辑器,我们可以看到按钮的nbt是这样的:
1 | { |
现在我们需要修改nbt标签,使得按钮在冒险模式下也可以被放置在抽奖机上。
我们可以添加“minecraft:can_place_on”标签允许放置,添加“minecraft:custom_name”标签来设置按钮的名称。
1 | { |
需要将“minecraft:sand”替换为你抽奖机上普通方块的命名空间ID,你可以在此网页查看全部方块的命名空间ID
三.制作钥匙商人
生成一只村民,然后放置工作方块赋予职业,将准星对准村民,打开聊天栏,输入“/kill “后按Tab即可查询到村民的uuid,打开nbt编辑器,找到村民的nbt,例如:
1 | { |
警告:绝对不能改动UUID,WorldUUIDLeast和WorldUUIDMost项
完整的nbt非常长,但我们不需要这么多。首先,修改Offers项,这里存储的是村民售卖的内容,我们需要将它替换为我们的内容。
1 | Offers: { |
接下来分别讲解每一个项对应的内容:
buy:对应的是花费的内容,count表示花费的数量,id表示花费的物品。
maxUses:最多可以购买多少次,这里设置极大值即可,但最好小于int上线(21亿)。
sell: 出售的东西。这里直接复制你钥匙完整的nbt,然后粘贴在“sell: {”和“},”之间。
uses: 表示已经购买了多少次,不必理会,但可以定期设置成0,避免缺货(玩家不会购买21亿次吧)
Offers部分已经编写完成,下面来编写其他部分。
1 | CustomName: '{"text":"","extra":[{"text":"兑换宝箱钥匙","obfuscated":false,"italic":false,"underlined":false,"strikethrough":false,"color":"dark_purple","bold":false}]}', |
你可以将“兑换宝箱钥匙”设置为你想要的商人名字,“dark_purple”替换为名字的颜色。
添加以下两个项目,然后即可完成设置。
1 | Invulnerable: 1b, |
Invulnerable: 1b设置生物无敌,NoAI: 1b设置生物无AI。
你可能发现你仍然能杀死村民,因为Invulnerable项只对生存和冒险模式玩家有效。
五.大功告成!
快去邀请玩家测试吧!
如果有不理解的地方,可以评论/联系bilibili:2087825391。