Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.

Minecraft:Cushion: Difference between revisions

From SAS Gaming Wiki
SyncBot (talk | contribs)
Sync: updated from Minecraft
SyncBot (talk | contribs)
Sync: updated from Minecraft
Line 62: Line 62:
Cushions are [[Minecraft:entities]], meaning they cannot be [[Minecraft:mined]] like a typical block. Instead, cushions immediately break when attacked, including with [[Minecraft:projectile]]s, by non-[[Minecraft:player]] entities, or even by players in [[Minecraft:Adventure]] mode, even if the damage received is 0. A cushion also breaks when a [[Minecraft:piston]] attempts to move it. {{IN|BE}}, cushions can be moved by a piston if there is a block in front of the piston. Cushions always drop themselves when broken.  
Cushions are [[Minecraft:entities]], meaning they cannot be [[Minecraft:mined]] like a typical block. Instead, cushions immediately break when attacked, including with [[Minecraft:projectile]]s, by non-[[Minecraft:player]] entities, or even by players in [[Minecraft:Adventure]] mode, even if the damage received is 0. A cushion also breaks when a [[Minecraft:piston]] attempts to move it. {{IN|BE}}, cushions can be moved by a piston if there is a block in front of the piston. Cushions always drop themselves when broken.  


A cushion will break if its supporting block is removed for {{convert|100|game tick|second}}. If the block is replaced, it will not break. See step 3 in {{slink||Placement}} for what counts as a supporting block.  
A cushion will break if its supporting block is removed for {{convert|100|game tick|second}}. If the block is replaced, it will not break. See step 4 in {{slink||Placement}} for what counts as a supporting block.  


=== Crafting ===
=== Crafting ===
Line 101: Line 101:
{{IN|Java}}, the positioning of the cushion occurs in the following steps, after interacting with the item in a block:
{{IN|Java}}, the positioning of the cushion occurs in the following steps, after interacting with the item in a block:


