import sources from scattered branches

This commit is contained in:
2026-07-08 23:12:18 -04:00
parent a1cbd1657e
commit 5e9d8f1b34
9409 changed files with 97775 additions and 7 deletions

1
.gitignore vendored
View File

@@ -7,3 +7,4 @@ main.pdf
bundle/
dist/
node_modules/
.typ-bundle

8
content/bulk.typ Normal file
View File

@@ -0,0 +1,8 @@
= Bulk Transport
== Tileable Receivers
== Interleaved vs Sequential Channels
== Chained vs Shared Reference
== Broadcast and Multicast
== Entity Batching

7
content/channels.typ Normal file
View File

@@ -0,0 +1,7 @@
= Channels
== Static Channel Allocation
== Dynamic Channel Selectors
== Looped Connections
=== Ender Pearls
=== Secure Connection Requests

291
content/core.typ Normal file
View File

@@ -0,0 +1,291 @@
#import "/lib.typ": callout, details, example, note, solution, tip, todo
= Core Mechanics <core>
== Entity IDs
Entities are the dynamic movable objects in the game. Minecraft tracks every entity with a unique ID
number. Whenever an entity is added to the game world, a global counter is incremented and the new
entity is assigned the current value.
A large number of game objects are tracked in this way, and so creating any one of them will
increment that global counter. To reiterate, *this is a global counter, shared for all entities in
the game*.
== Stationary Item Optimization
Typically, item entities fall to the floor and sit stationary soon after being created. Processing
movement for these stationary entities would be wasteful, so an optimization was added in 1.14: if
an item is sitting stationary on a block, then only process movement for that item every 4th tick.
However, it would also be wasteful if every 4th tick processed all items, so instead the items are
divided into four staggered groups. Each tick stationary items from only one of the four groups
check for movement.
#callout(kind: "tip", label: "Key Point")[
Stationary items only begin to fall when their $"age" + "id"$ is a multiple of $4$.
]
In other words, divide the value by 4 and look at the remainder. If the remainder is 0, the item
checks for movement. That condition is written as `... % 4 == 0` in Java and as $... equiv 0 &(mod
4)$ in math.
You can freely add or subtract multiples of 4 to any expression without changing the value $mod 4$.
For example, $-1 equiv 3 &(mod 4)$ because $3 = -1 + 4$.
The optimization is implemented as follows:
#note[ `onGround` is only ever updated via `move`, and this branch is the *only* place that
`ItemEntity.move` is called. `tickCount` is the item's age. ]
```java
public class ItemEntity extends Entity {
public void tick() {
...
if (this.onGround() && !(this.getDeltaMovement().horizontalDistanceSqr() > (double)1.0E-5F) && (this.tickCount + this.getId()) % 4 != 0) {
...
} else {
this.move(MoverType.SELF, this.getDeltaMovement());
...
}
...
}
}
public class Entity {
public void move(final MoverType moverType, Vec3 delta) {
...
this.setOnGroundWithMovement(this.verticalCollisionBelow, this.horizontalCollision, movement);
...
}
public void setOnGroundWithMovement(final boolean onGround, final boolean horizontalCollision, final Vec3 movement) {
this.onGround = onGround;
...
}
}
```
The effect is that if the item is on a block and has negligible horizontal momentum, it *cannot
fall* until the condition is satisfied, even if it's no longer on the ground. It can only fall early
if it gains horizontal momentum or is pushed.
#todo[Falling item animation][Spawn a few items, note their ID and age. Let them settle on a block, then
remove that supporting block. There will be a few ticks where the item hovers in place before it
falls.]
== Observable Drop Delay
We can't control the absolute entity ID a particular item will receive, but we can *compare* ids of
multiple entities. By observing the drop delay for a "reference" item, we can predict the behavior
of other items.
#example[
For example, suppose we spawn an item $A$, then 2 game ticks later we spawn an item $B$. Assume no
other entities spawn between them, so $A$ and $B$ have consecutive IDs. Wait for the items to
settle, then remove the supporting blocks. If we observe item $A$ start to fall 1 game tick after
the support is removed, we can predict when item $B$ will fall.
It'll be easier if we orient ourselves around the tick when the support blocks are removed, call
that $t=0$. Say the age is $"age"_(A, 0)$ at that time. We have that item $A$ falls at $t=1$.
$A$ fell when it was $"age"_(A, 1) = "age"_(A, 0) + 1$ old, so we can put all this into a relation
that pins down the mod 4 cycle.
$ "age"_(A, 0) + 1 + "id"_A equiv 0 (mod 4) $
We want to find the equivalent relation for $B$, where $x$ will be the tick in which $B$ falls.
$ "age"_(B, 0) + x + "id"_B equiv 0 (mod 4) $
We know that $A$ has the item ID immediately before $B$, so $"id"_A = "id"_B - 1$.
We also know that $A$ is 2gt older than $B$, so $"age"_(A, 0) = "age"_(B, 0) + 2$.
So take the relation for $A$ and substitute in these values for $B$.
$
"age"_(A, 0) + 1 + "id"_A & equiv 0 (mod 4) \
"age"_(B, 0) + 2 + 1 + "id"_B - 1 & equiv 0 (mod 4) \
"age"_(B, 0) + 2 + "id"_B & equiv 0 (mod 4) \
$
Compare with the relation for $B$ and we see that $x=2$.
#callout(kind: "tip", label: "Therefore:")[$B$ falls at time $t=2$.]
]
#example[
Suppose we spawn four items in order. For simplicity, spawn them all in the same tick so their
ages are equal, and assume no other entities spawn.
1. Spawn items $A$, $B$, $C$, and $D$ in order in the same tick. Let them settle on a block.
2. At tick $t=0$, remove the supporting blocks.
3. At tick $t=1$, item $B$ begins to fall.
Based on when item $B$ fell, when should we expect the other items to fall?
#solution[
To simplify the arithmetic, orient everything around $t=0$. So we'll let $"age"_0$ be the
items' ages at $t=0$ and add tick offsets from there. All items spawned in the same tick, so
they all have the same $"age"_0$.
Since $B$ falls at $t=1$, the relation for $"id"_B$ must be
$ "age"_0 + "id"_B + 1 equiv 0 & (mod 4) $
Item $A$ gets the ID 1 before $B$, so $"id"_A + 1 = "id"_B$.
Plug that in to the relation we got for $"id"_B$.
$ "age"_0 + "id"_A + 1 + 1 equiv 0 & (mod 4) $
*$A$ must fall at $t=2$.*
Item $C$ gets the ID 1 after $B$, so $"id"_C - 1= "id"_B$. Plug that in.
$ "age"_0 + "id"_C - 1 + 1 equiv 0 & (mod 4) $
*$C$ must fall at $t=0$.*
Item $D$ gets the ID 2 after $B$, so $"id"_D - 2 = "id"_B$. Plug that in.
$
"age"_0 + "id"_D - 2 + 1 & equiv 0 & (mod 4) \
"age"_0 + "id"_D + 3 & equiv 0 & (mod 4)
$
*$D$ must fall at $t=3$.*
#callout(kind: "tip", label: "Therefore:")[
The expected fall times are:
- $C$ at $t=0$.
- $B$ at $t=1$.
- $A$ at $t=2$.
- $D$ at $t=3$.
]
]
#todo[Demonstration]
]
#example[
Consider a variation of the previous example, but where the items do not spawn on the same tick.
Their ages will be different. Again, assume no other entities spawn.
1. Spawn item $A$ at $t=-10$.
2. Spawn items $B$ and $C$ in order at $t=-8$.
3. Spawn item $D$ at $t=-7$. Let them settle on a block.
4. At tick $t=0$, remove the supporting blocks.
5. At tick $t=1$, item $B$ begins to fall.
Based on when item $B$ fell, and accounting for the different item ages, when should we expect the
other items to fall?
#solution[
We'll need to track the item ages separately this time, but still oriented around $t=0$.
Let $"age"_(0, B)$ be item $B$'s age at $t=0$.
We know item $B$ fell at $t=1$, so we have the relation
$ "age"_(0, B) + "id"_B + 1 equiv 0 & (mod 4) $
#todo[Add "gt" to the glossary]
Item $A$ gets the ID 1 before $B$, so $"id"_A + 1 = "id"_B$.
It spawned 2gt earlier, so $"age"_(0, A) - 2= "age"_(0, B)$. Plug those in.
$ "age"_(0, A) - 2 + "id"_A + 1 + 1 equiv 0 & (mod 4) $
*$A$ must fall at $t=0$.*
Item $C$ gets the ID 1 after $B$, so $"id"_C - 1 = "id"_B$.
It spawned in the same tick, so $"age"_(0, C) = "age"_(0, B)$. Plug those in.
$ "age"_(0, C) + "id"_C - 1 + 1 equiv 0 & (mod 4) $
*$C$ must fall at $t=0$.*
Item $D$ gets the ID 2 after $B$, so $"id"_D - 2 = "id"_B$.
It spawned 1gt later, so $"age"_(0, D) + 1 = "age"_(0, B)$. Plug those in.
$ "age"_(0, D) + 1 + "id"_D - 2 + 1 equiv 0 & (mod 4) $
*$D$ must fall at $t=0$.*
#callout(kind: "tip", label: "Therefore:")[
The expected fall times are:
- $A$ at $t=0$.
- $C$ at $t=0$.
- $D$ at $t=0$.
- $B$ at $t=1$.
]
]
#todo[Demonstration]
]
#example[
Now consider what it means if the pattern is broken. Keep the item ages the same for simplicity,
but this time do *not* assume that no other entities spawn.
1. Spawn items $A$, $B$, and $C$ in order in the same tick. Let them settle on a block.
2. At tick $t=0$, remove the supporting blocks. Item $C$ begins to fall.
3. At tick $t=1$, item $A$ begins to fall.
4. At tick $t=2$, item $B$ begins to fall.
What number of entities must have spawned between items $A$ and $B$? Between $B$ and $C$?
#solution[
Following the same conventions as before, where $x$ is the number of entities between $A$ and
$B$ and $y$ is the number of entities between $B$ and $C$.
The ids of $A$ and $B$ are related by
$ "id"_A + 1 + x = "id"_B $
And the observed drop delays satisfy
$ "age"_0 + "id"_A + 1 equiv 0 & (mod 4) $
$ "age"_0 + "id"_B + 2 equiv 0 & (mod 4) $
Substitute $"id"_B$ and solve for $x$.
$
"age"_0 + "id"_A + 1 + x + 2 & equiv "age"_0 + "id"_A + 1 & (mod 4) \
x + 2 & equiv 0 & (mod 4) \
x & equiv 2 & (mod 4) \
$
*So the number of entities between $A$ and $B$ is $2 &(mod 4)$.* (For example, 2, 6, 10, ...)
The ids of $B$ and $C$ are related by
$ "id"_B + 1 + y = "id"_C $
And the observed drop delays satisfy
$ "age"_0 + "id"_B + 2 equiv 0 & (mod 4) $
$ "age"_0 + "id"_C + 0 equiv 0 & (mod 4) $
Substitute $"id"_C$ and solve for $y$.
$
"age"_0 + "id"_B + 1 + y + 0 & equiv "age"_0 + "id"_B + 2 & (mod 4) \
y - 1 & equiv 0 & (mod 4) \
y & equiv 1 & (mod 4) \
$
*So the number of entities between $B$ and $C$ is $1 &(mod 4)$.* (For example, 1, 5, 9, ...)
#callout(kind: "tip", label: "Therefore:")[
The number of spawned entities must be
- $2 &(mod 4)$ between $A$ and $B$.
- $1 &(mod 4)$ between $B$ and $C$.
]
]
#todo[Demonstration]
]

View File

@@ -0,0 +1,8 @@
= Data Protocols
== Mod 4 Binary
== Mod 2 Binary
== Mod 4 Quaternary
== Transceivers
== Logical Operations
== Transport Protocol Catalog

8
content/design.typ Normal file
View File

@@ -0,0 +1,8 @@
= Design Tips
== Synchronization
=== Daylight Detector
=== Geyser
=== Synchronization Protocols
== Settling time
== Horizontal vs Vertical Arrangement

17
content/index.typ Normal file
View File

@@ -0,0 +1,17 @@
#import "/lib.typ": callout, diorama, warn, world
#title()
Everything I know about Entity ID Wireless Redstone (EID Wireless) for Minecraft Java Edition 1.14+.
#warn[
In versions 1.14 - 26.1, only multiplayer servers are supported.
Singleplayer is supported in 26.2+. See @singleplayer for details.
It works on most (but not all) versions of Paper servers. See @paper for details.
It does not work with any version of Bedrock Edition.
]
#outline(title: [Outline], depth: 3)

View File

@@ -0,0 +1,118 @@
#import "/lib.typ": note, tip, todo
= Causes of Interference
We need precise control over the entity age and ID for this to work, so sources of interference are
generally unexpected entity spawns that mess up the ID.
== Other Entities
Recall that *any* entity spawning will increment the ID counter, and the full list of entities is
surprising. An exhaustive list is available at #link(
"https://minecraft.wiki/w/Entity#Types_of_entities",
)[The Minecraft Wiki].
In general, the solution is to spawn our item entities at nearly the same time, so there is no
chance for other entities to spawn in-between. For example, by spawning all items with droppers in
the same game tick, all the items are created in the same tick phase, so player inputs and world
events cannot affect it. See @timing for details.
== Singleplayer (before 26.2) <singleplayer>
In singleplayer worlds, there are separate execution threads for the renderer and game world. The
game world ("server thread") contains the item entities we care about for the purposes of EID
Wireless, as these are the entities we can detect with redstone. However, the renderer ("client
thread") *also* tracks some entities.
In versions before 26.2, there was a bug that caused the client thread and server thread to use the
*same* global ID counter. Therefore every entity might increment the counter twice: once when it
spawns in the server, and once when the client begins to track it. Because this depends on the
position and orientation of the player, and also on the unpredictable scheduling of the two
execution threads, it is impossible to truly compensate for these effects.
The solution is to either use a dedicated minecraft server, so that the client and servers run in
separate processes, or install a mod which patches the game to use a separate counter for the
client.
#todo[Singleplayer patch links][Grab links for these mods and figure out exactly which versions
they're good for.]
== Paper Servers <paper>
#todo[Paper compatibility list][Figure out which versions of Paper broke the thing.]
Most recent versions of Paper server are compatible with EID Wireless. However, there are old
versions of Spigot which include a *different* stationary item optimization which corrupts this. A
few versions of Paper erroneously included this old optimization (on top of the mod 4 optimization)
which breaks EID Wireless.
#todo[Broken Paper/Spigot code][Show the patch with the busted optimization.]
== Unloaded Chunks
When a chunk unloads and reloads, all entities contained within it are destroyed and recreated with
new entity IDs. Therefore any information encoded in the ID group offsets is destroyed.
#tip[
When a chunk containing an EID Wireless receiver is reloaded, every in-progress transmission
*MUST* be discarded.
]
The best thing to do is to use a reload detector and lock the receiver output for one full cycle
after a reload.
#todo[Reload detector designs][frost walker, sculk sensor, ???]
== Lazy Chunks
Entities in lazy chunks do not age or move, and their IDs are preserved. However, the redstone
circuitry will continue to function. If a chunk becomes lazy while a transmission is being
processed, the detection circuits will not observe the right drop delays and so the transmission is
corrupted.
#tip[
When a chunk containing an EID Wireless receiver becomes lazy, every in-progress transmission
*MUST* be discarded.
]
Further, depending on the receiver design, there is a small chance the items become clipped into
blocks. When the chunk becomes entity-processing again, the clipped items will fly out of the
machine instead of being recycled.
The best thing to do is to use a chunkloader to prevent the receiver ever being lazy-loaded. If
chunkloaders cannot be used, a lazy-chunk detector can be used to lock the outputs while the chunk
is lazy-loaded and for one full cycle after it becomes entity-processing.
#todo[Lazy chunk detector designs][falling entity, ???]
#todo[think about lazy conditions by cases]
#todo[wip comment on discord][
The problem with unloaded chunks is that when the chunk reloads, all items are recreated with new
entity ids and the transmission information is destroyed. There is no hope for recovery, so the
only solution is to discard the first cycle.
The problem with lazy chunks is that it's impossible (or at least very hard) to synchronize entity
movement. The redstone, droppers, and hoppers all continue to tick in lazy chunks. If you have
multiple items in each slice, then every cycle in lazy chunks spaws an item. When you the chunk
ticks again, the hopper can onl pick up one of the items, and the rest sit there. You can't
control when in the cycle the chunk ticks again either, so it may tick with the trapdoor already
open, or just about to close.
Quite often, things will be desynchronized such that the trapdoor closes clipped into an item
while the hopper is on cooldown. In that case, the collision flings the item out of the
measurement chamber. If you only have one item, then the hopper can never be on cooldown while the
item would collide with the trapdoor, so it always gets recycled and can never be flung out.
However because you can't control the timings, you can't guarantee the mod 4 optimization was
actually applied or if the items are just falling through the already-open trapdoor. So you still
have to discard the message.
If you have a lazy chunk detector, you can stop the clock while in lazy chunks, then simply resume
the clock on the next cycle after ticking again.
But since you also need to lock the output for reloaded chunks, it's just easier to do that every
time.
]

