Added locking support for the drawers

This commit is contained in:
Buuz135 2021-12-23 19:48:23 +01:00
parent 750eacea31
commit da48e4479d
60 changed files with 807 additions and 147 deletions

View File

@ -1,31 +1,55 @@
dd61bbc40a5253c9d8d429b1f4cc448babeb30c3 assets/functionalstorage/blockstates/acacia_1.json
f4951baed89ad2ca24f9f0263b7ee1ddbd1b9954 assets/functionalstorage/blockstates/acacia_2.json
b66cd5f8238b4a9e265a529ea79c7fff04978831 assets/functionalstorage/blockstates/acacia_4.json
ab564a61759641b7692cf241b271f26316ee61a8 assets/functionalstorage/blockstates/acacia_1.json
e5bcc264ebfd43f9b1847feaa527e3f49e90e5a5 assets/functionalstorage/blockstates/acacia_2.json
6a50a4cedfdb244329f0e87eeaa9ae37f7c89dc2 assets/functionalstorage/blockstates/acacia_4.json
a43045b707ae0bac4f3a429efd73225b10e5e02e assets/functionalstorage/blockstates/armory_cabinet.json
4dd1269478d41ea1e9f0512d9b574a007cb9f472 assets/functionalstorage/blockstates/birch_1.json
b49e3fc2bb6fcfbf33a67d79b63abf679a00c92d assets/functionalstorage/blockstates/birch_2.json
9752c6d25170d36778b4733bfec81caaa3b586b1 assets/functionalstorage/blockstates/birch_4.json
e505e84f33a45dea1ef5dc4f6ab500965a32d1f3 assets/functionalstorage/blockstates/birch_1.json
4803730c1801ac8c78703c4db182b2e116d02035 assets/functionalstorage/blockstates/birch_2.json
415f30768aa5f298098192b8a887d8b01617566b assets/functionalstorage/blockstates/birch_4.json
78ab16e1714fbed8ba98acfe243a89c15587feb0 assets/functionalstorage/blockstates/compacting_drawer.json
b79d96e28e5d5664ca09f8f576d7144679cea3d9 assets/functionalstorage/blockstates/crimson_1.json
e793ed6ffe74aa72e8be9063292faa20a19ce137 assets/functionalstorage/blockstates/crimson_2.json
67d12bace59f1941ed003c898d24ca466b6bc1ad assets/functionalstorage/blockstates/crimson_4.json
03d139d3ffafac3190b34f430a708c99b3d8450e assets/functionalstorage/blockstates/dark_oak_1.json
7658040f21bc3bc8a09bc4a0269b0d2474d12e82 assets/functionalstorage/blockstates/dark_oak_2.json
5b0f9b94c19754fd26779da338d3c01c9e71f2d1 assets/functionalstorage/blockstates/dark_oak_4.json
da57f660e4ad53ca51e400bc0694b38b08287f7f assets/functionalstorage/blockstates/jungle_1.json
48425b87380b0c0b7f26f2c1b8f73263a6c2b1a1 assets/functionalstorage/blockstates/jungle_2.json
44119e2d601f4d6f02be3264646add1f531fdd8e assets/functionalstorage/blockstates/jungle_4.json
8d915b0d012e1e642df5febc287efabf590cb9af assets/functionalstorage/blockstates/oak_1.json
e00984d2e6551ae9bb54afe92770e8c9e51d79d6 assets/functionalstorage/blockstates/oak_2.json
3b3357f0a596638930ba5f1344bb16cdadb020fa assets/functionalstorage/blockstates/oak_4.json
d4d22c9ecc3622c578ccff9c8b38de4112a842f6 assets/functionalstorage/blockstates/spruce_1.json
b14ae1d5fe1d5f8f045b057cc786c7b576844612 assets/functionalstorage/blockstates/spruce_2.json
a0ff8d6c8f3d10d7773039df53dd3b6a5412bc10 assets/functionalstorage/blockstates/spruce_4.json
764fd595f14c2f186834a5c073dc40fd783de2d5 assets/functionalstorage/blockstates/crimson_1.json
75ec6d10e1cf1e98fb5ec2e20727cac47829b0b4 assets/functionalstorage/blockstates/crimson_2.json
51bf3810c4d32ef39cd2a8e8ad8bf677175cbdc8 assets/functionalstorage/blockstates/crimson_4.json
1d77dda36fb5ca7aad99b33af8acce1cb1abf147 assets/functionalstorage/blockstates/dark_oak_1.json
d34d2a17fe665545b75091a04f49d0b76676db8f assets/functionalstorage/blockstates/dark_oak_2.json
6a6edbfb0407982b63fd75e614591b0fea2a8c96 assets/functionalstorage/blockstates/dark_oak_4.json
1b3080f361ec9707d94537b7d751f0a40942b6e5 assets/functionalstorage/blockstates/jungle_1.json
938ce731a06469a054b6217c168b45886a82d572 assets/functionalstorage/blockstates/jungle_2.json
0e8619fea465be18de161b81904e1e9596e01b14 assets/functionalstorage/blockstates/jungle_4.json
16f075c114f797342e23593940616ad761279eab assets/functionalstorage/blockstates/oak_1.json
4066d3a6c6c0771fa74ca83466fcdaeb1f93ef9a assets/functionalstorage/blockstates/oak_2.json
7dd337327db3901bbd201e784c9450d4af4c4016 assets/functionalstorage/blockstates/oak_4.json
a50aeb3877dd4003bb3ed359fccde1f3674bc028 assets/functionalstorage/blockstates/spruce_1.json
839d8ed15c955757825f06c490bf9ac8415ffab9 assets/functionalstorage/blockstates/spruce_2.json
4a198d978f27835474d19e47151a821b229fb13e assets/functionalstorage/blockstates/spruce_4.json
3b5bbc86563c91c040267865d6049c167d30f247 assets/functionalstorage/blockstates/storage_controller.json
e27f738dc4aeda4f45831ab1665a7f44a189a6eb assets/functionalstorage/blockstates/warped_1.json
d219b51e15094f26af1f2e1c4578707c74a8892e assets/functionalstorage/blockstates/warped_2.json
9957ebb8beafe7cfa8634e1b19c3b9ed70a23ae5 assets/functionalstorage/blockstates/warped_4.json
fbf8ebd85350f3b4ad0bf6faf51f9ecf0677bf5b assets/functionalstorage/blockstates/warped_1.json
bcd4b5e128d5175bea44ecae340aeec86cd5a123 assets/functionalstorage/blockstates/warped_2.json
ebc4aebffb44baa4dd507078b9fd3c74e881f4c1 assets/functionalstorage/blockstates/warped_4.json
9dd6f6257a11b65464b17d9ee2fd5502afe13548 assets/functionalstorage/lang/en_us.json
68c3f6a8fe55202f83c0fcdd6c8ca10ef88019ef assets/functionalstorage/models/block/acacia_1_locked.json
c7d0376ba2a080ba12c344369ad11538899db176 assets/functionalstorage/models/block/acacia_2_locked.json
79b86baeec4aa6784aa52028d2f3bc98ddab8c14 assets/functionalstorage/models/block/acacia_4_locked.json
9c7d840096d63552b9ed9238ca1512e9bf496695 assets/functionalstorage/models/block/birch_1_locked.json
73a721da5ce864d7973923ab998d3e038d510a9a assets/functionalstorage/models/block/birch_2_locked.json
8b466330111b80833458ae6e23f1f475d4fc0671 assets/functionalstorage/models/block/birch_4_locked.json
ef849e4444f8c1e96b0dc4053cfa6218be305d36 assets/functionalstorage/models/block/crimson_1_locked.json
323a60308b46df6110ad0f02bd208e1e449bfa59 assets/functionalstorage/models/block/crimson_2_locked.json
48627182bec4a852d8e7db13f77764f626619e72 assets/functionalstorage/models/block/crimson_4_locked.json
fd8f6d7b04eaacb2b78517b93aef7868a59259f4 assets/functionalstorage/models/block/dark_oak_1_locked.json
a4ce117f7c87bf0518c30f98787c7dd68dbcc290 assets/functionalstorage/models/block/dark_oak_2_locked.json
b8cc25554026c56044dad18aa07f0e092eb028da assets/functionalstorage/models/block/dark_oak_4_locked.json
9f8ab8d3f04f99edaf16f76e8c2f037653324e72 assets/functionalstorage/models/block/jungle_1_locked.json
d447ad68f1d5a2ea467ec485bbbbb334f79cbdea assets/functionalstorage/models/block/jungle_2_locked.json
e55bf19ba42af7366b71307e1c0645e8a69328a9 assets/functionalstorage/models/block/jungle_4_locked.json
151746a206410822c5d8c977cb1d764d1ab23724 assets/functionalstorage/models/block/oak_1_locked.json
1b6fd2a0e736de90adaa89229b8fa1962a03d54d assets/functionalstorage/models/block/oak_2_locked.json
2e0cf55887b7cefda0fe3d56e2633957f098bb30 assets/functionalstorage/models/block/oak_4_locked.json
7e5e11c7eb6c62bc69e510dce7a2f6df1f189a6f assets/functionalstorage/models/block/spruce_1_locked.json
648e08e62453453738301f843aa3905cb4f31612 assets/functionalstorage/models/block/spruce_2_locked.json
05c8bcc079af6c2f2a1ab71e8b882d9b2133c105 assets/functionalstorage/models/block/spruce_4_locked.json
b8dc3540ee00739298945d2ead3548ad256e8820 assets/functionalstorage/models/block/warped_1_locked.json
ebdb37c161f0c52d57de6ffb5cf428d051ae23eb assets/functionalstorage/models/block/warped_2_locked.json
8705215b001a6ac945426a55276af93f33b9a237 assets/functionalstorage/models/block/warped_4_locked.json
f9c11e430cfeef0c24c5b10b7e6bdff04d5efa6a assets/functionalstorage/models/item/collector_upgrade.json
eed1ee36f7bc9269b2e0300a89c1418ac3cf8a29 assets/functionalstorage/models/item/copper_upgrade.json
06a823abd508e43d00013698b1b65eb1f71feecf assets/functionalstorage/models/item/diamond_upgrade.json
@ -87,5 +111,5 @@ ff234dac4f0b0b4f83ffa92f2d2fb1074c68df43 data/functionalstorage/recipes/spruce_4
bcb281904eac23183c45786e3d703d24bba92be6 data/functionalstorage/recipes/warped_1.json
8fc3f76a2c57eb4d80ce86947fabebe48fa6f692 data/functionalstorage/recipes/warped_2.json
7510a8ca1f1e3bb63f4c4f4add0bb6b713feaa0b data/functionalstorage/recipes/warped_4.json
db0122948639b122cb0c1df7530996e9784356b0 data/functionalstorage/tags/items/drawer.json
7f1584dd07594822d6db4ec38642d19047a7c73a data/functionalstorage/tags/items/drawer.json
12ec935226bf5a6a1493d353ef6dc6c224c256dd data/functionalstorage/tags/items/ignore_crafting_check.json

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/acacia_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/acacia_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/acacia_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/acacia_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/acacia_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/acacia_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/acacia_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/acacia_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/acacia_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/acacia_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/acacia_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/acacia_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/acacia_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/acacia_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/acacia_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/acacia_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/acacia_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/acacia_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/acacia_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/acacia_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/acacia_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/acacia_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/acacia_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/acacia_4_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/birch_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/birch_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/birch_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/birch_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/birch_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/birch_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/birch_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/birch_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/birch_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/birch_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/birch_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/birch_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/birch_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/birch_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/birch_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/birch_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/birch_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/birch_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/birch_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/birch_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/birch_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/birch_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/birch_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/birch_4_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/crimson_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/crimson_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/crimson_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/crimson_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/crimson_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/crimson_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/crimson_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/crimson_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/crimson_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/crimson_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/crimson_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/crimson_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/crimson_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/crimson_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/crimson_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/crimson_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/crimson_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/crimson_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/crimson_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/crimson_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/crimson_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/crimson_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/crimson_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/crimson_4_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/dark_oak_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/dark_oak_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/dark_oak_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/dark_oak_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/dark_oak_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/dark_oak_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/dark_oak_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/dark_oak_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/dark_oak_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/dark_oak_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/dark_oak_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/dark_oak_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/dark_oak_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/dark_oak_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/dark_oak_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/dark_oak_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/dark_oak_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/dark_oak_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/dark_oak_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/dark_oak_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/dark_oak_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/dark_oak_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/dark_oak_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/dark_oak_4_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/jungle_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/jungle_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/jungle_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/jungle_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/jungle_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/jungle_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/jungle_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/jungle_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/jungle_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/jungle_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/jungle_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/jungle_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/jungle_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/jungle_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/jungle_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/jungle_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/jungle_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/jungle_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/jungle_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/jungle_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/jungle_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/jungle_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/jungle_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/jungle_4_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/oak_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/oak_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/oak_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/oak_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/oak_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/oak_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/oak_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/oak_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/oak_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/oak_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/oak_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/oak_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/oak_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/oak_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/oak_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/oak_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/oak_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/oak_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/oak_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/oak_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/oak_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/oak_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/oak_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/oak_4_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/spruce_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/spruce_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/spruce_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/spruce_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/spruce_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/spruce_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/spruce_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/spruce_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/spruce_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/spruce_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/spruce_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/spruce_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/spruce_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/spruce_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/spruce_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/spruce_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/spruce_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/spruce_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/spruce_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/spruce_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/spruce_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/spruce_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/spruce_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/spruce_4_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/warped_1"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/warped_1_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/warped_1",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/warped_1_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/warped_1",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/warped_1_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/warped_1",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/warped_1_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/warped_2"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/warped_2_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/warped_2",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/warped_2_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/warped_2",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/warped_2_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/warped_2",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/warped_2_locked",
"y": 90
}
}
}