# Test if the clicked face of the block is upward facing.
# Tests which hitbox to use; by default, the [[Minecraft:interaction box]].
#* For this, the block's [[Minecraft:interaction box]] is used. For blocks that have an interaction box with several elements (for example, stairs), the top face of each element is individually considered.
#* If the block is within the tag {{tag link|block|cushion_uses_collision_shape}}, recalculate the interaction context. This is done using the collision box instead of the interaction box. To achieve this, retrieve a collision box within a radius from the player's eye to the interaction position before recalculation.<!--Specifically, using this extended radius of 0.001 blocks-->
#* Some blocks have an [[Minecraft:auxiliary interaction box]]. The player cannot interact directly with this auxiliary box, but it is used to adjust the direction of the interaction. It is possible, for example, to place a selected cushion on the inner wall of a [[Minecraft:composter]].<ref>{{Bug|MC-309695}}</ref> On the other hand, it is not possible to place it on top of the tips of a [[Minecraft:hopper]].<ref>{{bug|MC-309783}}</ref>
#* The recalculated interaction is used both for the positioning of the cushion and the test of which face is clicked.
#* If the interaction occurs within the interaction box (or auxiliary interaction box), instead of considering the direction of the interacted face, the direction is calculated based on the player's rotation. Therefore, when interacting while looking down within a [[Minecraft:rose bush]] or [[Minecraft:cobweb]], the clicked face is considered upward facing.
#* In vanilla, the blocks in this tag are the [[Minecraft:cauldron]]s, [[Minecraft:hopper]], and [[Minecraft:composter]]. Removing blocks in this tag it is possible, for example, to place a selected cushion on the on the inner wall of these blocks.<ref>{{Bug|MC-309695}}</ref> On the other hand, it is not possible to place it on top of the tips of a hopper.<ref>{{bug|MC-309783}}</ref>
# Test if the clicked face of the block is upward facing. The following notes refer to the interaction not recalculated in the previous step.
#* For blocks that have an interaction box with several elements (for example, stairs), the top face of each element is individually considered.
#* If the interaction occurs within the interaction box (or auxiliary interaction box), instead of considering the direction of the interacted face, the direction is calculated based on the player's rotation. Therefore, when interacting while looking down within a [[Minecraft:rose bush]] or [[Minecraft:cobweb]], the clicked face is considered upward facing. It is also possible to place a cushion inside a solid block; simply sit on a cushion beneath the block so that the player's face is inside the block, and look down.
#* Some blocks have an [[Minecraft:auxiliary interaction box]]. The player cannot interact directly with this auxiliary box, but it is used to adjust the direction of the interaction. However, all blocks with this auxiliary box, except for the [[Minecraft:scaffolding]], are in the {{cd|#cushion_uses_collision_shape}} tag, thus not using this auxiliary box. Because the scaffolding uses an auxiliary box, it is not possible to place a cushion on its bottom platform, unless it's inside it.<ref>{{bug|MC-309858}}</ref>
# Select the position where to place the cushion.
# Select the position where to place the cushion.
#* The X and Z axes are defined by the interacting block, in such a way that the cushion is centered on the block's position.
#* The X and Z axes are defined by the interacting block, in such a way that the cushion is centered on the block's position.
Line 110: Line 114:
# Test if there is any part of a block directly below the cushion.
# Test if there is any part of a block directly below the cushion.
#* Just below the possible position of the cushion, create an imaginary platform with the same x and z lengths, but with a width of {{frac|1|4}} of a pixel ({{frac|1|64}} of a block).
#* Just below the possible position of the cushion, create an imaginary platform with the same x and z lengths, but with a width of {{frac|1|4}} of a pixel ({{frac|1|64}} of a block).
#* The search is for all blocks whose position (in integer codes) intersects this platform. Due to the cushion's centered position, only one or two blocks are intersected, but by summoning the cushion with commands, up to 8 can be tested.
#* The search is for all blocks whose position (in integer codes) intersects this platform extended to 2 pixels down ({{frac|1|8}} of a blocks). Due to the cushion's centered position, only one or two blocks are intersected, but by summoning the cushion with commands, up to 8 can be tested.
#** For each block found, it tests whether its interaction box intersects the base of the cushion. If at least one block intersects, that position is validated. Otherwise, the positioning fails. The test is with the interaction box and not the [[Minecraft:collision box]].
#** For each block found, it tests whether its interaction box intersects the base of the cushion. If at least one block intersects, that position is validated. Otherwise, the positioning fails. The test is with the interaction box and not the [[Minecraft:collision box]].
#** The interacted-with block is not always included in this test. For example, when placing a cushion on top of an open [[Minecraft:shulker box]] facing upward, when searching for blocks that the base can intersect, only the block above the shulker box is considered, not the shulker box itself. This is despite the fact that in this case, the shulker box serves as a base for the cushion. Something similar occurs with the top of the [[Minecraft:lectern]].<ref>{{bug|MC-309659}}</ref> On the other hand, it is still possible for the cushion to find support that is not the interacted block (for example, a [[Minecraft:resin clump]] above the shulker box).
#** The interacted-with block is not always included in this test. For example, when placing a cushion on top of an open [[Minecraft:shulker box]] facing upward, when searching for blocks that the base can intersect, only the block above the shulker box is considered, not the shulker box itself. This is despite the fact that in this case, the shulker box serves as a base for the cushion. On the other hand, it is still possible for the cushion to find support that is not the interacted block (for example, a [[Minecraft:resin clump]] above the shulker box).
# Test if a cushion already exists.
# Test if a cushion already exists.
#* Test whether the position in which it is trying to place the cushion, considering the hitbox the cushion would have if placed, intersects with the hitbox of an existing cushion.
#* Test whether the position in which it is trying to place the cushion, considering the hitbox the cushion would have if placed, intersects with the hitbox of an existing cushion.
Line 467: Line 471:
|{{HistoryLine|upcoming java}}
|{{HistoryLine|upcoming java}}
|{{HistoryLine||26.3|dev=snap3|[[File:White Cushion JE1.png|32px]] [[File:Light Gray Cushion JE1.png|32px]] [[File:Gray Cushion JE1.png|32px]] [[File:Black Cushion JE1.png|32px]] [[File:Brown Cushion JE1.png|32px]] [[File:Red Cushion JE1.png|32px]] [[File:Orange Cushion JE1.png|32px]] [[File:Yellow Cushion JE1.png|32px]] [[File:Lime Cushion JE1.png|32px]] [[File:Green Cushion JE1.png|32px]] [[File:Cyan Cushion JE1.png|32px]] [[File:Light Blue Cushion JE1.png|32px]] [[File:Blue Cushion JE1.png|32px]] [[File:Purple Cushion JE1.png|32px]] [[File:Magenta Cushion JE1.png|32px]] [[File:Pink Cushion JE1.png|32px]]<br>[[File:White Cushion (item) JE1 BE1.png|32px]] [[File:Light Gray Cushion (item) JE1 BE1.png|32px]] [[File:Gray Cushion (item) JE1 BE1.png|32px]] [[File:Black Cushion (item) JE1 BE1.png|32px]] [[File:Brown Cushion (item) JE1 BE1.png|32px]] [[File:Red Cushion (item) JE1 BE1.png|32px]] [[File:Orange Cushion (item) JE1 BE1.png|32px]] [[File:Yellow Cushion (item) JE1 BE1.png|32px]] [[File:Lime Cushion (item) JE1 BE1.png|32px]] [[File:Green Cushion (item) JE1 BE1.png|32px]] [[File:Cyan Cushion (item) JE1 BE1.png|32px]] [[File:Light Blue Cushion (item) JE1 BE1.png|32px]] [[File:Blue Cushion (item) JE1 BE1.png|32px]] [[File:Purple Cushion (item) JE1 BE1.png|32px]] [[File:Magenta Cushion (item) JE1 BE1.png|32px]] [[File:Pink Cushion (item) JE1 BE1.png|32px]] Added cushions.}}
|{{HistoryLine||26.3|dev=snap3|[[File:White Cushion JE1.png|32px]] [[File:Light Gray Cushion JE1.png|32px]] [[File:Gray Cushion JE1.png|32px]] [[File:Black Cushion JE1.png|32px]] [[File:Brown Cushion JE1.png|32px]] [[File:Red Cushion JE1.png|32px]] [[File:Orange Cushion JE1.png|32px]] [[File:Yellow Cushion JE1.png|32px]] [[File:Lime Cushion JE1.png|32px]] [[File:Green Cushion JE1.png|32px]] [[File:Cyan Cushion JE1.png|32px]] [[File:Light Blue Cushion JE1.png|32px]] [[File:Blue Cushion JE1.png|32px]] [[File:Purple Cushion JE1.png|32px]] [[File:Magenta Cushion JE1.png|32px]] [[File:Pink Cushion JE1.png|32px]]<br>[[File:White Cushion (item) JE1 BE1.png|32px]] [[File:Light Gray Cushion (item) JE1 BE1.png|32px]] [[File:Gray Cushion (item) JE1 BE1.png|32px]] [[File:Black Cushion (item) JE1 BE1.png|32px]] [[File:Brown Cushion (item) JE1 BE1.png|32px]] [[File:Red Cushion (item) JE1 BE1.png|32px]] [[File:Orange Cushion (item) JE1 BE1.png|32px]] [[File:Yellow Cushion (item) JE1 BE1.png|32px]] [[File:Lime Cushion (item) JE1 BE1.png|32px]] [[File:Green Cushion (item) JE1 BE1.png|32px]] [[File:Cyan Cushion (item) JE1 BE1.png|32px]] [[File:Light Blue Cushion (item) JE1 BE1.png|32px]] [[File:Blue Cushion (item) JE1 BE1.png|32px]] [[File:Purple Cushion (item) JE1 BE1.png|32px]] [[File:Magenta Cushion (item) JE1 BE1.png|32px]] [[File:Pink Cushion (item) JE1 BE1.png|32px]] Added cushions.}}
|{{HistoryLine|||dev=snap4| [[Minecraft:Cauldron]]s, [[Minecraft:composter]], and [[Minecraft:hopper]]s now use their [[Minecraft:collision box]] for positioning the cushions.
| Cushions now can be placed on the highest edge of a [[Minecraft:lectern]].<ref>{{bug|MC-309659}}</ref>
| Cushions are now destroyed in the fire.
| Cushions now retain their custom name when dropped.}}
}}
}}