View File

@@ -0,0 +1,217 @@
#import "/lib.typ": diorama, example, todo, world
= Preventing Interference <timing>
The protocols as described are very sensitive to the exact timing that the EID counter is
incremented. The fundamental cause for all types of interference is that we spawn a reference and
measurement item with too much delay, and some unexpected entity (or entities) spawn in-between. To
mitigate interference, then, we need that window to be *as short as possible* while still allowing
us to spawn transmission entities in that window.
== Tilesets
The fundamental principle here is to use tile-tick priority (TTP) to set a global order. See
Charlie's great video on TTP for details. #todo[link video]
#todo[fix tileset naming. the tileset is the *structure*. the particular sequence is just one instance of that tileset]
A *tileset* is a sequence of redstone components which all update in the tile tick phase. Components
later in the sequence have greater significance. To make the significance match our left-to-right
reading convention, we diagram them so the signal flows right-to-left. For example:
#diorama(
theta: 160,
phi: 20,
autoplay: true,
loop: true,
world(
"
p 0 -1 0 smooth_stone_slab type=top
p 1 -1 0 smooth_stone_slab type=top
p 2 -1 0 smooth_stone_slab type=top
p 3 -1 0 smooth_stone_slab type=top
p 4 -1 0 smooth_stone_slab type=top
p 0 0 0 repeater facing=west powered=false locked=false delay=1
p 1 0 0 observer facing=west powered=false
p 2 0 0 repeater facing=west powered=false locked=false delay=2
p 3 0 0 comparator facing=west powered=false mode=compare
p 4 0 0 repeater facing=west powered=false locked=false delay=1
t 2
p 0 0 0 powered=true
t 4
p 0 0 0 powered=false
p 1 0 0 powered=true
t 6
p 1 0 0 powered=false
t 8
p 2 0 0 powered=true
t 10
p 3 0 0 powered=true
t 12
p 2 0 0 powered=false
p 4 0 0 powered=true
t 14
p 3 0 0 powered=false
t 16
p 4 0 0 powered=false
t 20
p 0 0 0
",
),
)
This section will cover how to read and construct tilesets that enforce a *global* ordering for use
in wireless redstone.
=== The Tile Tick Priority Queue
The game schedules tile updates through a priority queue; different components have different
priority, so each stage of the tileset iteratively refines the global order. Across the full
tileset, we can enforce an arbitrary global ordering.
#todo[the priority table][
call out here that basic comparators and all other components, so from here on out we're just
going to use comparators for simplicity.
]
Components with different priority always update in priority order, but components with equal
priority update in scheduled order.
#todo[rephrase or remove][
The core principal is that repeaters have higher priority than other components. For example, if a
repeater and comparator are scheduled to activate in the same tick, the repeater always (with one
exception, if the comparator faces into a diode and the repeater does not) activates before the
comparator does. By choosing a regular building pattern, we can avoid this exception entirely.
// Among repeaters, they activate in the order in which they were scheduled. And among
// comparators, they activate in the order in which they are scheduled. But every repeater
// activates before any comparator (aside from that one exception). This gives us a *stable sort*
// which we can use to globally define update order with arbitrary precision.
]
#example[
#todo[this explanation is so janky]
Say these three tilesets are started in the same gametick, `t=0`.
```
<------
1 rep cmp ab
2 cmp rep cd
3 2rep e
<------
```
Once `b`, `d`, and `e` are scheduled, the priority queue looks like this:
```
t=2 [d] [b]
t=4 [e]
```
Now at `t=2`, we process the queue in order.
- `d` activates and schedules `c`.
- `b` activates and schedules `a`.
```
t=4 [e a] [c]
```
Now at `t=4`, the end of the tileset, the lanes will always update in order `3 1 2`
]
So the full picture involves arbitrary components and priorities. As long as all the tilesets have
the same total delay and end at the same time, we can determine a global ordering. However the
general picture is hard to reason about, we basically have to simulate the priority queue to make
predictions. If we restrict the design of the tilesets a bit, there are two simplifications we could
take to make things easier to reason about.
=== Permutation Tilesets
#todo[describe the mixed delay permutation tilesets and the alphabetization procedure]
=== Binary
The simplest tilesets are made entirely of comparators and 2gt repeaters (alternatively: observers
and 2gt repeaters). Repeaters activate before comparators, so if we think of it like sorting words
alphabetically, we can identify repeaters with "A" and comparators with "B".
So, suppose we have a "binary tileset" that is 2gt long. There are two options, A and B. If we
alphabetize these, we see the A (repeater) always executes before the B (comparator). With such a
short tileset, that seems trivial; things get more interesting as we add more elements.
```
<--
cmp (B)
rep (A)
```
Now let's use 2 components for a 4gt tileset. There are now four options, AA, AB, BA, BB. We can
alphabetize these and see the order.
```
<------
cmp cmp (BB)
cmp rep (BA)
rep cmp (AB)
rep rep (AA)
```
To break this down: the bottom two (AA, AB) end in repeaters, so they must come first. Among those,
(AA) comes first. Among the top two (BA, BB), (BA) comes first. It's standard alphabetizing. Just as
the order of the alphabet creates an ordering over all words, the ordering of the comparator and
repeater creates an ordering of all tilesets.
The 6gt tileset. There are now eight options.
```
<---------
...
```
As the tilesets get larger, it's less useful to lay out the entire tileset and more useful to find
the next and previous lanes.
For example, take this 7-diode tileset.
```
cmp rep rep cmp rep cmp cmp
<--------------------------
B A A B A B B
```
We can easily find the next lane by thinking of this not as a *word* but as a *number*. We have two
options, and one is greater than the other.
```
cmp rep rep cmp rep cmp cmp
<--------------------------
B A A B A B B
1 0 0 1 0 1 1
```
We can think of this tileset as a 7-bit binary number, in this case the value 75. We can find the
next lane by simply incrementing by one.
```
1 0 0 1 0 1 1 (75)
+ 1
1 0 0 1 1 0 0 (76)
<--------------------------
cmp rep rep cmp cmp rep rep
```
=== Lexicographic
=== Jamming
== Block Event Delay
== Single-Priority Loops

12
content/network.typ Normal file
View File

@@ -0,0 +1,12 @@
#import "/lib.typ": todo
= Network Protocols
#todo["Network Protocol" is inaccurate]
== Collision Prevention
=== Checkbit
=== Queue
== Load Balancing
== Private Channels
== Self Syncing Protocol

64
lib.typ Normal file
View File

@@ -0,0 +1,64 @@
#let callout(body, kind: none, label: none, outlined: false) = {
html.section(
class: ("callout", kind),
context {
let level = counter(heading).get().len() + 1
heading(label + ":", level: level, numbering: none, outlined: outlined)
body
},
)
}
#let tip = callout.with(kind: "tip", label: "Tip")
#let warn = callout.with(kind: "warn", label: "Warning")
#let note = callout.with(kind: "note", label: "Note")
#let todo(label, ..args) = callout(args.pos().join(), kind: "todo", label: "[TODO] " + label, outlined: true)
#let example(body) = todo("example", body)
#let solution(body) = todo("solution", body)
#let details(body, label: none) = {
html.details({
if label != none {
html.summary(label)
}
body
})
}
#let camera() = {
let attrs = (:)
if orbit != auto { attrs.insert("orbit", if orbit == true { "" } else { "false" }) }
if pan != auto { attrs.insert("pan", if pan == true { "" } else { "false" }) }
if zoom != auto { attrs.insert("zoom", if zoom == true { "" } else { "false" }) }
html.elem("mc-camera", attrs: attrs)
}
#let diorama(
body,
theta: auto,
phi: auto,
radius: auto,
orbit: auto,
pan: auto,
zoom: auto,
timeline: auto,
autoplay: auto,
loop: auto,
subticks: auto,
) = {
let attrs = (:)
if theta != auto { attrs.insert("theta", str(theta)) }
if phi != auto { attrs.insert("phi", str(phi)) }
if radius != auto { attrs.insert("radius", str(radius)) }
if orbit != auto { attrs.insert("orbit", if (orbit) { "" } else { "false" }) }
if pan != auto { attrs.insert("pan", if (pan) { "" } else { "false" }) }
if zoom != auto { attrs.insert("zoom", if (zoom) { "" } else { "false" }) }
if timeline != auto { attrs.insert("timeline", if (timeline) { "" } else { "false" }) }
if autoplay != auto { attrs.insert("autoplay", if (autoplay) { "" } else { "false" }) }
if loop != auto { attrs.insert("loop", if (loop) { "" } else { "false" }) }
if subticks != auto { attrs.insert("subticks", if (subticks) { "" } else { "false" }) }
html.elem("mc-diorama", body, attrs: attrs)
}
#let world(body) = html.script(body, type: "text/mc-world")

30
main.typ Normal file
View File

@@ -0,0 +1,30 @@
#set heading(numbering: "1.1 -")
#set document(title: [The EID Wireless Masterclass])
#show: it => document("index.html", html.html(
lang: "en",
{
html.head({
html.meta(charset: "utf-8")
html.meta(name: "viewport", content: "width=device-width, initial-scale=1")
html.meta(name: "color-scheme", content: "dark light")
html.title(context document.title)
html.link(rel: "stylesheet", href: "/src/style.css")
html.link(rel: "stylesheet", href: "/src/components.css")
html.script(type: "module", src: "/src/components.js")
})
html.body(it)
},
))
#{
include "content/index.typ"
include "content/core.typ"
include "content/data-protocols.typ"
include "content/interference-causes.typ"
include "content/interference-fixes.typ"
include "content/design.typ"
include "content/channels.typ"
include "content/bulk.typ"
include "content/network.typ"
}

View File

@@ -4,13 +4,20 @@ tinymist = "0.15.0"
typst = "0.15.0"
watchexec = "latest"
[tasks.dev]
run = [
"typst watch main.typ bundle --format bundle --features bundle,html --no-serve & vite dev",
]
[tasks.build]
run = [
"typst compile main.typ node_modules/.typst-bundle --format bundle --features bundle,html",
"vite build",
"rm .typ-bundle/*",
"typst compile main.typ .typ-bundle --format bundle --features bundle,html",
"npx vite build",
]
sources = ["!dist", "!node_modules", "!.idea", "**/*.typ", "src/**/*"]
[tasks.dev-vite]
run = "npx vite dev"
[tasks.dev-typ]
run = "typst watch main.typ .typ-bundle --format bundle --features bundle,html --no-serve"
[tasks.dev]
depends = ["dev-vite", "dev-typ"]

902
package-lock.json generated Normal file
View File