View File

@ -1,19 +1,34 @@
{
"variants": {
"subfacing=north": {
"locked=false,subfacing=north": {
"model": "functionalstorage:block/warped_4"
},
"subfacing=south": {
"locked=true,subfacing=north": {
"model": "functionalstorage:block/warped_4_locked"
},
"locked=false,subfacing=south": {
"model": "functionalstorage:block/warped_4",
"y": 180
},
"subfacing=west": {
"locked=true,subfacing=south": {
"model": "functionalstorage:block/warped_4_locked",
"y": 180
},
"locked=false,subfacing=west": {
"model": "functionalstorage:block/warped_4",
"y": 270
},
"subfacing=east": {
"locked=true,subfacing=west": {
"model": "functionalstorage:block/warped_4_locked",
"y": 270
},
"locked=false,subfacing=east": {
"model": "functionalstorage:block/warped_4",
"y": 90
},
"locked=true,subfacing=east": {
"model": "functionalstorage:block/warped_4_locked",
"y": 90
}
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/acacia_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/acacia_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/acacia_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/birch_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/birch_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/birch_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/crimson_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/crimson_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/crimson_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/dark_oak_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/dark_oak_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/dark_oak_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/jungle_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/jungle_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/jungle_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/oak_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/oak_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/oak_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/spruce_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/spruce_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/spruce_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/warped_1",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/warped_2",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -0,0 +1,6 @@
{
"parent": "functionalstorage:block/warped_4",
"textures": {
"lock_icon": "functionalstorage:blocks/lock"
}
}

View File

@ -1,14 +1,6 @@
{
"replace": false,
"values": [
"functionalstorage:oak_1",
"functionalstorage:spruce_1",
"functionalstorage:birch_1",
"functionalstorage:jungle_1",
"functionalstorage:acacia_1",
"functionalstorage:dark_oak_1",
"functionalstorage:crimson_1",
"functionalstorage:warped_1",
"functionalstorage:oak_4",
"functionalstorage:spruce_4",
"functionalstorage:birch_4",
@ -17,6 +9,14 @@
"functionalstorage:dark_oak_4",
"functionalstorage:crimson_4",
"functionalstorage:warped_4",
"functionalstorage:oak_1",
"functionalstorage:spruce_1",
"functionalstorage:birch_1",
"functionalstorage:jungle_1",
"functionalstorage:acacia_1",
"functionalstorage:dark_oak_1",
"functionalstorage:crimson_1",
"functionalstorage:warped_1",
"functionalstorage:oak_2",
"functionalstorage:spruce_2",
"functionalstorage:birch_2",

View File

@ -23,6 +23,9 @@ import com.hrznstudio.titanium.event.handler.EventManager;
import com.hrznstudio.titanium.module.ModuleController;
import com.hrznstudio.titanium.recipe.generator.TitaniumRecipeProvider;
import com.hrznstudio.titanium.tab.AdvancedTitaniumTab;
import net.minecraft.client.renderer.ItemBlockRenderTypes;
import net.minecraft.client.renderer.RenderType;
import net.minecraft.core.Direction;
import net.minecraft.data.recipes.FinishedRecipe;
import net.minecraft.data.tags.BlockTagsProvider;
import net.minecraft.nbt.CompoundTag;
@ -34,10 +37,14 @@ import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.client.event.ColorHandlerEvent;
import net.minecraftforge.client.event.EntityRenderersEvent;
import net.minecraftforge.client.event.TextureStitchEvent;
import net.minecraftforge.client.model.generators.BlockModelProvider;
import net.minecraftforge.client.model.generators.ItemModelProvider;
import net.minecraftforge.client.model.generators.ModelProvider;
import net.minecraftforge.common.util.NonNullLazy;
import net.minecraftforge.fml.DistExecutor;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.FMLClientSetupEvent;
import net.minecraftforge.forge.event.lifecycle.GatherDataEvent;
import net.minecraftforge.registries.ForgeRegistries;
import net.minecraftforge.registries.RegistryObject;
@ -161,6 +168,13 @@ public class FunctionalStorage extends ModuleController {
return 0xffffff;
}, LINKING_TOOL.get());
}).subscribe();
EventManager.mod(FMLClientSetupEvent.class).process(event -> {
for (DrawerType value : DrawerType.values()) {
for (RegistryObject<Block> blockRegistryObject : DRAWER_TYPES.get(value)) {
ItemBlockRenderTypes.setRenderLayer(blockRegistryObject.get(), RenderType.cutout());
}
}
}).subscribe();
}
@Override
@ -201,5 +215,16 @@ public class FunctionalStorage extends ModuleController {
singleTexture(item.getRegistryName().getPath(), new ResourceLocation("minecraft:item/generated"), "layer0" ,new ResourceLocation(MOD_ID, "items/" + item.getRegistryName().getPath()));
}
});
event.getGenerator().addProvider(new BlockModelProvider(event.getGenerator(), MOD_ID, event.getExistingFileHelper()) {
@Override
protected void registerModels() {
for (DrawerType value : DrawerType.values()) {
for (RegistryObject<Block> blockRegistryObject : DRAWER_TYPES.get(value)) {
withExistingParent(blockRegistryObject.get().getRegistryName().getPath() + "_locked", modLoc(blockRegistryObject.get().getRegistryName().getPath()))
.texture("lock_icon", modLoc("blocks/lock"));
}
}
}
});
}
}

