67880371
本帖最后由 67880371 于 2014-7-25 16:11 编辑


最近暂时没玩快照,所以停更了一段时间。今天带来的是一种新的生物受伤判定法,并且以此延伸出的一个“雷劈剑”的应用。

下面是演示:



现在我手里拿着一把普通的木剑,但是我加入了“DIE”队伍。而面前这个就是一只普通的Pig


我对Pig轻轻按下左键,只听到一声巨响,面前雷电一扫,Pig立刻就"站"起来了!



Pig用一脸无辜的眼神看着我..= =

电路大小:


不计算超频方块,则共用了7个命令方块。
PS:其实很容易劈到自己..
原理请翻页:

2021.12 数据,可能有更多内容

最近暂时没玩快照,所以停更了一段时间。今天带来的是一种新的生物受伤判定法,并且以此延伸出的一个“雷劈剑”的应用。

下面是演示:




现在我手里拿着一把普通的木剑,但是我加入了“DIE”队伍。而面前这个就是一只普通的Pig



我对Pig轻轻按下左键,只听到一声巨响,面前雷电一扫,Pig立刻就"站"起来了!





Pig用一脸无辜的眼神看着我..= =


电路大小:



不计算超频方块,则共用了7个命令方块。
PS:其实很容易劈到自己..
原理请翻页:



首先创建以下几个记分板/队伍:
/scoreboard objectives add hurt dummy
//判定受伤的记分板
/scoreboard objectives add take stat.useItem.minecraft.wooden_sword
//判定玩家使用了木剑的记分板
/scoreboard objectives add lp dummy
//控制雷劈指令的记分板
/scoreboard teams add Die
//创建一个Die的队伍


接着创建一个超高频,指令如下:
/fill ~-1 ~ ~ ~-1 ~ ~6 minecraft:redstone_block
/fill ~1 ~ ~ ~1 ~ ~6 minecraft:air


然后依次激活以下命令方块:
1. /scoreboard players set @e hurt 1 {HurtTime:0s}
//将所有HurtTime标签为0s的实体的hurt分数不断设定为1
该标签记录了当生物被攻击变红时的保护时间。若为0s即为不受攻击。
这个指令既控制了实体的分数范围,又过滤掉了除生物以外的实体:因为只有生物有这个标签。


2. /scoreboard players add @e[score_hurt_min=1] hurt 1
//将所有hurt分数至少为1的实体不断增加1.
和上个指令结合后将未受伤的生物分数控制在1-2之间。


3./execute @a[score_take_min=1,team=Die] ~ ~ ~ /scoreboard players set @e[score_hurt_min=3,c=-1] lp 1
//当DIE队伍的玩家使用木剑后,将会给分数hurt至少为3的最新实体的lp设定为1
具体的实行指令


4./scoreboard players set @e[score_hurt_min=3] hurt -1
//将hurt已经到3的实体分数hurt设定到-1,防止连续执行指令。


5./execute @e[score_lp_min=1] ~ ~ ~ /summon LightningBolt ~ ~ ~
//在lp分数至少为1的实体上召唤闪电


6./scoreboard players set @e[score_lp_min=1] lp 0
//归零lp分数


7./scoreboard players set @a[score_take_min=1] take 0
//归零使用木剑的分数


其中,我使用了30a出现的新召唤实体:LightningBolt,即:雷电
雷电一直以来都是实体,但1.7无法使用summon召唤。目前按tab也不会出现这个实体名,但是它的确是可召唤的了。


而这次我使用了新的伤害判定系统:计分板分数反转。
有时候实体的nbt数据不能直接达到要求,这时候便可以使用反转法。
反转法即是:在实体符合条件时它的分数将被控制在一个较稳定的范围。一旦它不再符合条件,就会突破这个稳定的范围。而我们正可以使用这个功能来执行指令。以下是新的计分板判定受伤的指令组:


1./scoreboard players set @e hurt 1 {HurtTime:0s}
2./scoreboard players add @e[score_hurt_min=1] hurt 1
3./execute @a[score_hurt_min=3] ~ ~ ~ /指令
4./scoreboard players set @e[score_hurt_min=3] hurt -1


该指令组可以在受伤的实体位置执行一个指令。
可以看出这个指令组没有比较器,很稳定且准确。


那么这个帖子就结束了,我还会继续修改的QwQ
PSS:由于mcbbs的帖子bug,不能正确的插入代码,只好直接打了..抱歉QwQ



fozencat
这个有什么用吗?

1213889750
不错不错,非常不错!!!

我不是蛋蛋
简称骗伤害对吧= =

Asselin
和我一样经常按回车的时候按了下Ctrl 然后就...

dcsuibian
命令方块就是为了让插件消失

zhjjhz
dcsuibian 发表于 2014-7-25 15:30
命令方块就是为了让插件消失

没错
我也赞一个
还有把mod消失

dcsuibian
zhjjhz 发表于 2014-7-25 15:34
没错
我也赞一个
还有把mod消失

其实原版才是最好的

zhjjhz
dcsuibian 发表于 2014-7-25 15:35
其实原版才是最好的

没错
我也喜欢原版
1.没有mod超级小
2地图全都打得开

dcsuibian
zhjjhz 发表于 2014-7-25 15:36
没错
我也喜欢原版
1.没有mod超级小

恩,握个爪,原版通用,不用担心mod造的东西别人用不了,而且容易展示,bug少

Asselin
dcsuibian 发表于 2014-7-25 15:40
恩,握个爪,原版通用,不用担心mod造的东西别人用不了,而且容易展示,bug少 ...

而且!原版没有MOD进游戏加载就快,每装一个MOD进游戏的时间就要延长一点

dcsuibian
Asselin 发表于 2014-7-25 15:55
而且!原版没有MOD进游戏加载就快,每装一个MOD进游戏的时间就要延长一点 ...

配置好到没什么问题

审奥不解释
坐看上面几个版聊
——审奥菌进入围观模式

tyson
审奥不解释 发表于 2014-7-25 15:57
坐看上面几个版聊
——审奥菌进入围观模式

坐看上面几个人版聊↑

Asselin
审奥不解释 发表于 2014-7-25 15:57
坐看上面几个版聊
——审奥菌进入围观模式

yooooooooooooooo~偶遇[好吧经常见]审奥菌~

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