我的世界服务器小游戏:“猜数字”小游戏教学。简单易懂!!欢迎来学习~
我的世界“猜数字”游戏指令
作者:哔哩哔哩小鑫
介绍:可以给服务器增加玩法
注意:本套指令没学会范围选择器“[z,y,x,dz,dy,dx]”建议先学会这个。
————————————————
创建“猜数字”计分板
scoreboard objectives add 猜数字 dummy
(聊天栏输入)
创建“次数”计分板
scoreboard objectives add 次数 dummy
(聊天栏输入)
给计分项“十”设置为10分
scoreboard players set 十 猜数字 10
(聊天栏输入)
==========================
开始游戏
①将玩家次数设置为0
scoreboard players set @p 次数 0
(脉冲/无条件/红石控制)
②将玩家次数设置为10
scoreboard players set @p 次数 10
(连锁/无条件/保持开启)
③将计分项“随机数”设置0~1000的数
scoreboard players random 随机数 猜数字 0 1000
(连锁/无条件/保持开启)
④给附近的玩家开始游戏标题显示
title @p title §l开始游戏!
(连锁/无条件/保持开启)
⑤传送到游戏内(坐标填自己游戏的坐标)
tp @p x y z
==========================
输入面板第一层0-9的指令
这里0到9后面对应的命令方块都是一样的
将计分项“输入”乘10
scoreboard players operation 输入 猜数字 *= 十 猜数字
(脉冲/无条件/保持开启)
==========================
输入面板第二层1-9的指令
这里是1到9后面对应的指令
例:
将输入加1分
scoreboard players add 输入 猜数字 1
(连锁/无条件/保持开启)
例:
将输入加2分
scoreboard players add 输入 猜数字 2
(连锁/无条件/保持开启)
以此类推
将输入加3分……一直加到数字9
==========================
初始化输入的分数
放在重置键后面对应的命令方块
scoreboard players set 输入 猜数字 0
(脉冲/无条件/红石控制)
==========================
确定键指令
①给游戏内的玩家扣除次数
scoreboard players remove @a[游戏里的范围内] 次数 1
(脉冲/无条件/红石控制)
②将游戏内玩家的分数等于输入的分数
scoreboard players operation @a[游戏里的范围内] 猜数字 = 输入 猜数字
(连锁/无条件/保持开启)
③将该玩家的分数减去随机数
scoreboard players operation @a[游戏里的范围内] 猜数字 -= 随机数 猜数字
(连锁/无条件/保持开启)
④当玩家分数小于-1给玩家显示数字过小
execute @a[scores={猜数字=..-1}游戏里的范围内] ~ ~ ~ tellraw @s {"rawtext":[
{"text":"§l§f数字记录:"}, {"score":{"name":"输入","objective":"猜数字"}},{"text":",§l§6数字过小,§7剩余次数:"},
{"score":{"name":"@a[游戏里的范围内]","objective":"次数"}}
]}
(连锁/无条件/保持开启)
⑤当玩家分数大于1给玩家显示数字过大
execute @a[scores={猜数字=1..}游戏里的范围内] ~ ~ ~ tellraw @s {"rawtext":[
{"text":"§l§f数字记录:"}, {"score":{"name":"输入","objective":"猜数字"}},{"text":",§l§6数字过大,§7剩余次数:"},
{"score":{"name":"@a[游戏里的范围内]","objective":"次数"}}
]}
(连锁/无条件/保持开启)
⑥给分数等于0的玩家判定挑战成功
execute @a[scores={猜数字=0}游戏里的范围内] ~ ~ ~ title @s title §a§l挑战成功!
(连锁/无条件/保持开启)
将分数等于0的玩家传送游戏区
execute @a[scores={猜数字=0}] ~ ~ ~ tp @s x y z
(连锁/有条件/保持开启)
⑦初始化输入分数
scoreboard players set 输入 猜数字 0
(连锁/无条件/保持开启)
==========================
检测输入分数大于1000
scoreboard players test 输入 猜数字 1000 *
(循环/无条件/保持开启)
大于后就将输入设置为0
scoreboard players set 输入 猜数字 0
(连锁/有条件/保持开启)
给玩家提示数字过大
title @a[游戏里的范围内] title §4§l数字过大
(连锁/有条件/保持开启)
==========================
给游戏内的玩家显示信息
titleraw @a[scores={雪球菜单=0},游戏里的范围内] actionbar {"rawtext":[
{"text":"§l§b猜数字
§o§7(范围:1~1000)
§r§f玩家名称:"},{"selector":"@a[游戏里的范围内]"},{"text":"
§l当前输入:§4"}, {"score":{"name":"输入","objective":"猜数字"}},{"text":"
§r§6剩余次数:"},
{"score":{"name":"@a[游戏里的范围内]","objective":"次数"}}
]}
(循环/无条件/保持开启)
==========================
挑战失败提示(次数=0的玩家)
tellraw @a[游戏里的范围内,scores={次数=0}] {"rawtext":[
{"text":"§4§l挑战失败 §f本轮数字:§b"},
{"score":{"name":"随机数","objective":"猜数字"}}
]}
(循环/无条件/保持开启)
给挑战失败的玩家传送至游戏区
tp @a[游戏里的范围内,scores={次数=0}] x y z
(连锁/有条件/保持开启)
————————————————
展示完毕!

