请选择 进入手机版 | 继续访问电脑版
查看: 1102|回复: 5

[命令方块] 命令方块实现右/左键浮空字

[复制链接]

20

主题

123

帖子

87

积分

Lv.3 矿物能手

UID
14859
小麦
34
金锭
344
下界之星
0
发表于 2017-11-5 12:13:32 | 显示全部楼层 |阅读模式
本帖最后由 MCSugar_cane 于 2017-11-8 23:24 编辑

可点击的浮空字
  玩家可以通过右键或左键来对浮空字进行点击,而且在服务器里也不需要玩家具有权限,是不是要右键比告示牌炫酷多了呢?
  代码适用版本为1.11.2
  下载链接:戳我去下载

click.gif

整体思路:  初步思路是利用玩家右键村民这个准则实现检测右键点击,用实体受到伤害和玩家是否造成伤害来检测玩家是否左键点击。
  在村民的nbt上,普通村民右键是会出现交易框的,这里为其加上Offers:{Recipes:[]}这个nbt即可消除显示。(村民无任何交易选项,无法交易,故不显示)。对于受伤害实体的nbt,你需要使它不会轻易被玩家攻击致死。这里我使用生命提升和生命恢复,因为如果用抗性提升后无法检测到实体被攻击。


代码:
创建变量:
/scoreboard objectives add villager stat.talkedToVillager 右键村民/scoreboard objectives add ifhit stat.damageDealt 造成伤害/scoreboard objectives add hit dummy 受到伤害         
           


右键浮空字:召唤实体:
  1. /summon armor_stand ~ ~ ~ {CustomName:"领取甘蔗(右键)",CustomNameVisible:1b,NoBasePlate:1,NoGravity:1,Invisible:1}
  2. /summon villager ~ ~ ~ {NoAI:1b,Silent:1b,Offers:{Recipes:[]},ActiveEffects:[{Id:14,Duration:9999999,Amplifier:0,Ambient:1,ShowParticles:0b}],Tags:["lqgz"]}
复制代码

右键触发:[高频循环]

  1. /execute @e[type=villager,tag=lqgz] ~ ~ ~ give @a[score_villager_min=1,r=6] reeds 1 0 {display:{Name:"www.Ganxiaozhe.com"}}
  2. /scoreboard players set @a[score_villager_min=1] villager 0
复制代码


左键浮空字:召唤实体:
  1. /summon armor_stand ~ ~ ~ {CustomName:"回复血量(左键)",CustomNameVisible:1b,NoBasePlate:1,NoGravity:1,Invisible:1}
  2. /summon Sheep ~ ~0.5 ~ {CustomName:"hit",NoAI:1,Silent:1,ActiveEffects:[{Id:14,Amplifier:0,Duration:500000,ShowParticles:0b},{Id:21,Amplifier:100,Duration:500000,ShowParticles:0b},{Id:10,Amplifier:100,Duration:500000,ShowParticles:0b}]}
复制代码

左键触发:[高频循环]
  1. /scoreboard players add @e[type=Sheep,name=hit] hit 1 {HurtTime:10s}
  2. /execute @e[type=Sheep,name=hit,score_hit_min=1] ~ ~ ~ effect @a[score_ifhit_min=1,r=6] 10 1 10 true
  3. /execute @e[type=Sheep,name=hit,score_hit_min=1] ~ ~ ~ tellraw @a[score_ifhit_min=1,r=6] [{"text":"你的血量已回复","color":"red","bold":"true"}]
  4. /scoreboard players set @e[type=Sheep,name=hit,score_hit_min=1] hit 0
  5. /scoreboard players set @a[score_ifhit_min=1] ifhit 0
复制代码


保证实体正常运行:使村民保持隐形:[高频循环]
  1. /effect @e[type=villager,tag=lqgz] invisibility 100000 0 true
复制代码

使羊保持隐形、抗性并回复血量:[高频循环]
  1. /effect @e[type=Sheep,name=hit] invisibility 100000 0 true
  2. /effect @e[type=Sheep,name=hit] health_boost 100000 100 true
  3. /effect @e[type=Sheep,name=hit] regeneration 100000 100 true
复制代码
By 甘小蔗


评分

参与人数 2 金锭 +2 收起 理由
小进ca + 1 优秀作品
榴莲叔 + 1 支持原创

查看全部评分

喜欢什么,就把它玩下去,玩一辈子,就对了。要有耐心,恒心。只有非常努力,才能看起来毫不费力。

3

主题

140

帖子

389

积分

Lv.5 农牧专家

UID
3302
小麦
347
金锭
1178
下界之星
0
发表于 2017-11-7 13:29:29 | 显示全部楼层
不得不说命令方块这边的论坛玩家数量真的不多呢
会红石,但只会一点点;
会指令,但只会一点点;
会卖萌,但是我大胖子。

0

主题

2

帖子

1

积分

Lv.1 新手木匠

UID
211917
小麦
0
金锭
6
下界之星
0
发表于 2017-11-10 18:46:16 | 显示全部楼层
支持一下~

1

主题

47

帖子

24

积分

Lv.2 石器学徒

UID
10842
小麦
11
金锭
174
下界之星
0
发表于 7 天前 来自手机 | 显示全部楼层
很好

3

主题

16

帖子

8

积分

Lv.1 新手木匠

UID
42953
小麦
1
金锭
54
下界之星
0
发表于 5 天前 来自手机 | 显示全部楼层
DHK 发表于 2017-11-7 13:29
不得不说命令方块这边的论坛玩家数量真的不多呢

毕竟命令方块这块领域的知识较其它领域除了红石外也是比较难懂的,一般一些dalao或者感兴趣的玩家才会来专门研讨,而且大部分的玩Minecraft的玩家都较低龄化,游龄应该也不高,所以对命令方块这种领域的认知和兴趣应该也是并不大的,命令方块论坛这里人少也是蛮正常的。

0

主题

1

帖子

0

积分

Lv.1 新手木匠

UID
3341156
小麦
0
金锭
2
下界之星
0
发表于 3 天前 来自手机 | 显示全部楼层
大佬
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

返回顶部