Minecraft Wiki

除另有声明,转载时均必须注明出处若簡繁轉換出錯,請以遊戲內為準请勇于扩充与修正内容有兴趣逛逛我们的微博沟通交流,欢迎到社区专页需要协助,请在告示板留言

了解更多

Minecraft Wiki
注册
Advertisement
LiquidsComparison

主世界中流动的水和熔岩

液体(Liquid)是可以自由流动,形成河流、瀑布和湖泊的特殊方块

属性[]

概览[]

目前游戏中仅有2种液体:

Water Lava
熔岩

所有液体方块都自然地起源于它的源方块,即被完全填满的液体方块。被其他方块(无论是固体方块或液体方块)局限的源方块无法流动,并且被渲染成静止的。当源方块至少有一部分不被局限后便会开始流动,扩散规则基于最基础的流体力学。视觉上,它们被渲染为流动的,有动态的线条纹理指示流动方向。流动的液体方块离源方块越远,它就会变得越浅。

液体可以与其他液体进行交互,或者与方块(根据其影响的方块属性)互动。液体也会对大多数浮于它的实体掉落物施加压强,使得它们被沿着流向推动或者沉入底下。除了亡灵生物以外,绝大多数的生物,包括玩家,都拥有游泳与浮在液体上的能力。

液体方块是不可能以物品的形式被获得的[仅Java版],但是源方块可以用铁桶装起来。

液体方块会被视为非固体方块,与空气相似;例如,当玩家尝试在液体占用的空间放置一个方块,液体方块会被直接覆盖掉。

Java版中,液体下方不会积,液体下方的水不结

机制[]

WaterSpread

水从悬崖上流下来,说明了流体力学的机制

深度[]

液体的深度值用来描述这个液体方块有多少“空的”部分。 液体源方块的深度始终是0,即源方块是“满的”。 在水平方向上扩散时,流动的液体方块的深度会逐块加1, 取决于其距离源方块的距离。 液体方块最大可能的深度为7。当到达最大深度时,液体方块不再计算水平方向的扩散。 液体方块垂直方向下落形成的液体方块的深度始终是0。

熔岩在主世界所拥有的最大深度为3,但在下界中,熔岩拥有7的最大深度上限。

扩散[]

当液体源方块被放置,液体扩散计算就会开始。放置在空气中的源方块与放置为含水方块的源方块的扩散计算相同。源方块被最先添加到一个“扩散处理清单”中。

液体源方块会首先向每个开放面尝试形成水流。也就是说,平坦平面上的水方块会向四个方向扩散,直到到达深度限制。这同样表示,一个悬空的水源方块即使下方是空气,仍然会向水平四个方向扩散1格。扩散形成的流动方块被加入“扩散处理清单”中以进一步处理扩散。

这之后,直接位于源方块下方的方块和扩散处理清单中的流动方块被进行如下检查:

  1. 如果这个方块是空气,则方块被替换成液体方块。
  2. 如果这个方块是含水的非固体方块,则检查停止。因为每一个含水源方块都有独自的扩散处理清单。
  3. 如果下方的这个方块是受液体影响的非固体方块,则方块会试图掉落为物品,并被替换成液体方块。上方方块从清单中移除。
  4. 如果下方的这个方块是固体方块(例如栅栏)或少数几种不受液体影响的非固体方块,则液体试图向四个开放面扩散。将新形成的流动方块加入处理清单。
  5. 如果这个方块是另一种液体的方块,则进行液体混合的处理。若有新的流动方块形成,则将其加入处理清单。
  6. 如果这个方块是同种液体的源方块,则停止扩散计算。
  7. 如果这个方块周围四个方块都是固体,则停止扩散处理。这也就是水和熔岩能够形成1格宽的液体柱且不在地面扩散的原因。

当液体方块的深度值到达最大值时,液体方块不再进行水平扩散。液体的水平扩散还受到后面的流动方向章节所描述的现象影响。

流动的液体有一个速度值,它决定了扩散影响发生有多快。熔岩在主世界比水慢得多,但在下界,在基岩版中,它和水一样,每5个游戏刻移动一个方块,或者说每秒4个方块;在Java版中,它每10游戏刻流一次。

流动方向[]

FlowingWaterCliffEdge

液体会寻找距离坡的边缘最短的距离并优先流向那个方向

液体在计算扩散时,出于美学因素,会考虑周围的地形,以优先形成水或熔岩的瀑布。 在计算水平扩散时,液体方块周围5格区域[仅基岩版]或水平流动5格范围[仅Java版]内的下方方块会被检查是否为空气、纯液体[仅Java版]或可冲毁的方块[仅Java版],在Java版中,水还会查找顶面露出液相的含水方块。 若存在,则液体方块与距离最近的找到的方块之间会试图形成一条或多条流水。在Java版中,水源或含水方块对水平毗邻的可含水方块,若该方块与该水源或该含水方块的液相接触的表面不完整(不检查与形成水源需要的其他水源或含水方块接触的表面),且忽略该方块后可在该位置形成水源,则使该方块含水。 形成流水中生成的流动方块以及最初的液体方块将从扩散计算清单中移除,不计算其他方向的扩散。