@@ -0,0 +1,902 @@
{
"name": "mc-diorama",
"version": "0.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "mc-diorama",
"version": "0.0.0",
"devDependencies": {
"vite": "^8.1.3"
}
},
"node_modules/@emnapi/core": {
"version": "1.11.1",
"resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.11.1.tgz",
"integrity": "sha512-RSvbQmHzdKzNsLYa/wHrbc3KN4sYLKAdPZxqiM2HATqv/SBk2/ENSHpvXGaLOMcsAyz0poEGqkmmKYG3OWiJEQ==",
"dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"@emnapi/wasi-threads": "1.2.2",
"tslib": "^2.4.0"
}
},
"node_modules/@emnapi/runtime": {
"version": "1.11.1",
"resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.11.1.tgz",
"integrity": "sha512-vgj7R3y3Wgx24IQaGPA/R6YFXLHVMOZ0uVEyIQPaWs+rd1AzfEMXlAC22FYwO1XkKR6NPsq7mUandH8oIRdZFw==",
"dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"tslib": "^2.4.0"
}
},
"node_modules/@emnapi/wasi-threads": {
"version": "1.2.2",
"resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.2.2.tgz",
"integrity": "sha512-c95qOXkHdydNKhscBTebqEC1CVAZpyqOfVfBzQ1qgzyl3gfeldUjIggDbIZgDKsHLgnsM+igH7TJ/eAasaVuMA==",
"dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"tslib": "^2.4.0"
}
},
"node_modules/@napi-rs/wasm-runtime": {
"version": "1.1.6",
"resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-1.1.6.tgz",
"integrity": "sha512-ZLv/JdUfkvOy9eCnnBaGfiO+XimbjebAeO+MRQqD/B+FR1tnRN0tpKSJHRbE8sFfS6aqsXZ67TQjfwfsxULVbg==",
"dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"@tybys/wasm-util": "^0.10.3"
},
"funding": {
"type": "github",
"url": "https://github.com/sponsors/Brooooooklyn"
},
"peerDependencies": {
"@emnapi/core": "^1.7.1",
"@emnapi/runtime": "^1.7.1"
}
},
"node_modules/@oxc-project/types": {
"version": "0.139.0",
"resolved": "https://registry.npmjs.org/@oxc-project/types/-/types-0.139.0.tgz",
"integrity": "sha512-r9gHphtCs+1M7J0pw6Sn/hh/Wpa/iQrOOkrNAlVLF/gHq+/CJmHIWKKUUhdWjcD6CIa8idarspCsASiXCXvFUw==",
"dev": true,
"license": "MIT",
"funding": {
"url": "https://github.com/sponsors/Boshen"
}
},
"node_modules/@rolldown/binding-android-arm64": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-android-arm64/-/binding-android-arm64-1.1.5.tgz",
"integrity": "sha512-lZg8fqIv2v7FF237bwMgzGZEJvGL79/s5knJ/i6FmsGF4XXlzccZ4jb+TrFIxtSSxFtIpdsgrPZeMk1I9AFcyQ==",
"cpu": [
"arm64"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"android"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-darwin-arm64": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-arm64/-/binding-darwin-arm64-1.1.5.tgz",
"integrity": "sha512-51Bnx9pNiMRKSUNtBfySkNJ9vMU9Hh3I1ozDd6gyPPYzaXCfnptUcEZxXGYFn+ul2dtcMUiqGR1Yai2K10uoTw==",
"cpu": [
"arm64"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-darwin-x64": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-darwin-x64/-/binding-darwin-x64-1.1.5.tgz",
"integrity": "sha512-Tm+gbfC0aHu1tBA/JvKQh32S0K6YgCHkiAF4/W6xX0K0RmNuc94VeK419dJoE65R5aRxmo+noZQSWrAMF6yb6g==",
"cpu": [
"x64"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-freebsd-x64": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-freebsd-x64/-/binding-freebsd-x64-1.1.5.tgz",
"integrity": "sha512-JMzDKCCXq93YccG5gz3hvOs1oXRKAf0XYpfOS88e+wZrC8Iugj6j68867vrYZkvpDDpKn/KoKORThmchMpF6TA==",
"cpu": [
"x64"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-linux-arm-gnueabihf": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm-gnueabihf/-/binding-linux-arm-gnueabihf-1.1.5.tgz",
"integrity": "sha512-uML21j2K5TfPGutKxub+M+nLjZIrWjXQ5Grx4lCe/nimTj9B4L63zHpjXLl4y0L3mcm2htEQIb06oCG/szerNw==",
"cpu": [
"arm"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-linux-arm64-gnu": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-gnu/-/binding-linux-arm64-gnu-1.1.5.tgz",
"integrity": "sha512-navSiuTMogvnQoZoM/v+l3ZWo50/NTwSHSzheABx/RCnmUPaKwq9qSo4Br2OYRs21+Fz8uFqITZM3H4opOB0/Q==",
"cpu": [
"arm64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-linux-arm64-musl": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-arm64-musl/-/binding-linux-arm64-musl-1.1.5.tgz",
"integrity": "sha512-lAryqH7IteztmCXQXk0etKj4wBQ7Gx5S6LjKhsgp9zb8I5bsuvU/2llH1hDQcjsFeqIsovMVN339/8pUDDBXxA==",
"cpu": [
"arm64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-linux-ppc64-gnu": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-ppc64-gnu/-/binding-linux-ppc64-gnu-1.1.5.tgz",
"integrity": "sha512-fsK/sNBnxzBlL4O1JNrZakVQxPspqpED5dLtNsZS9oOKmtSpdNIzxH2kkol5HYTWJN47sE20ztMJPxfZ89qGOg==",
"cpu": [
"ppc64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-linux-s390x-gnu": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-s390x-gnu/-/binding-linux-s390x-gnu-1.1.5.tgz",
"integrity": "sha512-gLYb4BIadlfTOYT5gO503n8zQjXflgzpD0FcyKh0Mzx3rqCZKnHoJWV9xe1KXUJ5lx2JfcSHr/mhzS0PC/McAA==",
"cpu": [
"s390x"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-linux-x64-gnu": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.1.5.tgz",
"integrity": "sha512-FjcpEKUyJygHgs1o50VYNvkt5+7Le/VEdYt0AkRpkL33MnyQfwr8l5mXwMmfmTbyMPr5vJLC+8/Gd9gXnwU1QQ==",
"cpu": [
"x64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-linux-x64-musl": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-linux-x64-musl/-/binding-linux-x64-musl-1.1.5.tgz",
"integrity": "sha512-Me+PfPI2TMeOQk0gYWfLQZtTktrmzbr8cDboqX83XKc7UrgAi55gF+2dUkWdxd19n55Essp2yeca+O9N5rBxHg==",
"cpu": [
"x64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-openharmony-arm64": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-openharmony-arm64/-/binding-openharmony-arm64-1.1.5.tgz",
"integrity": "sha512-yc5WrLzXks6zCQfn9Oxr8pORKyl/pF+QjHmW/Qx3qu0oyrrNC+y2JLTU1E2rcWYAmzlnqngWXHQjy51VzW70Vw==",
"cpu": [
"arm64"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"openharmony"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-wasm32-wasi": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-wasm32-wasi/-/binding-wasm32-wasi-1.1.5.tgz",
"integrity": "sha512-VbQGPX2b4r48TAMIM2cjgluIM1HYutm4pcTEJsle7iEP7sB1dFqtPLBVbdLAZCxy1txCcPxf4QFf4v8uvltPqA==",
"cpu": [
"wasm32"
],
"dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"@emnapi/core": "1.11.1",
"@emnapi/runtime": "1.11.1",
"@napi-rs/wasm-runtime": "^1.1.6"
},
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-win32-arm64-msvc": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-arm64-msvc/-/binding-win32-arm64-msvc-1.1.5.tgz",
"integrity": "sha512-gHv82k63z4qpV5+Q1y/12KrK0ltWBukVDI8nZcbT7Tt/ZlOIVwppazneq0F93oDxTo3IgAMEDIoQh3E2n6mVsw==",
"cpu": [
"arm64"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/binding-win32-x64-msvc": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/@rolldown/binding-win32-x64-msvc/-/binding-win32-x64-msvc-1.1.5.tgz",
"integrity": "sha512-tTZuDBPw85tEN5PQi1pnEBzDy0Z49HtScLAbD5t6hyeU92A95pRWaSMw1GZZi/RwgSgUIl0xrSlXIT/9QzvYSA==",
"cpu": [
"x64"
],
"dev": true,
"license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
"node": "^20.19.0 || >=22.12.0"
}
},
"node_modules/@rolldown/pluginutils": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.1.tgz",
"integrity": "sha512-2j9bGt5Jh8hj+vPtgzPtl72j0yRxHAyumoo6TNfAjsLB04UtpSvPbPcDcBMxz7n+9CYB0c1GxQFxYRg2jimqGw==",
"dev": true,
"license": "MIT"
},
"node_modules/@tybys/wasm-util": {
"version": "0.10.3",
"resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.3.tgz",
"integrity": "sha512-F3fo1MYrRJYL3zER0OUOmkutjr1Vp23m7OsSgp7nq4SP6OqX6C/56XFIPAl5bt3zaBRjmW7SGz3u/6LwFpYcOg==",
"dev": true,
"license": "MIT",
"optional": true,
"dependencies": {
"tslib": "^2.4.0"
}
},
"node_modules/detect-libc": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.1.2.tgz",
"integrity": "sha512-Btj2BOOO83o3WyH59e8MgXsxEQVcarkUOpEYrubB0urwnN10yQ364rsiByU11nZlqWYZm05i/of7io4mzihBtQ==",
"dev": true,
"license": "Apache-2.0",
"engines": {
"node": ">=8"
}
},
"node_modules/fdir": {
"version": "6.5.0",
"resolved": "https://registry.npmjs.org/fdir/-/fdir-6.5.0.tgz",
"integrity": "sha512-tIbYtZbucOs0BRGqPJkshJUYdL+SDH7dVM8gjy+ERp3WAUjLEFJE+02kanyHtwjWOnwrKYBiwAmM0p4kLJAnXg==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12.0.0"
},
"peerDependencies": {
"picomatch": "^3 || ^4"
},
"peerDependenciesMeta": {
"picomatch": {
"optional": true
}
}
},
"node_modules/fsevents": {
"version": "2.3.3",
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
"integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
"dev": true,
"hasInstallScript": true,
"license": "MIT",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
}
},
"node_modules/lightningcss": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss/-/lightningcss-1.32.0.tgz",
"integrity": "sha512-NXYBzinNrblfraPGyrbPoD19C1h9lfI/1mzgWYvXUTe414Gz/X1FD2XBZSZM7rRTrMA8JL3OtAaGifrIKhQ5yQ==",
"dev": true,
"license": "MPL-2.0",
"dependencies": {
"detect-libc": "^2.0.3"
},
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
},
"optionalDependencies": {
"lightningcss-android-arm64": "1.32.0",
"lightningcss-darwin-arm64": "1.32.0",
"lightningcss-darwin-x64": "1.32.0",
"lightningcss-freebsd-x64": "1.32.0",
"lightningcss-linux-arm-gnueabihf": "1.32.0",
"lightningcss-linux-arm64-gnu": "1.32.0",
"lightningcss-linux-arm64-musl": "1.32.0",
"lightningcss-linux-x64-gnu": "1.32.0",
"lightningcss-linux-x64-musl": "1.32.0",
"lightningcss-win32-arm64-msvc": "1.32.0",
"lightningcss-win32-x64-msvc": "1.32.0"
}
},
"node_modules/lightningcss-android-arm64": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-android-arm64/-/lightningcss-android-arm64-1.32.0.tgz",
"integrity": "sha512-YK7/ClTt4kAK0vo6w3X+Pnm0D2cf2vPHbhOXdoNti1Ga0al1P4TBZhwjATvjNwLEBCnKvjJc2jQgHXH0NEwlAg==",
"cpu": [
"arm64"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
"android"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-darwin-arm64": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-darwin-arm64/-/lightningcss-darwin-arm64-1.32.0.tgz",
"integrity": "sha512-RzeG9Ju5bag2Bv1/lwlVJvBE3q6TtXskdZLLCyfg5pt+HLz9BqlICO7LZM7VHNTTn/5PRhHFBSjk5lc4cmscPQ==",
"cpu": [
"arm64"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-darwin-x64": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-darwin-x64/-/lightningcss-darwin-x64-1.32.0.tgz",
"integrity": "sha512-U+QsBp2m/s2wqpUYT/6wnlagdZbtZdndSmut/NJqlCcMLTWp5muCrID+K5UJ6jqD2BFshejCYXniPDbNh73V8w==",
"cpu": [
"x64"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
"darwin"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-freebsd-x64": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-freebsd-x64/-/lightningcss-freebsd-x64-1.32.0.tgz",
"integrity": "sha512-JCTigedEksZk3tHTTthnMdVfGf61Fky8Ji2E4YjUTEQX14xiy/lTzXnu1vwiZe3bYe0q+SpsSH/CTeDXK6WHig==",
"cpu": [
"x64"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
"freebsd"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-linux-arm-gnueabihf": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm-gnueabihf/-/lightningcss-linux-arm-gnueabihf-1.32.0.tgz",
"integrity": "sha512-x6rnnpRa2GL0zQOkt6rts3YDPzduLpWvwAF6EMhXFVZXD4tPrBkEFqzGowzCsIWsPjqSK+tyNEODUBXeeVHSkw==",
"cpu": [
"arm"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-linux-arm64-gnu": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-gnu/-/lightningcss-linux-arm64-gnu-1.32.0.tgz",
"integrity": "sha512-0nnMyoyOLRJXfbMOilaSRcLH3Jw5z9HDNGfT/gwCPgaDjnx0i8w7vBzFLFR1f6CMLKF8gVbebmkUN3fa/kQJpQ==",
"cpu": [
"arm64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MPL-2.0",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-linux-arm64-musl": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-linux-arm64-musl/-/lightningcss-linux-arm64-musl-1.32.0.tgz",
"integrity": "sha512-UpQkoenr4UJEzgVIYpI80lDFvRmPVg6oqboNHfoH4CQIfNA+HOrZ7Mo7KZP02dC6LjghPQJeBsvXhJod/wnIBg==",
"cpu": [
"arm64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MPL-2.0",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-linux-x64-gnu": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-gnu/-/lightningcss-linux-x64-gnu-1.32.0.tgz",
"integrity": "sha512-V7Qr52IhZmdKPVr+Vtw8o+WLsQJYCTd8loIfpDaMRWGUZfBOYEJeyJIkqGIDMZPwPx24pUMfwSxxI8phr/MbOA==",
"cpu": [
"x64"
],
"dev": true,
"libc": [
"glibc"
],
"license": "MPL-2.0",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-linux-x64-musl": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-linux-x64-musl/-/lightningcss-linux-x64-musl-1.32.0.tgz",
"integrity": "sha512-bYcLp+Vb0awsiXg/80uCRezCYHNg1/l3mt0gzHnWV9XP1W5sKa5/TCdGWaR/zBM2PeF/HbsQv/j2URNOiVuxWg==",
"cpu": [
"x64"
],
"dev": true,
"libc": [
"musl"
],
"license": "MPL-2.0",
"optional": true,
"os": [
"linux"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-win32-arm64-msvc": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-win32-arm64-msvc/-/lightningcss-win32-arm64-msvc-1.32.0.tgz",
"integrity": "sha512-8SbC8BR40pS6baCM8sbtYDSwEVQd4JlFTOlaD3gWGHfThTcABnNDBda6eTZeqbofalIJhFx0qKzgHJmcPTnGdw==",
"cpu": [
"arm64"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/lightningcss-win32-x64-msvc": {
"version": "1.32.0",
"resolved": "https://registry.npmjs.org/lightningcss-win32-x64-msvc/-/lightningcss-win32-x64-msvc-1.32.0.tgz",
"integrity": "sha512-Amq9B/SoZYdDi1kFrojnoqPLxYhQ4Wo5XiL8EVJrVsB8ARoC1PWW6VGtT0WKCemjy8aC+louJnjS7U18x3b06Q==",
"cpu": [
"x64"
],
"dev": true,
"license": "MPL-2.0",
"optional": true,
"os": [
"win32"
],
"engines": {
"node": ">= 12.0.0"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/parcel"
}
},
"node_modules/nanoid": {
"version": "3.3.15",
"resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.15.tgz",
"integrity": "sha512-y7Wygv/7mEOvxTuEQDB8StXdMRBWf1kR/tlhAzBRUFkB2jfcLOAxO/SHmOO2zgz1pVgK29/kyupn059/bCHdjA==",
"dev": true,
"funding": [
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"license": "MIT",
"bin": {
"nanoid": "bin/nanoid.cjs"
},
"engines": {
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
"node_modules/picocolors": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz",
"integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==",
"dev": true,
"license": "ISC"
},
"node_modules/picomatch": {
"version": "4.0.5",
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.5.tgz",
"integrity": "sha512-RvwwcruNjI1ncT5xRakeyS9Lf8lcItv34KD+aif+VH9kduAyfYBipGh12274xtenIPZ119/R9BdTBa8gAwSh0A==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=12"
},
"funding": {
"url": "https://github.com/sponsors/jonschlinkert"
}
},
"node_modules/postcss": {
"version": "8.5.16",
"resolved": "https://registry.npmjs.org/postcss/-/postcss-8.5.16.tgz",
"integrity": "sha512-vuwillviilfKZsg0VGj5R/YwwcHx4SLsIOI/7K6mQkWx+l5cUHTjj5g0AasTBcyXsbfTgrwsUNmVUb5xVwyPwg==",
"dev": true,
"funding": [
{
"type": "opencollective",
"url": "https://opencollective.com/postcss/"
},
{
"type": "tidelift",
"url": "https://tidelift.com/funding/github/npm/postcss"
},
{
"type": "github",
"url": "https://github.com/sponsors/ai"
}
],
"license": "MIT",
"dependencies": {
"nanoid": "^3.3.12",
"picocolors": "^1.1.1",
"source-map-js": "^1.2.1"
},
"engines": {
"node": "^10 || ^12 || >=14"
}
},
"node_modules/rolldown": {
"version": "1.1.5",
"resolved": "https://registry.npmjs.org/rolldown/-/rolldown-1.1.5.tgz",
"integrity": "sha512-t9z29cJjXf/vxQ8dyhCSpt6H6aSwHTk8cT5I3iy6SMXuFpk5mB6PL6XfC8PCwrPTx93udwKUm9HRteAlTGBLiA==",
"dev": true,
"license": "MIT",
"dependencies": {
"@oxc-project/types": "=0.139.0",
"@rolldown/pluginutils": "^1.0.0"
},
"bin": {
"rolldown": "bin/cli.mjs"
},
"engines": {
"node": "^20.19.0 || >=22.12.0"
},
"optionalDependencies": {
"@rolldown/binding-android-arm64": "1.1.5",
"@rolldown/binding-darwin-arm64": "1.1.5",
"@rolldown/binding-darwin-x64": "1.1.5",
"@rolldown/binding-freebsd-x64": "1.1.5",
"@rolldown/binding-linux-arm-gnueabihf": "1.1.5",
"@rolldown/binding-linux-arm64-gnu": "1.1.5",
"@rolldown/binding-linux-arm64-musl": "1.1.5",
"@rolldown/binding-linux-ppc64-gnu": "1.1.5",
"@rolldown/binding-linux-s390x-gnu": "1.1.5",
"@rolldown/binding-linux-x64-gnu": "1.1.5",
"@rolldown/binding-linux-x64-musl": "1.1.5",
"@rolldown/binding-openharmony-arm64": "1.1.5",
"@rolldown/binding-wasm32-wasi": "1.1.5",
"@rolldown/binding-win32-arm64-msvc": "1.1.5",
"@rolldown/binding-win32-x64-msvc": "1.1.5"
}
},
"node_modules/source-map-js": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
"integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
"dev": true,
"license": "BSD-3-Clause",
"engines": {
"node": ">=0.10.0"
}
},
"node_modules/tinyglobby": {
"version": "0.2.17",
"resolved": "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.17.tgz",
"integrity": "sha512-wXR/dYpcqKmfWpEdZjiKJOwCNFndD0DMnrW/cYjVGttEkBfVgcLFHoNrlj47mjOVic9yyNu65alsgF4NQyTa2g==",
"dev": true,
"license": "MIT",
"dependencies": {
"fdir": "^6.5.0",
"picomatch": "^4.0.4"
},
"engines": {
"node": ">=12.0.0"
},
"funding": {
"url": "https://github.com/sponsors/SuperchupuDev"
}
},
"node_modules/tslib": {
"version": "2.8.1",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz",
"integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==",
"dev": true,
"license": "0BSD",
"optional": true
},
"node_modules/vite": {
"version": "8.1.3",
"resolved": "https://registry.npmjs.org/vite/-/vite-8.1.3.tgz",
"integrity": "sha512-Ds+gBRbj0lwRO2Y5hwnUBdxSwlAve9LeRyU4sNnAr0ewW0gWF0n5bgXgUzbgZ49MV9BVUAQUFYVcDUcilUExMA==",
"dev": true,
"license": "MIT",
"dependencies": {
"lightningcss": "^1.32.0",
"picomatch": "^4.0.4",
"postcss": "^8.5.16",
"rolldown": "~1.1.3",
"tinyglobby": "^0.2.17"
},
"bin": {
"vite": "bin/vite.js"
},
"engines": {
"node": "^20.19.0 || >=22.12.0"
},
"funding": {
"url": "https://github.com/vitejs/vite?sponsor=1"
},
"optionalDependencies": {
"fsevents": "~2.3.3"
},
"peerDependencies": {
"@types/node": "^20.19.0 || >=22.12.0",
"@vitejs/devtools": "^0.3.0",
"esbuild": "^0.27.0 || ^0.28.0",
"jiti": ">=1.21.0",
"less": "^4.0.0",
"sass": "^1.70.0",
"sass-embedded": "^1.70.0",
"stylus": ">=0.54.8",
"sugarss": "^5.0.0",
"terser": "^5.16.0",
"tsx": "^4.8.1",
"yaml": "^2.4.2"
},
"peerDependenciesMeta": {
"@types/node": {
"optional": true
},
"@vitejs/devtools": {
"optional": true
},
"esbuild": {
"optional": true
},
"jiti": {
"optional": true
},
"less": {
"optional": true
},
"sass": {
"optional": true
},
"sass-embedded": {
"optional": true
},
"stylus": {
"optional": true
},
"sugarss": {
"optional": true
},
"terser": {
"optional": true
},
"tsx": {
"optional": true
},
"yaml": {
"optional": true
}
}
}
}
}

7
package.json Normal file
View File

@@ -0,0 +1,7 @@
{
"name": "mc-diorama",
"version": "0.0.0",
"devDependencies": {
"vite": "^8.1.3"
}
}

View File

@@ -0,0 +1,118 @@
{
"variants": {
"face=ceiling,facing=east,powered=false": {
"model": "minecraft:block/acacia_button",
"x": 180,
"y": 270
},
"face=ceiling,facing=east,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"x": 180,
"y": 270
},
"face=ceiling,facing=north,powered=false": {
"model": "minecraft:block/acacia_button",
"x": 180,
"y": 180
},
"face=ceiling,facing=north,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"x": 180,
"y": 180
},
"face=ceiling,facing=south,powered=false": {
"model": "minecraft:block/acacia_button",
"x": 180
},
"face=ceiling,facing=south,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"x": 180
},
"face=ceiling,facing=west,powered=false": {
"model": "minecraft:block/acacia_button",
"x": 180,
"y": 90
},
"face=ceiling,facing=west,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"x": 180,
"y": 90
},
"face=floor,facing=east,powered=false": {
"model": "minecraft:block/acacia_button",
"y": 90
},
"face=floor,facing=east,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"y": 90
},
"face=floor,facing=north,powered=false": {
"model": "minecraft:block/acacia_button"
},
"face=floor,facing=north,powered=true": {
"model": "minecraft:block/acacia_button_pressed"
},
"face=floor,facing=south,powered=false": {
"model": "minecraft:block/acacia_button",
"y": 180
},
"face=floor,facing=south,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"y": 180
},
"face=floor,facing=west,powered=false": {
"model": "minecraft:block/acacia_button",
"y": 270
},
"face=floor,facing=west,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"y": 270
},
"face=wall,facing=east,powered=false": {
"model": "minecraft:block/acacia_button",
"uvlock": true,
"x": 90,
"y": 90
},
"face=wall,facing=east,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"uvlock": true,
"x": 90,
"y": 90
},
"face=wall,facing=north,powered=false": {
"model": "minecraft:block/acacia_button",
"uvlock": true,
"x": 90
},
"face=wall,facing=north,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"uvlock": true,
"x": 90
},
"face=wall,facing=south,powered=false": {
"model": "minecraft:block/acacia_button",
"uvlock": true,
"x": 90,
"y": 180
},
"face=wall,facing=south,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"uvlock": true,
"x": 90,
"y": 180
},
"face=wall,facing=west,powered=false": {
"model": "minecraft:block/acacia_button",
"uvlock": true,
"x": 90,
"y": 270
},
"face=wall,facing=west,powered=true": {
"model": "minecraft:block/acacia_button_pressed",
"uvlock": true,
"x": 90,
"y": 270
}
}
}