Line 482: Line 490:
File:Cushion Sitting.png|A player sitting on a cushion.
File:Cushion Sitting.png|A player sitting on a cushion.
File:Player cushion sculk sensor.png|Ditto, but with the cushion placed on top of a sculk sensor.
File:Player cushion sculk sensor.png|Ditto, but with the cushion placed on top of a sculk sensor.
File:All possible pixel heights for Cushion.png|Cushion in various pixel heights
File:All possible pixel heights for Cushion.png|Cushion at various pixel heights
</gallery>
</gallery>


Line 493: Line 501:
{{Navbox items|Utilities}}
{{Navbox items|Utilities}}
{{Navbox entities|Other}}
{{Navbox entities|Other}}
[[Category:Stationary entities]]


[[Minecraft:de:Kissen]]
[[Minecraft:de:Kissen]]

Revision as of 11:05, 17 July 2026

Template:WIP Template:In development Template:Infobox item entity A cushion is a placeable Minecraft:entity that can be sat on. Cushions can be placed on top of almost any Minecraft:block in the game, excluding fluids and a few Minecraft:invisible blocks, and are destroyed shortly after their supporting block is removed.

Obtaining

Breaking

Cushions are Minecraft:entities, meaning they cannot be Minecraft:mined like a typical block. Instead, cushions immediately break when attacked, including with Minecraft:projectiles, by non-Minecraft:player entities, or even by players in Minecraft:Adventure mode, even if the damage received is 0. A cushion also breaks when a Minecraft:piston attempts to move it. Template:IN, cushions can be moved by a piston if there is a block in front of the piston. Cushions always drop themselves when broken.

