From 973cfabbe1579b2925468d4d6089909a1f2825bb Mon Sep 17 00:00:00 2001 From: LocusAzzurro Date: Sun, 28 Jan 2024 15:49:10 +0100 Subject: [PATCH] :bento: roof ridge side textures Signed-off-by: LocusAzzurro --- src/generated/resources/.cache/cache | 50 ++++++++++++++++++ ...of_ridge_connection_front_snow_stage_1.png | Bin 0 -> 131 bytes ...of_ridge_connection_front_snow_stage_2.png | Bin 0 -> 138 bytes ...of_ridge_connection_front_snow_stage_3.png | Bin 0 -> 136 bytes ...of_ridge_connection_front_snow_stage_4.png | Bin 0 -> 141 bytes ...of_ridge_connection_front_snow_stage_5.png | Bin 0 -> 126 bytes ...of_ridge_connection_front_snow_stage_1.png | Bin 0 -> 241 bytes ...of_ridge_connection_front_snow_stage_2.png | Bin 0 -> 243 bytes ...of_ridge_connection_front_snow_stage_3.png | Bin 0 -> 227 bytes ...of_ridge_connection_front_snow_stage_4.png | Bin 0 -> 222 bytes ...of_ridge_connection_front_snow_stage_5.png | Bin 0 -> 216 bytes ...oof_ridge_connection_side_snow_stage_1.png | Bin 0 -> 204 bytes ...oof_ridge_connection_side_snow_stage_2.png | Bin 0 -> 213 bytes ...oof_ridge_connection_side_snow_stage_3.png | Bin 0 -> 217 bytes ...oof_ridge_connection_side_snow_stage_4.png | Bin 0 -> 209 bytes ...oof_ridge_connection_side_snow_stage_5.png | Bin 0 -> 197 bytes ...ack_roof_ridge_lower_side_snow_stage_1.png | Bin 0 -> 193 bytes ...ack_roof_ridge_lower_side_snow_stage_2.png | Bin 0 -> 196 bytes ...ack_roof_ridge_lower_side_snow_stage_3.png | Bin 0 -> 193 bytes ...ack_roof_ridge_lower_side_snow_stage_4.png | Bin 0 -> 179 bytes ...ack_roof_ridge_lower_side_snow_stage_5.png | Bin 0 -> 165 bytes ...ack_roof_ridge_upper_side_snow_stage_1.png | Bin 0 -> 224 bytes ...ack_roof_ridge_upper_side_snow_stage_2.png | Bin 0 -> 229 bytes ...ack_roof_ridge_upper_side_snow_stage_3.png | Bin 0 -> 224 bytes ...ack_roof_ridge_upper_side_snow_stage_4.png | Bin 0 -> 213 bytes ...ack_roof_ridge_upper_side_snow_stage_5.png | Bin 0 -> 197 bytes ...of_ridge_connection_front_snow_stage_1.png | Bin 0 -> 132 bytes ...of_ridge_connection_front_snow_stage_2.png | Bin 0 -> 139 bytes ...of_ridge_connection_front_snow_stage_3.png | Bin 0 -> 137 bytes ...of_ridge_connection_front_snow_stage_4.png | Bin 0 -> 142 bytes ...of_ridge_connection_front_snow_stage_5.png | Bin 0 -> 127 bytes ...of_ridge_connection_front_snow_stage_1.png | Bin 0 -> 246 bytes ...of_ridge_connection_front_snow_stage_2.png | Bin 0 -> 249 bytes ...of_ridge_connection_front_snow_stage_3.png | Bin 0 -> 231 bytes ...of_ridge_connection_front_snow_stage_4.png | Bin 0 -> 229 bytes ...of_ridge_connection_front_snow_stage_5.png | Bin 0 -> 220 bytes ...oof_ridge_connection_side_snow_stage_1.png | Bin 0 -> 207 bytes ...oof_ridge_connection_side_snow_stage_2.png | Bin 0 -> 216 bytes ...oof_ridge_connection_side_snow_stage_3.png | Bin 0 -> 221 bytes ...oof_ridge_connection_side_snow_stage_4.png | Bin 0 -> 217 bytes ...oof_ridge_connection_side_snow_stage_5.png | Bin 0 -> 201 bytes ...low_roof_ridge_lower_side_snow_stage_1.png | Bin 0 -> 208 bytes ...low_roof_ridge_lower_side_snow_stage_2.png | Bin 0 -> 215 bytes ...low_roof_ridge_lower_side_snow_stage_3.png | Bin 0 -> 206 bytes ...low_roof_ridge_lower_side_snow_stage_4.png | Bin 0 -> 191 bytes ...low_roof_ridge_lower_side_snow_stage_5.png | Bin 0 -> 173 bytes ...low_roof_ridge_upper_side_snow_stage_1.png | Bin 0 -> 233 bytes ...low_roof_ridge_upper_side_snow_stage_2.png | Bin 0 -> 239 bytes ...low_roof_ridge_upper_side_snow_stage_3.png | Bin 0 -> 231 bytes ...low_roof_ridge_upper_side_snow_stage_4.png | Bin 0 -> 220 bytes ...low_roof_ridge_upper_side_snow_stage_5.png | Bin 0 -> 200 bytes .../data/registry/BlockRegistry.java | 9 ++-- .../datagen/MergedTextureProvider.java | 37 +++++++++++++ .../datagen/ModBlockModelProvider.java | 22 +------- .../ultramarine/world/block/RoofRidge.java | 43 +++++++++++++++ .../ultramarine/world/block/RoofTiles.java | 6 ++- .../world/block/SnowRoofRidge.java | 37 +++++++++++++ .../block/state/ModBlockStateProperties.java | 3 ++ .../block/roof_ridge_side_snow_stage_1.png | Bin 0 -> 1632 bytes .../block/roof_ridge_side_snow_stage_2.png | Bin 0 -> 1640 bytes .../block/roof_ridge_side_snow_stage_3.png | Bin 0 -> 1647 bytes .../block/roof_ridge_side_snow_stage_4.png | Bin 0 -> 1648 bytes .../block/roof_ridge_side_snow_stage_5.png | Bin 0 -> 1631 bytes .../block/roof_ridge_top_snow_stage_1.png | Bin 0 -> 1648 bytes .../block/roof_ridge_top_snow_stage_2.png | Bin 0 -> 1648 bytes .../block/roof_ridge_top_snow_stage_3.png | Bin 0 -> 1758 bytes .../block/roof_ridge_top_snow_stage_4.png | Bin 0 -> 1648 bytes .../block/roof_ridge_top_snow_stage_5.png | Bin 0 -> 1758 bytes 68 files changed, 180 insertions(+), 27 deletions(-) create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_5.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_1.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_2.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_3.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_4.png create mode 100644 src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_5.png create mode 100644 src/main/java/com/voxelutopia/ultramarine/world/block/RoofRidge.java create mode 100644 src/main/java/com/voxelutopia/ultramarine/world/block/SnowRoofRidge.java create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_1.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_2.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_3.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_4.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_5.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_1.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_2.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_3.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_4.png create mode 100644 src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_5.png diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache index e0433c52..9b3c7b0c 100644 --- a/src/generated/resources/.cache/cache +++ b/src/generated/resources/.cache/cache @@ -2787,6 +2787,31 @@ e7487305493a472b16b5ee41e95f93f669961d88 assets/ultramarine/models/item/yellow_r acc04bfc3e44f34feb4f43a54d0b2d373d99cb42 assets/ultramarine/models/item/yellow_roof_tiles.json e48e56ce7a08d5506893c975360626e425e808ea assets/ultramarine/models/item/yellow_sky_lantern.json 33fdaa88c4ccf5041a8c9cebe07f945d2e77f873 assets/ultramarine/models/item/yellow_su_style_caihua.json +45320117250a1e6bdb5f6015db46569eb9b2fab8 assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_1.png +3a9771d9bfc8740b40a4b5197b4a1d691dd6773c assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_2.png +6e87002c2a64d2cfc8970efb43582d253f8a256d assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_3.png +f035e861ac72bf96b6e50710213505f7d3c9039a assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_4.png +811b5a9163a9b9a2f1089e235489d292597bd215 assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_5.png +9765fae47fb99ea1f843d338cff53de6f082e8db assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_1.png +7c1ba16686fb86342ca4aa2111792cf523222cfe assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_2.png +d53d69cc3fedc5e7bb3c0403710df65d4f9d613e assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_3.png +7359e50f908690bdf804883f28a47ccf46877f53 assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_4.png +f7aa20077426129cae7e3c7b473075e3965da504 assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_5.png +a7106d8e793b6eac6f4ec57836b6c774c85bbb73 assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_1.png +5c41b110d863d869ee1babc1a002956ebf9e2b04 assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_2.png +bb6ca45660057cb53d62d41b3b9d48ae2393db45 assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_3.png +131c1dc68c81219f7b6e72830d3e528937f4a27f assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_4.png +9845a935a6088d3a88392221b9671d469b7fdd4c assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_5.png +794fd831845e69736096d3eb68fcb321fccc3e60 assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_1.png +2d66d7e604ae3ea358299f8969f1f83acec1cfa6 assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_2.png +aa02ee1d62a7c01564b129e7c956f9b265ebb85a assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_3.png +ec5b825e4c481ea2511c55bfcb9b67e04e82ce9b assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_4.png +b1ac31b3d73911acffb6eebedfbc53dbaa9f7cbb assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_5.png +819cafb7fb4eddbcb01614616cd68a84e021dfcd assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_1.png +f6fd210dde0af7bd58ad80c6441891c20fb8df62 assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_2.png +3ae87d477e3c4ce40e812e7c5f34f393c866539d assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_3.png +3df7703d7a07945f4d4be832ef83c722fab31a32 assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_4.png +8f3f147d97eed294624b8b11ae4993d9d3052213 assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_5.png 188d4a96392e10ef1434a4441ae8064a4978270d assets/ultramarine/textures/block/black_roof_tile_edge_snow_stage_1.png 40da09595d3915133aca4d2d8dd0eaa5a1107746 assets/ultramarine/textures/block/black_roof_tile_edge_snow_stage_1_left.png 03ead663bec1c6f5161633a5b7334ffcc39e0060 assets/ultramarine/textures/block/black_roof_tile_edge_snow_stage_1_none.png @@ -3062,6 +3087,31 @@ a3b92fb5712a3b8cad0542f1826be91a2d22b561 assets/ultramarine/textures/block/green 9728c0b58c3887827bcb7f179a05f0c3f0e75fbf assets/ultramarine/textures/block/green_roof_tiles_snow_stage_9_left.png f20a136f52ad1b555ed0e6c3a99d364abd67bb0d assets/ultramarine/textures/block/green_roof_tiles_snow_stage_9_none.png 430a6be898f34d9d1ec408e8245f0b50e4f547d1 assets/ultramarine/textures/block/green_roof_tiles_snow_stage_9_right.png +4502da96d3c8443fad2da9ad9538c7b93cf6aa0e assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_1.png +7b42c6091278452d74504d290cdccc361f882558 assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_2.png +a7f3bef3e236349cc8354dd5c11e57fe70f9793d assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_3.png +24cad8c719b1a92d942306820b673f90f32a25ed assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_4.png +918900d71b5c53de73a1dae6a21033f332ad7f18 assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_5.png +8f01903b834785f534085460a6a3b1bd63cbed9d assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_1.png +c05c3085e55f0d63c85cb642ec0648cb11ea31c3 assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_2.png +954eb6e340df75d96f902b9891113e210f311147 assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_3.png +13f120a92d9b50bff14a4a11cbf4095749178a72 assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_4.png +23983bb71aa5077bf47bd5917a9536030e41dc21 assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_5.png +e49f0480d60efbb3be4206469f714a0b16f2989f assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_1.png +c40172d27b9e0c50b13c29166c7ac0185fd8170a assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_2.png +bbb901d0edf112d7416174aa437f4315ea6a5ca2 assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_3.png +c4c12712604857430ded9d9146e1ed6385cda624 assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_4.png +f9eb435f456437584c7993eee63df455faa64b49 assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_5.png +9f0c25183d91b7b6d01987361a4535f7152122df assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_1.png +3435af5ae5bc3a4741f1ab40f6c9cc3931aaa3a6 assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_2.png +3ba2310019b696dee7f819cf6a8b412ee06436e9 assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_3.png +9d22466807213d64fb40d35d7bd5d7c7f7306738 assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_4.png +5f374e578ce1fcdce5e67802fd0864d442e7b0be assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_5.png +1d10e67a13c811ed741b3dd858afac5f23a7739a assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_1.png +cfb73fbd9dae38e12111eccb03d12c084e0ba26e assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_2.png +e5d6757704de73f7d2d55164ac2ddcf078398128 assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_3.png +fb1707398bcac6f6f845a0c98f5a00d6df9f50cd assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_4.png +dc3c628e9fdb0847803f91dba4dbab73c54488cb assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_5.png 660bb66ef74669f294bccd474e67cbf4cb8304c5 assets/ultramarine/textures/block/yellow_roof_tile_edge_snow_stage_1.png 5b3a9a1e3168827bcca40b00cbbc4bb0337fa960 assets/ultramarine/textures/block/yellow_roof_tile_edge_snow_stage_1_left.png cd72094f9b29702f2b318730ed51f04649d3c250 assets/ultramarine/textures/block/yellow_roof_tile_edge_snow_stage_1_none.png diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_1.png b/src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b51823a648f0816d2fbb4f004998a0eafa5f8480 GIT binary patch literal 131 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`UY;(FAr*1S1%;pg{QrA@|9^!C z?__`2t0;;295(Rab7^Mi;SFMbY}~-ZkT}Dwgn0t5lNrMiwwKDc7*Z?+crTl09azD* em@VKW1A~~|9~sU2ueyPzGI+ZBxvXvf$a>#1cnYbGlrWEGZYP&9VCu2Oi(Ie-XLjK lz^1TT(lp^pLt+{OL-{W@$&`ap7lDQ|c)I$ztaD0e0stB>EGYm0 literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..142040de6251c1d020ee54e110eff9e8c4ac65f8 GIT binary patch literal 136 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`{+=$5Ar*1SKmNVHU!P>ak?`1f zfws%BclR0#dUV8u1i908@2LEj&LF7Jvrck0qe8C%bHc9xo(4~)Y?osdybjY^ZhA~) jyzyZL<6<_RIA#X@Zk^*_Wq8wpMl*Q2`njxgN@xNA%akk= literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/black_main_roof_ridge_connection_front_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..5291f6c1acd55a9b56a4a5e94142e388112fda17 GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`A)YRdAr*1SKmNVHU+-nWyo+I_ zM4p3(i%y%0Ue6k_oQCe%>VC|3_A)<|xXCauA%}s%kuSshacD^%(0m3@S3j3^P6|NjJUjm*M?$&w~$1CLE+wwrCzhWq@CpLLBG zm@BX4Z64+roa;JF(kg6h{V|JMz-NvXpirXarvmL00000NkvXXu0mjf5JYGV literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..32b0e3cd8b0cd6e40bfd3435f9cb22dafbabf882 GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`yF6VSLn`8yPTt6M$U(s6y>?UV znkHAR**_Q;bxci2eEh$@Db_D7@z9-wcLDrzr_a85o2Tblb+*_pKA&;gyZ8O+8CMv^ zYTsNoku{QNi{=OkWW6U(*YBD=+#O2fwT*yg*IrXF#D4;`;}bC$TYv&Mw4 z67G4t&$f{}Ufki5{gG$~)!vrakm8{0xkfL4=L%kLI6p_j;i0f@z2*aX-iE&CYkn4X q=4t5K$0_SMC-a_<{dX+BlKIzS literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..6e16deccdfc487389fe0820c8f916be5f97ee5ad GIT binary patch literal 227 zcmV<90382`P)+idpv+biI%?y=uZQn<2!4^x z@qF#XBiI`O!*C1K$QtX@G-u4y6b(?FvG?*xik@E5@LZe#jN^Sb0Rr*_`cf@GF*mhf zzDZBw3UCVd6zjT60)2n|sYkdDPXwS*qNe8n{$YUk{X5U}SfUC{O^<8zWpF)1y>SaI YY}Q>a>cne4N&o-=07*qoM6N<$f?2m+9smFU literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_5.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_front_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..90d0dcea9426ac9638b9551e48d0a1ce6c0b04d1 GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`^F3W0Ln`9dPTa`X?7-vvS#*W; z+yM4vdS93WmcEnS_2s{PWAAF2lP2l13MD-Lf@M#*JAFUT$ubb_EAn%=epklSdqKX0 z-2aA;KfPL%_IoefD1YPkXW#4sqpQj{S-kGww{`fM!z9YbzF;NWVYi7Q+7Gn@gV$v0 zb#8fUx;pzndOv%B#>VIRj5d)hR{x4me^*^4c=Pk$o(Q)!(HZOG7q-c-YcaQq+Ptm@ P=u`$zS3j3^P6LH`TzI+{{IRL zNsE&w$aJtVN=VN<->{BRoK4fsjNw=sM`y=hf6irh7{txb|DW=}@c~l_V~}BUU*E-g zFN5ZtJ6Uh2q)4?TZd2%9n9OEq*!kZ;M}K{T)8j)5l{2I^Fd8uC%$Q(vhr!g8mxo7) z{ipDJ8w-JpsuK(qD+^4Tn3!iCYrlB4DY;RIhaqysnI5a8IX{8UWAJqKb6Mw<&;$Sp CSV#T< literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..223a86a269229bcd9de69716f35f1b8ed8cdeb5e GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`b39!fLn`8ufBbuYzrOsvg8>_3 zik%OS8s8xWhRMtyB`1h3&UO=TmTb~FFCZlNdwvAZr5-)Eos4>U^ZsidRN2WOz3dL_ z3#KJWY_hV8|4&I^D=y~V;CaG?=WvdrnDcR-q$HvLi4k#ejIGC79X}bECNL*3-7rwB z+`*WYB_$!D!uLttuChR3k+(v!)29a+EUausz5I(;vmR$sm0&Pfd2QD07e6Kd-O1qT L>gTe~DWM4f4lGC# literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..b81b0fb5c8f7e40d69e66586a68fec85b9ca8ca4 GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`3p`yMLn`8yPPFA~HsEQkM?s|A?T3m`xLx;<+luz?MpWy#{ZEElY!P%4ZxAc6reqdU2 zIsNCR2jbix9^AIP!BSz&`l`J%*<-==q!!sbPYc*rK4IVTc5?B8b=8@Z)-u#@oYmg7 zC?z1Y-`Ccu=1T@ci$r)G$BNf!?JtVX8OQ5il%A#?KR;0K@HOL__4}Oo>XoAZa>Nx% RodUX*!PC{xWt~$(697otS?vG- literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_connection_side_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..191b6880013e9df94ad60e82a09be2c6eb7699ae GIT binary patch literal 209 zcmV;?051QDP){68g}JfVBV5@+_O;h$<&C;4%41$h`7$YqJ3hz9G}3!MoL2Zv w@cX~#b7kkPj>=Czd$#oKxVNzSCzo8=`bjpX&ysf@1iFjC)78&qol`;+0A-9(U;qFB literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_1.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_1.png new file mode 100644 index 0000000000000000000000000000000000000000..1aacf6c90c33a64330fd50e8c68906951e45f2ed GIT binary patch literal 193 zcmV;y06zbTP)M0UX@%rk?@2JK+3DHyzeu%etk@$mUq>zN00000NkvXXu0mjfj|5T< literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..ef2d179aeb2c79a95f3f0095955a10bc7fcef1f6 GIT binary patch literal 196 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`-JULvAr*0FCpvO97zi+b7k%U_ ze_^ut-$r)-fBzNltx8ec#HQ^bsKawwEptIu^to!U=4RpYtSgLswr|Y(ChN}-FyM5) z6DeeT&E&1$u66r;Sf{@&x0#;@n>rE&A!**yjCb^#caW9UFfyzN%pdbQXiBtDnm{r-UW|rZ!Ef literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f770bb8f53ee883f6e5d9008ae6a9cfb98ee7a47 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`9iA?ZAr*0FCpdC77zi+b7d<-L z?!aX6zm4qv|Nbl9TeDXSI|T8Pc*`Lj2(&9XO^-adTZqj*N~Q)&-P{w;p^0q7#xgNE# zClno&wy>!D-@K!7rKji5AmKxYJ}~{=zlUX4@F`^hw!I>a#iy5V`B1l(Rpv#&;iNaI zX&z!uH@Kn>7=JsYeIS6_AiuO^PIzD8`CosWSvGmsNG|-@DyJs)Abz7c>kom0f4v$` cixqRqP2ktq-;^7w33LU6r>mdKI;Vst08y7i5&!@I literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_5.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_lower_side_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..721eb3144073f8437d8b0bff85674b7c1751f859 GIT binary patch literal 165 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ii4<#Ar*1SKmNVHU+-nWyo+Jw z3@f%1r?ndlcd3~5tefWO=6u{F~+?6E$ z`rgTvat9bzfnry7SPEIp00i_>zopr0KUXrKL7v# literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..5f7a814054205d099e05f0fffec1ef8332d60b99 GIT binary patch literal 229 zcmV^P)U3Am?AE7%VKky}dsv!`Zs-=6ydnECkq0)|iCxz}}y)kN2m;a<5Rw#~Ncfn?fHf_;*9oYG;XGD53lY zDxAgYy73a$DQL&@bh4&cRb8AQW42qcI`)yEZLgag`PT&cKmc@9+Ve*f)sZ>!#~9I! fZ1>REm_i8)+Q-FQNrg7C00000NkvXXu0mjf;8tUx literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..441e605df0fc6dc20b13088427b65f11ff94dfcc GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`%ROBjLn`8yPBP?cHsEosFV9}xQLUgOg5_D<$Owchr>j8qg@U!FX2|HiStzuR8bPv9&_|Ed!Le%ndaZ`mO!=Du)muou$1J0GiE4MA&=GOC7cgqL% Yt5NSxnJ+$D0dz8hr>mdKI;Vst0N&PJXaE2J literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..0f8f8d33a8c906fa94b89edb546edc6a8f9d3994 GIT binary patch literal 213 zcmV;`04o29P)4aI)V92-S5HOCU~HleUTLH`Wkx zu8Imf+BJoC=e-!TZI|RrzYOf-P`J*Wa=L_wg5^t>YveHOngh?uEtGHqDz`362p-$P P00000NkvXXu0mjfNQ7D1 literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_5.png b/src/generated/resources/assets/ultramarine/textures/block/black_roof_ridge_upper_side_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..d46ce39d7ad0e05bfc9e8c64f89f939a170c51e2 GIT binary patch literal 197 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`J)SO(Ar*0JCmM1!81T3jb6s@3 zJ9o|(2BjU=J1YJw?=YR@pwhN&QDMcBKk;==Ozs>n7}tE5R?oC+UHTfy!~a?{;{pT> zmmRfXx|ZwCznyd61O64Oq-+lu^y~?ZWxcuMnofX-D%X@1*<3IE^7%4mnVpmdKI;Vst0Aw0WlmGw# literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_1.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_1.png new file mode 100644 index 0000000000000000000000000000000000000000..b8d2060e8b09f3e061f76ebb0b1681aa2456c888 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`-kvUwAr*1SH}2k#5joUzGUEjaR}n f;R=J6Bm={{w9V6hbP0l+XkK?g1@f literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..8e61ba5fe09a33616dff1b9f0b1362f3107f73f5 GIT binary patch literal 139 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`L7py-Ar*1SKmNVH|NrmZu>bvM z3V-l3Dg1jG`mTV7S)ovXjd4QM1UZ5Ej7J(I8H5-vo?ugu<}hYSW8hdU!4TAv$6$7t m?Hogj>0-7XDT6aS3=CnncGiUd+iwdrox#)9&t;ucLK6U7+$;qE literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..365dbe9c721dd2eb7080128874e0f78ff58b60ec GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`0iG_7Ar*1SKmNVHU!P>ak?`1f zfws%B<>5OI8*aKW(ULFW+rPZk|9KRcS}vL<8#62sOk?no?_xCYOzAx#v7Yh7Bm-$p kBL-FVdQ&MBb@055hdH2?qr literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..433789d5e0f17d9df7ca2bf9452895f763c75ac1 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`p`I>|Ar*1SKmNVHU+-nWyo+I_ zMBagkmV6SEb{K4m+Q9gG_u2xff~u+3GRo2nmzWRn7_fN=EaAATkitCSsz55krnC~v qJ!}iIm#ktmsJhY+$UK3Uf#K5G?;Hw`kJke&VDNPHb6Mw<&;$UdIxd3% literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_5.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_main_roof_ridge_connection_front_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..03b7d6316121a04a482e08f300027ec293463c29 GIT binary patch literal 127 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Zk{fVAr*1SKmNVHU+-nWyo+Jw z3@f%b@3;M`Pw8WBQ!%Tlnrht@#Wo?WgxR4hL1H?iL9GVc0hNio4#!Spx$#PvCKO0A ZF!Vb84vh%i6aqAn!PC{xWt~$(696K5C(-}_ literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_1.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_1.png new file mode 100644 index 0000000000000000000000000000000000000000..eb3c032e598da8af4f5c21dddd0b95dc8a5ff4a4 GIT binary patch literal 246 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`dp%toLn`8uE%u)J`~Q3W|9{O4 z9lbrYb;uED*f{YgkAka$jlKt)U-DsvqY6D|*e~+9KePD5{_yYJFbxScw#mnr zv9%o3bJ)%+?pCJBW4vH?M^B>E#iM~S4R2gZc#IihWh5V$I?kRbkSM-@dqNI_hoGv2 z9QO?;3Ck~qiETES>;4pU7+KC>(+S1BGu=gN(i*3Asg?IpKdmB3sWVb8xVZ!V{64byWoB2QUKS?&d z`+j)cb^(U2@5g0m)By(LSSKWb>wXaeW<@ocXgobHn*lsd>k-r#2iWX+(ScVj!RqW9 zBzIJ}(e+UW+M+`P*Oh7q-D=wIz=f|3kn|7v7IfCP;hK{U^T|NqsB;Nc$9EWYs6vbT*Gto-}oyZHr7vi;Jd0D00000NkvXXu0mjfcS>nt literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..7bdbb69e5a4df7e7f50bcd5fdc12db6647c685e6 GIT binary patch literal 231 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`>pWc?Ln`8ufBbuYzdp%;BjK^} z0&SOLpPN!1NW}6SOS3RK{?MLdaW>n-zjwnDEN9qs^!G__dy>6iMhE}lD@_>^X%6Os zZ4-H2raKohp6R?{aE76zFs0`*tHPZ$6_*>VFPK!M8G>9m+m17B6L90JjhUh7KkKzU zPqUB9vckj}ZxzgLG)U@AvM^Mv+`;&wldZ+^k;3c`C!3iCW0@p{C$YOLYZy$(tdWS- ewGh)d$S~n~_S233-iHER&fw|l=d#Wzp$PyjQB{Zl literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..162ed736e59bca92cfbd922b790f2ef9946e4705 GIT binary patch literal 229 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Ydl>XLn`8ufBbuYzuwD$c^AV< ziM#{<^0aw8Vxm)Vab^Z>Sw>ow>hdQ zUEX1Erc6LO=Kznm=bRZ6Z0;~TVPQV3P&mQ&$CHDN9eRyDoF|(X3yMgbFtO`dCnm!^ bC4phS$*gI?|Lb-E-Ob?X>gTe~DWM4fMQu^z literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_5.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_front_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..35f5944e168418dc719ff6e66c685f13b9cbdf59 GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`i#=T&Ln`8ufBbuYzuwD$c^AXV z8CGm(xF<0tmw4t#EXniU$9AaU@7=Kfi4tlYkCTl>B5gU0WoAD9ATQpwlP6Y2a`6rZ z+3k{?jl2%x?uCrI7*4V^hy*rCIw*2+M@sM>-eBM$=6sx|@=^@YgcK#CUhcy=>>CfV zohg`jq?7aHVcrHyamnT*j%E)hv$HGhVlh%v;qP+`NKm-^!(dlbflfdZW6_iaTOZ!( R{|$65gQu&X%Q~loCIBy?OVt1X literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_1.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_1.png new file mode 100644 index 0000000000000000000000000000000000000000..eadca8ceb78c9676250b6dbf9dfebf827c7bfabb GIT binary patch literal 207 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`(>z@qLn`8uE%u)J`~Q3W|9{O4 z9ld>yMG8_Z2{|ct%)8iPB$i0rWRRHs@PthJ|0xNlcyHX#{W@RBh9jmy&p|6K!&vB- zKWEyFN$Wq>$4xj>pCZ-fSW{wHa%O`1*{||#j%rGmcNm;06Ohh1z$5NCXT}7ZI}9_5 zCmMRlqzKzp7AP$8R!DaG^dN(UmCdM^fAMP8<4md&3@be28Wvqxu^#9`22WQ%mvv4F FO#o(9OiBO% literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..8c62e05fa48e5732d7429018f0863e17f561b814 GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`^F3W0Ln`8ufBbuY|NrIHcMeLh zO!#SFIKzUYnZbweNV-E<&pOFio-~e4Hisu#^8N2Ts&Mv2(iG_p`)|LpSDm3Eo^W`| zZid)~kTVz3RKCm?I^Jd Q1L#x+Pgg&ebxsLQ0F^#f;{X5v literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..442148a5680fcd09076119adefda381f292e1ea2 GIT binary patch literal 221 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`OFUg1Ln`8ufBbuYzdp%;BjK^} z0&SOL%fojbHryrAbG9I*?{K|<+jX8p29`5yjO5z_c^syzuo=I3zwK8)Z!?dJ_~EvP zdJ5u?OBgrKC}O_V)ABF4Npjnh>_79xRX)qlY)cf7kL8gye&SjDw>@z}=Lr)%p3SmH z*rW{(y9%kRsqmXKJc~);5n{jD;x8xD@j~dtj0rXtQjU#{K93K-$U3;ufs>74n@P>A U`@Q~tK=(3uy85}Sb4q9e0MS}f9smFU literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_connection_side_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..5632ec925b57e7f71578875973e47abf59dad270 GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`3p`yMLn`8ufBbuYzuwD$c^AV< ziM#_7E%_uS?J(FBwSiHAF^28HlL=2J9+mi39{tz-_zAWJrxzx(rCk1Sv&EZlHTQ?a zlIat37_8DVjD>#rbEe&xwEkm#+=MgrDN=2YH6?~6XC|nh{VLz)sHSvzhryXL0qL9r zJmQ{nW=ycT!!VDL-*^GMm7q4bL&ZH{AFvoh)R;|aL Rn}Kd+@O1TaS?83{1OQ1V&sVS|o-y|zBdPfK?GJ8W>mB}GcS?IvGRGw+OtN}a;OliH;jiuH`xI-7G2 zsq^!>lyIi_c*x20E;!(@>|+}rLn`8uGmM3P{r`J^|9=IB zq{Yb-WIEUwC8TGb-=G@*`2QY-ng36i@HGE0Fr1Ji(020R4W7zNG5-@KQjCmxxev!M zCN=ZUc&OAVEIg@QnxRg8X&n)Nu7s>B;s zF9YUX^F5AkF=n{C{>3K?UWe-)eHX7TmS|WfAubmKbRWlSmGoua|0;k^WbkzLb6Mw< G&;$T36HE&L literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..55a8e2a33a8fbe7e5c8a6c576a3f254e7bb176a7 GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`^E_P~Ln`8ufBbuY|G$~Cq5&IY zik%OS8s8xWhRMtyCAU4v{xe@(<+Hp?GmC=>PxFz9M-$o?)-0HjQ1fL66^@;Ymyhj}ZIK7XNvSOBiCAB!wrX-?*R4%Eyx;CGQr_ z-N))>aD#hF0$Yjw#IDSAhF$R&pB73rtP_-7yxQH6A=XgOW(N-g!}h!S?&lKuUIJap N;OXk;vd$@?2>_m*M^FF& literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..f4488ea8d74dc775aad76aa13a1ae09ee0d310aa GIT binary patch literal 206 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Q$1ZALn`8ufBbuYzdp%;BjK^} z0&SOLpPNz+RCw=Wi{Uxa_R-PAd7jDjdI7iVJckS{XV~=IO;cexreJoXK~is00;__Q z?BOSci8~k#o*yze<1oSZ#uG=090m`@T`WdwD(5%szs)5hal*u|XWcYLu~ko!Hi&B+ z`IEMD3D}ekh>c?d-b``>_7)Hc)I$ztaD0e F0sy_XOTz#F literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..df3b0205aaf6da41fd02490cbeadcedf20808de7 GIT binary patch literal 191 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`ZJsWUAr*1SKmNVHU+-nWyo+I_ zM4rPu6Y(|`y*p_tEm;S6#61n%!Z{8pG+%t0SR;_upgBWah57i4Z3|ByHn_nsfvJRZ zMw)2*p(DhQ6R~{pdZ)2Dl}q-CeTF;p00i_>zopr0FVPjPXGV_ literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_5.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_lower_side_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..622a5d1f6757708b1f1d94d6f6a176179bbbdf49 GIT binary patch literal 173 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`C7v#hAr*1SKmNVHU+-nWyo+Jw z3@f%X1ru44OFVNVVs)M8nTSUu#7*Fd5jet@nA3LXNx~XWur0`TIsW2RAdf?M4>!LaGsCG_ W(=W~~XOscj&*16m=d#Wzp$Py{q&~0! literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_1.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_1.png new file mode 100644 index 0000000000000000000000000000000000000000..c5be7ea196e39228035ad4df07d091d03e73c98b GIT binary patch literal 233 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`8$4YcLn`8uE%u)J`~Q3W|9{O4 z9ld>yMG8_Z2{|cthxaJV{2%?v^j~vEjl>d(7RM|{i6d;C#xgS>f2gnDezjhJH+gY# zO_s!mn|za-Z+7YNmoe_jU6QmxT;t%B-3+k}A!jb6seG9)#M96EMZle}G{vyw%mnqb zU*+2z)s!ypFgQ~tAf0o7N8EGHj0rY(7{0JD9a1Qq;QQmr!Nv}~#vaa-&5H#^Bu<#v g^{f+<;hvJf5ES9_(KRkj9_V%kPgg&ebxsLQ0EEd|=>Px# literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_2.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..6ae2506cb84b10b9750722e519ba27168a796833 GIT binary patch literal 239 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`+dN$yLn`8yPO|1ZKdVO9+R_62_allz!29?j74P3ipFT%FOaIl*XI@jY z%uP1oV*BR3de-@Q)$OeevrkG*Hjs<>z2;A`y_L>)uF{${hSN4{emU5*PZ*W#S)S>IO7^SdUpJ1^XCg5hn$2-)8rA1rd+W`6$8`K6KJ#R`+B{c5X} nji2`$E|R?Iw{W9jtI)qEi6P#d4bwY-K49>4^>bP0l+XkK$E{sL literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_3.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..afd2c17a14969aa607e4bccc2cac99910dd24292 GIT binary patch literal 231 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`>pWc?Ln`8ufBbuYzdp%;BjK^} z0&SOLpPN!1NT_X7jc4vj{KVt_%;L}e`?;+PC0iUHDewd_KWfgHQ6-VaFq3UF<4re# zwvz{QT&J_|X1HmR(({I?M&b>tmw}(SK)0s(g0mhk>{TV?xL+vt$-Fv|^kRmh|E$;c zJk35X%L)@`yj3u}(IBZe$-+>vatGrJP8N^_vp<|{W)_TPk`$iA?yjt1Fd?%>B39Qz cOyeNKi)#f7WbRg~0A0@D>FVdQ&MBb@0P;{&Q2+n{ literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_4.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..4718422d915c1e996e635322636d87ae6285909b GIT binary patch literal 220 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`i#=T&Ln`8ufBbuYzuwD$c^AV< ziM#_7E%_uS?fCF7PdkM98SBXg!(C1@?o6xUHEgTe~DWM4fo#9Y` literal 0 HcmV?d00001 diff --git a/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_5.png b/src/generated/resources/assets/ultramarine/textures/block/yellow_roof_ridge_upper_side_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..287c1cd0a6b9b332744b4a0f047787caad0857aa GIT binary patch literal 200 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`{hlt4Ar*1SKmNVHU+-nWyo+Jw z3@f%X+>;oSOFVNVVs#Jy%Uk{5fJgX`bY@#(M2B+s!sIra%ymE=MuIbswI*(BzLCJ3w!`Dmk(MV9*$&L BLACK_ROOF_RIDGE_UPPER = BLOCKS.register("black_roof_ridge_upper", () -> new BaseBlock(BaseBlockProperty.STONE)); - public static final RegistryObject BLACK_ROOF_RIDGE_LOWER = BLOCKS.register("black_roof_ridge_lower", () -> new BaseBlock(BaseBlockProperty.STONE)); + public static final RegistryObject BLACK_ROOF_RIDGE_UPPER = BLOCKS.register("black_roof_ridge_upper", () -> new RoofRidge(DyeColor.BLACK, RoofRidge.RoofRidgeType.UPPER)); + public static final RegistryObject BLACK_ROOF_RIDGE_LOWER = BLOCKS.register("black_roof_ridge_lower", () -> new RoofRidge(DyeColor.BLACK, RoofRidge.RoofRidgeType.LOWER)); public static final RegistryObject BLACK_ROOF_RIDGE_CONNECTION = BLOCKS.register("black_roof_ridge_connection", () -> new BaseAxialBlock(BaseBlockProperty.STONE)); public static final RegistryObject BLACK_MAIN_ROOF_RIDGE_CONNECTION = BLOCKS.register("black_main_roof_ridge_connection", () -> new BaseHorizontalDirectionalBlock(BaseBlockProperty.STONE)); public static final RegistryObject BLACK_ROOF_RIDGE_UPPER_SLAB = BLOCKS.register("black_roof_ridge_upper_slab", () -> new BaseSlab(BaseBlockProperty.STONE)); @@ -129,8 +129,9 @@ public class BlockRegistry { public static final RegistryObject BLACK_MAIN_ROOF_RIDGE_PANEL = BLOCKS.register("black_main_roof_ridge_panel", () -> new RoofRidgePanel(BaseBlockProperty.STONE)); public static final RegistryObject BLACK_MAIN_ROOF_RIDGE_PLATE = BLOCKS.register("black_main_roof_ridge_plate", () -> new RoofRidgePlate(BaseBlockProperty.STONE)); public static final RegistryObject BLACK_MAIN_ROOF_RIDGE_STAIRS = BLOCKS.register("black_main_roof_ridge_stairs", () -> new StraightStairBlock(BaseBlockProperty.STONE)); - public static final RegistryObject YELLOW_ROOF_RIDGE_UPPER = BLOCKS.register("yellow_roof_ridge_upper", () -> new BaseBlock(BaseBlockProperty.STONE)); - public static final RegistryObject YELLOW_ROOF_RIDGE_LOWER = BLOCKS.register("yellow_roof_ridge_lower", () -> new BaseBlock(BaseBlockProperty.STONE)); + + public static final RegistryObject YELLOW_ROOF_RIDGE_UPPER = BLOCKS.register("yellow_roof_ridge_upper", () -> new RoofRidge(DyeColor.YELLOW, RoofRidge.RoofRidgeType.UPPER)); + public static final RegistryObject YELLOW_ROOF_RIDGE_LOWER = BLOCKS.register("yellow_roof_ridge_lower", () -> new RoofRidge(DyeColor.YELLOW, RoofRidge.RoofRidgeType.LOWER)); public static final RegistryObject YELLOW_ROOF_RIDGE_CONNECTION = BLOCKS.register("yellow_roof_ridge_connection", () -> new BaseAxialBlock(BaseBlockProperty.STONE)); public static final RegistryObject YELLOW_MAIN_ROOF_RIDGE_CONNECTION = BLOCKS.register("yellow_main_roof_ridge_connection", () -> new BaseHorizontalDirectionalBlock(BaseBlockProperty.STONE)); public static final RegistryObject YELLOW_ROOF_RIDGE_UPPER_SLAB = BLOCKS.register("yellow_roof_ridge_upper_slab", () -> new BaseSlab(BaseBlockProperty.STONE)); diff --git a/src/main/java/com/voxelutopia/ultramarine/datagen/MergedTextureProvider.java b/src/main/java/com/voxelutopia/ultramarine/datagen/MergedTextureProvider.java index 82767b2e..7a1f9359 100644 --- a/src/main/java/com/voxelutopia/ultramarine/datagen/MergedTextureProvider.java +++ b/src/main/java/com/voxelutopia/ultramarine/datagen/MergedTextureProvider.java @@ -2,6 +2,7 @@ import com.voxelutopia.ultramarine.Ultramarine; import com.voxelutopia.ultramarine.world.block.RoofTiles; +import com.voxelutopia.ultramarine.world.block.SnowRoofRidge; import net.minecraft.data.DataGenerator; import net.minecraft.data.DataProvider; import net.minecraft.data.HashCache; @@ -33,6 +34,40 @@ public MergedTextureProvider(DataGenerator generator, ExistingFileHelper fileHel @Override public void run(HashCache pCache) throws IOException { + roofTilesTextureMerge(pCache); + + BufferedImage roofRidgeSideBase, snowLayer, combinedTexture; + String[] roofRidgeColors = {"black", "yellow"}; + String[] roofRidgeSideTypes = { + "roof_ridge_upper_side", + "roof_ridge_lower_side", + "roof_ridge_connection_front", + "roof_ridge_connection_side", + "main_roof_ridge_connection_front"}; + int maxSnowStages = SnowRoofRidge.MAX_SNOW_STAGES; + + for (String color : roofRidgeColors){ + for (String type : roofRidgeSideTypes){ + for (int stage = 1; stage <= maxSnowStages; stage++){ + + roofRidgeSideBase = ImageIO.read(getInputTexture(color + "_" + type)); + snowLayer = ImageIO.read(getInputTexture("roof_ridge_side_snow_stage_" + stage)); + combinedTexture = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB); + + Graphics graphics = combinedTexture.getGraphics(); + graphics.drawImage(roofRidgeSideBase, 0, 0, null); + graphics.drawImage(snowLayer, 0, 0, null); + + save(pCache, combinedTexture, getOutputPath(color + "_" + type + "_snow_stage_" + stage)); + graphics.dispose(); + } + } + } + + + } + + private void roofTilesTextureMerge(HashCache pCache) throws IOException { BufferedImage roofTileBase, snowLayer, snowSideUp, snowSideLeft, snowSideRight, combinedTexture; String[] roofTileColors = {"gray", "yellow", "green", "blue", "cyan", "black"}; for (RoofTiles.RoofTileType type: RoofTiles.RoofTileType.values()){ @@ -92,6 +127,8 @@ public void run(HashCache pCache) throws IOException { } } + + @Override public String getName() { return "Ultramarine Texture Merger"; diff --git a/src/main/java/com/voxelutopia/ultramarine/datagen/ModBlockModelProvider.java b/src/main/java/com/voxelutopia/ultramarine/datagen/ModBlockModelProvider.java index 7a9e9f30..a3c2e517 100644 --- a/src/main/java/com/voxelutopia/ultramarine/datagen/ModBlockModelProvider.java +++ b/src/main/java/com/voxelutopia/ultramarine/datagen/ModBlockModelProvider.java @@ -247,27 +247,7 @@ protected void registerStatesAndModels() { BlockRegistry.BLOCKS.getEntries().stream().filter(blockRegistryObject -> blockRegistryObject.get() instanceof RoofTiles) .forEach(tile -> roofTiles(tile.get())); - /* - roofTiles(BlockRegistry.GRAY_ROOF_TILES.get()); - roofTiles(BlockRegistry.GRAY_ROOF_TILE_STAIRS.get()); - roofTiles(BlockRegistry.GRAY_ROOF_TILE_EDGE.get()); - roofTiles(BlockRegistry.YELLOW_ROOF_TILES.get()); - roofTiles(BlockRegistry.YELLOW_ROOF_TILE_STAIRS.get()); - roofTiles(BlockRegistry.YELLOW_ROOF_TILE_EDGE.get()); - roofTiles(BlockRegistry.GREEN_ROOF_TILES.get()); - roofTiles(BlockRegistry.GREEN_ROOF_TILE_STAIRS.get()); - roofTiles(BlockRegistry.GREEN_ROOF_TILE_EDGE.get()); - roofTiles(BlockRegistry.BLUE_ROOF_TILES.get()); - roofTiles(BlockRegistry.BLUE_ROOF_TILE_STAIRS.get()); - roofTiles(BlockRegistry.BLUE_ROOF_TILE_EDGE.get()); - roofTiles(BlockRegistry.CYAN_ROOF_TILES.get()); - roofTiles(BlockRegistry.CYAN_ROOF_TILE_STAIRS.get()); - roofTiles(BlockRegistry.CYAN_ROOF_TILE_EDGE.get()); - roofTiles(BlockRegistry.BLACK_ROOF_TILES.get()); - roofTiles(BlockRegistry.BLACK_ROOF_TILE_STAIRS.get()); - roofTiles(BlockRegistry.BLACK_ROOF_TILE_EDGE.get()); - - */ + sideBottomTop(BlockRegistry.BLACK_ROOF_RIDGE_UPPER.get()); diff --git a/src/main/java/com/voxelutopia/ultramarine/world/block/RoofRidge.java b/src/main/java/com/voxelutopia/ultramarine/world/block/RoofRidge.java new file mode 100644 index 00000000..14f2e1a9 --- /dev/null +++ b/src/main/java/com/voxelutopia/ultramarine/world/block/RoofRidge.java @@ -0,0 +1,43 @@ +package com.voxelutopia.ultramarine.world.block; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.item.DyeColor; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.biome.Biome; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; + +public class RoofRidge extends BaseBlock implements SnowRoofRidge{ + + private final DyeColor color; + private final RoofRidgeType type; + + public RoofRidge(DyeColor color, RoofRidgeType type){ + super(BaseBlockProperty.STONE); + this.type = type; + this.color = color; + this.registerDefaultState(this.stateDefinition.any() + .setValue(SNOW_LAYERS, 0)); + } + + @Override + public void handlePrecipitation(BlockState pState, Level pLevel, BlockPos pPos, Biome.Precipitation pPrecipitation) { + //todo + } + + @Override + protected void createBlockStateDefinition(StateDefinition.Builder pBuilder) { + super.createBlockStateDefinition(pBuilder); + pBuilder.add(SNOW_LAYERS); + } + + public DyeColor getColor() { + return color; + } + + public RoofRidgeType getType() { + return type; + } +} diff --git a/src/main/java/com/voxelutopia/ultramarine/world/block/RoofTiles.java b/src/main/java/com/voxelutopia/ultramarine/world/block/RoofTiles.java index 7f9c7d84..5ab70321 100644 --- a/src/main/java/com/voxelutopia/ultramarine/world/block/RoofTiles.java +++ b/src/main/java/com/voxelutopia/ultramarine/world/block/RoofTiles.java @@ -1,5 +1,6 @@ package com.voxelutopia.ultramarine.world.block; +import com.voxelutopia.ultramarine.world.block.state.ModBlockStateProperties; import net.minecraft.core.BlockPos; import net.minecraft.core.Direction; import net.minecraft.util.StringRepresentable; @@ -33,8 +34,8 @@ public class RoofTiles extends ShiftableBlock{ public static final BlockBehaviour.Properties PROPERTIES = BlockBehaviour.Properties.of(Material.STONE) .requiresCorrectToolForDrops().strength(1.5F, 4.0F).sound(SoundType.DEEPSLATE_TILES); public static final DirectionProperty FACING = HorizontalDirectionalBlock.FACING; - public static final IntegerProperty SNOW_LAYERS = IntegerProperty.create("snow_layers", 0, 15); - public static final EnumProperty SNOW_SIDE = EnumProperty.create("snow_side", SnowSide.class); + public static final IntegerProperty SNOW_LAYERS = ModBlockStateProperties.SNOW_LAYERS; + public static final EnumProperty SNOW_SIDE = ModBlockStateProperties.SNOW_SIDE; private static final VoxelShape BOTTOM_AABB = Block.box(0.0D, 0.0D, 0.0D, 16.0D, 8.0D, 16.0D); private static final VoxelShape BOTTOM_AABB_SHIFTED = Block.box(0.0D, -8.0D, 0.0D, 16.0D, 0.0D, 16.0D); @@ -294,6 +295,7 @@ public RoofTileType getType() { return type; } + @Override protected void createBlockStateDefinition(StateDefinition.Builder pBuilder) { super.createBlockStateDefinition(pBuilder); diff --git a/src/main/java/com/voxelutopia/ultramarine/world/block/SnowRoofRidge.java b/src/main/java/com/voxelutopia/ultramarine/world/block/SnowRoofRidge.java new file mode 100644 index 00000000..d8a2da1a --- /dev/null +++ b/src/main/java/com/voxelutopia/ultramarine/world/block/SnowRoofRidge.java @@ -0,0 +1,37 @@ +package com.voxelutopia.ultramarine.world.block; + +import com.google.common.collect.ImmutableMap; +import com.voxelutopia.ultramarine.world.block.state.ModBlockStateProperties; +import net.minecraft.util.StringRepresentable; +import net.minecraft.world.level.block.state.properties.IntegerProperty; + +import java.util.Map; + +public interface SnowRoofRidge { + + IntegerProperty SNOW_LAYERS = ModBlockStateProperties.SNOW_LAYERS; + + ImmutableMap SNOW_STAGES = ImmutableMap.ofEntries( + Map.entry(0, 0), Map.entry(1, 0), Map.entry(2, 1), Map.entry(3, 1), + Map.entry(4, 1), Map.entry(5, 2), Map.entry(6, 2), Map.entry(7, 2), + Map.entry(8, 3), Map.entry(9, 3), Map.entry(10, 3), Map.entry(11, 4), + Map.entry(12, 4), Map.entry(13, 4), Map.entry(14, 5), Map.entry(15, 5)); + + int MAX_SNOW_STAGES = 5; + + enum RoofRidgeType implements StringRepresentable { + UPPER("roof_ridge_upper"), LOWER("roof_ridge_lower"), CONNECTION("roof_ridge_connection"), MAIN_CONNECTION("main_roof_ridge_connection"); + + String name; + + RoofRidgeType(String name){ + this.name = name; + } + + @Override + public String getSerializedName() { + return name; + } + } + +} diff --git a/src/main/java/com/voxelutopia/ultramarine/world/block/state/ModBlockStateProperties.java b/src/main/java/com/voxelutopia/ultramarine/world/block/state/ModBlockStateProperties.java index ac0ba614..fb997689 100644 --- a/src/main/java/com/voxelutopia/ultramarine/world/block/state/ModBlockStateProperties.java +++ b/src/main/java/com/voxelutopia/ultramarine/world/block/state/ModBlockStateProperties.java @@ -1,5 +1,6 @@ package com.voxelutopia.ultramarine.world.block.state; +import com.voxelutopia.ultramarine.world.block.RoofTiles; import net.minecraft.core.Direction; import net.minecraft.world.level.block.state.properties.*; @@ -15,5 +16,7 @@ public class ModBlockStateProperties { public static final EnumProperty CHIRAL_BLOCK_TYPE = EnumProperty.create("type", ChiralBlockType.class); public static final EnumProperty ORIENTABLE_BLOCK_TYPE = EnumProperty.create("type", OrientableBlockType.class); public static final EnumProperty STACKABLE_BLOCK_TYPE = EnumProperty.create("type", StackableBlockType.class); + public static final IntegerProperty SNOW_LAYERS = IntegerProperty.create("snow_layers", 0, 15); + public static final EnumProperty SNOW_SIDE = EnumProperty.create("snow_side", RoofTiles.SnowSide.class); } diff --git a/src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_1.png b/src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_1.png new file mode 100644 index 0000000000000000000000000000000000000000..cc8a84acc112a35b481173fc7726b9e330823827 GIT binary patch literal 1632 zcmcIlONiZ67>?MAj*b-E6gM8yg^Hf!gX_A?H zXI4^h;X;wFL|h3j6nub71x0XC=%QU(7rH3oMrPqoDD}^M#3JoD8$%u^$@hQ%_doLI zoz0EcmY1GhQWRymx8B`?>#62=^bt5e^XFX(m&c0rH!4MW{Hf-6Ncr%i(~5HPTH4>P zx1$RIlbJ@jjD*QSParUR1d%TPDLpX)k{u9qM{>)>H0w_E*@<3 z*})F;xqAL3bZ!y=K_+U7CfO*jf=Q@Oc>`ECk98GIA@xqEt~L(QcC?8)vJ}YG49o~2 z$n`bqxt0<8FCvqehE9CgF(HBF29}5Bn+onqo&;OnSLe>)E>wqgT?D#59*?!LrO9%j z8@>+&rf!-T5V+dUYdXPsb!NfP6%{MfqE2Ow8b%t+-8xi3>MVw=Xle6mo+rqdKB0wf zXrzg00gR%fp;^|Vt9oq@yv+69m$>Th7ee0>mE0|vSlbhMeP-c|v(~oQEl1NxIn%{R zWB{u`n9;f_hO(B`P(C1z_H`Rg5p+sHYgzWC94#ufxnM!2r4jVpr8MVqTs_|?nj45N ztwpFp)oe@*Y{q4S#cbW zxfREltk@=|f>CT!?!>X-diDxmu)SWU@afRey{wHY4va}+I-D8=d!FUugxLnBTzJ?a zj%Pc*9s3^ea26!8%qa9pn$dyKi+rG>f7Ep3NS2Z0kaMf)W?+XX*3$|~w?F?rE{eNrVA)*dOcKGQ)B^tW{=bRWbb%7XZGWv0Ma9hKZ8{=smHVws{_dNe>Ru?An_I5 zJ6ihj3jaS!pQn`#X+97zId!!OMsG&UtSI`w>ot9M&p2AZVa7GfcDlk%JD)`k)Fn*c zZ*SiC0Va3Y>#p{_cmKFThqLza}R?yZ+_);br@)ua)l)$tOSE_TOv%0ll@2?ia7TdF5{l2nX~4 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_2.png b/src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_2.png new file mode 100644 index 0000000000000000000000000000000000000000..b64642b127a8b2532a4d64a3ea246ff5d582c0c5 GIT binary patch literal 1640 zcmcIlPl()97>`KHx>8XDTfF#4Jyi51d6{&QJR8fpGj#{dx@-r!-um+LG81-^mnPYr z*%h>S6WV$gk3w%E2nzM!MFc?*K`Om@QA$AsJ$PKdH-FM1?Yb93{=6i=@Av(_Kl$>( z#`+s4mY-kNH0?xht+NT&r`54^9L_KNb->{AM6vdErD;z-tB%LCk3K%7X~(`x`&;!^ z_$K8tGgvGmVN9|D(3*Dc{G?!fThu5LgESBHKfd}}M`;}Bm(GS(SgeX+y0%}6i~H++ zzQ4`=SU>+7Iya#}kcpb1NjAzWItlbCFNL*wZ0cwVskZ}tML9%U;Rafjr9iGhFt;oV zxxT?Xw?!iV6=YjBF)bfEIH8-J3v*|17wE&fE~sga$75sMGGsY0 ziSGk}ZQ3>l1g`e-noV$ConA0>M8(Urs8g9E#mFMLQwKUooyCw94Q*b{^8^_)C#*1u zVX2rFz%V={Ts=K@3Wv=(3#8rQ<5ay<+4meHH@3x2IhsZqb5o2& z2Cxc*k;YXql(npe@)2<~ubXHJx>^cW%d#)!Xi=$+1q-rUhK0^tO7mEbtCy6bxq;}g zS_C>&&A}GIw$~>Pbqz`i5-j!K`hpY?4lIdC)?qMqg2%7#LaGbCQ-raN=?s`@R!nKWcl} zjgrV0k()TSt)rOJM3xzYK1nk+5N44NbaY?MsvOBOlriMIrMel|A&RxMg3|5HzmJRJ z%6v6S(X{C(b#r4+W4OQv4aLl1V*grC1q2rvJ0K%twi@ z*zV!dk5>5qQTjZse8}>FfXQj#X#>>%V_Up3>0LH$NR5{Cxe^RdV-oapjlxva@k(sr&e6x4*qMe&*_( zzdwJq`2NLrf1@{leeR3&-k+OiemMCFI`-bu@f(!Blb^i%qxu*0y6c@!U%&kRKR%iT AI{*Lx literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_3.png b/src/main/resources/assets/ultramarine/textures/block/roof_ridge_side_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..d635faec80a2f0b48602963f0802a417f06e1264 GIT binary patch literal 1647 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 K|M=S5@BIxy=nh-} literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_3.png b/src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_3.png new file mode 100644 index 0000000000000000000000000000000000000000..a69b467da37986ed18a70180f39a375a82d35f40 GIT binary patch literal 1758 zcmcIlTWB0r7@o9N+cYhf;)Nh|n5snV>|A$t=9sm{-P9~}Vv=rY+NYkKb9Q&wojKE) z+3aqrB32*7hnf~dZG}>#2&n}L1ez8EiQt7&t+&2-!3(KI%!7&#qVde$EYeF}Ty}QO z%zWqjzyJIH`S2X!}uHQo)jwi(hmuzcGKZQ`;KBg~OXnB=I` zW)6>0nPt-A?20cNFiBV2%plRM1>Np*A5DrezC@sC$Bo4B54+~>BAQj)jgA>>d zx3+^JtFzau_~k~X$P#cFI}{dBVNxfQS0o_`isU+ZbRKuI@j%MQFeHAKkaD|HBW)H| zR$?OCx5su7sRj>3idq|R8iqK@(W{ zz7nWuf{Yu4(6w+To#d#fm~A7VA}q%9lEG`Dtnsu!(fw&+ zRU-SM{ms5b#G)J>hk&Xf&5$gKvWXfmsVd?PMS;AQfJoLg!_tw|W_#SX>8k_FSF=W{ zP^3yllB^@0&*Qwo8>*`FR7sqd6hqWSJ(sg&>K3v{rV# zzt+9}@6@x4m!7(xJv=|L_{H%HUw;16)33z;*m!>F!nWVEQRSh9dtMj(hNZ=jNt=zVgUj`%1st!dpkamG9hrddKePR`0KWa^liV zc<`HBX16f+jsCi6R6RM@yKvz2;Ws|}=?ddD=l|N*RhltxwUs}+-urs?;!N+NAN>Pm28YvU9^L=UKkGk4NB{r; literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_4.png b/src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_4.png new file mode 100644 index 0000000000000000000000000000000000000000..384f94e90268b2c85a2447edaa2f4cb0a9c53619 GIT binary patch literal 1648 zcmcIlO>f*p7&b%{NL2}i1641zoC8HL>+#3NAF3OramucQLzJ%6aAS5n-nFv!IQDFI zlS_eHq#l|R66#Mt+<^leI8Y&kkPv4CS48-@aHzVx-u0TQYC|qq9(%@q=6Rp@!>^CF zHs8Fkcxh3RqzmnqzYX`7%JIUpaJ_rnUxC|;S?irblFq+ej%TEg?p>6m=kCXy9kCO< z#QHQ4s&+%aI-@X zcc~L9tJmbKV;2Y#CWt&v25I4rJ!Q)4!n}N}D)JN}c0FaSG$`)`Tk<;3nQS#QL@~y) zNYF*FsE!|pQU1XZY-qr-fWl;rk;jWWdoJ~ ztN>wJZ7S&lwRs?{GetXKHKCBI`y2%U5p2X~;*#Yo(%U1M`Vs zo&s4j5!R4ycQn&A9T#h_W6i~Q1`VJPLL$i7z&wnjgR?+`z-_06ASq>S-%~(TBaTDY zF$_ari8N%JmW`~?w2=dKh78Iqy{TDNlQyTiV874lunb?he^$34r@&E1$kj|7I$g7g zh!Hs`S}`$loXAGah|;Fn)mfLBbGEnh7(N{`c$BqN6#}CkIfi8sjI3tULK-y*vLkAv z$YM?uVa6gBDRM~Ni027`I*Aj~V``T66!~8@>wLiTfQJxsqpW6N2QON20jWEvzK@%1 zubK^Fd0KQXp=GUm3N4e&LZx~fKOuT&(>bFZ^%;eIv* zWdC&OXG{G5D7^|R?US^}pmVB9>5N*om|0TP$MZFP_eeXM!=cBO)4IFDqVCTu1?n8S z@AoVGQ|R15+h6NkIi?RDo?Kp7Sa^PUd13Fpqt;OT@a3O>O>Uq2`N8kMOm2T>ABokU zK79E1$>n?Be)pCC%B#m8zyHT%GU;Fc`nMbBe!X)?>@D5DB%QyuwD{xF-EYc&LVIJ= K|K$3+AN&LA2@DDV literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_5.png b/src/main/resources/assets/ultramarine/textures/block/roof_ridge_top_snow_stage_5.png new file mode 100644 index 0000000000000000000000000000000000000000..182b216d7d36c7440322eb4388961638263c9de4 GIT binary patch literal 1758 zcmcIlTWB0r7@o9N+w_7`yby#AQ-A+;cZfJwoZ6ueNX_0|_Jcp=q@c~J2|G@jX;McSAbhq;`Y z`Tp%LH{K)X5n|u3uIgZ<$%Vx&d_15rMzlNP(JX(se%LX_5xX*DLw}wX#_v*>J zIBwm0R(?DfH+JiY+7XDUNg{RIWoV8Y*jaZWDwBXWNzrmr!qVJ30&n4zurF!=!%dTt zm7Vm+p2^`nnk=Iv7Ir?w57c!=V3Ppyb-UvDdOamHd3Cl9A4>w?gaqZ3Fc>=I$Bhv_ zO+CWLBeIA90DL?dfr+>(o5>x#0u)&SNw$js=xSV76MTCUm^%*_^s&sYwlj8@5=uef z>XKBe)gm=DLcO9SCzFgokrYK_2+?mi0j!ITzrDkdAwKdfH?XL~hm6pq)gUD>sjV1n zw@d5z?L4uJNp^7j_&JjG_IcZ2n?u~r?k?k)JTVgSJVjL z`}bK6rZxZmP*K}}WMDv20;`%P0$EfNd0Eq=s;(v<0J0813u>@Nz%YQT15<1j8moaC zhMsf$06K`|GAV(HidYubO)VP3F|3LSQzjyoHARF7s3Ou-put!if&^*mV)hw|s$u#< z`&Qp#iWo;XL%K;4EV^i1R8Rqlim5T)gbBnbmPx`iK~&aohwU-XVxJDIT+14&!im6LKQKcNCQ}l2|Px6fqFJ%ePY?LNF>)O3j9B6(zHT7gJPC* zHSA`_&Z5X#J}X_L{eA2q2ivQP#W$NyhbZjzlz_q_6Q;NI*t$;kR;RONUn>ztx{)qHo& zIO@RJj0>0D>B?@p^O-n|+GEpqE`I^A$vv0L4CecfR*%VBF7TVu$JcL|`EvQ?*LpYp zm40^d@>BQmN9HFMKR8)emD0l2VyKC=rYY#L&K6QCIIP~>R zGuya(M}N6(R69M}w{Y<6kvBg5@a+>l|8ye1>d*r|~e*>`7M3w*m literal 0 HcmV?d00001