View File

@@ -0,0 +1,124 @@
{
"variants": {
"facing=east,half=lower,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_bottom_left"
},
"facing=east,half=lower,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_bottom_left_open",
"y": 90
},
"facing=east,half=lower,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_bottom_right"
},
"facing=east,half=lower,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_bottom_right_open",
"y": 270
},
"facing=east,half=upper,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_top_left"
},
"facing=east,half=upper,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_top_left_open",
"y": 90
},
"facing=east,half=upper,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_top_right"
},
"facing=east,half=upper,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_top_right_open",
"y": 270
},
"facing=north,half=lower,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_bottom_left",
"y": 270
},
"facing=north,half=lower,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_bottom_left_open"
},
"facing=north,half=lower,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_bottom_right",
"y": 270
},
"facing=north,half=lower,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_bottom_right_open",
"y": 180
},
"facing=north,half=upper,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_top_left",
"y": 270
},
"facing=north,half=upper,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_top_left_open"
},
"facing=north,half=upper,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_top_right",
"y": 270
},
"facing=north,half=upper,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_top_right_open",
"y": 180
},
"facing=south,half=lower,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_bottom_left",
"y": 90
},
"facing=south,half=lower,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_bottom_left_open",
"y": 180
},
"facing=south,half=lower,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_bottom_right",
"y": 90
},
"facing=south,half=lower,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_bottom_right_open"
},
"facing=south,half=upper,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_top_left",
"y": 90
},
"facing=south,half=upper,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_top_left_open",
"y": 180
},
"facing=south,half=upper,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_top_right",
"y": 90
},
"facing=south,half=upper,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_top_right_open"
},
"facing=west,half=lower,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_bottom_left",
"y": 180
},
"facing=west,half=lower,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_bottom_left_open",
"y": 270
},
"facing=west,half=lower,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_bottom_right",
"y": 180
},
"facing=west,half=lower,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_bottom_right_open",
"y": 90
},
"facing=west,half=upper,hinge=left,open=false": {
"model": "minecraft:block/acacia_door_top_left",
"y": 180
},
"facing=west,half=upper,hinge=left,open=true": {
"model": "minecraft:block/acacia_door_top_left_open",
"y": 270
},
"facing=west,half=upper,hinge=right,open=false": {
"model": "minecraft:block/acacia_door_top_right",
"y": 180
},
"facing=west,half=upper,hinge=right,open=true": {
"model": "minecraft:block/acacia_door_top_right_open",
"y": 90
}
}
}

View File

@@ -0,0 +1,48 @@
{
"multipart": [
{
"apply": {
"model": "minecraft:block/acacia_fence_post"
}
},
{
"apply": {
"model": "minecraft:block/acacia_fence_side",
"uvlock": true
},
"when": {
"north": "true"
}
},
{
"apply": {
"model": "minecraft:block/acacia_fence_side",
"uvlock": true,
"y": 90
},
"when": {
"east": "true"
}
},
{
"apply": {
"model": "minecraft:block/acacia_fence_side",
"uvlock": true,
"y": 180
},
"when": {
"south": "true"
}
},
{
"apply": {
"model": "minecraft:block/acacia_fence_side",
"uvlock": true,
"y": 270
},
"when": {
"west": "true"
}
}
]
}

View File

@@ -0,0 +1,80 @@
{
"variants": {
"facing=east,in_wall=false,open=false": {
"model": "minecraft:block/acacia_fence_gate",
"uvlock": true,
"y": 270
},
"facing=east,in_wall=false,open=true": {
"model": "minecraft:block/acacia_fence_gate_open",
"uvlock": true,
"y": 270
},
"facing=east,in_wall=true,open=false": {
"model": "minecraft:block/acacia_fence_gate_wall",
"uvlock": true,
"y": 270
},
"facing=east,in_wall=true,open=true": {
"model": "minecraft:block/acacia_fence_gate_wall_open",
"uvlock": true,
"y": 270
},
"facing=north,in_wall=false,open=false": {
"model": "minecraft:block/acacia_fence_gate",
"uvlock": true,
"y": 180
},
"facing=north,in_wall=false,open=true": {
"model": "minecraft:block/acacia_fence_gate_open",
"uvlock": true,
"y": 180
},
"facing=north,in_wall=true,open=false": {
"model": "minecraft:block/acacia_fence_gate_wall",
"uvlock": true,
"y": 180
},
"facing=north,in_wall=true,open=true": {
"model": "minecraft:block/acacia_fence_gate_wall_open",
"uvlock": true,
"y": 180
},
"facing=south,in_wall=false,open=false": {
"model": "minecraft:block/acacia_fence_gate",
"uvlock": true
},
"facing=south,in_wall=false,open=true": {
"model": "minecraft:block/acacia_fence_gate_open",
"uvlock": true
},
"facing=south,in_wall=true,open=false": {
"model": "minecraft:block/acacia_fence_gate_wall",
"uvlock": true
},
"facing=south,in_wall=true,open=true": {
"model": "minecraft:block/acacia_fence_gate_wall_open",
"uvlock": true
},
"facing=west,in_wall=false,open=false": {
"model": "minecraft:block/acacia_fence_gate",
"uvlock": true,
"y": 90
},
"facing=west,in_wall=false,open=true": {
"model": "minecraft:block/acacia_fence_gate_open",
"uvlock": true,
"y": 90
},
"facing=west,in_wall=true,open=false": {
"model": "minecraft:block/acacia_fence_gate_wall",
"uvlock": true,
"y": 90
},
"facing=west,in_wall=true,open=true": {
"model": "minecraft:block/acacia_fence_gate_wall_open",
"uvlock": true,
"y": 90
}
}
}

View File

@@ -0,0 +1,124 @@
{
"variants": {
"attached=false,rotation=0": {
"model": "minecraft:block/acacia_hanging_sign_rot_0"
},
"attached=false,rotation=1": {
"model": "minecraft:block/acacia_hanging_sign_rot_1"
},
"attached=false,rotation=10": {
"model": "minecraft:block/acacia_hanging_sign_rot_2",
"y": 180
},
"attached=false,rotation=11": {
"model": "minecraft:block/acacia_hanging_sign_rot_3",
"y": 180
},
"attached=false,rotation=12": {
"model": "minecraft:block/acacia_hanging_sign_rot_0",
"y": 270
},
"attached=false,rotation=13": {
"model": "minecraft:block/acacia_hanging_sign_rot_1",
"y": 270
},
"attached=false,rotation=14": {
"model": "minecraft:block/acacia_hanging_sign_rot_2",
"y": 270
},
"attached=false,rotation=15": {
"model": "minecraft:block/acacia_hanging_sign_rot_3",
"y": 270
},
"attached=false,rotation=2": {
"model": "minecraft:block/acacia_hanging_sign_rot_2"
},
"attached=false,rotation=3": {
"model": "minecraft:block/acacia_hanging_sign_rot_3"
},
"attached=false,rotation=4": {
"model": "minecraft:block/acacia_hanging_sign_rot_0",
"y": 90
},
"attached=false,rotation=5": {
"model": "minecraft:block/acacia_hanging_sign_rot_1",
"y": 90
},
"attached=false,rotation=6": {
"model": "minecraft:block/acacia_hanging_sign_rot_2",
"y": 90
},
"attached=false,rotation=7": {
"model": "minecraft:block/acacia_hanging_sign_rot_3",
"y": 90
},
"attached=false,rotation=8": {
"model": "minecraft:block/acacia_hanging_sign_rot_0",
"y": 180
},
"attached=false,rotation=9": {
"model": "minecraft:block/acacia_hanging_sign_rot_1",
"y": 180
},
"attached=true,rotation=0": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_0"
},
"attached=true,rotation=1": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_1"
},
"attached=true,rotation=10": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_2",
"y": 180
},
"attached=true,rotation=11": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_3",
"y": 180
},
"attached=true,rotation=12": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_0",
"y": 270
},
"attached=true,rotation=13": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_1",
"y": 270
},
"attached=true,rotation=14": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_2",
"y": 270
},
"attached=true,rotation=15": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_3",
"y": 270
},
"attached=true,rotation=2": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_2"
},
"attached=true,rotation=3": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_3"
},
"attached=true,rotation=4": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_0",
"y": 90
},
"attached=true,rotation=5": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_1",
"y": 90
},
"attached=true,rotation=6": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_2",
"y": 90
},
"attached=true,rotation=7": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_3",
"y": 90
},
"attached=true,rotation=8": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_0",
"y": 180
},
"attached=true,rotation=9": {
"model": "minecraft:block/acacia_hanging_sign_attached_rot_1",
"y": 180
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/acacia_leaves"
}
}
}

View File

