Json:block:behavior: Difference between revisions

From Vintage Story Wiki
No edit summary
(Moved to Modding:Json Block Behaviors (7 May 2020))
Tags: New redirect Mobile edit Mobile web edit
 
(One intermediate revision by one other user not shown)
Line 1: Line 1:
for details on all block behavior implementation, please see the table [[Json:block:behaviors|All Block Behaviors]]
#REDIRECT [[Modding:Json Block Behaviors]]
 
== HorizontalAttachable ==
 
Block can only be attached horizontally. Used for:
* Painting
* Toolrack
Requires <code>abstract/horizontalorientation</code>:
<syntaxhighlight lang="json">
variantgroups: [
{ code:"side", loadFromProperties: "abstract/horizontalorientation" }
],
</syntaxhighlight>
 
== HorizontalOrientable ==
 
Block can be rotated horizontally. Used for:
* Workbench
* Ladder
* Echochamber
* Chest
* Stove
* Altar
* Windmillrotor
* Bellows
Requires <code>abstract/horizontalorientation</code>:
<syntaxhighlight lang="json">
variantgroups: [
{ code:"side", loadFromProperties: "abstract/horizontalorientation" }
],
</syntaxhighlight>
 
== NWOrientable ==
 
Block can be rotated in two different directions. Used for:
* Path
* Bookshelves
* Large carpet
* Chimney
Requires "ns" and "we" states:
<syntaxhighlight lang="json">
variantgroups: [
{ code:"orientation", states: ["ns", "we"] },
],
</syntaxhighlight>
 
== Pillar ==
 
Block can be rotated in three directions. Used for:
* Wood log
* Pillar
* Axle
Requires "ud", "ns" and "we" states:
<syntaxhighlight lang="json">
variantgroups: [
{ code:"orientation", states: ["ud", "ns", "we"] },
],
</syntaxhighlight>
 
== Slab ==
 
Block can be either placed on the top or the bottom half of a block. Used for:
* All kinds of slabs
Requires "down" and "up" states:
<syntaxhighlight lang="json">
variantgroups: [
{ code: "part", states: ["down", "up"] }
],
</syntaxhighlight>
 
== HorizontalUpDownOrientable ==
 
Used for:
* angledgearbox
Requires <code>abstract/verticalorientation</code> and <code>abstract/horizontalorientation</code>:
<syntaxhighlight lang="json">
variantgroups: [
{ loadFromProperties: "abstract/verticalorientation" },
{ loadFromProperties: "abstract/horizontalorientation" }
],
</syntaxhighlight>
 
== FiniteSpreadingLiquid ==
 
Make a block flow as liquid. Used for:
* Water
* Lava
Requires all heights as states:
<syntaxhighlight lang="json">
variantgroups: [
{ code: "height", states: ["1", "2", "3", "4", "5", "6", "7"] },
],
</syntaxhighlight>
 
== OmniAttachable ==
 
Can be attached on any block side. Used for:
* Lantern
Example use:
<syntaxhighlight lang="json">
variantgroups: [
{ code:"position", states: ["up", "down"], combine: "additive" },
{ code:"wall", loadFromProperties: "abstract/horizontalorientation" }
],
</syntaxhighlight>
 
== Unplaceable ==
 
Block cannot be placed. Used for:
* Peatbrick
 
== Unstable ==
 
Block can only be placed on a solid block and destroyed once the ground is removed. Used for:
* Ore blasting bomb
* Small carpet
* Path
* Turnip
* Spelt
* Soybean
* Rye
* Rice
* Parsnip
* Onion
* Flax
* Carrot
 
== Harvestable ==
 
Similar to Unstable, with the only difference that it can be stacked on top of each other. Used for:
* Small berry bush
* Saguaro cactus
* Big berry bush
 
== Falling ==
 
Similar to Unstable, but instead of destorying the block, it will fall down. Used for:
* Tool mold
* Loot vessel
* Ingot mold
* Flower pot
* Crucible
* Sand
* Gravel
* Anvil
 
== DropIfFloating ==
 
The block will break, if it is completely surrounded by air. Used for:
* Rock

Latest revision as of 01:15, 23 February 2022