Template:Translation:未知参数。
你可以帮助我们来翻译此条目,但请勿使用机器翻译。
活塞(Pistons)为一种可以推动大多数方块的方块,推动的方向根据它的朝向决定。
粘性活塞(Sticky Pistons)与活塞相似,但在能推动方块的同时也能拉动方块。
在延伸时,粘性活塞和普通的活塞的行为是一样的,最多能推动12个方块。在收缩时,粘性活塞会拉动在其前方的方块。黑曜石,基岩,任何带有方块实体值的方块,以及延伸的活塞都是不能拉动的,就像它们不能被推动一样。
使用活塞来推动被粘性活塞"黏住"的方块是有可能的,粘性活塞也无法使悬空的沙子和沙砾抵抗重力。其粘性仅会在收缩时奏效。
获取
活塞能够用任何东西开采,开采后会掉落自身。使用效率附魔不会减少挖掘时间。 Template:Breaking row
自然生成
三个粘性活塞会作为丛林神庙的一部分自然生成
合成
| 名称 | 材料 | 合成配方 |
|---|---|---|
| 活塞 | 任意Wood Planks + 圆石 + 铁锭 + 红石粉 |
|
| 黏性活塞 | 黏液球 + 活塞 |
用途
活塞在被放置时永远朝向玩家,当其被激活时,活塞会向自己的朝向,把木制的活塞臂伸出一个方块。能够推动在其延伸方向直线上的最多12个方块。[1][2]
- 当回到未激活状态时,活塞不会拉回任何方块(但能够受重力影响的方块会下落)。如果你想拉回方块,请参见活塞#粘性活塞。
- 活塞的木质表面也能够推动玩家,生物与其他实体。然而,如果没有足够的空间推动,活塞臂仅仅会穿过该实体而不会给实体造成任何伤害。如果与压力板配合使用,能够将玩家或生物推出只有一格宽的走道,这是一种相当有效的陷阱。
- 伸出的活塞臂被认为是固体透明方块(类似玻璃)。如果活塞臂伸入玩家或生物,他们不会窒息,他们可以移动出活塞臂但无法再移动回去。
- 类似地,如果被活塞推动的方块被推向玩家或生物,他们会被推动。然而,如果没有足够的空间推动,这个方块会占据玩家或生物所在的空间。如果该方块是非透明方块,那么玩家或生物会窒息。
- 当方块正在被推动的过程中,它(们)会暂时为非固体,从而导致本来位于被推动方块上的玩家、生物或物品会掉下去,穿过正在被推动的方块。但自1.6起在上面的玩家不会掉下去。
- 因为液体无法穿过活塞臂,所以活塞能够用于控制液体流动。
- 活塞也能推动矿车与船。注意如果矿车位于铁轨上,铁轨也会被一起推动。如果被推动的方向没有空间或者下方没有方块,铁轨会掉落为可捡起的物品。
- 通过设计合理的红石电路的控制,活塞可以用于制作非常快的电梯。
推动方块
活塞可以推动大多数的方块,粘性活塞也可以拉回大多数的方块,除了那些在下表中列出的方块。如果粘性活塞不能够拉回一个方块,它会把那个方块留在原地。
活塞不会把方块推入虚空或者地图顶端,活塞也不会推动超过12个方块。
| 效果 | 效果(PC版和主机版) | 效果(携带版) |
|---|---|---|
| 不能被推动和拉动。 | ||
| 可以被推动和拉动。 | ||
| 推动时会被破坏,其中西瓜会变成西瓜片,蜘蛛网会变成线 | ||
| 被推动或拉动时会立即变成水 | ||
活塞也不会移动“连接到一个方块”的方块,因为它们将被以物品形式掉落。不会掉落的情况包括:
- 任意铁轨: 只要它们的新位置是一个固体方块,并且此固体方块不被同时移动。
- 为了实现推动的动画效果,活塞在激活的瞬间,会将要推动的方块替换为36号方块,并将36号方块的贴图设置为将要推动的方块的贴图,再推出
- 依附在另一方块上的方块当其依附的方块被推动时也只要在新的位置上时下方仍然为固体方块时才能被成功推动。如果可能的话,铁轨在新的位置会重新计算自己的走向(就像被玩家手动放置时一样)。会变成掉落的物品,除非推动后位于其原来依附的方块所在位置的新方块也能被依附。例如,位于一个可以“自我修复”的圆石结构上的火把就可以保持依附状态。
激活活塞
注:关于“强充能”与“弱充能”等术语,详见红石电路。
活塞的激活
- 活塞的常规激活位有有能量的方块,那么活塞常规激活。(这里的“具有能量的方块指一切可以提供能量的方块,例如:打开的陷阱箱、红石火把、红石块等)
- 活塞的非常规激活位有具有信号的红石火把,红石中继器,红石比较器,红石线,活塞非常规激活。
- 活塞的非常规激活位具有被强充能的方块(或红石块)或被弱充能的方块,活塞进入BUD态,在受到方块更新后激活。
活塞的性质
- 活塞作为红石物品,但是一般的延迟却大于1tick,小于2tick,大家都认为活塞的延迟为1.5tick。这是在12w27a更新之后的性质
- 粘性活塞如果接受到小于1.5tick,那么粘性活塞仅仅会完成推出或收回的其中一个动作
- 活塞如果接收到0tick的脉冲(这只是一种形象的说法,大家都认为这是由方块更新延迟差导致的),活塞会瞬间将面前的方块推出
- 活塞如果处于BUD态,受到方块更新时,给予能量使活塞处于BUD态的方块也会被推动,那么判断活塞的运动趋势位(在活塞面朝方向的2格前方)是否有方块,如果有方块,成为一个单稳态BUD(方块更新感应器),如果没有,活塞便会不停的伸缩
一般用途
- Mcelevator-aerial.jpg
一个活塞电梯(飞行视角)
- Mcelevator-ground.jpg
一个活塞电梯(地面视角)
- 8x8elevator.png
一个活塞电梯(占地面积8x8的简单设计)
- Bridge-down.png
活塞桥(收回状态)
- Bridge-up.png
活塞桥(伸出状态)
- 活塞/粘性活塞通常通过推拉方块来模拟门的开关[3],当然也可以利用此特性制作陷阱。
- 活塞可用于制作可自我修复的桥梁或墙体。详见圆石生产器。
- 与红石中继器配合使用的话,可以建造任何不包含红石火把的纵向逻辑门,而且可以绕过红石火把“燃尽”的缺点。
- 由于活塞将方块推入玩家可使之窒息,故活塞可以用于制造窒息陷阱,而且结构简单,容易复位。
- 通过将方块循环推动,活塞时钟可参与制作活塞版的延迟线存储器。如果配合绝缘的透明方块,您可以用红石中继器将信号传出去。把这类结构扩展到三维的话可以得到更多功能。[4][5]
- 活塞还可以用于矿车的发车:在朝上的活塞上放一个方块,方块上铺设铁轨线路,再在该铁轨旁的铁轨上放一个矿车。活塞被激活后,矿车下的铁轨会变成倾斜状态,从而启动矿车。
- 活塞可以用于推动玻璃与冰这类不通过附魔无法获取的方块。
- 活塞可以用于半自动的耕种。用附着着固态方块(一般使用泥土)的粘性活塞能够将小麦与甘蔗变成掉落的物品,然后手动重新种植。
- 通过面对头顶上方的方块底部放置活塞可以使活塞朝下,从而能够将方块向下推。
- 活塞可用于制作可开关的窗户。
- 活塞可用于制作任意高度的电梯。您可以像建造旋转楼梯一样先放置环绕着1格粗的立柱的朝上的活塞,然后每个朝上活塞都需要比其高3格的横向活塞用以把被朝上活塞推上一格的玩家挪到下一个朝向活塞上去。这种设计需要巨大的空间(11x11横截面)与不少红石(除了第一个活塞之外,给其他的活塞供电的中继器都需要被设到第三档)。右面的截图中有稍简单的8x8横截面的设计,此外也有更优秀的设计,这里不一一列举。
- 除了“旋转楼梯”型活塞电梯,您也可以建成一条直线的“扶梯”。原理相同。
- 通过拉杆控制,建造自动活塞桥也很容易。活塞由下方的红石火把供电,红石火把依附的方块由侧面的红石线供电(奇数活塞由左侧供电,偶数活塞由右侧供电)。所以活塞桥下需要纵截面5x2的空间容纳电路。如果要做到两边的拉杆都能控制,使用异或门、RS锁存器或將兩控制端接到D锁存器上即可。
技术性信息
活塞臂
Template:Technical Block
The piston head (a.k.a. "block 34") is a technical block used as the second block of an extended piston which can only be placed using the /setblock command.
A block state defines whether it is a normal or a sticky piston head. Though, it disappears after a block is placed next to it (Block Update).
方块状态
The minecraft:piston_head block uses following block states:
活塞臂/BS
移动的活塞臂
Template:Technical Block
The piston extension (a.k.a. "Block Being Moved By Piston" or simply "block 36") is an unobtainable technical block that contains part of a piston head, and/or part of one or two blocks that the piston is carrying into or out of the grid cell (including blocks carried indirectly via slime blocks). Since moving blocks vary in how much of each grid cell they occupy, they can't be stored as normal blocks and are instead stored as block entities. It is overwritten with air, the piston head or the carried block at the end of the piston stroke; but if it is placed by a command and no piston is connected, it will remain indefinitely.
It is invisible, non-solid, and cannot be broken without the use of commands. It decreases the light level of light passing through by 1. Although it is non-solid, fluids cannot pass through it. It also prevents from building at its location. The game treats the block as a stone block when it comes to their breaking animation and the player's footstep sounds.
方块实体
The minecraft:piston_extension technical block has a block entity associated with it that holds additional data about the block. The block's block entity ID is Piston.
- 方块实体数据
- 方块实体共通标签
- blockState:所代表的被推动的方块。
- 方块状态
- extending:表示方块是否已被推动。
- facing:将要推动方块的方向,从0到5分别对应下上北南西东。
- progress:方块已经移动的距离。
- source:表示方块是否为活塞头本身。
基岩版:
- 方块实体数据
- 方块实体共通标签
- Progress:方块被移动的距离,值为0.0、0.5或1.0。
- LastProgress:未知。
- State:未知。
- NewState:未知。
- Sticky:是黏性活塞时为true。
- AttachedBlocks:需要移动的方块的坐标。
- :第一个方块的X轴坐标。
- :第一个方块的Y轴坐标。
- :第一个方块的Z轴坐标。
- :第二个方块的X轴坐标。
- :第二个方块的Y轴坐标。
- :第二个方块的Z轴坐标。
- :以此类推。
- BreakBlocks:需要被破坏(而不能被正常移动)的方块的坐标。
- :第一个方块的X轴坐标。
- :第一个方块的Y轴坐标。
- :第一个方块的Z轴坐标。
- :第二个方块的X轴坐标。
- :第二个方块的Y轴坐标。
- :第二个方块的Z轴坐标。
- :以此类推。
- movingBlock:被移动的方块。
- 方块共通标签
- movingBlockExtra:被移动的方块(额外值)。
- 方块共通标签
- pistonPosX:活塞基底的X轴坐标。
- pistonPosY:活塞基底的Y轴坐标。
- pistonPosZ:活塞基底的Z轴坐标。
- movingEntity:该移动的方块储存的方块实体数据。
- 方块实体共通标签
方块状态
The minecraft:piston_extension technical block uses following block states:
移动的活塞臂/BS
数据值
ID
活塞/ID
方块数据
| 位元 | 值 |
|---|---|
| 0x0 | 面向下方 |
| 0x1 | 面向上方 |
| 0x2 | 面向北方 |
| 0x3 | 面向南方 |
| 0x4 | 面向西方 |
| 0x5 | 面向东方 |
方块状态
The minecraft:piston and minecraft:sticky_piston blocks use following block states:
| 名称 | 默认值 | 接受值 | 描述 |
|---|---|---|---|
| extended | false | truefalse | 在活塞伸出的情况下为true。 |
| facing | north | northsoutheastwestupdown | 活塞臂指向的方向。 这个方向在玩家放置的时候对着玩家。 |
基岩版:
| 名称 | 对应的附加值位 | 默认值 | 接受值 | 附加值位的值 | 描述 |
|---|---|---|---|---|---|
| facing_direction | 0x10x20x4 | 0 | 012345 | 012345 | 活塞面朝的方向。 这个方向在玩家放置的时候对着玩家。
|
历史
| Java版Beta | |||||
|---|---|---|---|---|---|
| 1.7 | 活塞被加入,与其一同加入的还有粘性活塞。 | ||||
最早活塞是在Minecraft官方论坛上发布的一个MOD,由Hippoplatimus创作。[6]之后活塞的源代码被作者交到了Jeb手中,Jeb随后将其加入到了原版Minecraft。
| |||||
| 然而,由于Jeb那时忙于携带版的开发,活塞直到Beta 1.7才加入。 | |||||
| 1.7_01 | 有一个漏洞会使活塞与粘性活塞复制方块,這也发生在Beta 1.7.2。 | ||||
| 1.7.2 | 活塞不再导致多人遊戏服务器停止工作。 | ||||
| 1.7.3 | 活塞复制漏洞就被修正。 | ||||
| 画被活塞推动后将掉落。 | |||||
| release | |||||
| 1.2.5pre | 创造模式中使用选取方块功能选取移动的活塞前端,它会给你一个故障的物品。 | ||||
| 12w22a | 活塞与粘性活塞可以在丛林神庙结构中自然生成,用于弓箭陷阱和隐藏宝藏。 | ||||
| 12w23a | 活塞无法再推动绊线。 | ||||
| 12w27a | 改进了活塞来使它们不那么容易出错,这也代表它们会更新得更慢一些。同时这也改变了活塞的工作原理,所以你可能需要调整你的中继器以及其他类似的红石装置。 | ||||
| 活塞現在需要2个红石刻(4個游戏刻)來延伸,但它们仍然会瞬间缩回。 | |||||
| 12w39a | 加入了光照系统更新中移动活塞所现示的光照效果,但在下个版本中被移除。 | ||||
| 14w18a | 当活塞推动粘液块时,粘液块会带动与其相邻的、可以被推动的方块。 | ||||
| 携带版Alpha | |||||
| 0.15.0 | build 1 | 活塞被加入,与其一同加入的还有粘性活塞。 | |||
漏洞
Template:Issue list
你知道吗
- When blocks are pushed by a piston, they are momentarily non-solid and cause other kinds of entities on the moving block to fall through it. This effect lasts longer for the slime block than other blocks; entities can fall through one in the time it takes a piston to extend.
- 当活塞托举着一个受重力影响的方块(例如沙子)并不断迅速地伸缩,该方块很有可能最终掉落为物品。因为沙子实体要变回沙子方块时,活塞臂刚好伸出了。不过,沙砾不会掉落为燧石。
- Mobs can spawn inside the piston head block.
- Carpet can be placed on the piston extension block, and will remain even if is replaced with a solid block using
/setblock.
画廊
参考
- ↑ http://twitter.com/jeb_/status/81386768913534976
- ↑ http://www.youtube.com/watch?v=CpgcBfPyCr8
- ↑ http://www.youtube.com/watch?v=QtK8GZWu6rM&context=C3893bdbADOEgsToPDskLW5b-kjZSHFFWWBe-q9mpr
- ↑ http://www.youtube.com/watch?v=Oc6spHvGPtQ
- ↑ http://www.youtube.com/watch?v=hO-RILe4cgs&
- ↑ http://www.minecraftforum.net/viewtopic.php?t=247686&f=1032
- ↑ http://twitter.com/notch/status/83513677654929408
另见
- 粘液球
- 教程/利用活塞




![Notch对于活塞柄部如何缩回活塞基座的解释[7]](https://static.wikia.nocookie.net/minecraft_zh_gamepedia/images/0/09/PistonParadox.png/revision/latest/scale-to-width-down/90?cb=20110826172100)