@@ -0,0 +1,16 @@
{
"variants": {
"axis=x": {
"model": "minecraft:block/acacia_log_horizontal",
"x": 90,
"y": 90
},
"axis=y": {
"model": "minecraft:block/acacia_log"
},
"axis=z": {
"model": "minecraft:block/acacia_log_horizontal",
"x": 90
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/acacia_planks"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"variants": {
"powered=false": {
"model": "minecraft:block/acacia_pressure_plate"
},
"powered=true": {
"model": "minecraft:block/acacia_pressure_plate_down"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/acacia_sapling"
}
}
}

View File

@@ -0,0 +1,402 @@
{
"multipart": [
{
"apply": {
"model": "minecraft:block/acacia_shelf"
},
"when": {
"facing": "north"
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf",
"y": 90
},
"when": {
"facing": "east"
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf",
"y": 180
},
"when": {
"facing": "south"
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf",
"y": 270
},
"when": {
"facing": "west"
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unpowered"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unpowered",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unpowered",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unpowered",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unconnected"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unconnected",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unconnected",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_unconnected",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_left"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_left",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_left",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_left",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_center"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_center",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_center",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_center",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_right"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_right",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_right",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/acacia_shelf_right",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
}
]
}

View File

@@ -0,0 +1,64 @@
{
"variants": {
"rotation=0": {
"model": "minecraft:block/acacia_sign_rot_0"
},
"rotation=1": {
"model": "minecraft:block/acacia_sign_rot_1"
},
"rotation=10": {
"model": "minecraft:block/acacia_sign_rot_2",
"y": 180
},
"rotation=11": {
"model": "minecraft:block/acacia_sign_rot_3",
"y": 180
},
"rotation=12": {
"model": "minecraft:block/acacia_sign_rot_0",
"y": 270
},
"rotation=13": {
"model": "minecraft:block/acacia_sign_rot_1",
"y": 270
},
"rotation=14": {
"model": "minecraft:block/acacia_sign_rot_2",
"y": 270
},
"rotation=15": {
"model": "minecraft:block/acacia_sign_rot_3",
"y": 270
},
"rotation=2": {
"model": "minecraft:block/acacia_sign_rot_2"
},
"rotation=3": {
"model": "minecraft:block/acacia_sign_rot_3"
},
"rotation=4": {
"model": "minecraft:block/acacia_sign_rot_0",
"y": 90
},
"rotation=5": {
"model": "minecraft:block/acacia_sign_rot_1",
"y": 90
},
"rotation=6": {
"model": "minecraft:block/acacia_sign_rot_2",
"y": 90
},
"rotation=7": {
"model": "minecraft:block/acacia_sign_rot_3",
"y": 90
},
"rotation=8": {
"model": "minecraft:block/acacia_sign_rot_0",
"y": 180
},
"rotation=9": {
"model": "minecraft:block/acacia_sign_rot_1",
"y": 180
}
}
}

View File

@@ -0,0 +1,13 @@
{
"variants": {
"type=bottom": {
"model": "minecraft:block/acacia_slab"
},
"type=double": {
"model": "minecraft:block/acacia_planks"
},
"type=top": {
"model": "minecraft:block/acacia_slab_top"
}
}
}

View File

@@ -0,0 +1,209 @@
{
"variants": {
"facing=east,half=bottom,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner"
},
"facing=east,half=bottom,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer"
},
"facing=east,half=bottom,shape=straight": {
"model": "minecraft:block/acacia_stairs"
},
"facing=east,half=top,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=straight": {
"model": "minecraft:block/acacia_stairs",
"uvlock": true,
"x": 180
},
"facing=north,half=bottom,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=straight": {
"model": "minecraft:block/acacia_stairs",
"uvlock": true,
"y": 270
},
"facing=north,half=top,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=straight": {
"model": "minecraft:block/acacia_stairs",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=south,half=bottom,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner"
},
"facing=south,half=bottom,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer"
},
"facing=south,half=bottom,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=straight": {
"model": "minecraft:block/acacia_stairs",
"uvlock": true,
"y": 90
},
"facing=south,half=top,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=straight": {
"model": "minecraft:block/acacia_stairs",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=west,half=bottom,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=straight": {
"model": "minecraft:block/acacia_stairs",
"uvlock": true,
"y": 180
},
"facing=west,half=top,shape=inner_left": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=inner_right": {
"model": "minecraft:block/acacia_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=outer_left": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=outer_right": {
"model": "minecraft:block/acacia_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=straight": {
"model": "minecraft:block/acacia_stairs",
"uvlock": true,
"x": 180,
"y": 180
}
}
}

View File

@@ -0,0 +1,68 @@
{
"variants": {
"facing=east,half=bottom,open=false": {
"model": "minecraft:block/acacia_trapdoor_bottom",
"y": 90
},
"facing=east,half=bottom,open=true": {
"model": "minecraft:block/acacia_trapdoor_open",
"y": 90
},
"facing=east,half=top,open=false": {
"model": "minecraft:block/acacia_trapdoor_top",
"y": 90
},
"facing=east,half=top,open=true": {
"model": "minecraft:block/acacia_trapdoor_open",
"x": 180,
"y": 270
},
"facing=north,half=bottom,open=false": {
"model": "minecraft:block/acacia_trapdoor_bottom"
},
"facing=north,half=bottom,open=true": {
"model": "minecraft:block/acacia_trapdoor_open"
},
"facing=north,half=top,open=false": {
"model": "minecraft:block/acacia_trapdoor_top"
},
"facing=north,half=top,open=true": {
"model": "minecraft:block/acacia_trapdoor_open",
"x": 180,
"y": 180
},
"facing=south,half=bottom,open=false": {
"model": "minecraft:block/acacia_trapdoor_bottom",
"y": 180
},
"facing=south,half=bottom,open=true": {
"model": "minecraft:block/acacia_trapdoor_open",
"y": 180
},
"facing=south,half=top,open=false": {
"model": "minecraft:block/acacia_trapdoor_top",
"y": 180
},
"facing=south,half=top,open=true": {
"model": "minecraft:block/acacia_trapdoor_open",
"x": 180
},
"facing=west,half=bottom,open=false": {
"model": "minecraft:block/acacia_trapdoor_bottom",
"y": 270
},
"facing=west,half=bottom,open=true": {
"model": "minecraft:block/acacia_trapdoor_open",
"y": 270
},
"facing=west,half=top,open=false": {
"model": "minecraft:block/acacia_trapdoor_top",
"y": 270
},
"facing=west,half=top,open=true": {
"model": "minecraft:block/acacia_trapdoor_open",
"x": 180,
"y": 90
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/acacia_wall_hanging_sign",
"y": 270
},
"facing=north": {
"model": "minecraft:block/acacia_wall_hanging_sign",
"y": 180
},
"facing=south": {
"model": "minecraft:block/acacia_wall_hanging_sign"
},
"facing=west": {
"model": "minecraft:block/acacia_wall_hanging_sign",
"y": 90
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/acacia_wall_sign",
"y": 270
},
"facing=north": {
"model": "minecraft:block/acacia_wall_sign",
"y": 180
},
"facing=south": {
"model": "minecraft:block/acacia_wall_sign"
},
"facing=west": {
"model": "minecraft:block/acacia_wall_sign",
"y": 90
}
}
}

View File

@@ -0,0 +1,16 @@
{
"variants": {
"axis=x": {
"model": "minecraft:block/acacia_wood",
"x": 90,
"y": 90
},
"axis=y": {
"model": "minecraft:block/acacia_wood"
},
"axis=z": {
"model": "minecraft:block/acacia_wood",
"x": 90
}
}
}

View File

@@ -0,0 +1,46 @@
{
"variants": {
"powered=false,shape=ascending_east": {
"model": "minecraft:block/activator_rail_raised_ne",
"y": 90
},
"powered=false,shape=ascending_north": {
"model": "minecraft:block/activator_rail_raised_ne"
},
"powered=false,shape=ascending_south": {
"model": "minecraft:block/activator_rail_raised_sw"
},
"powered=false,shape=ascending_west": {
"model": "minecraft:block/activator_rail_raised_sw",
"y": 90
},
"powered=false,shape=east_west": {
"model": "minecraft:block/activator_rail",
"y": 90
},
"powered=false,shape=north_south": {
"model": "minecraft:block/activator_rail"
},
"powered=true,shape=ascending_east": {
"model": "minecraft:block/activator_rail_on_raised_ne",
"y": 90
},
"powered=true,shape=ascending_north": {
"model": "minecraft:block/activator_rail_on_raised_ne"
},
"powered=true,shape=ascending_south": {
"model": "minecraft:block/activator_rail_on_raised_sw"
},
"powered=true,shape=ascending_west": {
"model": "minecraft:block/activator_rail_on_raised_sw",
"y": 90
},
"powered=true,shape=east_west": {
"model": "minecraft:block/activator_rail_on",
"y": 90
},
"powered=true,shape=north_south": {
"model": "minecraft:block/activator_rail_on"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/air"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/allium"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/amethyst_block"
}
}
}

View File

@@ -0,0 +1,30 @@
{
"variants": {
"facing=down": {
"model": "minecraft:block/amethyst_cluster",
"x": 180
},
"facing=east": {
"model": "minecraft:block/amethyst_cluster",
"x": 90,
"y": 90
},
"facing=north": {
"model": "minecraft:block/amethyst_cluster",
"x": 90
},
"facing=south": {
"model": "minecraft:block/amethyst_cluster",
"x": 90,
"y": 180
},
"facing=up": {
"model": "minecraft:block/amethyst_cluster"
},
"facing=west": {
"model": "minecraft:block/amethyst_cluster",
"x": 90,
"y": 270
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/ancient_debris"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/andesite"
}
}
}

View File

@@ -0,0 +1,13 @@
{
"variants": {
"type=bottom": {
"model": "minecraft:block/andesite_slab"
},
"type=double": {
"model": "minecraft:block/andesite"
},
"type=top": {
"model": "minecraft:block/andesite_slab_top"
}
}
}

View File

@@ -0,0 +1,209 @@
{
"variants": {
"facing=east,half=bottom,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner"
},
"facing=east,half=bottom,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer"
},
"facing=east,half=bottom,shape=straight": {
"model": "minecraft:block/andesite_stairs"
},
"facing=east,half=top,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=straight": {
"model": "minecraft:block/andesite_stairs",
"uvlock": true,
"x": 180
},
"facing=north,half=bottom,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=straight": {
"model": "minecraft:block/andesite_stairs",
"uvlock": true,
"y": 270
},
"facing=north,half=top,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=straight": {
"model": "minecraft:block/andesite_stairs",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=south,half=bottom,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner"
},
"facing=south,half=bottom,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer"
},
"facing=south,half=bottom,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=straight": {
"model": "minecraft:block/andesite_stairs",
"uvlock": true,
"y": 90
},
"facing=south,half=top,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=straight": {
"model": "minecraft:block/andesite_stairs",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=west,half=bottom,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=straight": {
"model": "minecraft:block/andesite_stairs",
"uvlock": true,
"y": 180
},
"facing=west,half=top,shape=inner_left": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=inner_right": {
"model": "minecraft:block/andesite_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=outer_left": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=outer_right": {
"model": "minecraft:block/andesite_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=straight": {
"model": "minecraft:block/andesite_stairs",
"uvlock": true,
"x": 180,
"y": 180
}
}
}

View File

@@ -0,0 +1,90 @@
{
"multipart": [
{
"apply": {
"model": "minecraft:block/andesite_wall_post"
},
"when": {
"up": "true"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side",
"uvlock": true
},
"when": {
"north": "low"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side",
"uvlock": true,
"y": 90
},
"when": {
"east": "low"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side",
"uvlock": true,
"y": 180
},
"when": {
"south": "low"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side",
"uvlock": true,
"y": 270
},
"when": {
"west": "low"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side_tall",
"uvlock": true
},
"when": {
"north": "tall"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side_tall",
"uvlock": true,
"y": 90
},
"when": {
"east": "tall"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side_tall",
"uvlock": true,
"y": 180
},
"when": {
"south": "tall"
}
},
{
"apply": {
"model": "minecraft:block/andesite_wall_side_tall",
"uvlock": true,
"y": 270
},
"when": {
"west": "tall"
}
}
]
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/anvil",
"y": 270
},
"facing=north": {
"model": "minecraft:block/anvil",
"y": 180
},
"facing=south": {
"model": "minecraft:block/anvil"
},
"facing=west": {
"model": "minecraft:block/anvil",
"y": 90
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/attached_melon_stem",
"y": 180
},
"facing=north": {
"model": "minecraft:block/attached_melon_stem",
"y": 90
},
"facing=south": {
"model": "minecraft:block/attached_melon_stem",
"y": 270
},
"facing=west": {
"model": "minecraft:block/attached_melon_stem"
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/attached_pumpkin_stem",
"y": 180
},
"facing=north": {
"model": "minecraft:block/attached_pumpkin_stem",
"y": 90
},
"facing=south": {
"model": "minecraft:block/attached_pumpkin_stem",
"y": 270
},
"facing=west": {
"model": "minecraft:block/attached_pumpkin_stem"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/azalea"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/azalea_leaves"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/azure_bluet"
}
}
}

View File

@@ -0,0 +1,58 @@
{
"multipart": [
{
"apply": [
{
"model": "minecraft:block/bamboo1_age0"
},
{
"model": "minecraft:block/bamboo2_age0"
},
{
"model": "minecraft:block/bamboo3_age0"
},
{
"model": "minecraft:block/bamboo4_age0"
}
],
"when": {
"age": "0"
}
},
{
"apply": [
{
"model": "minecraft:block/bamboo1_age1"
},
{
"model": "minecraft:block/bamboo2_age1"
},
{
"model": "minecraft:block/bamboo3_age1"
},
{
"model": "minecraft:block/bamboo4_age1"
}
],
"when": {
"age": "1"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_small_leaves"
},
"when": {
"leaves": "small"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_large_leaves"
},
"when": {
"leaves": "large"
}
}
]
}

View File

@@ -0,0 +1,13 @@
{
"variants": {
"axis=x": {
"model": "minecraft:block/bamboo_block_x"
},
"axis=y": {
"model": "minecraft:block/bamboo_block_y"
},
"axis=z": {
"model": "minecraft:block/bamboo_block_z"
}
}
}

View File

@@ -0,0 +1,118 @@
{
"variants": {
"face=ceiling,facing=east,powered=false": {
"model": "minecraft:block/bamboo_button",
"x": 180,
"y": 270
},
"face=ceiling,facing=east,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"x": 180,
"y": 270
},
"face=ceiling,facing=north,powered=false": {
"model": "minecraft:block/bamboo_button",
"x": 180,
"y": 180
},
"face=ceiling,facing=north,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"x": 180,
"y": 180
},
"face=ceiling,facing=south,powered=false": {
"model": "minecraft:block/bamboo_button",
"x": 180
},
"face=ceiling,facing=south,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"x": 180
},
"face=ceiling,facing=west,powered=false": {
"model": "minecraft:block/bamboo_button",
"x": 180,
"y": 90
},
"face=ceiling,facing=west,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"x": 180,
"y": 90
},
"face=floor,facing=east,powered=false": {
"model": "minecraft:block/bamboo_button",
"y": 90
},
"face=floor,facing=east,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"y": 90
},
"face=floor,facing=north,powered=false": {
"model": "minecraft:block/bamboo_button"
},
"face=floor,facing=north,powered=true": {
"model": "minecraft:block/bamboo_button_pressed"
},
"face=floor,facing=south,powered=false": {
"model": "minecraft:block/bamboo_button",
"y": 180
},
"face=floor,facing=south,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"y": 180
},
"face=floor,facing=west,powered=false": {
"model": "minecraft:block/bamboo_button",
"y": 270
},
"face=floor,facing=west,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"y": 270
},
"face=wall,facing=east,powered=false": {
"model": "minecraft:block/bamboo_button",
"uvlock": true,
"x": 90,
"y": 90
},
"face=wall,facing=east,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"uvlock": true,
"x": 90,
"y": 90
},
"face=wall,facing=north,powered=false": {
"model": "minecraft:block/bamboo_button",
"uvlock": true,
"x": 90
},
"face=wall,facing=north,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"uvlock": true,
"x": 90
},
"face=wall,facing=south,powered=false": {
"model": "minecraft:block/bamboo_button",
"uvlock": true,
"x": 90,
"y": 180
},
"face=wall,facing=south,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"uvlock": true,
"x": 90,
"y": 180
},
"face=wall,facing=west,powered=false": {
"model": "minecraft:block/bamboo_button",
"uvlock": true,
"x": 90,
"y": 270
},
"face=wall,facing=west,powered=true": {
"model": "minecraft:block/bamboo_button_pressed",
"uvlock": true,
"x": 90,
"y": 270
}
}
}

View File