例如,在距平面边缘5格内放置一个水源方块,会形成一条1格宽的流水,如右图所示。

液滴[]

LavaParticles

熔岩液滴渗透了单层的泥土

粒子选项菜单中被完全启用后,在基岩版教育版中下方是空气而上方是液体的固体方块、在Java版中上表面接触液体而下表面高于下方方块上表面的方块会产生液滴,这一视觉效果可以让玩家得以区分方块的上方有液体的存在。下坠的熔岩液滴不会造成任何伤害或者导致生物起火。 新的液体放置后,液滴在开始滴下之前需要数秒的时间来“渗透”。

方块更新[]

Information icon
此特性为Java版独有。

下列的方块更新将会导致一个液体方块的更新:

  • NC更新,包括液体流入毗邻的方块和毗邻的液体干燥。
  • PP更新,包括液体的深度改变。

结构的生成永远不会进行方块更新使其在被载入的时候进行调整。例如,一个洞穴入口可能被部分地生成在一个地下熔岩湖或地下水湖的边缘,并且这些液体将不会流动直至一个动作更新它们。另一方面,作为结构的一部分生成的液体会立即流动,尽管它们没有被完全确认。这包含了海洋底端的洞穴,其水流将会直接灌入峡谷之中。

液体互动[]

液体之间有两种互动行为,分别为触碰和流入。两种液体位于相邻的两个方块内时会发生触碰,两种液体试图挤占同一方块时则会发生流入。流入发生前一定会发生触碰,但触碰发生后不一定会发生流入(例如两种液体在最远流动距离处水平触碰)。以下为所有液体互动的判定方式和结果:

  • 熔岩源水平方向或上方触碰水源或水流,熔岩源变为黑曜石
  • 熔岩源下方触碰水源或水流,无反应;
  • 熔岩流水平方向或上方触碰水源或水流,熔岩流变为圆石
  • 熔岩流下方触碰水源或水流,无反应;
  • 熔岩源或熔岩流向下流入水源或水流,流入的熔岩流(被流入的水源或水流)变为石头
  • 熔岩源或熔岩流下方触碰灵魂土,且水平方向或上方触碰蓝冰,熔岩源或熔岩流变成玄武岩

注意,由于液体有向下流动的趋势,上述两种无反应的情况通常为瞬时现象,只有一种情况下熔岩和水相互触碰但始终不会发生任何反应,即上方为熔岩,下方为含水方块(可阻止熔岩向下流动)。

液体互动还有以下几点需要注意:

  • 水平方向上熔岩和水只会发生触碰,不会发生流入,因为触碰时即会发生反应;
  • 竖直方向上只有熔岩会流入水,水并不会流入熔岩,因为触碰时即会发生反应;
  • 无论方向和生成物,所有反应均在熔岩一侧发生。

历史[]

Java版Classic
0.0.12a加入了水和熔岩。
Java版
1.0.0Beta 1.9-pre1存在于开放空间上,且之间隔着一格厚的夹层的液体,会在夹层下产生渗透效果。往下落在水之上的熔岩流会转化成石头,而不再直接取代水。
Beta 1.9-pre5若符合以下条件,一个熔岩流方块可转化成一个熔岩源方块:
  • 以十字形式被4个熔岩源方块所围绕
  • 4个熔岩源方块处于同一高度
  • 该熔岩流方块之下是一块固体、不透明方块
Beta 1.9-pre6熔岩源不能再被创建。
1.1318w10c更改了水的物理效果。
18w10d水不再在楼梯的后侧流动。
18w19a拆分了一些方块和流体的逻辑。
1.1620w09a熔岩现在会推动实体
20w13a玄武岩现在可以通过让熔岩流到灵魂土上并接触蓝冰生成。
携带版Alpha
0.1.0加入了水和熔岩。
基岩版
1.16.01.16.0.51熔岩现在会推动实体。
1.16.0.57玄武岩现在可以通过让熔岩流到灵魂土上并接触蓝冰生成。
1.16.0.59流动的熔岩不再能推动实体。
1.17.301.17.20.22流动的熔岩现在又能推动实体了。[1]
1.20.401.20.40.22现在使用与Java版相匹配的流动的水和熔岩的混合机制。
原主机版
TU1CU11.0Patch 1 加入了水和熔岩。
New Nintendo 3DS版
0.1.0加入了水和熔岩。

画廊[]

参考[]

  1. MCPE-75124 — 漏洞状态为“已修复”。

语言

Advertisement