怎么用命令方块在最近一个玩家生成一大堆有伤害的箭?我直接/suomm 箭的英文名显示无法生成啊?
suomm肯定是错的咯。。。
有个对于X物线的NBT Motion
和direction类似, 分辨大部分实体的 面向(除了火球、 小火球和凋灵之首 )。必须是以dou ble的格式输入(数 值后方要有d/必须 有小数点),比如{ Motion:[0.0,1.0,0.0 ]} 或{Motion:[0d,1 d,0d]}生成一个向 上移动的实体(速 度为1)
execute @a ~ ~ ~ summon 箭的id ~ ~1 ~ {Motion:[0.0,2.0,0.0]}
有错@ 我
有个对于X物线的NBT Motion
和direction类似, 分辨大部分实体的 面向(除了火球、 小火球和凋灵之首 )。必须是以dou ble的格式输入(数 值后方要有d/必须 有小数点),比如{ Motion:[0.0,1.0,0.0 ]} 或{Motion:[0d,1 d,0d]}生成一个向 上移动的实体(速 度为1)
execute @a ~ ~ ~ summon 箭的id ~ ~1 ~ {Motion:[0.0,2.0,0.0]}
有错@ 我
问这种命令相关的问题请说明版本,
不然我还要分情况讨论……
据我猜测,你直接输入箭的英文而执行错误,
应该是因为1.10.2及以下不支持大写导致的吧,
所以我猜输入/summon Arrow就对了。
但是你是根据命令反馈来提的问,
命令反馈提示信息不一定准,
所以我还是一点一点说吧。
1.7-1.7.10的只能让一个玩家手动执行summon Arrow来召唤箭,
你也可以使用summon Arrow 坐标 {Motion:[0.0,0.5,0.0]}来召唤一个向上的箭以造成伤害,
其中"坐标"可以用相对坐标表示,如~ ~ ~就是表示在当前位置,~ ~-1 ~ 就是在自己下面一格,
1.8-1.10.2不管是玩家还是用命令方块(1.7-1.7.10不能用命令方块),
输入execute @a ~ ~ ~ summon Arrow ~ ~ ~ {Motion:[0.0d,0.5d,0.0d]}
@a代表所有玩家,可以换成玩家名,就是在玩家所在位置召唤一个向上的箭,
但是注意Motion标签后面的数字要加后缀d,
1.11-1.12Arrow可以写成arrow,同1.8-1.10.2写成Arrow也可以成功
不然我还要分情况讨论……
据我猜测,你直接输入箭的英文而执行错误,
应该是因为1.10.2及以下不支持大写导致的吧,
所以我猜输入/summon Arrow就对了。
但是你是根据命令反馈来提的问,
命令反馈提示信息不一定准,
所以我还是一点一点说吧。
1.7-1.7.10的只能让一个玩家手动执行summon Arrow来召唤箭,
你也可以使用summon Arrow 坐标 {Motion:[0.0,0.5,0.0]}来召唤一个向上的箭以造成伤害,
其中"坐标"可以用相对坐标表示,如~ ~ ~就是表示在当前位置,~ ~-1 ~ 就是在自己下面一格,
1.8-1.10.2不管是玩家还是用命令方块(1.7-1.7.10不能用命令方块),
输入execute @a ~ ~ ~ summon Arrow ~ ~ ~ {Motion:[0.0d,0.5d,0.0d]}
@a代表所有玩家,可以换成玩家名,就是在玩家所在位置召唤一个向上的箭,
但是注意Motion标签后面的数字要加后缀d,
1.11-1.12Arrow可以写成arrow,同1.8-1.10.2写成Arrow也可以成功
emmm....
不报版本的不用客气,直接默认最新版
估计你的问题也不只是光问如何生成一个箭
一个没有动向的箭和咸鱼有什么区别...
比如这样
复制代码
~ ~1.5 ~是以最近玩家坐标的y轴+1.5位置执行,因为那个位置正好是玩家第一人称光标位置的中心点
然后就是往z轴前2格的方向summon雪球(这里可以改成箭的id minecraft:arrow 或者 minecraft:spectral_arrow)
之后就是给予动向,一个只往z轴加速0.1的动向,
因为会越来越慢,是受到阻力影响...阻力...
然后NoGravity是确保精确发射,可以不用 (NoGravity可以无视重力...,也就是保证Motion第二项的不被改动)
我的指令实际是放在function里的,用的是execute @s[score=横向视觉角度,score=纵向视觉角度]
要执行就让玩家执行这个function...
视觉角度,也可以说是rxm,rx,ry,rym那几个东西
如果不考虑到生成位置的话,比如火球和骷髅弹,生成瞬间就触碰到玩家了...
但如果仅仅以~ ~1.5 ~这种设置发射点为玩家头上的坐标的话,又会有玩家视觉往下发射时出现射向自己的尴尬局面...
所以最主要的应该是触发点的~ ~1.5 ~ 和生成的~ ~ ~2
所以就是定义各项,
确定发射的实体 你要的应该是 minecraft:arrow
确定发射的坐标中心点 例子是~ ~1.5 ~ 定值
确定发射物生成时不会碰到玩家的坐标调整 例子是计算后的 ~ ~ ~2 根据当前玩家的视觉角度使用三角函数得出的最终坐标
确定发射物的初始速度 例子是计算后的0.1,然后要根据当前玩家的视觉角度使用三角函数得出最终三项的Motion值
其他NBT的使用... NBT 比如NoGravity,或者配上药水
三角函数...要计算两次,一次计算纵向,一次计算横向...
比如这样...最后计算出的东西复制粘贴过来就是了
粘贴个180次...