@@ -0,0 +1,124 @@
{
"variants": {
"facing=east,half=lower,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_bottom_left"
},
"facing=east,half=lower,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_bottom_left_open",
"y": 90
},
"facing=east,half=lower,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_bottom_right"
},
"facing=east,half=lower,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_bottom_right_open",
"y": 270
},
"facing=east,half=upper,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_top_left"
},
"facing=east,half=upper,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_top_left_open",
"y": 90
},
"facing=east,half=upper,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_top_right"
},
"facing=east,half=upper,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_top_right_open",
"y": 270
},
"facing=north,half=lower,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_bottom_left",
"y": 270
},
"facing=north,half=lower,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_bottom_left_open"
},
"facing=north,half=lower,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_bottom_right",
"y": 270
},
"facing=north,half=lower,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_bottom_right_open",
"y": 180
},
"facing=north,half=upper,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_top_left",
"y": 270
},
"facing=north,half=upper,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_top_left_open"
},
"facing=north,half=upper,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_top_right",
"y": 270
},
"facing=north,half=upper,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_top_right_open",
"y": 180
},
"facing=south,half=lower,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_bottom_left",
"y": 90
},
"facing=south,half=lower,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_bottom_left_open",
"y": 180
},
"facing=south,half=lower,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_bottom_right",
"y": 90
},
"facing=south,half=lower,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_bottom_right_open"
},
"facing=south,half=upper,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_top_left",
"y": 90
},
"facing=south,half=upper,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_top_left_open",
"y": 180
},
"facing=south,half=upper,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_top_right",
"y": 90
},
"facing=south,half=upper,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_top_right_open"
},
"facing=west,half=lower,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_bottom_left",
"y": 180
},
"facing=west,half=lower,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_bottom_left_open",
"y": 270
},
"facing=west,half=lower,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_bottom_right",
"y": 180
},
"facing=west,half=lower,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_bottom_right_open",
"y": 90
},
"facing=west,half=upper,hinge=left,open=false": {
"model": "minecraft:block/bamboo_door_top_left",
"y": 180
},
"facing=west,half=upper,hinge=left,open=true": {
"model": "minecraft:block/bamboo_door_top_left_open",
"y": 270
},
"facing=west,half=upper,hinge=right,open=false": {
"model": "minecraft:block/bamboo_door_top_right",
"y": 180
},
"facing=west,half=upper,hinge=right,open=true": {
"model": "minecraft:block/bamboo_door_top_right_open",
"y": 90
}
}
}

View File

@@ -0,0 +1,41 @@
{
"multipart": [
{
"apply": {
"model": "minecraft:block/bamboo_fence_post"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_fence_side_north"
},
"when": {
"north": "true"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_fence_side_east"
},
"when": {
"east": "true"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_fence_side_south"
},
"when": {
"south": "true"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_fence_side_west"
},
"when": {
"west": "true"
}
}
]
}

View File

@@ -0,0 +1,64 @@
{
"variants": {
"facing=east,in_wall=false,open=false": {
"model": "minecraft:block/bamboo_fence_gate",
"y": 270
},
"facing=east,in_wall=false,open=true": {
"model": "minecraft:block/bamboo_fence_gate_open",
"y": 270
},
"facing=east,in_wall=true,open=false": {
"model": "minecraft:block/bamboo_fence_gate_wall",
"y": 270
},
"facing=east,in_wall=true,open=true": {
"model": "minecraft:block/bamboo_fence_gate_wall_open",
"y": 270
},
"facing=north,in_wall=false,open=false": {
"model": "minecraft:block/bamboo_fence_gate",
"y": 180
},
"facing=north,in_wall=false,open=true": {
"model": "minecraft:block/bamboo_fence_gate_open",
"y": 180
},
"facing=north,in_wall=true,open=false": {
"model": "minecraft:block/bamboo_fence_gate_wall",
"y": 180
},
"facing=north,in_wall=true,open=true": {
"model": "minecraft:block/bamboo_fence_gate_wall_open",
"y": 180
},
"facing=south,in_wall=false,open=false": {
"model": "minecraft:block/bamboo_fence_gate"
},
"facing=south,in_wall=false,open=true": {
"model": "minecraft:block/bamboo_fence_gate_open"
},
"facing=south,in_wall=true,open=false": {
"model": "minecraft:block/bamboo_fence_gate_wall"
},
"facing=south,in_wall=true,open=true": {
"model": "minecraft:block/bamboo_fence_gate_wall_open"
},
"facing=west,in_wall=false,open=false": {
"model": "minecraft:block/bamboo_fence_gate",
"y": 90
},
"facing=west,in_wall=false,open=true": {
"model": "minecraft:block/bamboo_fence_gate_open",
"y": 90
},
"facing=west,in_wall=true,open=false": {
"model": "minecraft:block/bamboo_fence_gate_wall",
"y": 90
},
"facing=west,in_wall=true,open=true": {
"model": "minecraft:block/bamboo_fence_gate_wall_open",
"y": 90
}
}
}

View File

@@ -0,0 +1,124 @@
{
"variants": {
"attached=false,rotation=0": {
"model": "minecraft:block/bamboo_hanging_sign_rot_0"
},
"attached=false,rotation=1": {
"model": "minecraft:block/bamboo_hanging_sign_rot_1"
},
"attached=false,rotation=10": {
"model": "minecraft:block/bamboo_hanging_sign_rot_2",
"y": 180
},
"attached=false,rotation=11": {
"model": "minecraft:block/bamboo_hanging_sign_rot_3",
"y": 180
},
"attached=false,rotation=12": {
"model": "minecraft:block/bamboo_hanging_sign_rot_0",
"y": 270
},
"attached=false,rotation=13": {
"model": "minecraft:block/bamboo_hanging_sign_rot_1",
"y": 270
},
"attached=false,rotation=14": {
"model": "minecraft:block/bamboo_hanging_sign_rot_2",
"y": 270
},
"attached=false,rotation=15": {
"model": "minecraft:block/bamboo_hanging_sign_rot_3",
"y": 270
},
"attached=false,rotation=2": {
"model": "minecraft:block/bamboo_hanging_sign_rot_2"
},
"attached=false,rotation=3": {
"model": "minecraft:block/bamboo_hanging_sign_rot_3"
},
"attached=false,rotation=4": {
"model": "minecraft:block/bamboo_hanging_sign_rot_0",
"y": 90
},
"attached=false,rotation=5": {
"model": "minecraft:block/bamboo_hanging_sign_rot_1",
"y": 90
},
"attached=false,rotation=6": {
"model": "minecraft:block/bamboo_hanging_sign_rot_2",
"y": 90
},
"attached=false,rotation=7": {
"model": "minecraft:block/bamboo_hanging_sign_rot_3",
"y": 90
},
"attached=false,rotation=8": {
"model": "minecraft:block/bamboo_hanging_sign_rot_0",
"y": 180
},
"attached=false,rotation=9": {
"model": "minecraft:block/bamboo_hanging_sign_rot_1",
"y": 180
},
"attached=true,rotation=0": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_0"
},
"attached=true,rotation=1": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_1"
},
"attached=true,rotation=10": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_2",
"y": 180
},
"attached=true,rotation=11": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_3",
"y": 180
},
"attached=true,rotation=12": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_0",
"y": 270
},
"attached=true,rotation=13": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_1",
"y": 270
},
"attached=true,rotation=14": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_2",
"y": 270
},
"attached=true,rotation=15": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_3",
"y": 270
},
"attached=true,rotation=2": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_2"
},
"attached=true,rotation=3": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_3"
},
"attached=true,rotation=4": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_0",
"y": 90
},
"attached=true,rotation=5": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_1",
"y": 90
},
"attached=true,rotation=6": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_2",
"y": 90
},
"attached=true,rotation=7": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_3",
"y": 90
},
"attached=true,rotation=8": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_0",
"y": 180
},
"attached=true,rotation=9": {
"model": "minecraft:block/bamboo_hanging_sign_attached_rot_1",
"y": 180
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/bamboo_mosaic"
}
}
}

View File

@@ -0,0 +1,13 @@
{
"variants": {
"type=bottom": {
"model": "minecraft:block/bamboo_mosaic_slab"
},
"type=double": {
"model": "minecraft:block/bamboo_mosaic"
},
"type=top": {
"model": "minecraft:block/bamboo_mosaic_slab_top"
}
}
}

View File

@@ -0,0 +1,209 @@
{
"variants": {
"facing=east,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner"
},
"facing=east,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer"
},
"facing=east,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs"
},
"facing=east,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs",
"uvlock": true,
"x": 180
},
"facing=north,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs",
"uvlock": true,
"y": 270
},
"facing=north,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=south,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner"
},
"facing=south,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer"
},
"facing=south,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs",
"uvlock": true,
"y": 90
},
"facing=south,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=west,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs",
"uvlock": true,
"y": 180
},
"facing=west,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_mosaic_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=straight": {
"model": "minecraft:block/bamboo_mosaic_stairs",
"uvlock": true,
"x": 180,
"y": 180
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/bamboo_planks"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"variants": {
"powered=false": {
"model": "minecraft:block/bamboo_pressure_plate"
},
"powered=true": {
"model": "minecraft:block/bamboo_pressure_plate_down"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/bamboo_sapling"
}
}
}

View File

@@ -0,0 +1,402 @@
{
"multipart": [
{
"apply": {
"model": "minecraft:block/bamboo_shelf"
},
"when": {
"facing": "north"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf",
"y": 90
},
"when": {
"facing": "east"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf",
"y": 180
},
"when": {
"facing": "south"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf",
"y": 270
},
"when": {
"facing": "west"
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unpowered"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unpowered",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unpowered",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unpowered",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unconnected"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unconnected",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unconnected",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_unconnected",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_left"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_left",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_left",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_left",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_center"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_center",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_center",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_center",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_right"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_right",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_right",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/bamboo_shelf_right",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
}
]
}

View File

@@ -0,0 +1,64 @@
{
"variants": {
"rotation=0": {
"model": "minecraft:block/bamboo_sign_rot_0"
},
"rotation=1": {
"model": "minecraft:block/bamboo_sign_rot_1"
},
"rotation=10": {
"model": "minecraft:block/bamboo_sign_rot_2",
"y": 180
},
"rotation=11": {
"model": "minecraft:block/bamboo_sign_rot_3",
"y": 180
},
"rotation=12": {
"model": "minecraft:block/bamboo_sign_rot_0",
"y": 270
},
"rotation=13": {
"model": "minecraft:block/bamboo_sign_rot_1",
"y": 270
},
"rotation=14": {
"model": "minecraft:block/bamboo_sign_rot_2",
"y": 270
},
"rotation=15": {
"model": "minecraft:block/bamboo_sign_rot_3",
"y": 270
},
"rotation=2": {
"model": "minecraft:block/bamboo_sign_rot_2"
},
"rotation=3": {
"model": "minecraft:block/bamboo_sign_rot_3"
},
"rotation=4": {
"model": "minecraft:block/bamboo_sign_rot_0",
"y": 90
},
"rotation=5": {
"model": "minecraft:block/bamboo_sign_rot_1",
"y": 90
},
"rotation=6": {
"model": "minecraft:block/bamboo_sign_rot_2",
"y": 90
},
"rotation=7": {
"model": "minecraft:block/bamboo_sign_rot_3",
"y": 90
},
"rotation=8": {
"model": "minecraft:block/bamboo_sign_rot_0",
"y": 180
},
"rotation=9": {
"model": "minecraft:block/bamboo_sign_rot_1",
"y": 180
}
}
}

View File

@@ -0,0 +1,13 @@
{
"variants": {
"type=bottom": {
"model": "minecraft:block/bamboo_slab"
},
"type=double": {
"model": "minecraft:block/bamboo_planks"
},
"type=top": {
"model": "minecraft:block/bamboo_slab_top"
}
}
}

View File

@@ -0,0 +1,209 @@
{
"variants": {
"facing=east,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner"
},
"facing=east,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer"
},
"facing=east,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_stairs"
},
"facing=east,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=straight": {
"model": "minecraft:block/bamboo_stairs",
"uvlock": true,
"x": 180
},
"facing=north,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_stairs",
"uvlock": true,
"y": 270
},
"facing=north,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=straight": {
"model": "minecraft:block/bamboo_stairs",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=south,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner"
},
"facing=south,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer"
},
"facing=south,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_stairs",
"uvlock": true,
"y": 90
},
"facing=south,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=straight": {
"model": "minecraft:block/bamboo_stairs",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=west,half=bottom,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=straight": {
"model": "minecraft:block/bamboo_stairs",
"uvlock": true,
"y": 180
},
"facing=west,half=top,shape=inner_left": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=inner_right": {
"model": "minecraft:block/bamboo_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=outer_left": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=outer_right": {
"model": "minecraft:block/bamboo_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=straight": {
"model": "minecraft:block/bamboo_stairs",
"uvlock": true,
"x": 180,
"y": 180
}
}
}

View File

@@ -0,0 +1,68 @@
{
"variants": {
"facing=east,half=bottom,open=false": {
"model": "minecraft:block/bamboo_trapdoor_bottom",
"y": 90
},
"facing=east,half=bottom,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open",
"y": 90
},
"facing=east,half=top,open=false": {
"model": "minecraft:block/bamboo_trapdoor_top",
"y": 90
},
"facing=east,half=top,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open",
"x": 180,
"y": 270
},
"facing=north,half=bottom,open=false": {
"model": "minecraft:block/bamboo_trapdoor_bottom"
},
"facing=north,half=bottom,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open"
},
"facing=north,half=top,open=false": {
"model": "minecraft:block/bamboo_trapdoor_top"
},
"facing=north,half=top,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open",
"x": 180,
"y": 180
},
"facing=south,half=bottom,open=false": {
"model": "minecraft:block/bamboo_trapdoor_bottom",
"y": 180
},
"facing=south,half=bottom,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open",
"y": 180
},
"facing=south,half=top,open=false": {
"model": "minecraft:block/bamboo_trapdoor_top",
"y": 180
},
"facing=south,half=top,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open",
"x": 180
},
"facing=west,half=bottom,open=false": {
"model": "minecraft:block/bamboo_trapdoor_bottom",
"y": 270
},
"facing=west,half=bottom,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open",
"y": 270
},
"facing=west,half=top,open=false": {
"model": "minecraft:block/bamboo_trapdoor_top",
"y": 270
},
"facing=west,half=top,open=true": {
"model": "minecraft:block/bamboo_trapdoor_open",
"x": 180,
"y": 90
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/bamboo_wall_hanging_sign",
"y": 270
},
"facing=north": {
"model": "minecraft:block/bamboo_wall_hanging_sign",
"y": 180
},
"facing=south": {
"model": "minecraft:block/bamboo_wall_hanging_sign"
},
"facing=west": {
"model": "minecraft:block/bamboo_wall_hanging_sign",
"y": 90
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/bamboo_wall_sign",
"y": 270
},
"facing=north": {
"model": "minecraft:block/bamboo_wall_sign",
"y": 180
},
"facing=south": {
"model": "minecraft:block/bamboo_wall_sign"
},
"facing=west": {
"model": "minecraft:block/bamboo_wall_sign",
"y": 90
}
}
}

View File

@@ -0,0 +1,56 @@
{
"variants": {
"facing=down,open=false": {
"model": "minecraft:block/barrel",
"x": 180
},
"facing=down,open=true": {
"model": "minecraft:block/barrel_open",
"x": 180
},
"facing=east,open=false": {
"model": "minecraft:block/barrel",
"x": 90,
"y": 90
},
"facing=east,open=true": {
"model": "minecraft:block/barrel_open",
"x": 90,
"y": 90
},
"facing=north,open=false": {
"model": "minecraft:block/barrel",
"x": 90
},
"facing=north,open=true": {
"model": "minecraft:block/barrel_open",
"x": 90
},
"facing=south,open=false": {
"model": "minecraft:block/barrel",
"x": 90,
"y": 180
},
"facing=south,open=true": {
"model": "minecraft:block/barrel_open",
"x": 90,
"y": 180
},
"facing=up,open=false": {
"model": "minecraft:block/barrel"
},
"facing=up,open=true": {
"model": "minecraft:block/barrel_open"
},
"facing=west,open=false": {
"model": "minecraft:block/barrel",
"x": 90,
"y": 270
},
"facing=west,open=true": {
"model": "minecraft:block/barrel_open",
"x": 90,
"y": 270
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/barrier"
}
}
}

View File

@@ -0,0 +1,16 @@
{
"variants": {
"axis=x": {
"model": "minecraft:block/basalt",
"x": 90,
"y": 90
},
"axis=y": {
"model": "minecraft:block/basalt"
},
"axis=z": {
"model": "minecraft:block/basalt",
"x": 90
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/beacon"
}
}
}

View File

@@ -0,0 +1,20 @@
{
"variants": {
"": [
{
"model": "minecraft:block/bedrock"
},
{
"model": "minecraft:block/bedrock_mirrored"
},
{
"model": "minecraft:block/bedrock",
"y": 180
},
{
"model": "minecraft:block/bedrock_mirrored",
"y": 180
}
]
}
}

