稀有度 | |
---|---|
创造标签页(JE) |
红石方块 |
创造分类(BE) |
物品 |
合适挖掘工具 | |
硬度 | |
爆炸抗性 | |
引燃几率 | |
烧毁几率 | |
熔岩可燃性 | |
窒息生物 |
未伸出时:是 |
红石导体 | |
最大堆叠 | |
光照透明 | |
可再生 |
是 |
命名空间ID |
见§数据值 |
当收到红石信号时,活塞可以推动多至12个方块。信号输入时,活塞会在不到一秒的时间内伸出活塞臂。任何挡道的实体都会被它推动,包括玩家,而且,如果你在活塞前端放一块黏液块,它们就会被弹走。弹弹弹!
活塞(Piston)是一种被红石信号激活时可以推动大多数方块和实体的方块。
黏性活塞(Sticky Piston)和普通活塞的功能相同,但当红石信号结束时也能拉回被移动的方块,而普通活塞只会将方块留在原处。
生成[]
普通的活塞不会生成在世界中。
自然生成[]
丛林神庙中会自然生成3个黏性活塞。
远古城市中心的红石地下室里会自然生成五个黏性活塞。
获取[]
合成[]
脚本错误:您必须指定要调用的函数。 脚本错误:您必须指定要调用的函数。
破坏[]
挖掘活塞、黏性活塞和活塞头[2]的合适工具是镐。移动的活塞不能被挖掘破坏。
Lua错误 在Module:Breaking_table的第443行:bad argument #1 to 'ipairs' (table expected, got string)
活塞和黏性活塞被破坏后会掉落自身,并破坏其伸出的活塞头(若有)。活塞头被破坏后会破坏生成自身的活塞。移动的活塞被破坏后会掉落对应的方块。
用途[]
活塞在被放置时永远朝向玩家。附着性方块(比如拉杆)可以放在活塞或黏性活塞上,但不可以放在激活的活塞侧面。
当活塞被激活时,活塞的木质表面(活塞头)会在启动延迟后尝试伸出,并移动在其前方的方块;当活塞被取消激活时,活塞头会被收回。如果是黏性活塞,活塞头被收回时也会尝试将前方的方块拉回。
黏性活塞只有在缩回时才有黏性,因此静止时黏性活塞头上的方块不会被黏住。
激活[]
活塞可以使用多种方法激活:
- 激活的红石线指向活塞。除非活塞面向红石线。
- 活塞能被毗邻的充能方块激活,无论是强充能还是弱充能。除非活塞面向充能方块。
- 活塞能被毗邻的红石火把激活。除非活塞面向红石火把或红石火把插在活塞上。
- 指向活塞且输出信号的中继器、比较器、侦测器。除非活塞面向此元件。
- 其他毗邻且开启的电源。除非活塞面向此元件。
- 在Java版中,活塞能够被任何可以激活其上方一格空间的东西激活,无论那一格是什么方块,无论活塞是否面向这个东西。这个属性被称作半连接性。
因为活塞不是红石导体,不能将其充能。
启动延迟[]
活塞被激活后不会立刻伸出或收回,从激活到活塞真正开始伸出的时延就是启动延迟。
在基岩版中,启动延迟固定为2游戏刻(0.1秒),即活塞被激活后2游戏刻(0.1秒)后开始伸出或收回。
在Java版中,根据活塞被激活发生在游戏计算的什么阶段,启动延迟可以为0游戏刻(0秒)(同刻启动)或1游戏刻(0.05秒)(下一刻启动):
- 如果活塞是在执行计划刻或执行方块事件中被更新激活,那么活塞事件会在这一游戏刻的方块事件阶段被执行。此时启动延迟就是0游戏刻(0秒),也就是同刻启动。
- 如果活塞是在执行实体、方块实体时更新激活,或是因为玩家的操作而被激活时,活塞事件会在下一刻的方块事件阶段被执行。此时启动延迟就是1游戏刻(0.05秒),也就是下一刻启动。
移动方块结构[]
活塞的移动会让方块被推动或拉动,从而使这些方块及其关联的方块跟随活塞的移动而移动。
当下列情况发生时,方块会尝试被推动:
- 方块正位于将要伸出的活塞前方;
- 方块位于另一个方块的移动方向前方时会尝试被推动。
当下列情况发生时,方块会尝试被拉动:
如果一个方块既符合推动条件又符合拉动条件,我们将它视为推动。
下方的原理图展示了不同情况下各个方块的推拉状况:
L
|
||||
L
|
L
|
L
|
||
L
|
L
|
T
|
||
T
|
T
|
T
| ||
L
|
L
|
L
|
||||
T
|
T
|
T
|
T
|
T
| |
L
|
T
|
T
|
L
|
L
|
||||
T
|
T
|
T
|
T
|
T
| |
X
|
X
|
L
|
L
|
||||
T
|
T
|
L
|
||
T
|
L
|
L
|
||
L
|
L
|
L
| ||
L
|
L
|
L
|
L
|
|||
L
|
T
|
T
|
T
|
T
|
T
|
L
|
T
|
T
|
L
|
L
|
L
|
|||
L
|
T
|
T
|
T
|
T
|
T
|
X
|
X
|
L
|
一个方块将要被推动或拉动时,会产生不同的行为。方块的推拉行为有下列几类:
- 方块可以被推动,也可以被拉动。
- 方块可以被推动,但不可以被拉动。
- 方块被推动时会被破坏,且不可以被拉动。
- 方块不可以被推动,且不可以被拉动。
方块 | Java版行为 | 基岩版行为 |
---|---|---|
不能被推动或拉动 | ||
N/A | 不能被推动或拉动 | |
可以被推动或拉动 | ||
推动时会被破坏,当可以掉落为物品时会掉落为物品;不能被拉动 | ||
不能被推动或拉动 | 可以被推动或拉动 | |
可以推或拉,但会被拆分成两个箱子 | ||
推动时若没有被别的方块支撑则会被破坏,掉落为物品;不能被拉动 | ||
推动时会被破坏,当可以掉落为物品时会掉落为物品;不能被拉动 | ||
能被推动,但不能被拉动 | ||
可以被推动或拉动;在向下拉动时会被破坏,并掉落为物品 | ||
推动时会被破坏,当可以掉落为物品时会掉落为物品;不能被拉动 | 可以被推动或拉动 | |
推动时会被破坏,当可以掉落为物品时会掉落为物品;不能被拉动 | ||
不能被拉动;仅在下落状态时可被推动。 | 可以正常推动或拉动,但在下方没有方块支撑时会掉下去而不是黏在黏性活塞上 | |
可以正常推动或拉动,但在下方没有方块支撑时会掉下去而不是黏在黏性活塞上 | ||
可以正常推动或拉动,但在下方没有方块支撑时会被破坏,掉落为物品 |
当活塞本身正在伸出、正在收回或已经伸出时,它不可以被推动也不可以被拉动;但当活塞处于收回状态时,它可以被推动也可以被拉动。黏液块和蜂蜜块之间不能相互拉动。
活塞伸出或收回所带动的方块结构就是移动方块结构,下列原理图用*
标记了活塞推出时的移动方块结构。
*
|
*
|
*
|
*
| |
*
|
*
|
*
|
*
| ||
*
|
*
|
*
|
*
|
|
*
|
*
|
*
|
*
|
*
| |
*
|
*
| ||
*
|
活塞的移动方块受到多种条件限制。在下列情况下,活塞无法推动方块,黏性活塞无法拉回方块但可以收回活塞头:
- 移动方块结构的方块总数超过12个。
- 黏性活塞尝试拉回不可拉动的方块。
- 移动方块结构会被移动超过建筑高度上限或建筑高度下限。
- 移动方块结构移动方向前方有不可推动的方块。
当移动方块结构移动时,附着于这个方块结构上的附着性方块会被破坏,移动方向前方的推动破坏方块也会被破坏,整个结构变为移动状态。通常情况下,2游戏刻(0.1秒)后移动方块结构到位,整个结构回到普通的方块状态。在一些情况下,移动结构可以在短于2游戏刻(0.1秒)的时间内到位,这种到位就是瞬间到位。如果黏性活塞接收到一个小于3游戏刻(0.15秒)的短正脉冲信号,它就可能无法在信号消失时拉回推出的方块结构。
在活塞伸出和收回时,也会发出以活塞为中心31×31×31的区域内都能听到的声音。
推动实体[]
在移动方块结构正在移动时,它会对在移动范围内的实体施加推力,从而使这些实体跟随着方块结构的移动而移动。如果实体被推动后无法向着对应方向移动,移动的方块可能会推入实体中。如果方块是一个窒息方块,方块被推入生物后可能造成生物窒息而亡。
绝大多数实体都可以被推动,但区域效果云、 Marker为true的盔甲架、展示实体
如果实体被正在移动的黏液块推动,则会以较高的速度被弹开。
技术性组件[]
活塞头[]
活塞头(Piston Head)(又称活塞臂)是一个技术方块,用于已经伸出的活塞。
活塞头不能使用常规方式放置,只能使用/setblock
命令或调试棒放置。
当活塞头的后方接收到PP更新
当活塞头被破坏时,活塞头对应的活塞也会被破坏,并掉落物品。
在Java版中,活塞头使用一个方块状态来定义它是一个普通活塞头还是一个黏性活塞头。在基岩版中,两种活塞头使用不同的ID定义。
方块状态[]
minecraft:piston_head
方块有下面的方块状态值:
名称 | 默认值 | 接受值 | 描述 |
---|---|---|---|
facing | north | north south east west up down | 活塞指向的方向 |
short | false | true false | 如果为true,活塞臂会比平常短一些,为4像素。 |
type | normal | normal sticky | 活塞头的种类。 |
移动的活塞[]
移动的活塞(Moving Piston)
活塞推拉方块时,方块需要进入或离开网格单元而占据了每个不同方块网格,因此不能被存储为正常方块。活塞推拉方块的过程中,活塞本身和移动方块结构内的所有方块都被替换为“移动的活塞”方块,原先的方块数据全部存储入方块实体数据中。在活塞推拉到位后,移动的活塞方块会被重新复原为原先的方块。
在Java版中,使用命令放置的移动的活塞不会创建方块实体,使得此移动的活塞永远保持当前状态不会自动转变为正常方块。
移动的活塞具有下面的性质:
- 它本身不可见,但其方块实体可见且渲染为储存的方块的移动动画。
- 它本身没有碰撞箱,但它会使用其方块实体中保存的方块碰撞箱,随方块移动程度改变碰撞箱的位置。
- 它没有轮廓箱,玩家无法选中它。
- 在不使用命令的情况下,它只能被爆炸破坏。它的爆炸抗性为0,与储存的方块无关。
- 它是不可替换的方块,玩家不能在它所在的位置直接放置方块。
- 当玩家踩上移动的活塞时,移动的活塞发出石头的声音,与储存的方块无关。
移动的活塞无法继承多数其代表的方块的特征。[4]
方块状态[]
该技术性方块使用下面的方块状态:
名称 | 对应的附加值位 | 默认值 | 接受值 | 附加值位的值 | 描述 |
---|---|---|---|---|---|
facing_direction | 0x1 0x2 0x4 | 0 | 0 1 2 3 4 5 | 0 1 2 3 4 5 | 活塞头面朝的方向。
|
方块实体[]
该技术性方块具有与其相关联的保存了其附加数据的方块实体。
- 方块实体数据
- 方块实体共通标签
- 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:该移动的方块储存的方块实体数据。
- 方块实体共通标签
活塞移动细节[]
Java版[]
- 创建移动方块结构
当活塞推出,黏性活塞推出或收回时,系统会以活塞前方的方块作为“起始点”递归创建一个移动方块结构,并计算这个结构是否能被移动和移动这个方块结构需要破坏周围什么方块。创建移动方块结构的流程如下:
- 确定移动方向。如果活塞正在推出,那么方向与活塞一致;如果活塞正在收回,则方向与活塞相反。
- 创建移动列表和破坏列表。移动列表负责储存将要移动的方块,破坏列表负责储存方块结构移动开始时将要破坏的方块。
- 如果起始点是一个推动破坏的方块,且活塞正在推出,则在破坏列表中加入此方块,中止创建移动方块结构。
- 从起始点向后方查找可以被拉动的方块,从远到近依次编号,添加入移动列表中,直到找到空气或即将移动的活塞本身。
- 如果查找过程中移动列表大小超过12,则中止创建移动方块结构,整个方块结构无法被移动。
- 从起始点向前查找方块,从近到远依次编号添加入移动列表中,直到找到空气、即将移动的活塞本身、推动破坏的方块、不可推动的方块或已经存在于移动列表中的方块。
- 如果查找过程中移动列表大小超过12,则中止创建移动方块结构,整个方块结构无法被移动。
- 如果查找到推动破坏的方块而中止查找,则将这个方块添加入破坏列表中。
- 如果查找到不可推动的方块或即将移动的活塞本身而中止查找,则说明整个移动方块结构被阻挡,无法移动。此时创建移动方块结构中止,整个方块结构都不会移动。
- 如果查找到已经存在于移动列表中的方块而中止查找,说明当前移动列表的元素顺序出现了问题,需要将目前计算的这列方块插入到已经存在于移动列表的方块前方。
- 按照移动列表内元素的顺序,依次遍历各个元素(包括将在这个循环中添加的方块):
- 检查方块是否为黏液块或蜂蜜块。如果不是,不执行接下来的分支创建;如果是,执行下面的流程:
- 按照下、上、北、南、西、东的顺序,尝试添加分支:
- 如果当前方向正好为推动方向或推动方向的反向,则不创建在这个方向上的分支。
- 如果对应方向上的方块无法拉动(包括黏液块和蜂蜜块之间不可拉动),则不创建在这个方向上的分支。
- 以对应方向上的方块为新的起始点,执行外层的4、5步骤。
- 遍历元素结束后,移动列表和破坏列表就被填充完毕,创建移动方块结构完毕。
从这个流程可以看出,活塞移动方块结构内的编号顺序是按照移动方向依次递增的。垂直于移动方向上来看,离活塞越近,编号也越小。
5
|
6
|
2
|
|||
1
|
2
|
3
|
4
|
1
| |
7
|
8
|
3
|
|||
9
|
4
|
2
|
6
|
5
|
|||
1
|
4
|
3
|
2
|
1
|
|
3
|
8
|
7
|
|||
4
|
9
|
7
|
8
|
3
|
|||
1
|
2
|
3
|
4
|
1
| |
5
|
6
|
2
|
|||
9
|
4
|
- 产生更新
当活塞开始伸出或收回时,它会与移动方块结构按照一定的顺序发出方块更新。
如果活塞没有伸出,而当前具有红石信号,活塞被激活,尝试推出:
- 如果活塞不可推出,则不产生更新。
- 计算移动方块结构,获得移动列表和破坏列表。
- 逆序破坏破坏列表内的方块,此过程不产生NC更新和PP更新。
- 逆序在移动后的位置放置移动的活塞方块,存储移动方块的信息,此过程不产生NC更新。
- 活塞应该产生活塞头的位置放置移动的活塞,保存活塞头信息,此过程不产生NC更新。
- 对于移动方块后留下的“空位”,以位置的哈希码大小排序从小到大将它们设置为空气,此过程不产生NC更新和PP更新。设置完成之后,再按照这个顺序遍历一次这些方块产生PP更新。其中,位置的哈希码计算公式为
x+31y+961z
,取最后32位有符号整数作为这个位置的哈希码。 - 逆序对破坏方块列表内的方块产生间接PP更新和NC更新,再逆序对移动方块列表内的方块产生NC更新,最后在活塞头产生NC更新。
- 移动准备结束,活塞设置自身方块状态,产生NC更新和PP更新。
如果活塞已经伸出,但当前不存在红石信号,活塞被取消激活,尝试收回:
- 如果活塞头位置是移动的活塞方块实体,则瞬间到位。
- 设置自身状态为移动的活塞,此时不产生NC更新和PP更新。之后添加方块实体,并产生NC更新和PP更新。
- 如果活塞是普通的活塞,则设置活塞头方块为空气,产生NC更新和PP更新,移动准备结束。
- 如果活塞是黏性活塞,检查对应方向前方的第二格方块(即黏性活塞可能拉回的方块):
- 如果这个方块是一个移动的活塞方块实体,并且方向与黏性活塞相同,并处于正在推出状态,则瞬间到位。
- 否则,检查前方方块是否为移动的活塞方块实体:
- 如果是,并且方向与黏性活塞相同,并正在推出,推动进度小于一半或刚刷新一次推动进度或此事件发生在计划刻和方块事件阶段内,则设置活塞头位置为空气,产生NC更新和PP更新,不拉回方块。
- 如果不是或没有满足上述条件,则再次检查前方的第二格方块是否为活塞可拉动的方块(但不检查移动方块结构):
- 如果不是可拉动的方块,则设置活塞头位置为空气,产生NC更新和PP更新。
- 如果是可拉动的方块,且移动方块结构也可以被拉动,则与上文推出类似,创建移动列表和破坏列表,并进行对应的NC更新和PP更新。
- 如果是可拉动的方块,但移动方块结构不能被拉动,则只会设置活塞头位置为空气,不产生NC更新和PP更新。
- 到位
在移动过程中,方块转变为移动的活塞方块,历经两次方块实体游戏刻计算后,在第三次调用刻计算时,执行普通到位。如果从活塞开始伸出的那一游戏刻为第0游戏刻开始计算,普通到位会在第2游戏刻的方块实体阶段被调用。
如果在移动过程中移动的活塞被破坏,则会瞬间到位。
普通到位的流程如下:
- 删除方块实体。
- 检查当前方块是否为移动的活塞,如果不是,则中止流程。
- 检查移动的活塞内部包含的要到位的方块到位后是否能成功附着或是否能在到位位置上存在,并矫正方块的形状。此过程约等于周围6个方块对本方块产生PP更新。
- 如果检查失败,则先设置本方块位置为要到位的方块,设置过程不产生NC更新和PP更新,最后再产生NC更新和PP更新。
- 如果检查成功,先将要到位的方块的含水状态清除,然后将本方块位置设置为要到位的方块,此过程产生NC更新和PP更新,再对本方块本身接收一次NC更新。
瞬间到位的流程如下:
- 删除方块实体。
- 检查当前方块是否为移动的活塞,如果不是,则中止流程。
- 检查自身是否为活塞头或活塞。
- 如果是,则将本方块位置设置为空气,此过程产生NC更新和PP更新,再对本方块本身接收一次NC更新。
- 如果不是,则将要到位的方块转换为最后要到位的方块,此过程约等于周围6个方块对本方块产生PP更新,用于矫正方块的形状和检查方块是否能在到位位置上存在。之后设置本方块位置为最后要到位的方块,此过程产生NC更新和PP更新,再对本方块本身接收一次NC更新。
瞬间到位和普通到位最明显的差异是是否清除方块的含水状态。当含水的方块被普通到位时,含水状态会被清除;而被瞬间到位时,含水状态不会被清除。
基岩版[]
你可以帮助我们加入信息。
音效[]
字幕 | 字幕 | 分类 | 描述 | 命名空间ID | 音高 |
---|---|---|---|---|---|
方块:被破坏 | 方块 | 破坏方块 | block.stone.break | subtitles.block.generic.break | |
无[音效 1] | 玩家 | 带有摔落伤害时摔落在方块上 | block.stone.fall | 无[音效 1] | |
方块:损坏中 | 方块 | 挖掘方块 | block.stone.hit | subtitles.block.generic.hit | |
方块:被放置 | 方块 | 放置方块 | block.stone.place | subtitles.block.generic.place | |
脚步声 | 玩家 | 在方块上行走 | block.stone.step | subtitles.block.generic.footsteps | |
活塞:移动 | 方块 | 活塞伸出 | block.piston.extend | subtitles.block.piston.move | |
活塞:移动 | 方块 | 活塞缩回 | block.piston.contract | subtitles.block.piston.move |
基岩版:
字幕 | 分类 | 描述 | 命名空间ID | 系统音效类型 | 音高 | 音量 | 衰减距离 | 流 | 预载 |
---|---|---|---|---|---|---|---|---|---|
方块 | 方块作为物品使用时发出的音效 | use.stone | item.use.on | 2.0 | 0.8 | 16 | 否 | 否 | |
方块 | 破坏方块 | dig.stone | break | 2.0 | 0.8-1 | 16 | 否 | 否 | |
方块 | 挖掘方块 | hit.stone | hit | 0.37 | 0.5 | 16 | 否 | 否 | |
方块 | 放置方块 | dig.stone | place | 2.0 | 0.8-1 | 16 | 否 | 否 | |
玩家 | 带有摔落伤害时摔落在方块上 | fall.stone | fall | 0.4 | 1.0 | 16 | 否 | 否 | |
玩家 | 在方块上行走 | step.stone | step | 0.3 | 1.0 | 16 | 否 | 否 | |
方块 | 在方块上跳跃 | jump.stone | jump | 0.12 | 1.0 | 16 | 否 | 否 | |
方块 | 在方块上着陆 | land.stone | land | 0.22 | 1.0 | 16 | 否 | 否 | |
方块 | 活塞伸出 | tile.piston.out | piston.out | 0.5 | 0.6-0.75 | 16 | 否 | 否 | |
方块 | 活塞缩回 | tile.piston.in | piston.in | 0.5 | 0.6-0.75 | 16 | 否 | 否 |
数据值[]
ID[]
名称 | 命名空间ID | 方块标签(JE) | 本地化键名 |
---|---|---|---|
活塞 | piston | mineable/pickaxe | block.minecraft.piston |
黏性活塞 | sticky_piston | block.minecraft.sticky_piston | |
活塞头 | piston_head | block.minecraft.piston_head | |
移动的活塞 | moving_piston | dragon_immune wither_immune | block.minecraft.moving_piston |
名称 | 命名空间ID |
---|---|
方块实体 | piston |
基岩版:
名称 | 命名空间ID | 别名ID(BE) | 数字ID | 本地化键名 |
---|---|---|---|---|
活塞 | piston | 无 | 33 | tile.piston.name |
黏性活塞 | sticky_piston | 无 | 29 | tile.sticky_piston.name |
活塞头 | piston_arm_collision | pistonArmCollision | 34 | tile.piston_arm_collision.name |
黏性活塞头 | sticky_piston_arm_collision | stickyPistonArmCollision | -217 | tile.sticky_piston_arm_collision.name |
移动的方块 | moving_block | movingBlock | 250 | tile.moving_block.name |
名称 | 命名空间ID |
---|---|
方块实体 | PistonArm |
方块数据[]
位元 | 值 |
---|---|
0x0 | 面向下方 |
0x1 | 面向上方 |
0x2 | 面向北方 |
0x3 | 面向南方 |
0x4 | 面向西方 |
0x5 | 面向东方 |
方块状态[]
minecraft:piston
和minecraft:sticky_piston
方块使用下面的方块状态:
名称 | 默认值 | 接受值 | 描述 |
---|---|---|---|
extended | false | true false | 在活塞伸出的情况下为true。 |
facing | north | north south east west up down | 活塞臂指向的方向。 这个方向在玩家放置的时候对着玩家。 |
基岩版:
名称 | 对应的附加值位 | 默认值 | 接受值 | 附加值位的值 | 描述 |
---|---|---|---|---|---|
facing_direction | 0x1 0x2 0x4 | 0 | 0 1 2 3 4 5 | 0 1 2 3 4 5 | 活塞面朝的方向。 这个方向在玩家放置的时候对着玩家。
|
成就[]
图标 | 成就 | 游戏内描述 | 实际需求(若异) | Xbox点数 | 奖杯(PS) | |
---|---|---|---|---|---|---|
始作俑者 Inception | 用一个活塞推另一个,然后用那个活塞拉最开始那一个。 | 将2个活塞面对面放置,其中至少有一个是黏性活塞。顺次激活二者使整体移动1格。 | 20G | 银杯 |
视频[]
历史[]
请在将需要的等轴渲染图添加到该段落后移除此模板。
具体说明:MCPE-38053、原Mod中黏性活塞推出时的渲染图
Java版Classic | |||||
---|---|---|---|---|---|
2009年5月21日 | Notch表示有兴趣添加当接收到来自线路的脉冲时可以拉动和推动其他方块的方块; 他把这种方块分别称为“Pulley1”与“Pulley2”。“Pulley1”会拉动一个方块,而“Pulley2”则会推动一个方块。 | ||||
Java版Beta | |||||
? | 最初的活塞是由Hippoplatimus发布在Minecraft官方论坛上的一个Mod。[5]这个版本的活塞源代码随后被交到了Jeb手中,Jeb随后将其加入到了原版Minecraft中;Hippoplatimus位列游戏鸣谢名单中的“补充程序员(Additional Programming)”一栏,这一栏用于感谢作品得以被加入原版Minecraft的Mod制作者。 | ||||
另一位用户DiEvAl也在私下提交过代码,他提出了利用方块实体追踪移动的方块的想法。[6][7] | |||||
然而,由于Jeb那时忙于携带版的开发,活塞没有在Beta 1.5和Beta 1.6更新中发布。最终,当携带版足够好可以在E3上展示时,Jeb回到Java版的开发,最终在Beta 1.7中添加了活塞和黏性活塞。 | |||||
2011年6月7日 | Jeb在动态中发布了一张开发中的活塞的图片。 | ||||
活塞的纹理是截屏而来的,而在开发过程中活塞头上面有铁环穿过。铁环在发布版本中被移除,只留下在边角上的铁支架。 | |||||
1.7 | 加入了活塞和黏性活塞,以及与之相关的活塞头和移动的方块。 | ||||
六面活塞作为活塞的极端数据值变种而存在。 | |||||
1.7_01 | 黏性活塞不再会在它们缩回时黏住方块。 | ||||
Java版 | |||||
? | 移动的活塞方块的线框现在与其碰撞箱对齐。 | ||||
1.2.4 | release | 云杉木板、白桦木板以及丛林木板现在可以用来合成活塞。 | |||
1.2.5 | 活塞头方块现在可以通过选取方块键获得。 | ||||
1.3.1 | 12w16a | 活塞头方块不再可以通过选取方块键获得。 | |||
12w22a | 黏性活塞现在可以在丛林神庙中自然生成,用于弓箭陷阱和隐藏宝藏。 | ||||
12w27a | 改进了活塞来使它们不那么容易出错,这也代表它们会更新得更慢一些。同时这也更改了活塞的工作原理,使得玩家可能需要调整其中继器的延迟以及其他类似的红石装置。由于这次改动,活塞现在需要2红石刻(4游戏刻)的时间来伸缩,但它们仍然会瞬间缩回。 | ||||
1.7.2 | 13w37a | 34号方块(活塞头)和36号方块从/give 命令中移除。 | |||
1.7.1 | 金合欢木板与深色橡木木板现在可以用来合成活塞。 | ||||
1.8 | 14w17a | 更改了活塞及相关方块正面朝上和朝下的纹理。 | |||
14w18a | 现在当活塞推动黏液块时,黏液块会带动与其相邻的、可以被推动的方块。 | ||||
现在活塞朝上推动时,其顶部若放有一个黏液块,则会将黏液块上的实体(生物、玩家、掉落物、已发射的箭等)弹射到空中。 | |||||
14w19a | 附着活塞的黏液块现在可以推动侧面的和下面的方块。 | ||||
14w26a | 活塞现在使用方块状态,取代了之前的数据值。因此怪异的活塞已被移除。 | ||||
14w29a | 这个版本现在存在“短”版的活塞头,其用途未知。 | ||||
为piston_head 的方块状态添加了short=true/false 。 | |||||
14w32a | 移动的活塞头不再拥有碰撞箱。 | ||||
1.9 | 15w49a | 没有伸长的活塞、面朝下的活塞和面朝上的活塞头现在被认为拥有固体的顶部表面,就像倒置的楼梯和上半顶部的台阶。同时还存在着这样的一个漏洞:当活塞头收回时,它会拉动穿过它的实体,称为易位。 | |||
1.11.1 | 16w50a | 为piston_extension 方块实体添加了一个名为source 的新字节标签,当方块代表活塞头部时为true,而代表被推动的方块时为false。易位被修复了。 | |||
1.12 | 17w16a | 黏性活塞不再能拉动带釉陶瓦。现在活塞推动黏液块时不会推动附着在黏液块侧面的带釉陶瓦。 | |||
pre3 | 黏液块不再能推动在它任何一侧的带釉陶瓦。 | ||||
1.13 | 17w47a | 移动方块的ID已从piston_extension 改变为moving_piston 。
| |||
在扁平化之前,这些方块的数字ID为29、33、34和36。 | |||||
活塞现在可以推动音符盒。 | |||||
pre6 | 黏性活塞现在再次可以拉动带釉陶瓦。 | ||||
pre8 | 黏性活塞不再可以拉动带釉陶瓦。 | ||||
1.14 | 18w43a | 更改了与活塞有关的纹理。 | |||
虽然橡木木板的纹理在随后的快照中进行了升级,但活塞的纹理并未因此受到改动。[8] | |||||
18w44a | 活塞不再是透明方块了。 | ||||
18w46a | 伸出的或者现在允许光透过某些面。 | ||||
1.15 | 19w41a | 加入了蜂蜜块。蜂蜜块与活塞有着多种不同种类的交互。 | |||
1.16 | 20w06a | 活塞的硬度由0.5增加到了1.5。 | |||
镐现在可以更快地破坏活塞。 | |||||
放置在活塞背部的红石部件不再会在活塞收回时掉落。 | |||||
绯红木板和诡异木板现在可以用来合成活塞。 | |||||
1.17 | 20w45a | 被活塞破坏的方块现在会产生粒子。 | |||
1.19 | 22w11a | 红树木板现在可以用来合成活塞。 | |||
22w13a | 现在黏性活塞和活塞头会生成在远古城市中心的地下室内。 | ||||
22w17a | 更改了活塞和黏性活塞的纹理,使得活塞头的橡木木板部分颜色与实际一致。 | ||||
携带版Alpha | |||||
0.15.0 | build 1 | 加入了活塞和黏性活塞,它们拥有独有的动画和推动方块实体的能力。 | |||
? | 同样存在怪异的活塞,但这种活塞并不是六面活塞。 | ||||
基岩版 | |||||
1.10.0 | 1.10.0.3 | 更改了纹理。 | |||
1.13.0 | ? | 黏性活塞头现在是独立的方块,分离于普通的活塞头,不再由方块状态决定。命名空间ID现在是stickypistonarmcollision ,数字ID为472。 | |||
1.16.0 | 1.15.0.55 | 现在推动含水方块将使其失去含水状态。 | |||
? | movingblock 方块不再能够使用命令放置。 | ||||
1.18.30 | 1.18.30.26 | 活塞头、黏性活塞头和移动的方块的ID分别由pistonarmcollision 、stickypistonarmcollision 、movingblock 更改为piston_arm_collision 、sticky_piston_arm_collision 、moving_block 。 | |||
1.19.0 | 1.19.0.26 | 现在黏性活塞可以生成于远古城市中心的地下室。 | |||
1.20.30 | 1.20.20.21 | 提高了活塞与黏性活塞的硬度与爆炸抗性,数值由0.5增加至1.5。 | |||
1.20.30.20 | 镐现在可以更快地破坏活塞。 | ||||
原主机版 | |||||
TU3 | CU1 | 1.0 | Patch 1 | 1.0.1 | 加入了活塞和黏性活塞。 |
TU14 | 1.04 | 活塞现在花费双倍的时间(2红石刻或4游戏刻)来延长,但它们仍然立即收缩。 | |||
1.90 | 更改了活塞的纹理。 | ||||
New Nintendo 3DS版 | |||||
0.1.0 | 加入了活塞和黏性活塞。 |
你知道吗[]
- Mojang曾经声称活塞只能推动12个方块的限制不会被改动,因为“现有的限制是有意设计的”。[9]
- 当活塞托举着一个受重力影响的方块(例如沙子)并不断迅速地伸缩,该方块很有可能最终掉落为物品。因为该方块所对应的实体要变回对应方块时,活塞臂刚好伸出了。不过,沙砾不会掉落为燧石。
- 如果通过短脉冲充能的黏性活塞直接推动含水方块,那么含水方块在被推动到新地点后还会保持含水。
- 生物可以在活塞头方块中生成。
- 地毯可以放在活塞臂上,如果用
/setblock
替换活塞臂的话,地毯还会留在原位。 - 在基岩版中,使用命令生成的活塞头是不可见且是没有碰撞箱的。这个版本中移动的活塞不能使用方块放置命令放置。
- 活塞头在基岩版中与Java版形状略有不同。
- 如果一个活塞在世界的顶部,并且面向上,或者在底部且面向下,它就不能伸出。
- 一个活塞不能推动另一个被激活的活塞。
- “移动中的活塞”方块是透明的并且不发光。
- 发光的方块被活塞移动的瞬间会短暂变暗,不透明的方块被移动的瞬间则能够透光。
- 移动中的活塞无法使生物窒息。
画廊[]
Notch对于活塞柄部(柄部在伸出时的长度为一整个方块长)如何缩回活塞基座的解释(基座内纵深即一个方块长减去活塞面的宽)[10]
完全由活塞与红石中继器构成的基础逻辑门。从左上角顺时针看分别为:与门,或门,异或门,非门
黏性活塞与玻璃板配合的例子
在基岩版中,连接至活塞的红石
艺术作品[]
活塞的官方艺术作品,描绘了一个连接到拉杆的活塞
参见[]
参考[]
- ↑ “Block of the Week: Piston” – Minecraft.net,2017年10月13日
- ↑ MC-171370 — “Piston heads break faster with pickaxes than axes” — 漏洞状态为“有意为之”。
- ↑ 此名称来源于移动的活塞在扁平化前的方块ID。
- ↑ MC-123217
- ↑ http://www.minecraftforum.net/viewtopic.php?t=247686&f=1032
- ↑ http://www.reddit.com/r/Minecraft/comments/hvkmo/attribution_of_the_piston_mod_in_vanilla_minecraft/
- ↑ http://imageshack.us/photo/my-images/51/jebf.jpg/
- ↑ MC-248841 — Piston side uses an older oak plank version for the wood/piston top uses an old oak plank palette
- ↑ Piston Push Limits (and increases). The current limitations are by design. — Minecraft Feedback,2019年1月3日。
- ↑ https://twitter.com/notch/status/83513677654929408
注释[]
外部链接[]
- “Block of the Week: Piston” – Minecraft.net,2017年10月13日
语言