View File

@ -23,10 +23,13 @@ import net.minecraft.world.entity.player.Player;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.level.BlockGetter;
import net.minecraft.world.level.Level;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.Blocks;
import net.minecraft.world.level.block.entity.BlockEntity;
import net.minecraft.world.level.block.entity.BlockEntityType;
import net.minecraft.world.level.block.state.BlockState;
import net.minecraft.world.level.block.state.StateDefinition;
import net.minecraft.world.level.block.state.properties.BooleanProperty;
import net.minecraft.world.level.storage.loot.LootTable;
import net.minecraft.world.level.storage.loot.functions.CopyNbtFunction;
import net.minecraft.world.level.storage.loot.providers.nbt.ContextNbtProvider;
@ -52,11 +55,13 @@ public class DrawerBlock extends RotatableBlock<DrawerTile> {
public static HashMap<FunctionalStorage.DrawerType, Multimap<Direction, VoxelShape>> CACHED_SHAPES = new HashMap<>();
public static BooleanProperty LOCKED = BooleanProperty.create("locked");
static {
CACHED_SHAPES.computeIfAbsent(FunctionalStorage.DrawerType.X_1, type1 -> MultimapBuilder.hashKeys().arrayListValues().build())
.put(Direction.NORTH, Shapes.box(1/16D, 1/16D, 0, 15/16D, 15/16D, 1/16D));
CACHED_SHAPES.computeIfAbsent(FunctionalStorage.DrawerType.X_1, type1 -> MultimapBuilder.hashKeys().arrayListValues().build())
.put(Direction.SOUTH, Shapes.box(1/16D, 1/16D, 1/16D, 15/16D, 15/16D, 1));
.put(Direction.SOUTH, Shapes.box(1/16D, 1/16D, 15/16D, 15/16D, 15/16D, 1));
CACHED_SHAPES.computeIfAbsent(FunctionalStorage.DrawerType.X_1, type1 -> MultimapBuilder.hashKeys().arrayListValues().build())
.put(Direction.WEST, Shapes.box(0, 1/16D, 1/16D, 1/16D, 15/16D, 15/16D));
CACHED_SHAPES.computeIfAbsent(FunctionalStorage.DrawerType.X_1, type1 -> MultimapBuilder.hashKeys().arrayListValues().build())
@ -97,7 +102,13 @@ public class DrawerBlock extends RotatableBlock<DrawerTile> {
this.woodType = woodType;
this.type = type;
setItemGroup(FunctionalStorage.TAB);
registerDefaultState(defaultBlockState().setValue(RotatableBlock.FACING_HORIZONTAL, Direction.NORTH));
registerDefaultState(defaultBlockState().setValue(RotatableBlock.FACING_HORIZONTAL, Direction.NORTH).setValue(LOCKED, false));
}
@Override
protected void createBlockStateDefinition(StateDefinition.Builder<Block, BlockState> p_206840_1_) {
super.createBlockStateDefinition(p_206840_1_);
p_206840_1_.add(LOCKED);
}
@Override

View File

@ -1,6 +1,7 @@
package com.buuz135.functionalstorage.block.tile;
import com.buuz135.functionalstorage.FunctionalStorage;
import com.buuz135.functionalstorage.block.DrawerBlock;
import com.buuz135.functionalstorage.item.LinkingToolItem;
import com.buuz135.functionalstorage.item.StorageUpgradeItem;
import com.buuz135.functionalstorage.item.UpgradeItem;
@ -40,12 +41,9 @@ public abstract class ControllableDrawerTile<T extends ControllableDrawerTile<T>
private InventoryComponent<ControllableDrawerTile<T>> storageUpgrades;
@Save
private InventoryComponent<ControllableDrawerTile<T>> utilityUpgrades;
@Save
private boolean locked;
public ControllableDrawerTile(BasicTileBlock<T> base, BlockPos pos, BlockState state) {
super(base, pos, state);
this.locked = false;
this.addInventory((InventoryComponent<T>) (this.storageUpgrades = new InventoryComponent<ControllableDrawerTile<T>>("storage_upgrades", 10, 70, getStorageSlotAmount()) {
@NotNull
@Override
@ -192,17 +190,17 @@ public abstract class ControllableDrawerTile<T extends ControllableDrawerTile<T>
}
public void toggleLocking(){
this.locked = !this.locked;
markComponentDirty();
setLocked(!this.isLocked());
}
public boolean isLocked() {
return locked;
return this.getBlockState().hasProperty(DrawerBlock.LOCKED) && this.getBlockState().getValue(DrawerBlock.LOCKED);
}
public void setLocked(boolean locked) {
this.locked = locked;
markComponentDirty();
if (this.getBlockState().hasProperty(DrawerBlock.LOCKED) ){
this.level.setBlock(this.getBlockPos(), this.getBlockState().setValue(DrawerBlock.LOCKED, locked), 0);
}
}
public InventoryComponent<ControllableDrawerTile<T>> getStorageUpgrades() {

View File

@ -5,23 +5,28 @@ import com.buuz135.functionalstorage.block.tile.ControllableDrawerTile;
import com.buuz135.functionalstorage.block.tile.DrawerTile;
import com.buuz135.functionalstorage.inventory.BigInventoryHandler;
import com.buuz135.functionalstorage.util.NumberUtils;
import com.mojang.blaze3d.platform.Lighting;
import com.mojang.blaze3d.platform.GlStateManager;
import com.mojang.blaze3d.systems.RenderSystem;
import com.mojang.blaze3d.vertex.DefaultVertexFormat;
import com.mojang.blaze3d.vertex.PoseStack;
import com.mojang.blaze3d.vertex.VertexConsumer;
import com.mojang.blaze3d.vertex.VertexFormat;
import com.mojang.math.Matrix3f;
import com.mojang.math.Matrix4f;
import com.mojang.math.Quaternion;
import com.mojang.math.Vector3f;
import net.minecraft.ChatFormatting;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.Font;
import net.minecraft.client.renderer.LevelRenderer;
import net.minecraft.client.renderer.MultiBufferSource;
import net.minecraft.client.renderer.*;
import net.minecraft.client.renderer.block.model.ItemTransforms;
import net.minecraft.client.renderer.blockentity.BlockEntityRenderer;
import net.minecraft.client.renderer.texture.OverlayTexture;
import net.minecraft.client.resources.model.BakedModel;
import net.minecraft.core.Direction;
import net.minecraft.network.chat.Component;
import net.minecraft.network.chat.TextComponent;
import net.minecraft.world.item.BlockItem;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.world.item.ItemStack;
public class DrawerRenderer implements BlockEntityRenderer<DrawerTile> {
@ -157,8 +162,8 @@ public class DrawerRenderer implements BlockEntityRenderer<DrawerTile> {
public static void renderStack(PoseStack matrixStack, MultiBufferSource bufferIn, int combinedLightIn, int combinedOverlayIn, ItemStack stack, int amount, float scale){
BakedModel model = Minecraft.getInstance().getItemRenderer().getModel(stack, Minecraft.getInstance().level, null, 0);
if (model.isGui3d()){
matrixStack.translate(0,0, -0.23f);
matrixStack.scale(0.5f, 0.5f, 0.5f);
matrixStack.translate(0,0, -0.115);
matrixStack.scale(0.5f, 0.5f, 0.25f);
matrixStack.mulPose(Vector3f.YP.rotationDegrees(180));
} else {
matrixStack.scale(0.4f, 0.4f, 0.4f);

View File

@ -1,6 +1,7 @@
package com.buuz135.functionalstorage.data;
import com.buuz135.functionalstorage.FunctionalStorage;
import com.buuz135.functionalstorage.block.DrawerBlock;
import com.hrznstudio.titanium.block.RotatableBlock;
import net.minecraft.core.Direction;
import net.minecraft.data.DataGenerator;
@ -30,6 +31,10 @@ public class FunctionalStorageBlockstateProvider extends BlockStateProvider {
return new ResourceLocation(block.getRegistryName().getNamespace(), "block/" + block.getRegistryName().getPath());
}
public static ResourceLocation getModelLocked(Block block) {
return new ResourceLocation(block.getRegistryName().getNamespace(), "block/" + block.getRegistryName().getPath() + "_locked");
}
@Override
protected void registerStatesAndModels() {
blocks.get().stream().filter(blockBase -> blockBase instanceof RotatableBlock)
@ -39,8 +44,15 @@ public class FunctionalStorageBlockstateProvider extends BlockStateProvider {
if (rotatableBlock.getRotationType().getProperties().length > 0) {
for (DirectionProperty property : rotatableBlock.getRotationType().getProperties()) {
for (Direction allowedValue : property.getPossibleValues()) {
builder.partialState().with(property, allowedValue)
.addModels(new ConfiguredModel(new ModelFile.UncheckedModelFile(getModel(rotatableBlock)), allowedValue.get2DDataValue() == -1 ? allowedValue.getOpposite().getAxisDirection().getStep() * 90 : 0, (int) allowedValue.getOpposite().toYRot(), false));
if (rotatableBlock instanceof DrawerBlock){
builder.partialState().with(property, allowedValue).with(DrawerBlock.LOCKED, false)
.addModels(new ConfiguredModel(new ModelFile.UncheckedModelFile(getModel(rotatableBlock)), allowedValue.get2DDataValue() == -1 ? allowedValue.getOpposite().getAxisDirection().getStep() * 90 : 0, (int) allowedValue.getOpposite().toYRot(), false));
builder.partialState().with(property, allowedValue).with(DrawerBlock.LOCKED, true)
.addModels(new ConfiguredModel(new ModelFile.UncheckedModelFile(getModelLocked(rotatableBlock)), allowedValue.get2DDataValue() == -1 ? allowedValue.getOpposite().getAxisDirection().getStep() * 90 : 0, (int) allowedValue.getOpposite().toYRot(), false));
} else {
builder.partialState().with(property, allowedValue)
.addModels(new ConfiguredModel(new ModelFile.UncheckedModelFile(getModel(rotatableBlock)), allowedValue.get2DDataValue() == -1 ? allowedValue.getOpposite().getAxisDirection().getStep() * 90 : 0, (int) allowedValue.getOpposite().toYRot(), false));
}
}
}
} else {

View File

@ -1,5 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
"lock_icon": "functionalstorage:blocks/unlock"
},
"elements": [
{
"from": [1, 1, 0.5],
@ -64,6 +67,30 @@
"south": {"uv": [0, 1, 16, 15], "texture": "#side", "cullface": "south"},
"west": {"uv": [1, 15, 15, 16], "rotation": 90, "texture": "#side", "cullface": "west"}
}
},
{
"from": [
7.5,
15,
-0.01
],
"to": [
8.5,
16,
16
],
"faces": {
"north": {
"texture": "#lock_icon",
"uv": [
0.0,
0.0,
16.0,
16.0
],
"cullface": "north"
}
}
}
],
"display": {

View File

@ -1,5 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
"lock_icon": "functionalstorage:blocks/unlock"
},
"elements": [
{
"from": [15, 1, 0],
@ -84,6 +87,30 @@
"south": {"uv": [0, 1, 16, 15], "texture": "#side", "cullface": "south"},
"west": {"uv": [1, 15, 15, 16], "rotation": 90, "texture": "#side", "cullface": "west"}
}
},
{
"from": [
7.5,
15,
-0.01
],
"to": [
8.5,
16,
16
],
"faces": {
"north": {
"texture": "#lock_icon",
"uv": [
0.0,
0.0,
16.0,
16.0
],
"cullface": "north"
}
}
}
],
"display": {

View File

@ -1,5 +1,8 @@
{
"credit": "Made with Blockbench",
"textures": {
"lock_icon": "functionalstorage:blocks/unlock"
},
"elements": [
{
"from": [9, 1, 0.5],
@ -126,6 +129,30 @@
"south": {"uv": [0, 1, 16, 15], "texture": "#side", "cullface": "south"},
"west": {"uv": [1, 15, 15, 16], "rotation": 90, "texture": "#side", "cullface": "west"}
}
},
{
"from": [
7.5,
15,
-0.01
],
"to": [
8.5,
16,
16
],
"faces": {
"north": {
"texture": "#lock_icon",
"uv": [
0.0,
0.0,
16.0,
16.0
],
"cullface": "north"
}
}
}
],
"display": {

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.4 KiB