本来是发茶馆的...没批
结果的话应该就是这样(没锁定角度,所以都出来了...)

穷举使你变强...
其实360x180度为的是精确
一般的话横向取12个角度范围,纵向取6或7个就够了
不报版本的不用客气,直接默认最新版
估计你的问题也不只是光问如何生成一个箭
一个没有动向的箭和咸鱼有什么区别...
比如这样
- execute @p ~ ~1.5 ~ summon minecraft:snowball ~0 ~0 ~2 {Motion:[0d,0d,0.1d],NoGravity:1b}
~ ~1.5 ~是以最近玩家坐标的y轴+1.5位置执行,因为那个位置正好是玩家第一人称光标位置的中心点
然后就是往z轴前2格的方向summon雪球(这里可以改成箭的id minecraft:arrow 或者 minecraft:spectral_arrow)
之后就是给予动向,一个只往z轴加速0.1的动向,
因为会越来越慢,是受到阻力影响...阻力...
然后NoGravity是确保精确发射,可以不用 (NoGravity可以无视重力...,也就是保证Motion第二项的不被改动)
我的指令实际是放在function里的,用的是execute @s[score=横向视觉角度,score=纵向视觉角度]
要执行就让玩家执行这个function...
视觉角度,也可以说是rxm,rx,ry,rym那几个东西
如果不考虑到生成位置的话,比如火球和骷髅弹,生成瞬间就触碰到玩家了...
但如果仅仅以~ ~1.5 ~这种设置发射点为玩家头上的坐标的话,又会有玩家视觉往下发射时出现射向自己的尴尬局面...
所以最主要的应该是触发点的~ ~1.5 ~ 和生成的~ ~ ~2
所以就是定义各项,
确定发射的实体 你要的应该是 minecraft:arrow
确定发射的坐标中心点 例子是~ ~1.5 ~ 定值
确定发射物生成时不会碰到玩家的坐标调整 例子是计算后的 ~ ~ ~2 根据当前玩家的视觉角度使用三角函数得出的最终坐标
确定发射物的初始速度 例子是计算后的0.1,然后要根据当前玩家的视觉角度使用三角函数得出最终三项的Motion值
其他NBT的使用... NBT 比如NoGravity,或者配上药水
三角函数...要计算两次,一次计算纵向,一次计算横向...
比如这样...最后计算出的东西复制粘贴过来就是了
粘贴个180次...

本来是发茶馆的...没批
|
结果的话应该就是这样(没锁定角度,所以都出来了...)

穷举使你变强...
其实360x180度为的是精确
一般的话横向取12个角度范围,纵向取6或7个就够了
![]() ![]() ![]() |
你们的太复杂,我要的是直接就是垂直向下的那种版本1.11.2
⊙v⊙ 发表于 2017-10-19 02:20
emmm....
不报版本的不用客气,直接默认最新版
就直接垂直向下,有伤害的箭就可以了版本1.11.2,打了那么多,辛苦了
就是要打玩家的箭咯...
复制代码
- execute @p ~ ~1.5 ~ summon minecraft:arrow ~0 ~3 ~ {Motion:[0d,-1.0d,0d],NoGravity:0b}