1_41421356237
用这个ooc做出的速度计
效果是从最下边一个紫色命令方块,上面一大串绿色命令方块,全都是朝上的
预计效果:右侧sidebar显示一个数值,代表你在之前的1gt中移动的厘米数
但实际上有两个问题:
1.数值在正确数值和0之间来回跳动
2.在平地跳跃时数值为0
求大神给出对命令的修改意见

最后附上ooc供大神实验





2021.12 数据,可能有更多内容用这个ooc做出的速度计 init:/scoreboard objectives add walk stat.walkOneCm init:/scoreboard objectives add fly stat.flyOneCm
init:/scoreboard objectives add climb stat.climbOneCm
init:/scoreboard objectives add dive stat.diveOneCm
init:/scoreboard objectives add minecart stat.minecartOneCm
init:/scoreboard objectives add horse stat.horseOneCm
init:/scoreboard objectives add boat stat.boatOneCm
init:/scoreboard objectives add pig stat.pigOneCm
init:/scoreboard objectives add swim stat.swimOneCm
init:/scoreboard objectives add fall stat.fallOneCm
init:/scoreboard objectives add sprint stat.sprintOneCm
init:/scoreboard objectives add crouch stat.crouchOneCm
init:/scoreboard objectives add speed dummy 速度
init:/scoreboard players set @a speed 0
init:/scoreboard objectives setdisplay sidebar speed
rcb:/execute @a ~ ~ ~ scoreboard players operation @p speed = @p boat
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p climb
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p dive
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p fall
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p fly
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p horse
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p minecart
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p pig
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p swim
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p walk
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p crouch
/execute @a ~ ~ ~ scoreboard players operation @p speed += @p sprint
/execute @a ~ ~ ~ scoreboard players set @p boat 0
/execute @a ~ ~ ~ scoreboard players set @p climb 0
/execute @a ~ ~ ~ scoreboard players set @p dive 0
/execute @a ~ ~ ~ scoreboard players set @p fall 0
/execute @a ~ ~ ~ scoreboard players set @p fly 0
/execute @a ~ ~ ~ scoreboard players set @p horse 0
/execute @a ~ ~ ~ scoreboard players set @p minecart 0
/execute @a ~ ~ ~ scoreboard players set @p pig 0
/execute @a ~ ~ ~ scoreboard players set @p swim 0
/execute @a ~ ~ ~ scoreboard players set @p walk 0
/execute @a ~ ~ ~ scoreboard players set @p sprint 0
/execute @a ~ ~ ~ scoreboard players set @p crouch 0
注:init代表开始时单次触发,rcb代表紫色命令方块,其他的是绿色命令方块效果是从最下边一个紫色命令方块,上面一大串绿色命令方块,全都是朝上的
预计效果:右侧sidebar显示一个数值,代表你在之前的1gt中移动的厘米数
但实际上有两个问题:
1.数值在正确数值和0之间来回跳动
2.在平地跳跃时数值为0
求大神给出对命令的修改意见


最后附上ooc供大神实验/summon FallingSand ~ ~1 ~2 {Time:1,Block:"minecraft:redstone_block",Passengers:[{id:"FallingSand",Time:1,Block:"minecraft:activator_rail",Passengers:[{id:"MinecartCommandBlock",Command:"/scoreboard objectives add walk stat.walkOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add fly stat.flyOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add climb stat.climbOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add dive stat.diveOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add minecart stat.minecartOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add horse stat.horseOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add boat stat.boatOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add pig stat.pigOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add swim stat.swimOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add fall stat.fallOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add sprint stat.sprintOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add crouch stat.crouchOneCm"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives add speed dummy 速度"},{id:"MinecartCommandBlock",Command:"/scoreboard players set @a speed 0"},{id:"MinecartCommandBlock",Command:"/scoreboard objectives setdisplay sidebar speed"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~2 ~0 repeating_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed = @p boat\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~3 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p climb\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~4 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p dive\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~5 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p fall\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~6 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p fly\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~7 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p horse\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~8 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p minecart\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~9 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p pig\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~10 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p swim\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~11 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p walk\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~12 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p crouch\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~13 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players operation @p speed += @p sprint\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~14 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p boat 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~15 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p climb 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~16 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p dive 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~17 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p fall 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~18 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p fly 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~19 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p horse 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~20 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p minecart 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~21 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p pig 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~22 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p swim 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~23 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p walk 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~24 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p sprint 0\"}"},{id:"MinecartCommandBlock",Command:"setblock ~0 ~25 ~0 chain_command_block 1 replace {auto:1b,Command:\"/execute @a ~ ~ ~ scoreboard players set @p crouch 0\"}"},{id:"MinecartCommandBlock",Command:"/setblock ~ ~-1 ~ minecraft:lava 15"},{id:"MinecartCommandBlock",Command:"setblock ~ ~ ~ air 0"}]}]}



