本帖最后由 贰逼 于 2014-4-13 19:35 编辑

存档在此处下载,仅供研究与体验

效果:潜行隐身:
如果玩lol的同学都知道Timor潜行能隐身。


如果玩家也这样潜行呢



于是史蒂夫就这样弓着腰潜行


于是奇迹发生了


史蒂夫竟然消失了


他急匆匆停下终于解除了效果。
疾行加速:
拥有刺客信条、虐杀原形主角的跑酷超能力?第一步:疾行加速


如果玩家也这样奔跑呢


史蒂夫也这样跑动着


突然视角变广,速度变快


就这个feel倍爽


就像超能力的主角一样,停下来超能力也会消失

跑道与玻璃:
MC世界是个不科学的世界。我们冲刺了很长一段时间碰到方块却不会撞破。让生物与方块非交互特效来帮你。


一个跑道与远处的玻璃墙


准备起跑


起跑中

超能力发动中


发动疾行加速效果


于是就这样成功撞破了玻璃墙


这一切都是如何做到的?这都是命令方块的功劳。

原理翻页。

原理:
一个探测区。




值得一提的是记住结构。记住脉冲电路的延迟是4+3+4+3=14刻,这样能够与命令输出和其他部分保持一致。

准备工作:


首先我们要有两个计分板。
  1. /scoreboard objectives add s stat.sprintOneCm s
复制代码
命令讲解:创建一个名为s,以疾行距离为判据的计分板
  1. /scoreboard objectives add c stat.crouchOneCm c
复制代码
命令讲解:创建一个名为c,以潜行距离为判据的计分板

判定单位:
以潜行部分为例:




电路与上面要一致,命令讲解一下:

红色羊毛处命令方块命令:
输入:
  1. /testfor @p[score_c_min=150]
复制代码
命令讲解:探测最近的玩家计分板c最小值150。也就是探测最近的玩家最少潜行了150单位。
出:在上方脉冲处放置红石块激活脉冲。

黄色羊毛处命令方块命令:
脉冲处:
  1. /effect @p 14 1 1 true
复制代码
命令讲解:给最近的玩家添加等级1,时间1,隐藏颗粒效果的隐身效果。1秒是为了给及时终止效果奠定基础。
清零处:
  1. /scoreboard players set @p c 0
复制代码
命令讲解:把最近玩家的计分板c设置为0。其主要作用是给探测奠定循环基础。

蓝色羊毛处命令方块命令:
输入:
  1. /testfor @p[score_c_min=0]
复制代码
命令讲解:探测最近玩家计分板c最小值0。
输出:在上方脉冲处放置空气中断脉冲。
7刻延迟主要作用就是探测玩家这7刻行走了没,若否则及时清除隐身效果。




疾行区同理。也就是把计分板c改为s。探测值改为1500。脉冲区的命令方块里的命令改为:
  1. /effect @p 1 1 5 true
复制代码
刷新区:
利用一个非超级脉冲的脉冲连接以下命令的命令方块:
  1. /setblock 潜行区对应命令命令方块坐标 command_block 0 replace {Command:"/testfor @p[score_c_min=0]"}
复制代码
  1. /setblock 潜行区对应命令命令方块坐标 command_block 0 replace {Command:"/testfor @p[score_c_min=150]"}
复制代码
  1. /setblock 疾行区对应命令命令方块坐标 command_block 0 replace {Command:"/testfor @p[score_s_min=0]"}
复制代码
  1. /setblock 疾行区对应命令命令方块坐标 command_block 0 replace {Command:"/testfor @p[score_s_min=1500]"}
复制代码
主要作用就是比较器的信号清除,方便下次激活。

生物与方块非交互特效特效:(此特效灵感来源于Drognoz)


整个跑道


全部命令。注意看好红石电路。以下为命令讲解:
绿色羊毛处命令方块命令:
  1. /testfor @p[x,y,z,r=2]
复制代码
命令讲解:(x,y,z是距离玻璃墙六个方块的方块坐标)探测玩家是否在xyz周围两个方块
橙色羊毛处命令方块命令:
  1. /testforblock 疾行区脉冲处红石块坐标 redstone_block
复制代码
命令讲解:探测上面的坐标处是否有红石块。

若两个条件达成,激活紫色羊毛处命令方块命令:
  1. /fill 整个玻璃墙 air 0 destroy
复制代码
命令讲解:把整个玻璃墙都设置为破坏效果的空气。

重置:
  1. /fill 整个玻璃墙所在位置 glass
复制代码
命令讲解:把整个地区设置为玻璃。


@tyson @songfeitong @cyqsimon @PotatoMaster101 @ghyzhi10086 @我的世界sun123


[groupid=546]Command Block Logic[/groupid]