您的位置:3701安卓网 > 攻略资讯 >

我的世界箭怎么合成 各种神奇的箭合成教程

2023-09-11 11:52:55 来源:网友整理

一、雷电箭

我的世界箭怎么合成 各种神奇的箭合成教程

首先我们先看第一把神奇的箭。

这把应该很熟悉,就是雷电箭啦。

只要一射出去就会,duang的一声,9道闪电落下。究竟怎么做到呢?让我详细的说一说。

我们先看一下以下这段指令。

execute是检测执行指令,它的作用是检测到某一样东西之后执行跟在它后面的指令,而@e【type=Arrow】则是选择的目标,@e是所有实体。

然后【type=Arrow】则是它后面的目标,意思是箭种类,连在一起就是检测所有的箭。然后后面的summon LightningBolt就是召唤雷电啦。

有的同学可能会说:“我设置了之后放出的箭一直在鬼畜地放雷。”

那怎么才能让停止鬼畜呢?那就要涉及到另外一条命令。

testfor指令是检测,后面跟着的@e【type=Arrow】前面讲过是所有箭。然后后面的{inGround:1b}它的意思是箭是否射在地上。

它的单位是b。而1b就是检测箭落在地上。还有很重要的是testfor指令必须要连着比较器(1.8+),否则什么用都没有。

然而你会发现,射出去没用。这是为什么?因为你还漏了一样。那就是高频。

高频要连着testfor的指令,这样才能让它一直检测周围的事物,否则就是一次性啦。我用的是比较器高频,大家也可以用其他类型的高频。

这样还没完,如果就这么完,大家可能会发现,放出一箭之后再放一箭没有效果。

于是我们只能想方法让那支箭消失。

没错,就是kill。在1.8以前kill只能杀自己,现在可以上其他的实体了。于是我们只有在execute命令方块后面连着中继器(如图)让它在0.1秒后kill箭就可以让testfor继续检测下一支箭。

这样完美的雷电箭就诞生了(这里多了8个是因为我想让他生成9道闪电)。

二、岩浆箭

效果图

下面为大家讲解。

和之前一样,设置这样的指令(无视a2)。

这是一条至关重要的命令,execute

@e【type=Arrow】之前讲过,是检测所有的箭。而后面的summon FallingSand ~ ~ ~ {TileID:10,Time:1}是这次出现的新的命令。

FallingSand翻译过来就是落沙,在Minecraft里面是掉落中的方块。

TileID:10是方块ID,10是流动岩浆块,Time:1(刻)是存在的时间,如果设置的是1然而时间超过了1,它就会变成掉落物。

还记得岩浆箭第一幅图吗

没错就是传说中的五毛钱特效,在这里加了很多粒子。是不是非常的炫酷呢。

让我们看看这俩指令。

这里又新加了particle指令,particle flame ~ ~ ~ 0 0 0 0.1 1000 force

flame是粒子名,然后~ ~ ~ 是粒子产生的位置,后面的0 0 0 是粒子在扩散的范围,如果都设为0就会按照粒子正常产生一样。

后面的0.1是粒子的运行速度,大部分粒子这个数值越大扩散范围越大,改为0则会掉下来。

后面的1000是粒子的数量,越大越密集,越小越疏散。

force就是是否远处能看见,不加force远处就看不到。(图中是我添加的粒子效果)

最好加上kill指令就做出完美的岩浆箭啦。

三、爆炸箭

首先我们先拉弓。

然后箭所到之处就会boom的一声。

炸出一个洞。没错这一次就是爆炸箭,箭所射到的地方会爆炸。

其原理皆有可观者,我们看看一下这条指令。

前半部分是检测所有实体箭,那么后半部分是什么呢?

summon PrimedTnt ~ ~ ~ {Fuse:0}和之前的岩浆箭类似,也是在箭的位置召唤一个实体,不过这次召唤的是tnt,它的名字就是PrimedTnt

然后就是它特有的nbt(其实Creeper也有)

{Fuse:0}Fuse是剩余爆炸时间,如果设置为零,召唤出来的tnt就会瞬间爆炸,完成三杀。

四、火球箭

首先仍然是拉弓。

然后出现了一个火球直直地往前飞去。

爆炸了(我设了防爆)。

这一个神奇的火球箭不要10800不要998只要一条指令。

前面是检测所有实体箭(不用加c=-1) 后面是新讲的实体Fireball。我们分开来解析。

summon Fireball ~ ~ ~ 这个很简单,就是在生成一个火球。

ExplosionPower:3 这个是火球的威力,默认是1(即恶魂吐出火球的威力)。

direction:[] 这是火球特有的nbt,是用来控制火球的运动方向与速度。如果不加这个命令,火球会瞬间消失。中括号里面空着,火球就会不动。

至于为什么火球会朝目标的方向飞,是因为在箭的位置召唤了火球,然而箭打中了火球,箭便消失而火球就会向箭原本的移动方向飞(这也是为什么不需要killtestfor)。

五、多重火球箭

让我们拉一拉弓。

突然天上出现了许多火球。

都往下砸。