⭐✔️
指令确实是这个效果
问题1是由于内存等因素刷新过低
问题2是正常

解决方法就是
1.将set 0的部分放到+=部分前面
2.在set0部分和+=部分之间输出

1_41421356237
贰逼 发表于 2016-2-14 21:40
指令确实是这个效果
问题1是由于内存等因素刷新过低
问题2是正常

这个命令不是这个意思
正确的意思是在每一个tick中记录走的距离,然后把所有这些距离加起来放到显示的计分板上,然后把走的距离清零。

⭐✔️
1_41421356237 发表于 2016-2-14 22:02
这个命令不是这个意思
正确的意思是在每一个tick中记录走的距离,然后把所有这些距离加起来放到显示的计 ...

你这句话倒唤醒我仔细看一遍
一个错

speed += @P boat

1_41421356237
贰逼 发表于 2016-2-14 22:07
你这句话倒唤醒我仔细看一遍
一个错

这里没有错
这个相当于先设置清零再加上boat

⭐✔️
1_41421356237 发表于 2016-2-14 22:12
这里没有错
这个相当于先设置清零再加上boat

那么实测其实没错
综合分析是你的客户端卡顿严重等造成的游戏更新率大幅下降

机器人WBW
{:10_493:}问题1是正常的,如果lz要把数据做处理的话在归零前输出即可,实在有显示强迫症的,加一个变量,我命名为a(计分板名),然后归零前把@p的a取speed(用=),此时a可显示速度
问题2的话可能需要一个检测空中运动的距离的输出了……我找找

机器人WBW
看了看2b表示没错,那么我解决问题1的方法要是能用的话应该没问题
不然再加上flyOneCm
speed和a互换也可以(因为lz要用speed)

1_41421356237
林扬骐 发表于 2016-2-14 23:16
看了看2b表示没错,那么我解决问题1的方法要是能用的话应该没问题
不然再加上flyOneCm
speed和a互换也可以 ...

加了fly了
问题二我自己弄明白了 跳跃既不算walk判据(没有着地)也不算fly判据(因为离地太近)
对于speed我过一会去试验
虽然最佳答案还是没你的

机器人WBW
1_41421356237 发表于 2016-2-15 10:23
加了fly了
问题二我自己弄明白了 跳跃既不算walk判据(没有着地)也不算fly判据(因为离地太近)
对于spe ...

然后再给一个建议吧,你可以用上execute,这样便可以实现检测多人

1_41421356237
林扬骐 发表于 2016-2-15 10:29
然后再给一个建议吧,你可以用上execute,这样便可以实现检测多人

确实用了execute,仔细看指令去

1_41421356237
贰逼 发表于 2016-2-14 18:29
那么实测其实没错
综合分析是你的客户端卡顿严重等造成的游戏更新率大幅下降 ...

我把视距调到2chunck之后问题确实解决了
不过为了测试这个我用了三个地图,因为视距调到2之后我就找不到原有的结构了233

第一页 上一页 下一页 最后一页