A cushion will break if its supporting block is removed for Template:Convert. If the block is replaced, it will not break. See step 4 in Template:Slink for what counts as a supporting block.

Crafting

Template:Crafting Template:Crafting

Natural generation

Cushions in all colors are found naturally in Minecraft:abandoned camps. They normally spawn within 1~2 blocks of a Minecraft:campfire, assuming the camp generates with one.

Usage

Cushions can be placed on any flat surface, and align horizontally to the grid unless teleported, but vertically sit on top of the supporting surface. They break if their supporting surface is removed or if they are pushed by a piston. Since they are entities with a finite amount of health, they also break after a few seconds if placed in Minecraft:lava. See Template:Slink for more details.

They can be sat on by pressing the "Template:Control" control on them.

Cushions cannot move, do not have collision, and can overlap with other objects, except for other cushions or Minecraft:chains.Template:Only This means they rest properly on top of surfaces that are less than one block in height, including Minecraft:snow layers, Minecraft:wildflowers, Minecraft:enchantment tables, Minecraft:slabs, and Minecraft:stairs. Cushions placed on the lower step of stairs are partly obscured by the upper step of the stairs.

A player who sits on a cushion in a lit Nether or End portal can sit indefinitely without being teleported, but can go through the portal when getting off the cushion. Likewise, a player who sits on a cushion when a Minecraft:geyser erupts also cannot be moved until getting off the cushion.

Placement