View File

@@ -0,0 +1,94 @@
{
"variants": {
"facing=east,honey_level=0": {
"y": 90,
"model": "minecraft:block/bee_nest_empty"
},
"facing=east,honey_level=1": {
"y": 90,
"model": "minecraft:block/bee_nest_filled_1"
},
"facing=east,honey_level=2": {
"y": 90,
"model": "minecraft:block/bee_nest_filled_2"
},
"facing=east,honey_level=3": {
"y": 90,
"model": "minecraft:block/bee_nest_filled_3"
},
"facing=east,honey_level=4": {
"y": 90,
"model": "minecraft:block/bee_nest_filled_4"
},
"facing=east,honey_level=5": {
"y": 90,
"model": "minecraft:block/bee_nest_honey"
},
"facing=north,honey_level=0": {
"model": "minecraft:block/bee_nest_empty"
},
"facing=north,honey_level=1": {
"model": "minecraft:block/bee_nest_filled_1"
},
"facing=north,honey_level=2": {
"model": "minecraft:block/bee_nest_filled_2"
},
"facing=north,honey_level=3": {
"model": "minecraft:block/bee_nest_filled_3"
},
"facing=north,honey_level=4": {
"model": "minecraft:block/bee_nest_filled_4"
},
"facing=north,honey_level=5": {
"model": "minecraft:block/bee_nest_honey"
},
"facing=south,honey_level=0": {
"y": 180,
"model": "minecraft:block/bee_nest_empty"
},
"facing=south,honey_level=1": {
"y": 180,
"model": "minecraft:block/bee_nest_filled_1"
},
"facing=south,honey_level=2": {
"y": 180,
"model": "minecraft:block/bee_nest_filled_2"
},
"facing=south,honey_level=3": {
"y": 180,
"model": "minecraft:block/bee_nest_filled_3"
},
"facing=south,honey_level=4": {
"y": 180,
"model": "minecraft:block/bee_nest_filled_4"
},
"facing=south,honey_level=5": {
"y": 180,
"model": "minecraft:block/bee_nest_honey"
},
"facing=west,honey_level=0": {
"y": 270,
"model": "minecraft:block/bee_nest_empty"
},
"facing=west,honey_level=1": {
"y": 270,
"model": "minecraft:block/bee_nest_filled_1"
},
"facing=west,honey_level=2": {
"y": 270,
"model": "minecraft:block/bee_nest_filled_2"
},
"facing=west,honey_level=3": {
"y": 270,
"model": "minecraft:block/bee_nest_filled_3"
},
"facing=west,honey_level=4": {
"y": 270,
"model": "minecraft:block/bee_nest_filled_4"
},
"facing=west,honey_level=5": {
"y": 270,
"model": "minecraft:block/bee_nest_honey"
}
}
}

View File

@@ -0,0 +1,94 @@
{
"variants": {
"facing=east,honey_level=0": {
"y": 90,
"model": "minecraft:block/beehive_empty"
},
"facing=east,honey_level=1": {
"y": 90,
"model": "minecraft:block/beehive_filled_1"
},
"facing=east,honey_level=2": {
"y": 90,
"model": "minecraft:block/beehive_filled_2"
},
"facing=east,honey_level=3": {
"y": 90,
"model": "minecraft:block/beehive_filled_3"
},
"facing=east,honey_level=4": {
"y": 90,
"model": "minecraft:block/beehive_filled_4"
},
"facing=east,honey_level=5": {
"y": 90,
"model": "minecraft:block/beehive_honey"
},
"facing=north,honey_level=0": {
"model": "minecraft:block/beehive_empty"
},
"facing=north,honey_level=1": {
"model": "minecraft:block/beehive_filled_1"
},
"facing=north,honey_level=2": {
"model": "minecraft:block/beehive_filled_2"
},
"facing=north,honey_level=3": {
"model": "minecraft:block/beehive_filled_3"
},
"facing=north,honey_level=4": {
"model": "minecraft:block/beehive_filled_4"
},
"facing=north,honey_level=5": {
"model": "minecraft:block/beehive_honey"
},
"facing=south,honey_level=0": {
"y": 180,
"model": "minecraft:block/beehive_empty"
},
"facing=south,honey_level=1": {
"y": 180,
"model": "minecraft:block/beehive_filled_1"
},
"facing=south,honey_level=2": {
"y": 180,
"model": "minecraft:block/beehive_filled_2"
},
"facing=south,honey_level=3": {
"y": 180,
"model": "minecraft:block/beehive_filled_3"
},
"facing=south,honey_level=4": {
"y": 180,
"model": "minecraft:block/beehive_filled_4"
},
"facing=south,honey_level=5": {
"y": 180,
"model": "minecraft:block/beehive_honey"
},
"facing=west,honey_level=0": {
"y": 270,
"model": "minecraft:block/beehive_empty"
},
"facing=west,honey_level=1": {
"y": 270,
"model": "minecraft:block/beehive_filled_1"
},
"facing=west,honey_level=2": {
"y": 270,
"model": "minecraft:block/beehive_filled_2"
},
"facing=west,honey_level=3": {
"y": 270,
"model": "minecraft:block/beehive_filled_3"
},
"facing=west,honey_level=4": {
"y": 270,
"model": "minecraft:block/beehive_filled_4"
},
"facing=west,honey_level=5": {
"y": 270,
"model": "minecraft:block/beehive_honey"
}
}
}

View File

@@ -0,0 +1,16 @@
{
"variants": {
"age=0": {
"model": "minecraft:block/beetroots_stage0"
},
"age=1": {
"model": "minecraft:block/beetroots_stage1"
},
"age=2": {
"model": "minecraft:block/beetroots_stage2"
},
"age=3": {
"model": "minecraft:block/beetroots_stage3"
}
}
}

View File

@@ -0,0 +1,64 @@
{
"variants": {
"attachment=ceiling,facing=east": {
"model": "minecraft:block/bell_ceiling",
"y": 90
},
"attachment=ceiling,facing=north": {
"model": "minecraft:block/bell_ceiling"
},
"attachment=ceiling,facing=south": {
"model": "minecraft:block/bell_ceiling",
"y": 180
},
"attachment=ceiling,facing=west": {
"model": "minecraft:block/bell_ceiling",
"y": 270
},
"attachment=double_wall,facing=east": {
"model": "minecraft:block/bell_between_walls"
},
"attachment=double_wall,facing=north": {
"model": "minecraft:block/bell_between_walls",
"y": 270
},
"attachment=double_wall,facing=south": {
"model": "minecraft:block/bell_between_walls",
"y": 90
},
"attachment=double_wall,facing=west": {
"model": "minecraft:block/bell_between_walls",
"y": 180
},
"attachment=floor,facing=east": {
"model": "minecraft:block/bell_floor",
"y": 90
},
"attachment=floor,facing=north": {
"model": "minecraft:block/bell_floor"
},
"attachment=floor,facing=south": {
"model": "minecraft:block/bell_floor",
"y": 180
},
"attachment=floor,facing=west": {
"model": "minecraft:block/bell_floor",
"y": 270
},
"attachment=single_wall,facing=east": {
"model": "minecraft:block/bell_wall"
},
"attachment=single_wall,facing=north": {
"model": "minecraft:block/bell_wall",
"y": 270
},
"attachment=single_wall,facing=south": {
"model": "minecraft:block/bell_wall",
"y": 90
},
"attachment=single_wall,facing=west": {
"model": "minecraft:block/bell_wall",
"y": 180
}
}
}

View File

@@ -0,0 +1,64 @@
{
"variants": {
"facing=east,tilt=full": {
"model": "minecraft:block/big_dripleaf_full_tilt",
"y": 90
},
"facing=east,tilt=none": {
"model": "minecraft:block/big_dripleaf",
"y": 90
},
"facing=east,tilt=partial": {
"model": "minecraft:block/big_dripleaf_partial_tilt",
"y": 90
},
"facing=east,tilt=unstable": {
"model": "minecraft:block/big_dripleaf",
"y": 90
},
"facing=north,tilt=full": {
"model": "minecraft:block/big_dripleaf_full_tilt"
},
"facing=north,tilt=none": {
"model": "minecraft:block/big_dripleaf"
},
"facing=north,tilt=partial": {
"model": "minecraft:block/big_dripleaf_partial_tilt"
},
"facing=north,tilt=unstable": {
"model": "minecraft:block/big_dripleaf"
},
"facing=south,tilt=full": {
"model": "minecraft:block/big_dripleaf_full_tilt",
"y": 180
},
"facing=south,tilt=none": {
"model": "minecraft:block/big_dripleaf",
"y": 180
},
"facing=south,tilt=partial": {
"model": "minecraft:block/big_dripleaf_partial_tilt",
"y": 180
},
"facing=south,tilt=unstable": {
"model": "minecraft:block/big_dripleaf",
"y": 180
},
"facing=west,tilt=full": {
"model": "minecraft:block/big_dripleaf_full_tilt",
"y": 270
},
"facing=west,tilt=none": {
"model": "minecraft:block/big_dripleaf",
"y": 270
},
"facing=west,tilt=partial": {
"model": "minecraft:block/big_dripleaf_partial_tilt",
"y": 270
},
"facing=west,tilt=unstable": {
"model": "minecraft:block/big_dripleaf",
"y": 270
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/big_dripleaf_stem",
"y": 90
},
"facing=north": {
"model": "minecraft:block/big_dripleaf_stem"
},
"facing=south": {
"model": "minecraft:block/big_dripleaf_stem",
"y": 180
},
"facing=west": {
"model": "minecraft:block/big_dripleaf_stem",
"y": 270
}
}
}

View File

@@ -0,0 +1,118 @@
{
"variants": {
"face=ceiling,facing=east,powered=false": {
"model": "minecraft:block/birch_button",
"x": 180,
"y": 270
},
"face=ceiling,facing=east,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"x": 180,
"y": 270
},
"face=ceiling,facing=north,powered=false": {
"model": "minecraft:block/birch_button",
"x": 180,
"y": 180
},
"face=ceiling,facing=north,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"x": 180,
"y": 180
},
"face=ceiling,facing=south,powered=false": {
"model": "minecraft:block/birch_button",
"x": 180
},
"face=ceiling,facing=south,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"x": 180
},
"face=ceiling,facing=west,powered=false": {
"model": "minecraft:block/birch_button",
"x": 180,
"y": 90
},
"face=ceiling,facing=west,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"x": 180,
"y": 90
},
"face=floor,facing=east,powered=false": {
"model": "minecraft:block/birch_button",
"y": 90
},
"face=floor,facing=east,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"y": 90
},
"face=floor,facing=north,powered=false": {
"model": "minecraft:block/birch_button"
},
"face=floor,facing=north,powered=true": {
"model": "minecraft:block/birch_button_pressed"
},
"face=floor,facing=south,powered=false": {
"model": "minecraft:block/birch_button",
"y": 180
},
"face=floor,facing=south,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"y": 180
},
"face=floor,facing=west,powered=false": {
"model": "minecraft:block/birch_button",
"y": 270
},
"face=floor,facing=west,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"y": 270
},
"face=wall,facing=east,powered=false": {
"model": "minecraft:block/birch_button",
"uvlock": true,
"x": 90,
"y": 90
},
"face=wall,facing=east,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"uvlock": true,
"x": 90,
"y": 90
},
"face=wall,facing=north,powered=false": {
"model": "minecraft:block/birch_button",
"uvlock": true,
"x": 90
},
"face=wall,facing=north,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"uvlock": true,
"x": 90
},
"face=wall,facing=south,powered=false": {
"model": "minecraft:block/birch_button",
"uvlock": true,
"x": 90,
"y": 180
},
"face=wall,facing=south,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"uvlock": true,
"x": 90,
"y": 180
},
"face=wall,facing=west,powered=false": {
"model": "minecraft:block/birch_button",
"uvlock": true,
"x": 90,
"y": 270
},
"face=wall,facing=west,powered=true": {
"model": "minecraft:block/birch_button_pressed",
"uvlock": true,
"x": 90,
"y": 270
}
}
}

View File

@@ -0,0 +1,124 @@
{
"variants": {
"facing=east,half=lower,hinge=left,open=false": {
"model": "minecraft:block/birch_door_bottom_left"
},
"facing=east,half=lower,hinge=left,open=true": {
"model": "minecraft:block/birch_door_bottom_left_open",
"y": 90
},
"facing=east,half=lower,hinge=right,open=false": {
"model": "minecraft:block/birch_door_bottom_right"
},
"facing=east,half=lower,hinge=right,open=true": {
"model": "minecraft:block/birch_door_bottom_right_open",
"y": 270
},
"facing=east,half=upper,hinge=left,open=false": {
"model": "minecraft:block/birch_door_top_left"
},
"facing=east,half=upper,hinge=left,open=true": {
"model": "minecraft:block/birch_door_top_left_open",
"y": 90
},
"facing=east,half=upper,hinge=right,open=false": {
"model": "minecraft:block/birch_door_top_right"
},
"facing=east,half=upper,hinge=right,open=true": {
"model": "minecraft:block/birch_door_top_right_open",
"y": 270
},
"facing=north,half=lower,hinge=left,open=false": {
"model": "minecraft:block/birch_door_bottom_left",
"y": 270
},
"facing=north,half=lower,hinge=left,open=true": {
"model": "minecraft:block/birch_door_bottom_left_open"
},
"facing=north,half=lower,hinge=right,open=false": {
"model": "minecraft:block/birch_door_bottom_right",
"y": 270
},
"facing=north,half=lower,hinge=right,open=true": {
"model": "minecraft:block/birch_door_bottom_right_open",
"y": 180
},
"facing=north,half=upper,hinge=left,open=false": {
"model": "minecraft:block/birch_door_top_left",
"y": 270
},
"facing=north,half=upper,hinge=left,open=true": {
"model": "minecraft:block/birch_door_top_left_open"
},
"facing=north,half=upper,hinge=right,open=false": {
"model": "minecraft:block/birch_door_top_right",
"y": 270
},
"facing=north,half=upper,hinge=right,open=true": {
"model": "minecraft:block/birch_door_top_right_open",
"y": 180
},
"facing=south,half=lower,hinge=left,open=false": {
"model": "minecraft:block/birch_door_bottom_left",
"y": 90
},
"facing=south,half=lower,hinge=left,open=true": {
"model": "minecraft:block/birch_door_bottom_left_open",
"y": 180
},
"facing=south,half=lower,hinge=right,open=false": {
"model": "minecraft:block/birch_door_bottom_right",
"y": 90
},
"facing=south,half=lower,hinge=right,open=true": {
"model": "minecraft:block/birch_door_bottom_right_open"
},
"facing=south,half=upper,hinge=left,open=false": {
"model": "minecraft:block/birch_door_top_left",
"y": 90
},
"facing=south,half=upper,hinge=left,open=true": {
"model": "minecraft:block/birch_door_top_left_open",
"y": 180
},
"facing=south,half=upper,hinge=right,open=false": {
"model": "minecraft:block/birch_door_top_right",
"y": 90
},
"facing=south,half=upper,hinge=right,open=true": {
"model": "minecraft:block/birch_door_top_right_open"
},
"facing=west,half=lower,hinge=left,open=false": {
"model": "minecraft:block/birch_door_bottom_left",
"y": 180
},
"facing=west,half=lower,hinge=left,open=true": {
"model": "minecraft:block/birch_door_bottom_left_open",
"y": 270
},
"facing=west,half=lower,hinge=right,open=false": {
"model": "minecraft:block/birch_door_bottom_right",
"y": 180
},
"facing=west,half=lower,hinge=right,open=true": {
"model": "minecraft:block/birch_door_bottom_right_open",
"y": 90
},
"facing=west,half=upper,hinge=left,open=false": {
"model": "minecraft:block/birch_door_top_left",
"y": 180
},
"facing=west,half=upper,hinge=left,open=true": {
"model": "minecraft:block/birch_door_top_left_open",
"y": 270
},
"facing=west,half=upper,hinge=right,open=false": {
"model": "minecraft:block/birch_door_top_right",
"y": 180
},
"facing=west,half=upper,hinge=right,open=true": {
"model": "minecraft:block/birch_door_top_right_open",
"y": 90
}
}
}

