diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache index 8e657704f..045150eed 100644 --- a/src/generated/resources/.cache/cache +++ b/src/generated/resources/.cache/cache @@ -24,6 +24,7 @@ f9fa6aa530eb0891a74eadfbebc663172a57147a assets\create\blockstates\basin.json 40d10934934ea142d71fc6ce598b1455c3ad47b4 assets\create\blockstates\belt_observer.json cf9045eb16e5299a1d917c4cb536289f49411276 assets\create\blockstates\birch_window.json 94a1a91403eb4b035fec48071e7fcae57a8a6abd assets\create\blockstates\birch_window_pane.json +0626725f70103a55dabcda6f87ca943279d45793 assets\create\blockstates\blaze_heater.json fba967b1f6e44b34a9d9662e2fedfc13aad7f36c assets\create\blockstates\brass_belt_funnel.json 8b1dd00adcc7e74c5a9feed069e2610b15a338cb assets\create\blockstates\brass_block.json b8dd6e505943e06706d0718ece620ab3cf943650 assets\create\blockstates\brass_casing.json @@ -123,7 +124,7 @@ de8a40b7daf1497d5aecee47a43b3e0b1d030b00 assets\create\blockstates\fancy_scoria_ fc9ac0a7e7191b93516719455a17177fa6524ecc assets\create\blockstates\fancy_weathered_limestone_bricks_slab.json b2a7c321b1795f20e7433f81a55ce4683de081b8 assets\create\blockstates\fancy_weathered_limestone_bricks_stairs.json 6372fe02ba0065acb0758121c45a15a1a8fdc5de assets\create\blockstates\fancy_weathered_limestone_bricks_wall.json -4cbd66ed3da77d1caad6ef4e657a86b1b4017a39 assets\create\blockstates\fluid_pipe.json +3aa8213ea6cd12a6964e3a70900b12d76d794d20 assets\create\blockstates\fluid_pipe.json 9d0e78a4d6d0ccac37c06d0f5810a800a04844b2 assets\create\blockstates\fluid_tank.json e9da1794b6ece7f9aa8bcb43d42c23a55446133b assets\create\blockstates\flywheel.json ac00d40e1ef50a37041c0481afa1a23a14dea78e assets\create\blockstates\framed_glass.json @@ -286,7 +287,7 @@ b7829c2ef2c47188713f8cab21b2c9bc7f9c5b79 assets\create\blockstates\portable_stor e8b0a401c10d1ba67ed71ba31bd5f9bc28571b65 assets\create\blockstates\powered_toggle_latch.json 3a739f9d4276828d83f2d2750bf3227c87bcd438 assets\create\blockstates\pulley_magnet.json 469e430d96cb0a5e1aaf6b7cc5d401d488c9e600 assets\create\blockstates\pulse_repeater.json -6fa36883e76e9e403bb429c8f86b8c0d3bba0cff assets\create\blockstates\radial_chassis.json +8d7e653bfd9846e684a0d3725595714a19201017 assets\create\blockstates\radial_chassis.json 8929677f2cc5354aa19ef182af69f9f0b41eb242 assets\create\blockstates\redstone_contact.json c29213b77ac0c78d8979c5f6188d2b265696f9b9 assets\create\blockstates\redstone_link.json 1eac804cba08aebb5f4646758ae1ef9b32e01365 assets\create\blockstates\reinforced_rail.json @@ -337,17 +338,17 @@ c60c3115fd6eeaa3a696428a87a74d184ab7d62d assets\create\blockstates\weathered_lim c77b46d8b459e5c7cc495393546f3fcca8a1fa1d assets\create\blockstates\weathered_limestone_pillar.json 7f39521b211441f5c3e06d60c5978cebe16cacfb assets\create\blockstates\zinc_block.json b7181bcd8182b2f17088e5aa881f374c9c65470c assets\create\blockstates\zinc_ore.json -541831ab0cf2f0222f0b7e42ec6c4b0ae636168d assets\create\lang\en_ud.json -fe44adfde38a1084754fe46b632811f90dcfcd7f assets\create\lang\en_us.json -143b76ed828949330ef0e338fb6709c28561ac2d assets\create\lang\unfinished\de_de.json -95bf7693b162141c2c76617ed4e04bec474e2def assets\create\lang\unfinished\fr_fr.json -b3bf60afc7d0dea72a9d7d01df36d34affd6a296 assets\create\lang\unfinished\it_it.json -ef336e01a8e3ed3f8c2713c66476bcc708e3e3b0 assets\create\lang\unfinished\ja_jp.json -66c84c388e552ee8259eca2ab1009493456fc4d3 assets\create\lang\unfinished\ko_kr.json -66b3140ef158b51208a191e6a90473fba5bb1749 assets\create\lang\unfinished\nl_nl.json -775702e0f3fbdab7ef8b1714e3cff69da56bd500 assets\create\lang\unfinished\pt_br.json -7c4c4e7a00456f893538a6baa35d726a8786bf93 assets\create\lang\unfinished\ru_ru.json -ce16074d9dc5d504f2a91b164258f0059163260b assets\create\lang\unfinished\zh_cn.json +00edba8c69557058bf9fbbc4d389dc455f24b0fc assets\create\lang\en_ud.json +9fd42e23b8b40831a23960c8a65284c0f5c77d9c assets\create\lang\en_us.json +49da0ae7f7ce3b7dcb3489ec4a5ae9859b01c6b2 assets\create\lang\unfinished\de_de.json +e4614a462e0274a0b44990d8110df40e2a739181 assets\create\lang\unfinished\fr_fr.json +6d2d32af208bc145bc9b84bec5fb49688313c409 assets\create\lang\unfinished\it_it.json +bf4ecea8db1411002fc3f6149c61e9ff764f60f9 assets\create\lang\unfinished\ja_jp.json +17cff516677a4bc7c82e5f4c037fd9472d8ed75d assets\create\lang\unfinished\ko_kr.json +b059db47666d44c83cfcb938603b6a324d3a8180 assets\create\lang\unfinished\nl_nl.json +ed177bca3522ec5265272268bcfb2eb5fa5011a2 assets\create\lang\unfinished\pt_br.json +79d0ebe3035b0471864d72b13f51e07ea27fef73 assets\create\lang\unfinished\ru_ru.json +ea9d56b17b0e9be13464966e6fdd90a500a578c3 assets\create\lang\unfinished\zh_cn.json 846200eb548d3bfa2e77b41039de159b4b6cfb45 assets\create\models\block\acacia_window.json 1930fa3a3c98d53dd19e4ee7f55bc27fd47aa281 assets\create\models\block\acacia_window_pane_noside.json 1763ea2c9b981d187f5031ba608f3d5d3be3986a assets\create\models\block\acacia_window_pane_noside_alt.json @@ -997,6 +998,7 @@ bf1fc6bdf7fca6f1958a2d3e96202c1cecb50669 assets\create\models\item\basin.json 695a69d5854e2eb134b55d855bd2b7b18808a01d assets\create\models\item\belt_observer.json 9044243882cfd49a2827e1b910a4c9b0e46daa47 assets\create\models\item\birch_window.json 6ed49f59ea91068ef68720f43e67a9237594bdf0 assets\create\models\item\birch_window_pane.json +fa2761dc44857eb840a94df869de66a91988f0da assets\create\models\item\blaze_heater.json 17d340c3678bd24cb085ba49490b2b4cb341a9e7 assets\create\models\item\brass_block.json f5a18f4279c2e845a5967b1c2f9e807c2bb77afb assets\create\models\item\brass_casing.json ab045c951352806c3f632dda7b71573f93f60ac4 assets\create\models\item\brass_funnel.json @@ -1786,6 +1788,7 @@ c7f81e30c31837a287d6d6040cdb02c7dec11441 data\create\loot_tables\blocks\belt.jso 1104e323abb2a8c25769c47dc5d1154965113cc9 data\create\loot_tables\blocks\belt_observer.json 67a8e2513c3cb09e6fe80279fda94f79d5018c37 data\create\loot_tables\blocks\birch_window.json bf1d5843f93533f84bc4adec5b77da2114fa2025 data\create\loot_tables\blocks\birch_window_pane.json +798ef290b388dee758df3e779b4b1c9289955f7b data\create\loot_tables\blocks\blaze_heater.json 1dbc446abe190b2832b2ce7d52c2f2d2bdd45949 data\create\loot_tables\blocks\brass_belt_funnel.json 70d9d4def43d5b31fa7cdc5ca5002c71cf4a90b0 data\create\loot_tables\blocks\brass_block.json 8a14258ad5d79d9e4dc5a318905644b446196420 data\create\loot_tables\blocks\brass_casing.json diff --git a/src/generated/resources/assets/create/blockstates/blaze_heater.json b/src/generated/resources/assets/create/blockstates/blaze_heater.json new file mode 100644 index 000000000..ede37bfd8 --- /dev/null +++ b/src/generated/resources/assets/create/blockstates/blaze_heater.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "create:block/blaze_heater/block" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/create/blockstates/fluid_pipe.json b/src/generated/resources/assets/create/blockstates/fluid_pipe.json index 96f2f6808..44255c27a 100644 --- a/src/generated/resources/assets/create/blockstates/fluid_pipe.json +++ b/src/generated/resources/assets/create/blockstates/fluid_pipe.json @@ -181,10 +181,10 @@ }, { "when": { - "north": "false", - "south": "true", "west": "true", - "east": "false" + "east": "false", + "north": "false", + "south": "true" }, "apply": { "model": "create:block/fluid_pipe/lu_y" @@ -192,10 +192,10 @@ }, { "when": { - "north": "false", - "south": "true", "west": "false", - "east": "true" + "east": "true", + "north": "false", + "south": "true" }, "apply": { "model": "create:block/fluid_pipe/ru_y" @@ -203,10 +203,10 @@ }, { "when": { - "north": "true", - "south": "false", "west": "true", - "east": "false" + "east": "false", + "north": "true", + "south": "false" }, "apply": { "model": "create:block/fluid_pipe/ld_y" @@ -214,10 +214,10 @@ }, { "when": { - "north": "true", - "south": "false", "west": "false", - "east": "true" + "east": "true", + "north": "true", + "south": "false" }, "apply": { "model": "create:block/fluid_pipe/rd_y" @@ -225,10 +225,10 @@ }, { "when": { + "west": "false", + "east": "false", "north": "true", - "south": "true", - "west": "false", - "east": "false" + "south": "true" }, "apply": { "model": "create:block/fluid_pipe/ud_y" @@ -236,10 +236,10 @@ }, { "when": { + "west": "false", + "east": "false", "north": "false", - "south": "true", - "west": "false", - "east": "false" + "south": "true" }, "apply": { "model": "create:block/fluid_pipe/ud_y" @@ -247,10 +247,10 @@ }, { "when": { + "west": "false", + "east": "false", "north": "true", - "south": "false", - "west": "false", - "east": "false" + "south": "false" }, "apply": { "model": "create:block/fluid_pipe/ud_y" @@ -258,10 +258,10 @@ }, { "when": { - "north": "false", - "south": "false", "west": "true", - "east": "true" + "east": "true", + "north": "false", + "south": "false" }, "apply": { "model": "create:block/fluid_pipe/lr_y" @@ -269,10 +269,10 @@ }, { "when": { - "north": "false", - "south": "false", "west": "true", - "east": "false" + "east": "false", + "north": "false", + "south": "false" }, "apply": { "model": "create:block/fluid_pipe/lr_y" @@ -280,10 +280,10 @@ }, { "when": { - "north": "false", - "south": "false", "west": "false", - "east": "true" + "east": "true", + "north": "false", + "south": "false" }, "apply": { "model": "create:block/fluid_pipe/lr_y" @@ -291,10 +291,10 @@ }, { "when": { - "north": "false", - "south": "false", "west": "false", - "east": "false" + "east": "false", + "north": "false", + "south": "false" }, "apply": { "model": "create:block/fluid_pipe/none_y" @@ -302,10 +302,10 @@ }, { "when": { - "up": "true", "west": "false", - "down": "false", - "east": "true" + "east": "true", + "up": "true", + "down": "false" }, "apply": { "model": "create:block/fluid_pipe/lu_z" @@ -313,10 +313,10 @@ }, { "when": { - "up": "true", "west": "true", - "down": "false", - "east": "false" + "east": "false", + "up": "true", + "down": "false" }, "apply": { "model": "create:block/fluid_pipe/ru_z" @@ -324,10 +324,10 @@ }, { "when": { - "up": "false", "west": "false", - "down": "true", - "east": "true" + "east": "true", + "up": "false", + "down": "true" }, "apply": { "model": "create:block/fluid_pipe/ld_z" @@ -335,10 +335,10 @@ }, { "when": { - "up": "false", "west": "true", - "down": "true", - "east": "false" + "east": "false", + "up": "false", + "down": "true" }, "apply": { "model": "create:block/fluid_pipe/rd_z" @@ -346,10 +346,10 @@ }, { "when": { + "west": "false", + "east": "false", "up": "true", - "west": "false", - "down": "true", - "east": "false" + "down": "true" }, "apply": { "model": "create:block/fluid_pipe/ud_z" @@ -357,10 +357,10 @@ }, { "when": { + "west": "false", + "east": "false", "up": "true", - "west": "false", - "down": "false", - "east": "false" + "down": "false" }, "apply": { "model": "create:block/fluid_pipe/ud_z" @@ -368,10 +368,10 @@ }, { "when": { - "up": "false", "west": "false", - "down": "true", - "east": "false" + "east": "false", + "up": "false", + "down": "true" }, "apply": { "model": "create:block/fluid_pipe/ud_z" @@ -379,10 +379,10 @@ }, { "when": { - "up": "false", "west": "true", - "down": "false", - "east": "true" + "east": "true", + "up": "false", + "down": "false" }, "apply": { "model": "create:block/fluid_pipe/lr_z" @@ -390,10 +390,10 @@ }, { "when": { - "up": "false", "west": "false", - "down": "false", - "east": "true" + "east": "true", + "up": "false", + "down": "false" }, "apply": { "model": "create:block/fluid_pipe/lr_z" @@ -401,10 +401,10 @@ }, { "when": { - "up": "false", "west": "true", - "down": "false", - "east": "false" + "east": "false", + "up": "false", + "down": "false" }, "apply": { "model": "create:block/fluid_pipe/lr_z" @@ -412,10 +412,10 @@ }, { "when": { - "up": "false", "west": "false", - "down": "false", - "east": "false" + "east": "false", + "up": "false", + "down": "false" }, "apply": { "model": "create:block/fluid_pipe/none_z" diff --git a/src/generated/resources/assets/create/blockstates/radial_chassis.json b/src/generated/resources/assets/create/blockstates/radial_chassis.json index f97d8c8bc..9d00ea8b1 100644 --- a/src/generated/resources/assets/create/blockstates/radial_chassis.json +++ b/src/generated/resources/assets/create/blockstates/radial_chassis.json @@ -29,8 +29,8 @@ }, { "when": { - "axis": "x", - "sticky_south": "true" + "sticky_south": "true", + "axis": "x" }, "apply": { "model": "create:block/radial_chassis_side_x_sticky", @@ -39,8 +39,8 @@ }, { "when": { - "axis": "y", - "sticky_south": "true" + "sticky_south": "true", + "axis": "y" }, "apply": { "model": "create:block/radial_chassis_side_y_sticky" @@ -48,8 +48,8 @@ }, { "when": { - "axis": "z", - "sticky_south": "true" + "sticky_south": "true", + "axis": "z" }, "apply": { "model": "create:block/radial_chassis_side_x_sticky", @@ -59,8 +59,8 @@ }, { "when": { - "axis": "x", - "sticky_south": "false" + "sticky_south": "false", + "axis": "x" }, "apply": { "model": "create:block/radial_chassis_side_x", @@ -69,8 +69,8 @@ }, { "when": { - "axis": "y", - "sticky_south": "false" + "sticky_south": "false", + "axis": "y" }, "apply": { "model": "create:block/radial_chassis_side_y" @@ -78,8 +78,8 @@ }, { "when": { - "axis": "z", - "sticky_south": "false" + "sticky_south": "false", + "axis": "z" }, "apply": { "model": "create:block/radial_chassis_side_x", diff --git a/src/generated/resources/assets/create/lang/en_ud.json b/src/generated/resources/assets/create/lang/en_ud.json index be027ea35..72e9325f0 100644 --- a/src/generated/resources/assets/create/lang/en_ud.json +++ b/src/generated/resources/assets/create/lang/en_ud.json @@ -25,6 +25,7 @@ "block.create.belt_observer": "\u0279\u01DD\u028C\u0279\u01DDsqO \u0287\u05DF\u01DD\u15FA", "block.create.birch_window": "\u028Dopu\u0131M \u0265\u0254\u0279\u0131\u15FA", "block.create.birch_window_pane": "\u01DDu\u0250\u0500 \u028Dopu\u0131M \u0265\u0254\u0279\u0131\u15FA", + "block.create.blaze_heater": "\u0279\u01DD\u0287\u0250\u01DDH \u01DDz\u0250\u05DF\u15FA", "block.create.brass_belt_funnel": "\u05DF\u01DDuun\u2132 \u0287\u05DF\u01DD\u15FA ss\u0250\u0279\u15FA", "block.create.brass_block": "\u029E\u0254o\u05DF\u15FA ss\u0250\u0279\u15FA", "block.create.brass_casing": "bu\u0131s\u0250\u0186 ss\u0250\u0279\u15FA", diff --git a/src/generated/resources/assets/create/lang/en_us.json b/src/generated/resources/assets/create/lang/en_us.json index 5e18d7883..95d8f4bb3 100644 --- a/src/generated/resources/assets/create/lang/en_us.json +++ b/src/generated/resources/assets/create/lang/en_us.json @@ -28,6 +28,7 @@ "block.create.belt_observer": "Belt Observer", "block.create.birch_window": "Birch Window", "block.create.birch_window_pane": "Birch Window Pane", + "block.create.blaze_heater": "Blaze Heater", "block.create.brass_belt_funnel": "Brass Belt Funnel", "block.create.brass_block": "Brass Block", "block.create.brass_casing": "Brass Casing", diff --git a/src/generated/resources/assets/create/lang/unfinished/de_de.json b/src/generated/resources/assets/create/lang/unfinished/de_de.json index 0b7f7b251..190f7f295 100644 --- a/src/generated/resources/assets/create/lang/unfinished/de_de.json +++ b/src/generated/resources/assets/create/lang/unfinished/de_de.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 777", + "_": "Missing Localizations: 778", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "Fließband-Beobachter", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "UNLOCALIZED: Brass Block", "block.create.brass_casing": "UNLOCALIZED: Brass Casing", diff --git a/src/generated/resources/assets/create/lang/unfinished/fr_fr.json b/src/generated/resources/assets/create/lang/unfinished/fr_fr.json index 21baa7d50..8c6601e15 100644 --- a/src/generated/resources/assets/create/lang/unfinished/fr_fr.json +++ b/src/generated/resources/assets/create/lang/unfinished/fr_fr.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 380", + "_": "Missing Localizations: 381", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "Observateur d'entité", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "UNLOCALIZED: Brass Block", "block.create.brass_casing": "Boîtier en laiton", diff --git a/src/generated/resources/assets/create/lang/unfinished/it_it.json b/src/generated/resources/assets/create/lang/unfinished/it_it.json index cd54613f7..31cb804e6 100644 --- a/src/generated/resources/assets/create/lang/unfinished/it_it.json +++ b/src/generated/resources/assets/create/lang/unfinished/it_it.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 364", + "_": "Missing Localizations: 365", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "Osservatore a Cinghia", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "Blocco di Ottone", "block.create.brass_casing": "Involucro di Ottone", diff --git a/src/generated/resources/assets/create/lang/unfinished/ja_jp.json b/src/generated/resources/assets/create/lang/unfinished/ja_jp.json index 4bc000f9d..e8de81dbf 100644 --- a/src/generated/resources/assets/create/lang/unfinished/ja_jp.json +++ b/src/generated/resources/assets/create/lang/unfinished/ja_jp.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 359", + "_": "Missing Localizations: 360", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "ベルトオブザーバー", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "真鍮ブロック", "block.create.brass_casing": "真鍮ケーシング", diff --git a/src/generated/resources/assets/create/lang/unfinished/ko_kr.json b/src/generated/resources/assets/create/lang/unfinished/ko_kr.json index 92d51ddfc..90490026c 100644 --- a/src/generated/resources/assets/create/lang/unfinished/ko_kr.json +++ b/src/generated/resources/assets/create/lang/unfinished/ko_kr.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 364", + "_": "Missing Localizations: 365", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "벨트 감지기", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "황동 블럭", "block.create.brass_casing": "황동 케이스", diff --git a/src/generated/resources/assets/create/lang/unfinished/nl_nl.json b/src/generated/resources/assets/create/lang/unfinished/nl_nl.json index 82e15be94..f63747073 100644 --- a/src/generated/resources/assets/create/lang/unfinished/nl_nl.json +++ b/src/generated/resources/assets/create/lang/unfinished/nl_nl.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 714", + "_": "Missing Localizations: 715", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "Transportband Observeerder", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "UNLOCALIZED: Brass Block", "block.create.brass_casing": "UNLOCALIZED: Brass Casing", diff --git a/src/generated/resources/assets/create/lang/unfinished/pt_br.json b/src/generated/resources/assets/create/lang/unfinished/pt_br.json index 134623835..0bfcce6dc 100644 --- a/src/generated/resources/assets/create/lang/unfinished/pt_br.json +++ b/src/generated/resources/assets/create/lang/unfinished/pt_br.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 784", + "_": "Missing Localizations: 785", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "Observador de Esteira", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "UNLOCALIZED: Brass Block", "block.create.brass_casing": "UNLOCALIZED: Brass Casing", diff --git a/src/generated/resources/assets/create/lang/unfinished/ru_ru.json b/src/generated/resources/assets/create/lang/unfinished/ru_ru.json index b3f27dba3..9c53dc16d 100644 --- a/src/generated/resources/assets/create/lang/unfinished/ru_ru.json +++ b/src/generated/resources/assets/create/lang/unfinished/ru_ru.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 778", + "_": "Missing Localizations: 779", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "Ленточный сканер", "block.create.birch_window": "UNLOCALIZED: Birch Window", "block.create.birch_window_pane": "UNLOCALIZED: Birch Window Pane", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "UNLOCALIZED: Brass Block", "block.create.brass_casing": "UNLOCALIZED: Brass Casing", diff --git a/src/generated/resources/assets/create/lang/unfinished/zh_cn.json b/src/generated/resources/assets/create/lang/unfinished/zh_cn.json index 0f1a8b8b8..cb10f3217 100644 --- a/src/generated/resources/assets/create/lang/unfinished/zh_cn.json +++ b/src/generated/resources/assets/create/lang/unfinished/zh_cn.json @@ -1,5 +1,5 @@ { - "_": "Missing Localizations: 40", + "_": "Missing Localizations: 41", "_": "->------------------------] Game Elements [------------------------<-", @@ -29,6 +29,7 @@ "block.create.belt_observer": "传送带侦测器", "block.create.birch_window": "白桦窗户", "block.create.birch_window_pane": "白桦窗户板", + "block.create.blaze_heater": "UNLOCALIZED: Blaze Heater", "block.create.brass_belt_funnel": "UNLOCALIZED: Brass Belt Funnel", "block.create.brass_block": "黄铜块", "block.create.brass_casing": "黄铜机壳", diff --git a/src/generated/resources/assets/create/models/item/blaze_heater.json b/src/generated/resources/assets/create/models/item/blaze_heater.json new file mode 100644 index 000000000..40a3c3428 --- /dev/null +++ b/src/generated/resources/assets/create/models/item/blaze_heater.json @@ -0,0 +1,3 @@ +{ + "parent": "create:block/blaze_heater/block" +} \ No newline at end of file diff --git a/src/generated/resources/data/create/loot_tables/blocks/blaze_heater.json b/src/generated/resources/data/create/loot_tables/blocks/blaze_heater.json new file mode 100644 index 000000000..291dbd019 --- /dev/null +++ b/src/generated/resources/data/create/loot_tables/blocks/blaze_heater.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "create:blaze_heater" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/java/com/simibubi/create/AllBlocks.java b/src/main/java/com/simibubi/create/AllBlocks.java index 67b0fd927..83446624d 100644 --- a/src/main/java/com/simibubi/create/AllBlocks.java +++ b/src/main/java/com/simibubi/create/AllBlocks.java @@ -56,6 +56,7 @@ import com.simibubi.create.content.contraptions.fluids.FluidTankBlock; import com.simibubi.create.content.contraptions.fluids.FluidTankModel; import com.simibubi.create.content.contraptions.fluids.PumpBlock; import com.simibubi.create.content.contraptions.processing.BasinBlock; +import com.simibubi.create.content.contraptions.processing.HeaterBlock; import com.simibubi.create.content.contraptions.relays.advanced.SpeedControllerBlock; import com.simibubi.create.content.contraptions.relays.advanced.sequencer.SequencedGearshiftBlock; import com.simibubi.create.content.contraptions.relays.advanced.sequencer.SequencedGearshiftGenerator; @@ -142,6 +143,7 @@ import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.model.generators.ConfiguredModel; import net.minecraftforge.common.ToolType; +@SuppressWarnings("unused") public class AllBlocks { private static final CreateRegistrate REGISTRATE = Create.registrate() @@ -204,7 +206,7 @@ public class AllBlocks { public static final BlockEntry ENCASED_SHAFT = REGISTRATE.block("encased_shaft", EncasedShaftBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate(BlockStateGen.axisBlockProvider(true)) .item() @@ -213,7 +215,7 @@ public class AllBlocks { public static final BlockEntry GEARBOX = REGISTRATE.block("gearbox", GearboxBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate(BlockStateGen.axisBlockProvider(true)) .item() @@ -222,7 +224,7 @@ public class AllBlocks { public static final BlockEntry CLUTCH = REGISTRATE.block("clutch", ClutchBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate((c, p) -> BlockStateGen.axisBlock(c, p, AssetLookup.forPowered(c, p))) .item() @@ -231,7 +233,7 @@ public class AllBlocks { public static final BlockEntry GEARSHIFT = REGISTRATE.block("gearshift", GearshiftBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate((c, p) -> BlockStateGen.axisBlock(c, p, AssetLookup.forPowered(c, p))) .item() @@ -241,7 +243,7 @@ public class AllBlocks { public static final BlockEntry ENCASED_BELT = REGISTRATE.block("encased_belt", EncasedBeltBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate((c, p) -> new EncasedBeltGenerator((state, suffix) -> p.models() .getExistingFile(p.modLoc("block/" + c.getName() + "/" + suffix))).generate(c, p)) @@ -252,7 +254,7 @@ public class AllBlocks { public static final BlockEntry ADJUSTABLE_PULLEY = REGISTRATE.block("adjustable_pulley", AdjustablePulleyBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate((c, p) -> new EncasedBeltGenerator((state, suffix) -> { String powered = state.get(AdjustablePulleyBlock.POWERED) ? "_powered" : ""; @@ -287,7 +289,7 @@ public class AllBlocks { public static final BlockEntry WATER_WHEEL = REGISTRATE.block("water_wheel", WaterWheelBlock::new) .initialProperties(SharedProperties::wooden) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate(BlockStateGen.horizontalWheelProvider(false)) .addLayer(() -> RenderType::getCutoutMipped) .transform(StressConfigDefaults.setCapacity(16.0)) @@ -351,7 +353,7 @@ public class AllBlocks { public static final BlockEntry CRUSHING_WHEEL = REGISTRATE.block("crushing_wheel", CrushingWheelBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate(BlockStateGen.axisBlockProvider(false)) .addLayer(() -> RenderType::getCutoutMipped) .transform(StressConfigDefaults.setImpact(8.0)) @@ -371,7 +373,7 @@ public class AllBlocks { public static final BlockEntry MECHANICAL_PRESS = REGISTRATE.block("mechanical_press", MechanicalPressBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate(BlockStateGen.horizontalBlockProvider(true)) .transform(StressConfigDefaults.setImpact(8.0)) .item(BasinOperatorBlockItem::new) @@ -381,7 +383,7 @@ public class AllBlocks { public static final BlockEntry MECHANICAL_MIXER = REGISTRATE.block("mechanical_mixer", MechanicalMixerBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate((c, p) -> p.simpleBlock(c.getEntry(), AssetLookup.partialBaseModel(c, p))) .addLayer(() -> RenderType::getCutoutMipped) .transform(StressConfigDefaults.setImpact(4.0)) @@ -395,6 +397,14 @@ public class AllBlocks { .simpleItem() .register(); + public static final BlockEntry HEATER = REGISTRATE.block("blaze_heater", HeaterBlock::new) + .initialProperties(SharedProperties::softMetal) + .properties(p -> p.lightValue(12)) + .addLayer(() -> RenderType::getCutoutMipped) + .blockstate((c, p) -> p.simpleBlock(c.getEntry(), AssetLookup.partialBaseModel(c, p))) + .simpleItem() + .register(); + public static final BlockEntry DEPOT = REGISTRATE.block("depot", DepotBlock::new) .initialProperties(SharedProperties::stone) .blockstate((c, p) -> p.simpleBlock(c.getEntry(), AssetLookup.partialBaseModel(c, p))) @@ -521,7 +531,7 @@ public class AllBlocks { public static final BlockEntry CART_ASSEMBLER = REGISTRATE.block("cart_assembler", CartAssemblerBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate(BlockStateGen.cartAssembler()) .addLayer(() -> RenderType::getCutoutMipped) .tag(BlockTags.RAILS) @@ -532,7 +542,7 @@ public class AllBlocks { public static final BlockEntry REINFORCED_RAIL = REGISTRATE.block("reinforced_rail", ReinforcedRailBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate(BlockStateGen.reinforcedRail()) .addLayer(() -> RenderType::getCutoutMipped) .tag(BlockTags.RAILS) @@ -643,7 +653,7 @@ public class AllBlocks { public static final BlockEntry MECHANICAL_CRAFTER = REGISTRATE.block("mechanical_crafter", MechanicalCrafterBlock::new) .initialProperties(SharedProperties::softMetal) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate(BlockStateGen.horizontalBlockProvider(true)) .transform(StressConfigDefaults.setImpact(2.0)) .onRegister(CreateRegistrate.connectedTextures(new CrafterCTBehaviour())) @@ -655,7 +665,7 @@ public class AllBlocks { public static final BlockEntry SEQUENCED_GEARSHIFT = REGISTRATE.block("sequenced_gearshift", SequencedGearshiftBlock::new) .initialProperties(SharedProperties::stone) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate(new SequencedGearshiftGenerator()::generate) .item() @@ -664,7 +674,7 @@ public class AllBlocks { public static final BlockEntry FLYWHEEL = REGISTRATE.block("flywheel", FlywheelBlock::new) .initialProperties(SharedProperties::softMetal) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .transform(StressConfigDefaults.setNoImpact()) .blockstate(new FlywheelGenerator()::generate) .item() @@ -810,7 +820,7 @@ public class AllBlocks { public static final BlockEntry PACKAGER = REGISTRATE.block("packager", PackagerBlock::new) .initialProperties(SharedProperties::softMetal) .transform(StressConfigDefaults.setImpact(4.0)) - .properties(p -> p.nonOpaque()) + .properties(Block.Properties::nonOpaque) .blockstate((c, p) -> p.getVariantBuilder(c.get()) .forAllStates(s -> ConfiguredModel.builder() .modelFile(AssetLookup.partialBaseModel(c, p)) diff --git a/src/main/java/com/simibubi/create/content/contraptions/components/mixer/MixingRecipe.java b/src/main/java/com/simibubi/create/content/contraptions/components/mixer/MixingRecipe.java index 4857f4db6..5b5e2d081 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/components/mixer/MixingRecipe.java +++ b/src/main/java/com/simibubi/create/content/contraptions/components/mixer/MixingRecipe.java @@ -1,6 +1,5 @@ package com.simibubi.create.content.contraptions.components.mixer; - import com.simibubi.create.AllRecipeTypes; import com.simibubi.create.content.contraptions.processing.BasinTileEntity.BasinInputInventory; import com.simibubi.create.content.contraptions.processing.ProcessingIngredient; @@ -19,81 +18,80 @@ import java.util.*; public class MixingRecipe extends ProcessingRecipe { - public MixingRecipe(ResourceLocation id, String group, List ingredients, - List results, int processingDuration, List fluidIngredients, - List fluidResults, int requiredHeat) { - super(AllRecipeTypes.MIXING, id, group, ingredients, results, processingDuration, fluidIngredients, - fluidResults, requiredHeat); - } + public MixingRecipe(ResourceLocation id, String group, List ingredients, + List results, int processingDuration, List fluidIngredients, + List fluidResults, int requiredHeat) { + super(AllRecipeTypes.MIXING, id, group, ingredients, results, processingDuration, fluidIngredients, + fluidResults, requiredHeat); + } - public static MixingRecipe of(IRecipe recipe) { - return new MixingRecipe(recipe.getId(), recipe.getGroup(), ProcessingIngredient.list(recipe.getIngredients()), - Collections.singletonList(new ProcessingOutput(recipe.getRecipeOutput(), 1)), -1, null, null, 0); - } + public static MixingRecipe of(IRecipe recipe) { + return new MixingRecipe(recipe.getId(), recipe.getGroup(), ProcessingIngredient.list(recipe.getIngredients()), + Collections.singletonList(new ProcessingOutput(recipe.getRecipeOutput(), 1)), -1, null, null, 0); + } - @Override - protected int getMaxInputCount() { - return 9; - } + @Override + protected int getMaxInputCount() { + return 9; + } - @Override - protected int getMaxOutputCount() { - return 1; - } + @Override + protected int getMaxOutputCount() { + return 1; + } - @Override - protected boolean canHaveCatalysts() { - return true; - } + @Override + protected boolean canHaveCatalysts() { + return true; + } - @Override - public boolean matches(BasinInputInventory inv, @Nonnull World worldIn) { - if (inv.isEmpty()) - return false; + @Override + public boolean matches(BasinInputInventory inv, @Nonnull World worldIn) { + if (inv.isEmpty()) + return false; - NonNullList ingredients = this.getIngredients(); - if (!ingredients.stream() - .allMatch(Ingredient::isSimple)) - return false; + NonNullList ingredients = this.getIngredients(); + if (!ingredients.stream() + .allMatch(Ingredient::isSimple)) + return false; - List remaining = new ArrayList<>(); - for (int slot = 0; slot < inv.getSizeInventory(); ++slot) { - ItemStack itemstack = inv.getStackInSlot(slot); - if (!itemstack.isEmpty()) { - remaining.add(itemstack.copy()); - } - } + List remaining = new ArrayList<>(); + for (int slot = 0; slot < inv.getSizeInventory(); ++slot) { + ItemStack itemstack = inv.getStackInSlot(slot); + if (!itemstack.isEmpty()) { + remaining.add(itemstack.copy()); + } + } - // sort by leniency - List sortedIngredients = new LinkedList<>(ingredients); - sortedIngredients.sort(Comparator.comparingInt(i -> i.getMatchingStacks().length)); - Ingredients: - for (Ingredient ingredient : sortedIngredients) { - for (ItemStack stack : remaining) { - if (stack.isEmpty()) - continue; - if (ingredient.test(stack)) { - stack.shrink(1); - continue Ingredients; - } - } - return false; - } - return true; - } + // sort by leniency + List sortedIngredients = new LinkedList<>(ingredients); + sortedIngredients.sort(Comparator.comparingInt(i -> i.getMatchingStacks().length)); + Ingredients: for (Ingredient ingredient : sortedIngredients) { + for (ItemStack stack : remaining) { + if (stack.isEmpty()) + continue; + if (ingredient.test(stack)) { + stack.shrink(1); + continue Ingredients; + } + } + return false; + } + return true; + } - @Override - protected boolean canHaveFluidIngredient() { - return true; - } + @Override + protected boolean canHaveFluidIngredient() { + return true; + } - @Override - protected boolean canHaveFluidOutput() { - return true; - } + @Override + protected boolean canHaveFluidOutput() { + return true; + } - @Override - protected boolean requiresHeating() { - return this.requiredHeat > 0; - } + @Override + protected boolean requiresHeating() { + return this.requiredHeat > 0; + } } diff --git a/src/main/java/com/simibubi/create/content/contraptions/processing/HeaterBlock.java b/src/main/java/com/simibubi/create/content/contraptions/processing/HeaterBlock.java new file mode 100644 index 000000000..781b6fd99 --- /dev/null +++ b/src/main/java/com/simibubi/create/content/contraptions/processing/HeaterBlock.java @@ -0,0 +1,11 @@ +package com.simibubi.create.content.contraptions.processing; + + +import net.minecraft.block.Block; + +public class HeaterBlock extends Block { + + public HeaterBlock(Properties properties) { + super(properties); + } +} diff --git a/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java b/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java index 4b0c993a8..ad0f06f01 100644 --- a/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java +++ b/src/main/java/com/simibubi/create/foundation/data/BlockStateGen.java @@ -21,6 +21,7 @@ import com.simibubi.create.content.contraptions.components.structureMovement.mou import com.simibubi.create.content.contraptions.components.tracks.ReinforcedRailBlock; import com.simibubi.create.content.contraptions.fluids.FluidPipeBlock; import com.simibubi.create.content.contraptions.fluids.FluidTankBlock; +import com.simibubi.create.content.contraptions.processing.HeaterBlock; import com.simibubi.create.content.logistics.block.belts.observer.BeltObserverBlock; import com.simibubi.create.content.palettes.PavedBlock; import com.simibubi.create.foundation.utility.Iterate; @@ -212,6 +213,10 @@ public class BlockStateGen { .build(); }); } + + public static NonNullBiConsumer, RegistrateBlockstateProvider> blazeHeater(){ + return (c, p) -> ConfiguredModel.builder().modelFile(p.models().getExistingFile(p.modLoc("block/" + c.getName() + "/block"))).build(); + } public static NonNullBiConsumer, RegistrateBlockstateProvider> reinforcedRail() { return (c, p) -> p.getVariantBuilder(c.get()) diff --git a/src/main/java/com/simibubi/create/foundation/data/SharedProperties.java b/src/main/java/com/simibubi/create/foundation/data/SharedProperties.java index 2c25c51bd..f5f82a7f6 100644 --- a/src/main/java/com/simibubi/create/foundation/data/SharedProperties.java +++ b/src/main/java/com/simibubi/create/foundation/data/SharedProperties.java @@ -1,13 +1,15 @@ package com.simibubi.create.foundation.data; +import mcp.MethodsReturnNonnullByDefault; + import net.minecraft.block.Block; import net.minecraft.block.Blocks; import net.minecraft.block.material.Material; import net.minecraft.block.material.MaterialColor; import net.minecraft.block.material.PushReaction; +@MethodsReturnNonnullByDefault public class SharedProperties { - public static Material beltMaterial = new Material(MaterialColor.GRAY, false, true, true, true, true, false, false, PushReaction.NORMAL); @@ -22,5 +24,4 @@ public class SharedProperties { public static Block wooden() { return Blocks.STRIPPED_SPRUCE_WOOD; } - } diff --git a/src/main/resources/assets/create/models/block/blaze_heater/block.json b/src/main/resources/assets/create/models/block/blaze_heater/block.json new file mode 100644 index 000000000..5f2cc3495 --- /dev/null +++ b/src/main/resources/assets/create/models/block/blaze_heater/block.json @@ -0,0 +1,236 @@ +{ + "credit": "Made with Blockbench", + "textures": { + "0": "create:block/blaze_heater_brazier", + "particle": "create:block/blaze_heater_brazier" + }, + "elements": [ + { + "name": "Brazier Sides 1", + "from": [2, 5, 2], + "to": [14, 14, 14], + "faces": { + "north": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "east": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "south": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "west": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 12, 12], "texture": "#0"} + } + }, + { + "name": "Brazier Sides 2", + "from": [1, 5, 2], + "to": [2, 14, 14], + "faces": { + "north": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "east": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "south": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "down": {"uv": [0, 0, 12, 12], "texture": "#0"} + } + }, + { + "name": "Brazier Sides 3", + "from": [2, 5, 14], + "to": [14, 14, 15], + "faces": { + "north": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "south": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 270, "texture": "#0"}, + "down": {"uv": [0, 0, 12, 12], "rotation": 90, "texture": "#0"} + } + }, + { + "name": "Brazier Sides 4", + "from": [14, 5, 2], + "to": [15, 14, 14], + "faces": { + "north": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "south": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "west": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 180, "texture": "#0"}, + "down": {"uv": [0, 0, 12, 12], "rotation": 180, "texture": "#0"} + } + }, + { + "name": "Brazier Sides 5", + "from": [2, 5, 1], + "to": [14, 14, 2], + "faces": { + "north": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "south": {"uv": [1.5, 2, 6.5, 5.5], "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 90, "texture": "#0"}, + "down": {"uv": [0, 0, 12, 12], "rotation": 270, "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 1", + "from": [2, 14, 2], + "to": [14, 17, 3], + "rotation": {"angle": -45, "axis": "x", "origin": [8, 14, 2]}, + "faces": { + "north": {"uv": [1.5, 0.5, 6.5, 2], "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "south": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 3], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 1b", + "from": [2, 14, 1], + "to": [14, 17, 2], + "rotation": {"angle": -45, "axis": "x", "origin": [8, 14, 2]}, + "faces": { + "north": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 3], "texture": "#0"}, + "south": {"uv": [1.5, 0.5, 6.5, 2], "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 180, "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "rotation": 180, "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 2", + "from": [2, 14, 2], + "to": [3, 17, 14], + "rotation": {"angle": 45, "axis": "z", "origin": [2, 14, 8]}, + "faces": { + "north": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 3], "texture": "#0"}, + "west": {"uv": [1.5, 0.5, 6.5, 2], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 270, "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "rotation": 90, "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 2b", + "from": [1, 14, 2], + "to": [2, 17, 14], + "rotation": {"angle": 45, "axis": "z", "origin": [2, 14, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 3], "texture": "#0"}, + "east": {"uv": [1.5, 0.5, 6.5, 2], "texture": "#0"}, + "south": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 90, "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "rotation": 270, "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 3", + "from": [2, 14, 13], + "to": [14, 17, 14], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 14, 14]}, + "faces": { + "north": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "east": {"uv": [0, 0, 1, 3], "texture": "#0"}, + "south": {"uv": [1.5, 0.5, 6.5, 2], "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 180, "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "rotation": 180, "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 3b", + "from": [2, 14, 14], + "to": [14, 17, 15], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 14, 14]}, + "faces": { + "north": {"uv": [1.5, 0.5, 6.5, 2], "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "south": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "west": {"uv": [0, 0, 1, 3], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 4", + "from": [14, 14, 2], + "to": [17, 15, 14], + "rotation": {"angle": 45, "axis": "z", "origin": [14, 14, 8]}, + "faces": { + "north": {"uv": [0, 0, 1, 3], "rotation": 270, "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "rotation": 180, "texture": "#0"}, + "south": {"uv": [8, 8, 16, 16], "rotation": 90, "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "up": {"uv": [8, 8, 16, 16], "rotation": 90, "texture": "#0"}, + "down": {"uv": [1.5, 0.5, 6.5, 2], "rotation": 90, "texture": "#0"} + } + }, + { + "name": "Brazier Spikes 4b", + "from": [14, 13, 2], + "to": [17, 14, 14], + "rotation": {"angle": 45, "axis": "z", "origin": [14, 14, 8]}, + "faces": { + "north": {"uv": [8, 8, 16, 16], "rotation": 270, "texture": "#0"}, + "east": {"uv": [8, 8, 16, 16], "texture": "#0"}, + "south": {"uv": [0, 0, 1, 3], "rotation": 90, "texture": "#0"}, + "west": {"uv": [8, 8, 16, 16], "rotation": 180, "texture": "#0"}, + "up": {"uv": [1.5, 0.5, 6.5, 2], "rotation": 90, "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "rotation": 90, "texture": "#0"} + } + }, + { + "name": "Base", + "from": [0, 0, 0], + "to": [16, 4, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0.5, 8, 0.5]}, + "faces": { + "north": {"uv": [0, 6, 8, 8], "texture": "#0"}, + "east": {"uv": [0, 6, 8, 8], "texture": "#0"}, + "south": {"uv": [0, 6, 8, 8], "texture": "#0"}, + "west": {"uv": [0, 6, 8, 8], "texture": "#0"}, + "up": {"uv": [0, 8, 8, 16], "texture": "#0"}, + "down": {"uv": [0, 8, 8, 16], "texture": "#0"} + } + }, + { + "name": "Brazier bottom", + "from": [2, 4, 2], + "to": [14, 5, 14], + "rotation": {"angle": 0, "axis": "y", "origin": [2.5, 8, 2.5]}, + "faces": { + "north": {"uv": [1.5, 5.5, 6.5, 6], "texture": "#0"}, + "east": {"uv": [1.5, 5.5, 6.5, 6], "texture": "#0"}, + "south": {"uv": [1.5, 5.5, 6.5, 6], "texture": "#0"}, + "west": {"uv": [1.5, 5.5, 6.5, 6], "texture": "#0"}, + "up": {"uv": [9, 1, 15, 7], "texture": "#0"}, + "down": {"uv": [8, 8, 16, 16], "texture": "#0"} + } + } + ], + "groups": [ + { + "name": "Brazier", + "origin": [0.5, 0.5, 0.5], + "children": [ + { + "name": "Brazier Sides", + "origin": [0.5, 0.5, 0.5], + "children": [0, 1, 2, 3, 4] + }, + { + "name": "Brazier Spikes", + "origin": [0.5, 0.5, 0.5], + "children": [5, 6, 7, 8, 9, 10, 11, 12] + }, 13, 14] + }, + { + "name": "Blazes", + "origin": [8, 8, 8], + "children": [15, 16, 17, 18] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/create/textures/block/blaze_heater_brazier.png b/src/main/resources/assets/create/textures/block/blaze_heater_brazier.png new file mode 100644 index 000000000..5bb9f3d37 Binary files /dev/null and b/src/main/resources/assets/create/textures/block/blaze_heater_brazier.png differ