位置摆放

要做这个箭,要改变一下布局,如图所示,这一次要直接用高频连着B,即直接检测箭。

前面是检测箭,后面前面也讲过是召唤火球,和前面不同的是它是召唤在箭上面10格,是因为防止箭和火球撞在一起。

如果直接像上图这样设置会发现一个问题,就是召唤出来的火球不会动,不能达到往下落的效果,那怎么办呢?

在之前火球有个特有nbt是direction,前面的火球箭是这样设置的direction:[]

实际上如果这样的话它默认的是这样的:direction:[0.0,0.0,0.0]那么这3个0.0是什么呢?

分别是火球向xyz轴移动的速度。

图中是direction:[0.0,-3.0,0.0]是让火球向y轴负方向以3的速度移动,即往下落。

最后再上图是A的命令方块设置检测箭落地然后连上kill箭即可。

六、传送箭

仍然先拉弓。

然后射出去。

突然,就被传送到这了。

其原理很简单,大家都应该很熟悉tp指令吧。

tp可以把自己传送到其他玩家上,比如tp doubi doubi2 就是把doubi传送到doubi2

我们可以利用这个原理,把玩家tp到箭上(服务器的话效果虽一样但意义不一样了)即可。

前面和后面别忘连上testforkill

七、AOE冰箭

首先为了保证箭的功能,我放了一些可怜的Creeper。

箭射了出去地上突然出现一大片冰,Creeper们身上出现了许多冰粒。

因为太冷,它们一直受到伤害。

冰片消失,但似乎它们动不了。

首先当然不用说就是高频+testfor。然后连着第一个命令方块。

这个命令的用处是在箭下面放置一大片冰,这就是新出现的指令fill

它的基本格式为fill x1 y1 z1 x2 y2 z2 方块名。

图中的命令是fill ~2 ~-1 ~2 ~-2 ~-1 ~-2 ice 就是以箭为中心,在x正方向2格,y负方向1格,z正方向2格这一点,与x负方向2格,y负方向1格,z负方向2格的一点中的地方填充一片冰。

Creeper不能动就是这2个命令方块。

后面effect也是新出现的指令,它的意义在于给实体增加状态。

effect @e[r=3] 15 15 2,@e[r=3]是箭为中心半径三格内的实体,第一个15是状态ID,是失明,下图是2即缓慢。

第2个15是秒数,后面的2是等级(命令弄出的效果比药水多1级,比如等级填的是1就是2级,0就是1级)。

大家应该都清楚Creeper身上的冰粒是粒子效果。然而按照之前的话只能做到箭上面有粒子效果,那么怎么弄呢?很简单。

如图,大家会发现在execute指令后面还加了execute指令,这是为什么呢?

前面的execute @e[type=Arrow]不用说是检测箭。

然后后面的execute @e[type=!Arrow,r=3]的意思就是检测以箭为中心半径3格内不是箭的实体。

没错当type=实体这个实体前面加一个!就等于除了这个实体以外的实体,因为前面有一个execute所以这个execute是以前面为前提,并且以前面为中心发出的。

而经过这个指令后,后面的粒子效果,不是以箭为中心,而是以不是箭的实体为中心。

最后连上kill和与之前一样的fill但把ice改成air即可。

八、AOE火箭

首先先对着一堆Creeper射箭。

箭一射出,周围Creeper都被火花包围并且燃烧起来。

一直燃烧。

又是一波指令到来。

和之前差不多,只不过把粒子效果改成了火焰。

那怎么做到燃烧呢?就是这一条颇为神奇的命令了:entitydata指令。

它可以改变现有实体的nbt,比如这个entitydata @e[type=!Arrow,r=3] {Fire:200}

它是改变以箭为中心半径3格内不是箭的实体。

Fire是生物着火的时间,它是以刻为单位,20刻为1秒,所以是燃烧10秒(这比直接放置火好一点,掉落物不会被火烧)。

九、火柱箭

首先仍然是拿几只Creeper来试试验。

突然几条火柱(试验特效,不一定拿这个粒子)升天,Creeper们突然觉得脚下有一股劲,是挣脱了,冲破了,撞开了的那么一股劲。于是愉悦地跳了起来。

再射几只,Creeper表示如同吃了炫迈,根本停不下来。

继续蹦继续跳,有几只Creeper作死地跳得很高。

然后都摔死了。

原理图

原理很简单,如图最右边是连着高频的testfor,最左边是kill,突出了那一块是特效粒子。

这是从右数第2个命令方块。

第3个。

第4个。大家应该都比较明白吧,就是用tp指令把Creeper tp 到空中。至于为什么要分开3个是因为如果直接一个的话可能效果不太好,分开看起来有种往上跳得效果而不是传送。

十、物质箭

解释:站在什么样的物质方块上,就可以射出一大坨该种物质。

这种箭主要是用来讲一个命令的,大家可以向外扩展。

这次我放了3种方块,首先我们先站在草方块上。

发射。

然而并没有什么卵用。

这一次我们站在泥土上。

发射。

出现了一堵泥墙!

我们再站在石头上。