Template:IN, the positioning of the cushion occurs in the following steps, after interacting with the item in a block:

  1. Tests which hitbox to use; by default, the Minecraft:interaction box.
    • If the block is within the tag Template:Tag link, recalculate the interaction context. This is done using the collision box instead of the interaction box. To achieve this, retrieve a collision box within a radius from the player's eye to the interaction position before recalculation.
    • The recalculated interaction is used both for the positioning of the cushion and the test of which face is clicked.
    • In vanilla, the blocks in this tag are the Minecraft:cauldrons, Minecraft:hopper, and Minecraft:composter. Removing blocks in this tag it is possible, for example, to place a selected cushion on the on the inner wall of these blocks.<ref>Template:Bug</ref> On the other hand, it is not possible to place it on top of the tips of a hopper.<ref>Template:Bug</ref>
  2. Test if the clicked face of the block is upward facing. The following notes refer to the interaction not recalculated in the previous step.
    • For blocks that have an interaction box with several elements (for example, stairs), the top face of each element is individually considered.
    • If the interaction occurs within the interaction box (or auxiliary interaction box), instead of considering the direction of the interacted face, the direction is calculated based on the player's rotation. Therefore, when interacting while looking down within a Minecraft:rose bush or Minecraft:cobweb, the clicked face is considered upward facing. It is also possible to place a cushion inside a solid block; simply sit on a cushion beneath the block so that the player's face is inside the block, and look down.
    • Some blocks have an Minecraft:auxiliary interaction box. The player cannot interact directly with this auxiliary box, but it is used to adjust the direction of the interaction. However, all blocks with this auxiliary box, except for the Minecraft:scaffolding, are in the Template:Cd tag, thus not using this auxiliary box. Because the scaffolding uses an auxiliary box, it is not possible to place a cushion on its bottom platform, unless it's inside it.<ref>Template:Bug</ref>
  3. Select the position where to place the cushion.
    • The X and Z axes are defined by the interacting block, in such a way that the cushion is centered on the block's position.
    • The Y-axis of the possible lower base of the cushion is the position where the click occurred when interacting with the block. For this, the interaction box is used, ignoring the auxiliary interaction box. When the interaction occurs within an interaction box, the position to consider is the initial point of the interaction (the player's eye).
  4. Test if there is any part of a block directly below the cushion.
    • Just below the possible position of the cushion, create an imaginary platform with the same x and z lengths, but with a width of Template:Frac of a pixel (Template:Frac of a block).
    • The search is for all blocks whose position (in integer codes) intersects this platform extended to 2 pixels down (Template:Frac of a blocks). Due to the cushion's centered position, only one or two blocks are intersected, but by summoning the cushion with commands, up to 8 can be tested.
      • For each block found, it tests whether its interaction box intersects the base of the cushion. If at least one block intersects, that position is validated. Otherwise, the positioning fails. The test is with the interaction box and not the Minecraft:collision box.
      • The interacted-with block is not always included in this test. For example, when placing a cushion on top of an open Minecraft:shulker box facing upward, when searching for blocks that the base can intersect, only the block above the shulker box is considered, not the shulker box itself. This is despite the fact that in this case, the shulker box serves as a base for the cushion. On the other hand, it is still possible for the cushion to find support that is not the interacted block (for example, a Minecraft:resin clump above the shulker box).
  5. Test if a cushion already exists.
    • Test whether the position in which it is trying to place the cushion, considering the hitbox the cushion would have if placed, intersects with the hitbox of an existing cushion.

If all 4 steps are successfully completed, the cushion is placed.

Fuel

Cushions can be used as a fuel in Minecraft:furnaces, smelting one Minecraft:item per cushion (burn time of 200 ticks).

Sounds

Template:Edition: Template:SoundTable

Template:Edition: Template:SoundTable

Data values

ID

Template:JE: Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table

Template:ID table

Template:BE: Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table Template:ID table

Entity data

Template:JE: Template:Main

<section begin="entity data" />

<section end="entity data" />

Template:BE: Template:More info

History

Java Edition

Template:HistoryTable

Bedrock Edition

Template:HistoryTable

Issues

Template:Issue list

Gallery

References

Template:Reflist

Navigation

Template:Navbox new content Template:Navbox dyed material Template:Navbox items Template:Navbox entities

Minecraft:de:Kissen Minecraft:es:Cojín Minecraft:fr:Coussin Minecraft:ja:Cushion Minecraft:pt:Almofada Minecraft:ru:Подушка Minecraft:zh:坐垫