View File

@@ -0,0 +1,48 @@
{
"multipart": [
{
"apply": {
"model": "minecraft:block/birch_fence_post"
}
},
{
"apply": {
"model": "minecraft:block/birch_fence_side",
"uvlock": true
},
"when": {
"north": "true"
}
},
{
"apply": {
"model": "minecraft:block/birch_fence_side",
"uvlock": true,
"y": 90
},
"when": {
"east": "true"
}
},
{
"apply": {
"model": "minecraft:block/birch_fence_side",
"uvlock": true,
"y": 180
},
"when": {
"south": "true"
}
},
{
"apply": {
"model": "minecraft:block/birch_fence_side",
"uvlock": true,
"y": 270
},
"when": {
"west": "true"
}
}
]
}

View File

@@ -0,0 +1,80 @@
{
"variants": {
"facing=east,in_wall=false,open=false": {
"model": "minecraft:block/birch_fence_gate",
"uvlock": true,
"y": 270
},
"facing=east,in_wall=false,open=true": {
"model": "minecraft:block/birch_fence_gate_open",
"uvlock": true,
"y": 270
},
"facing=east,in_wall=true,open=false": {
"model": "minecraft:block/birch_fence_gate_wall",
"uvlock": true,
"y": 270
},
"facing=east,in_wall=true,open=true": {
"model": "minecraft:block/birch_fence_gate_wall_open",
"uvlock": true,
"y": 270
},
"facing=north,in_wall=false,open=false": {
"model": "minecraft:block/birch_fence_gate",
"uvlock": true,
"y": 180
},
"facing=north,in_wall=false,open=true": {
"model": "minecraft:block/birch_fence_gate_open",
"uvlock": true,
"y": 180
},
"facing=north,in_wall=true,open=false": {
"model": "minecraft:block/birch_fence_gate_wall",
"uvlock": true,
"y": 180
},
"facing=north,in_wall=true,open=true": {
"model": "minecraft:block/birch_fence_gate_wall_open",
"uvlock": true,
"y": 180
},
"facing=south,in_wall=false,open=false": {
"model": "minecraft:block/birch_fence_gate",
"uvlock": true
},
"facing=south,in_wall=false,open=true": {
"model": "minecraft:block/birch_fence_gate_open",
"uvlock": true
},
"facing=south,in_wall=true,open=false": {
"model": "minecraft:block/birch_fence_gate_wall",
"uvlock": true
},
"facing=south,in_wall=true,open=true": {
"model": "minecraft:block/birch_fence_gate_wall_open",
"uvlock": true
},
"facing=west,in_wall=false,open=false": {
"model": "minecraft:block/birch_fence_gate",
"uvlock": true,
"y": 90
},
"facing=west,in_wall=false,open=true": {
"model": "minecraft:block/birch_fence_gate_open",
"uvlock": true,
"y": 90
},
"facing=west,in_wall=true,open=false": {
"model": "minecraft:block/birch_fence_gate_wall",
"uvlock": true,
"y": 90
},
"facing=west,in_wall=true,open=true": {
"model": "minecraft:block/birch_fence_gate_wall_open",
"uvlock": true,
"y": 90
}
}
}

View File

@@ -0,0 +1,124 @@
{
"variants": {
"attached=false,rotation=0": {
"model": "minecraft:block/birch_hanging_sign_rot_0"
},
"attached=false,rotation=1": {
"model": "minecraft:block/birch_hanging_sign_rot_1"
},
"attached=false,rotation=10": {
"model": "minecraft:block/birch_hanging_sign_rot_2",
"y": 180
},
"attached=false,rotation=11": {
"model": "minecraft:block/birch_hanging_sign_rot_3",
"y": 180
},
"attached=false,rotation=12": {
"model": "minecraft:block/birch_hanging_sign_rot_0",
"y": 270
},
"attached=false,rotation=13": {
"model": "minecraft:block/birch_hanging_sign_rot_1",
"y": 270
},
"attached=false,rotation=14": {
"model": "minecraft:block/birch_hanging_sign_rot_2",
"y": 270
},
"attached=false,rotation=15": {
"model": "minecraft:block/birch_hanging_sign_rot_3",
"y": 270
},
"attached=false,rotation=2": {
"model": "minecraft:block/birch_hanging_sign_rot_2"
},
"attached=false,rotation=3": {
"model": "minecraft:block/birch_hanging_sign_rot_3"
},
"attached=false,rotation=4": {
"model": "minecraft:block/birch_hanging_sign_rot_0",
"y": 90
},
"attached=false,rotation=5": {
"model": "minecraft:block/birch_hanging_sign_rot_1",
"y": 90
},
"attached=false,rotation=6": {
"model": "minecraft:block/birch_hanging_sign_rot_2",
"y": 90
},
"attached=false,rotation=7": {
"model": "minecraft:block/birch_hanging_sign_rot_3",
"y": 90
},
"attached=false,rotation=8": {
"model": "minecraft:block/birch_hanging_sign_rot_0",
"y": 180
},
"attached=false,rotation=9": {
"model": "minecraft:block/birch_hanging_sign_rot_1",
"y": 180
},
"attached=true,rotation=0": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_0"
},
"attached=true,rotation=1": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_1"
},
"attached=true,rotation=10": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_2",
"y": 180
},
"attached=true,rotation=11": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_3",
"y": 180
},
"attached=true,rotation=12": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_0",
"y": 270
},
"attached=true,rotation=13": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_1",
"y": 270
},
"attached=true,rotation=14": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_2",
"y": 270
},
"attached=true,rotation=15": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_3",
"y": 270
},
"attached=true,rotation=2": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_2"
},
"attached=true,rotation=3": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_3"
},
"attached=true,rotation=4": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_0",
"y": 90
},
"attached=true,rotation=5": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_1",
"y": 90
},
"attached=true,rotation=6": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_2",
"y": 90
},
"attached=true,rotation=7": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_3",
"y": 90
},
"attached=true,rotation=8": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_0",
"y": 180
},
"attached=true,rotation=9": {
"model": "minecraft:block/birch_hanging_sign_attached_rot_1",
"y": 180
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/birch_leaves"
}
}
}

View File

@@ -0,0 +1,16 @@
{
"variants": {
"axis=x": {
"model": "minecraft:block/birch_log_horizontal",
"x": 90,
"y": 90
},
"axis=y": {
"model": "minecraft:block/birch_log"
},
"axis=z": {
"model": "minecraft:block/birch_log_horizontal",
"x": 90
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/birch_planks"
}
}
}

View File

@@ -0,0 +1,10 @@
{
"variants": {
"powered=false": {
"model": "minecraft:block/birch_pressure_plate"
},
"powered=true": {
"model": "minecraft:block/birch_pressure_plate_down"
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/birch_sapling"
}
}
}

View File

@@ -0,0 +1,402 @@
{
"multipart": [
{
"apply": {
"model": "minecraft:block/birch_shelf"
},
"when": {
"facing": "north"
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf",
"y": 90
},
"when": {
"facing": "east"
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf",
"y": 180
},
"when": {
"facing": "south"
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf",
"y": 270
},
"when": {
"facing": "west"
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unpowered"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unpowered",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unpowered",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unpowered",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "false"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unconnected"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unconnected",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unconnected",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_unconnected",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "unconnected"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_left"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_left",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_left",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_left",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "left"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_center"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_center",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_center",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_center",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "center"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_right"
},
"when": {
"AND": [
{
"facing": "north"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_right",
"y": 90
},
"when": {
"AND": [
{
"facing": "east"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_right",
"y": 180
},
"when": {
"AND": [
{
"facing": "south"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
},
{
"apply": {
"model": "minecraft:block/birch_shelf_right",
"y": 270
},
"when": {
"AND": [
{
"facing": "west"
},
{
"powered": "true"
},
{
"side_chain": "right"
}
]
}
}
]
}

View File

@@ -0,0 +1,64 @@
{
"variants": {
"rotation=0": {
"model": "minecraft:block/birch_sign_rot_0"
},
"rotation=1": {
"model": "minecraft:block/birch_sign_rot_1"
},
"rotation=10": {
"model": "minecraft:block/birch_sign_rot_2",
"y": 180
},
"rotation=11": {
"model": "minecraft:block/birch_sign_rot_3",
"y": 180
},
"rotation=12": {
"model": "minecraft:block/birch_sign_rot_0",
"y": 270
},
"rotation=13": {
"model": "minecraft:block/birch_sign_rot_1",
"y": 270
},
"rotation=14": {
"model": "minecraft:block/birch_sign_rot_2",
"y": 270
},
"rotation=15": {
"model": "minecraft:block/birch_sign_rot_3",
"y": 270
},
"rotation=2": {
"model": "minecraft:block/birch_sign_rot_2"
},
"rotation=3": {
"model": "minecraft:block/birch_sign_rot_3"
},
"rotation=4": {
"model": "minecraft:block/birch_sign_rot_0",
"y": 90
},
"rotation=5": {
"model": "minecraft:block/birch_sign_rot_1",
"y": 90
},
"rotation=6": {
"model": "minecraft:block/birch_sign_rot_2",
"y": 90
},
"rotation=7": {
"model": "minecraft:block/birch_sign_rot_3",
"y": 90
},
"rotation=8": {
"model": "minecraft:block/birch_sign_rot_0",
"y": 180
},
"rotation=9": {
"model": "minecraft:block/birch_sign_rot_1",
"y": 180
}
}
}

View File

@@ -0,0 +1,13 @@
{
"variants": {
"type=bottom": {
"model": "minecraft:block/birch_slab"
},
"type=double": {
"model": "minecraft:block/birch_planks"
},
"type=top": {
"model": "minecraft:block/birch_slab_top"
}
}
}

View File

@@ -0,0 +1,209 @@
{
"variants": {
"facing=east,half=bottom,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner"
},
"facing=east,half=bottom,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=east,half=bottom,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer"
},
"facing=east,half=bottom,shape=straight": {
"model": "minecraft:block/birch_stairs"
},
"facing=east,half=top,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=east,half=top,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=east,half=top,shape=straight": {
"model": "minecraft:block/birch_stairs",
"uvlock": true,
"x": 180
},
"facing=north,half=bottom,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=north,half=bottom,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"y": 270
},
"facing=north,half=bottom,shape=straight": {
"model": "minecraft:block/birch_stairs",
"uvlock": true,
"y": 270
},
"facing=north,half=top,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=north,half=top,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180
},
"facing=north,half=top,shape=straight": {
"model": "minecraft:block/birch_stairs",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=south,half=bottom,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner"
},
"facing=south,half=bottom,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer"
},
"facing=south,half=bottom,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=south,half=bottom,shape=straight": {
"model": "minecraft:block/birch_stairs",
"uvlock": true,
"y": 90
},
"facing=south,half=top,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=south,half=top,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=south,half=top,shape=straight": {
"model": "minecraft:block/birch_stairs",
"uvlock": true,
"x": 180,
"y": 90
},
"facing=west,half=bottom,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"y": 90
},
"facing=west,half=bottom,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"y": 180
},
"facing=west,half=bottom,shape=straight": {
"model": "minecraft:block/birch_stairs",
"uvlock": true,
"y": 180
},
"facing=west,half=top,shape=inner_left": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=inner_right": {
"model": "minecraft:block/birch_stairs_inner",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=outer_left": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180,
"y": 180
},
"facing=west,half=top,shape=outer_right": {
"model": "minecraft:block/birch_stairs_outer",
"uvlock": true,
"x": 180,
"y": 270
},
"facing=west,half=top,shape=straight": {
"model": "minecraft:block/birch_stairs",
"uvlock": true,
"x": 180,
"y": 180
}
}
}

View File

@@ -0,0 +1,68 @@
{
"variants": {
"facing=east,half=bottom,open=false": {
"model": "minecraft:block/birch_trapdoor_bottom",
"y": 90
},
"facing=east,half=bottom,open=true": {
"model": "minecraft:block/birch_trapdoor_open",
"y": 90
},
"facing=east,half=top,open=false": {
"model": "minecraft:block/birch_trapdoor_top",
"y": 90
},
"facing=east,half=top,open=true": {
"model": "minecraft:block/birch_trapdoor_open",
"x": 180,
"y": 270
},
"facing=north,half=bottom,open=false": {
"model": "minecraft:block/birch_trapdoor_bottom"
},
"facing=north,half=bottom,open=true": {
"model": "minecraft:block/birch_trapdoor_open"
},
"facing=north,half=top,open=false": {
"model": "minecraft:block/birch_trapdoor_top"
},
"facing=north,half=top,open=true": {
"model": "minecraft:block/birch_trapdoor_open",
"x": 180,
"y": 180
},
"facing=south,half=bottom,open=false": {
"model": "minecraft:block/birch_trapdoor_bottom",
"y": 180
},
"facing=south,half=bottom,open=true": {
"model": "minecraft:block/birch_trapdoor_open",
"y": 180
},
"facing=south,half=top,open=false": {
"model": "minecraft:block/birch_trapdoor_top",
"y": 180
},
"facing=south,half=top,open=true": {
"model": "minecraft:block/birch_trapdoor_open",
"x": 180
},
"facing=west,half=bottom,open=false": {
"model": "minecraft:block/birch_trapdoor_bottom",
"y": 270
},
"facing=west,half=bottom,open=true": {
"model": "minecraft:block/birch_trapdoor_open",
"y": 270
},
"facing=west,half=top,open=false": {
"model": "minecraft:block/birch_trapdoor_top",
"y": 270
},
"facing=west,half=top,open=true": {
"model": "minecraft:block/birch_trapdoor_open",
"x": 180,
"y": 90
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/birch_wall_hanging_sign",
"y": 270
},
"facing=north": {
"model": "minecraft:block/birch_wall_hanging_sign",
"y": 180
},
"facing=south": {
"model": "minecraft:block/birch_wall_hanging_sign"
},
"facing=west": {
"model": "minecraft:block/birch_wall_hanging_sign",
"y": 90
}
}
}

View File

@@ -0,0 +1,19 @@
{
"variants": {
"facing=east": {
"model": "minecraft:block/birch_wall_sign",
"y": 270
},
"facing=north": {
"model": "minecraft:block/birch_wall_sign",
"y": 180
},
"facing=south": {
"model": "minecraft:block/birch_wall_sign"
},
"facing=west": {
"model": "minecraft:block/birch_wall_sign",
"y": 90
}
}
}

View File

@@ -0,0 +1,16 @@
{
"variants": {
"axis=x": {
"model": "minecraft:block/birch_wood",
"x": 90,
"y": 90
},
"axis=y": {
"model": "minecraft:block/birch_wood"
},
"axis=z": {
"model": "minecraft:block/birch_wood",
"x": 90
}
}
}

View File

@@ -0,0 +1,7 @@
{
"variants": {
"": {
"model": "minecraft:block/banner"
}
}
}

View File

@@ -0,0 +1,34 @@
{
"variants": {
"facing=east,part=foot": {
"model": "minecraft:block/black_bed_foot",
"y": 90
},
"facing=east,part=head": {
"model": "minecraft:block/black_bed_head",
"y": 90
},
"facing=north,part=foot": {
"model": "minecraft:block/black_bed_foot"
},
"facing=north,part=head": {
"model": "minecraft:block/black_bed_head"
},
"facing=south,part=foot": {
"model": "minecraft:block/black_bed_foot",
"y": 180
},
"facing=south,part=head": {
"model": "minecraft:block/black_bed_head",
"y": 180
},
"facing=west,part=foot": {
"model": "minecraft:block/black_bed_foot",
"y": 270
},
"facing=west,part=head": {
"model": "minecraft:block/black_bed_head",
"y": 270
}
}
}

Some files were not shown because too many files have changed in this diff Show More