发射。

出现了一堵侧着石墙。

真大。

这几条命令有点长,但应该很容易理解。

第一个execute是检测箭大家都知道,那么第2个是什么呢?

这是execute的另一个用处,检测实体周围的方块。

execute @p ~ ~ ~ detect ~ ~-1 ~ minecraft:dirt 0就是这个命令。

前面的execute就是检测玩家,然后后面跟着~ ~ ~是确定位置,那么这个~ ~ ~就是玩家的位置。

detect就是检测周围方块,后面跟着的~ ~-1 ~就是刚刚那个位置往下一格的位置,就是玩家下面一格的位置。

后面跟着minecraft:dirt 0 minecraft:dirt就是泥土,而后面的0是方块附加值。

整个的意思是检测玩家脚下那一块是否是泥土,是则执行后面的命令,注意的是后面直接跟命令不需要跟~ ~ ~。

比如:execute @p ~ ~ ~ detect ~ ~-1 ~ minecraft:dirt 0 say 1就是检测到玩家脚下是泥土就说1。

后面是fill指令。

同理。

fill石头。

有了这个指令大家可以做个系列,比如当玩家站在不同的方块就有不同效果。

十一、建筑箭

在说这把箭之前,我们先来看看这幅图,是不是第一感觉是:哇看起来好厉害,这么多命令方块。

可是,当射出去的时候。

然而这并没有什么卵用。没错,做这么一个小建筑都要这么多命令方块,那怎么才能少块高能而不是多块低能呢?接下来就要为大家介绍介绍。

没错就是这么少命令方块上面和左边不用说是killtestfor,那么中间的有什么用呢?

我们就来试试看。

射出去后大家会发现,duang的一下,就会出现一个房子。

哇,竟然有门。

哇,里面设备齐全。

箱子里还有东西呢(这些只需要一个命令)。

这就是传说中的clone指令(即复制粘贴指令)它是复制一定区域粘贴到要复制的位置。

(别照抄,否则出来的可能是空气,说不定会出来一些奇怪的东西)

我复制的区域就是这里。

这两个命令方块的点为复制点粘贴整个建筑(当然这个命令有弊端,那就是你必须要在那个地方建好东西,而且不能破坏,否则出来的就是破坏了的建筑或空气,但它可以帮你快速建筑)。

十二、隐身爆炸箭

先拉弓。

再射箭。

从草群中钻出个tnt。

卧槽,它开始飞了。

爆炸了。

原理很简单首先我们抛弃了比较器,用cb高频。然后呢减少了一个中继器只占用5格的地方。

就是它,我们看后面一部分,我把Fuse调成80是不让它瞬间爆炸,完成双杀。

机智的朋友会发现,后面多了个nbt,riding。

那么这多出的一条有什么用,我们来分析这多出的部分。

Riding:{id:Bat,ActiveEffects:[{Id:14,Amplifier:1,Duration:99999,Ambient:1}]}

Riding:{id:Bat}意义是让前面的实体骑着这个实体,即PrimedTnt骑着蝙蝠。

格式是Riding:{id:xxx}注意的是id都是小写。

ActiveEffects就是给实体增加状态。

Id:14状态的种类,14是隐身。

Amplifier:1等级,这里设置是1级。

Duration:99999时间,这里设置是99999秒。

Ambient:1只能设置1或0,1是看不见粒子,0看得见。

总得来说,就是让PrimedTnt骑着隐身得蝙蝠。

十三、挖基岩的箭

经过我的一番改造,变成了这样。首先左边是当检测到地上的箭给予高频。

我发现了一个bug特性,当execute检测到东西时会发出能量。于是当检测到基岩才会触发掉落基岩的命令。

就是这个。

Item就是物品,后面的Item;{}是nbt,id是物品id,这里是基岩。

Count:1就是堆叠数量,不加就会捡不起来。

十四、莫名其妙箭

先射箭。

箭射了出去,Creeper表示有点不舒服。

(Creeper:谁拉我?放我出去)

然后就死掉了。

其实也没什么好说的,只不过execute指令跟着是tp @e[r=4] ~ ~-2 ~

十五、艾特箭

首先先拉弓。

射出去。

瞬间从天而降僵尸大军,看这阵型多整齐。

你看都是僵尸。

大家可能很疑惑,要做出这么多Zombie肯定要很多命令方块吧?

我的回答是:no。记得我和大家讲过的fill指令吧,现在我就用这个fill指令填充实体

看,只用这么少命令方块,当然首先是testfor啦。

然后就是这样,检测到箭fill沙子。

大家都知道,沙子在空中就会掉落,一掉落就会变成掉落沙(你也可以用沙砾,红沙等,当然你可以土豪的用龙蛋),于是我们就可以像这样,在掉落沙上summon Zombie。

最后kill掉落沙和箭即可。

(还有第二种就是fill红石,因为红石下面没有东西就会掉落,然后再掉落的红石召唤实体最后清楚掉落物)

(这两种都有bug,比如沙子可能会不掉落,或者可能刚好它们所在空间下面有方块都召唤不了)

相关文章