diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache index 1ee9d27fe..8e636c1ed 100644 --- a/src/generated/resources/.cache/cache +++ b/src/generated/resources/.cache/cache @@ -210,6 +210,7 @@ e7c7b952137c4cb615988ea59b9f14303c9a4dfe assets/create/blockstates/limestone_bri 17c5a6c1dd094c9201ed90fdcebde620a8a39900 assets/create/blockstates/limestone_cobblestone_wall.json b7506b862d13b3f915c60d38bb7a20afc935f70a assets/create/blockstates/limestone_pillar.json 69790737767e06f000c7824749c46664a123160e assets/create/blockstates/linear_chassis.json +07bae932a163b81f8749f98287b4fb4949fe0b8b assets/create/blockstates/lit_blaze_burner.json 85a58ac539775f90903d9ce66374f3f2ffd4fecf assets/create/blockstates/magenta_sail.json 84c494d24cc58af274fdd054896c680e8095d2d0 assets/create/blockstates/magenta_seat.json 3bfce5016e5c929b74368dc2d734e62ae34587a4 assets/create/blockstates/magenta_valve_handle.json @@ -391,17 +392,17 @@ a3a11524cd3515fc01d905767b4b7ea782adaf03 assets/create/blockstates/yellow_seat.j 6801fa1f466f172700e573e5b8ee8ee5f9ca4583 assets/create/blockstates/yellow_valve_handle.json 7f39521b211441f5c3e06d60c5978cebe16cacfb assets/create/blockstates/zinc_block.json b7181bcd8182b2f17088e5aa881f374c9c65470c assets/create/blockstates/zinc_ore.json -be82e2e68c74c572e72979a6d4a5ec5e571931e2 assets/create/lang/en_ud.json -640c617ea3827d1ec40ab634da05f0c5af800f25 assets/create/lang/en_us.json -57bbb98446e72a74cb0735b424e9811b61af0c74 assets/create/lang/unfinished/de_de.json -4a0592f11dba8b26765e7abab386e46a2366afb8 assets/create/lang/unfinished/fr_fr.json -9bb92001a7e88fedff2a2868d2e80243a9306880 assets/create/lang/unfinished/it_it.json -c12f58d8ca37c34148a9e8358846e6911870210c assets/create/lang/unfinished/ja_jp.json -7cf5988ec697add8deac90791ca0c30c57321ee0 assets/create/lang/unfinished/ko_kr.json -1b41fd6a902cf5e845d9eb6aa60c066080a3d20e assets/create/lang/unfinished/nl_nl.json -362fb090bbf8a66b874ffa2a550f32b7c6ee2d7d assets/create/lang/unfinished/pt_br.json -0764d4f607734ed33299629ea7aceb6c3e67ba0f assets/create/lang/unfinished/ru_ru.json -23b2b6f091083dbb505e10febebfa4cab06c1db2 assets/create/lang/unfinished/zh_cn.json +69f3eb168fafdc42a2cba5c5821eeb87dbcdbce7 assets/create/lang/en_ud.json +efc32f0591cbfb1c2c3e5119bab629fed04c6f1a assets/create/lang/en_us.json +3b9923c1a5cb59ef08b762e88f1c44c55348f551 assets/create/lang/unfinished/de_de.json +03ce43a553db3cb2b1d668a24028771275043014 assets/create/lang/unfinished/fr_fr.json +2779bb9bad72e6cfd8bfe6cd4ee2a1a13db1d5c7 assets/create/lang/unfinished/it_it.json +dc9efaab4de074be3c265a28ce173710a57d6df7 assets/create/lang/unfinished/ja_jp.json +e5e98067186ef92d140288fa096c9f7d4e9f64b3 assets/create/lang/unfinished/ko_kr.json +35707109ce7442f9ab8e188c75f3755c1f6373fe assets/create/lang/unfinished/nl_nl.json +92be279a0b85825ae52903bf213ea7fbcdfadaa1 assets/create/lang/unfinished/pt_br.json +990a59a78dea2887b4568c00a208bf19c8df9e61 assets/create/lang/unfinished/ru_ru.json +f55a881954595cde52362fb42e7e8d3cdd3a0ae8 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 @@ -2351,6 +2352,7 @@ cb315814960850b5080598b89ee94c833b5048f7 data/create/loot_tables/blocks/limeston 92fb16606f289ad33860270d098fad2522b24e09 data/create/loot_tables/blocks/limestone_cobblestone_wall.json 371115e5ceb08c07a9ab2371509960c31e0baa8a data/create/loot_tables/blocks/limestone_pillar.json aa751d2e8a7889907c08c4bec6f6ca266230b6d7 data/create/loot_tables/blocks/linear_chassis.json +4005c244387ea824202c4c7cd44403e537d9766b data/create/loot_tables/blocks/lit_blaze_burner.json 28ae0ee8a0b1fb6becae6264de687fe17940708e data/create/loot_tables/blocks/magenta_sail.json 9e5e017cd3b4f544f487a5ca22ef610a4addc8ec data/create/loot_tables/blocks/magenta_seat.json 517e983d7387ec0d86845d4cf3deaa6d68c71170 data/create/loot_tables/blocks/magenta_valve_handle.json @@ -3261,8 +3263,8 @@ d3fdb8ece6cb072a93ddb64a0baad5ac952117a4 data/create/recipes/weathered_limestone 6eceb25fabbb6b389ca35de3b829ad061c9c456a data/create/recipes/weathered_limestone_pillar.json 11667414f73bc2d00bda7c5c1a7d2934bf6e9165 data/create/recipes/weathered_limestone_pillar_from_weathered_limestone_stonecutting.json f9ecec40e11a87de73c9dc7c2963c1cb10b1a180 data/create/tags/blocks/brittle.json -246ee2ec4e778e38a362f319506564886d4e0e76 data/create/tags/blocks/fan_heaters.json -551299f2f784435859bef13057c2b033eaefc784 data/create/tags/blocks/fan_transparent.json +13b55d6e905a02403d2e95e9ba2357f99c5f2241 data/create/tags/blocks/fan_heaters.json +3bc64e3a1e7980237435b1770a9ba2102d57fcd4 data/create/tags/blocks/fan_transparent.json c9ac7e3e5ec18554e7184168d65e9b8e44ef5610 data/create/tags/blocks/sails.json 6cdeeac1689f7b5bfd9bc40b462143d8eaf3ad0b data/create/tags/blocks/seats.json 50936b211d94167a35ec78c89954082a336b6269 data/create/tags/blocks/valve_handles.json diff --git a/src/generated/resources/assets/create/blockstates/lit_blaze_burner.json b/src/generated/resources/assets/create/blockstates/lit_blaze_burner.json new file mode 100644 index 000000000..5befc1351 --- /dev/null +++ b/src/generated/resources/assets/create/blockstates/lit_blaze_burner.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "create:block/blaze_burner/block_with_fire" + } + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/create/lang/en_ud.json b/src/generated/resources/assets/create/lang/en_ud.json index 31d33664b..e376faec4 100644 --- a/src/generated/resources/assets/create/lang/en_ud.json +++ b/src/generated/resources/assets/create/lang/en_ud.json @@ -211,6 +211,7 @@ "block.create.limestone_cobblestone_wall": "\u05DF\u05DF\u0250M \u01DDuo\u0287s\u01DD\u05DFqqo\u0186 \u01DDuo\u0287s\u01DD\u026F\u0131\uA780", "block.create.limestone_pillar": "\u0279\u0250\u05DF\u05DF\u0131\u0500 \u01DDuo\u0287s\u01DD\u026F\u0131\uA780", "block.create.linear_chassis": "s\u0131ss\u0250\u0265\u0186 \u0279\u0250\u01DDu\u0131\uA780", + "block.create.lit_blaze_burner": "\u0279\u01DDu\u0279n\u15FA \u01DDz\u0250\u05DF\u15FA \u0287\u0131\uA780", "block.create.magenta_sail": "\u05DF\u0131\u0250S \u0250\u0287u\u01DDb\u0250W", "block.create.magenta_seat": "\u0287\u0250\u01DDS \u0250\u0287u\u01DDb\u0250W", "block.create.magenta_valve_handle": "\u01DD\u05DFpu\u0250H \u01DD\u028C\u05DF\u0250\u039B \u0250\u0287u\u01DDb\u0250W", diff --git a/src/generated/resources/assets/create/lang/en_us.json b/src/generated/resources/assets/create/lang/en_us.json index a0d312f3e..3968fc266 100644 --- a/src/generated/resources/assets/create/lang/en_us.json +++ b/src/generated/resources/assets/create/lang/en_us.json @@ -214,6 +214,7 @@ "block.create.limestone_cobblestone_wall": "Limestone Cobblestone Wall", "block.create.limestone_pillar": "Limestone Pillar", "block.create.linear_chassis": "Linear Chassis", + "block.create.lit_blaze_burner": "Lit Blaze Burner", "block.create.magenta_sail": "Magenta Sail", "block.create.magenta_seat": "Magenta Seat", "block.create.magenta_valve_handle": "Magenta Valve Handle", 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 e1534a0c6..ba4510237 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: 1038", + "_": "Missing Localizations: 1039", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "UNLOCALIZED: Limestone Cobblestone Wall", "block.create.limestone_pillar": "Kalksteinsäule", "block.create.linear_chassis": "Schubgerüst", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 1a117cf05..ad023eb6a 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: 667", + "_": "Missing Localizations: 668", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "UNLOCALIZED: Limestone Cobblestone Wall", "block.create.limestone_pillar": "Pillier de calcaire", "block.create.linear_chassis": "Châssis linéaire", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 0060f3e34..dda36e7c4 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: 651", + "_": "Missing Localizations: 652", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "UNLOCALIZED: Limestone Cobblestone Wall", "block.create.limestone_pillar": "Pilastro di Calcare", "block.create.linear_chassis": "Telaio Lineare", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 cb238c3f1..a558fe95e 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: 650", + "_": "Missing Localizations: 651", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "UNLOCALIZED: Limestone Cobblestone Wall", "block.create.limestone_pillar": "石灰岩の柱", "block.create.linear_chassis": "リニアシャーシ", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 f0e1433f1..70588bd53 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: 651", + "_": "Missing Localizations: 652", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "UNLOCALIZED: Limestone Cobblestone Wall", "block.create.limestone_pillar": "석회암 기둥", "block.create.linear_chassis": "직선 섀시", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 e66f411f0..bf111fec1 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: 979", + "_": "Missing Localizations: 980", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "UNLOCALIZED: Limestone Cobblestone Wall", "block.create.limestone_pillar": "Kalksteen Pillar", "block.create.linear_chassis": "Lineaar Frame", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 56d4f0db7..86fed3814 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: 1045", + "_": "Missing Localizations: 1046", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "UNLOCALIZED: Limestone Cobblestone Wall", "block.create.limestone_pillar": "Pilar de Calcário", "block.create.linear_chassis": "Chassis de Translado", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 1b3d0f477..46ca2dd35 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: 320", + "_": "Missing Localizations: 321", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "Стена из известняк-булыжника", "block.create.limestone_pillar": "Известковая колонна", "block.create.linear_chassis": "Линейное шасси", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", 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 b4a6ac12f..b76d0d18a 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: 333", + "_": "Missing Localizations: 334", "_": "->------------------------] Game Elements [------------------------<-", @@ -215,6 +215,7 @@ "block.create.limestone_cobblestone_wall": "石灰岩圆石墙", "block.create.limestone_pillar": "竖纹石灰岩", "block.create.linear_chassis": "机壳底盘", + "block.create.lit_blaze_burner": "UNLOCALIZED: Lit Blaze Burner", "block.create.magenta_sail": "UNLOCALIZED: Magenta Sail", "block.create.magenta_seat": "UNLOCALIZED: Magenta Seat", "block.create.magenta_valve_handle": "UNLOCALIZED: Magenta Valve Handle", diff --git a/src/generated/resources/data/create/loot_tables/blocks/lit_blaze_burner.json b/src/generated/resources/data/create/loot_tables/blocks/lit_blaze_burner.json new file mode 100644 index 000000000..a74eb7287 --- /dev/null +++ b/src/generated/resources/data/create/loot_tables/blocks/lit_blaze_burner.json @@ -0,0 +1,19 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "create:empty_blaze_burner" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/create/tags/blocks/fan_heaters.json b/src/generated/resources/data/create/tags/blocks/fan_heaters.json index ef385188e..a9595ab9c 100644 --- a/src/generated/resources/data/create/tags/blocks/fan_heaters.json +++ b/src/generated/resources/data/create/tags/blocks/fan_heaters.json @@ -2,6 +2,7 @@ "replace": false, "values": [ "create:blaze_burner", + "create:lit_blaze_burner", "minecraft:magma_block", "minecraft:campfire", "minecraft:lava", diff --git a/src/generated/resources/data/create/tags/blocks/fan_transparent.json b/src/generated/resources/data/create/tags/blocks/fan_transparent.json index 9c90933ae..5e6279801 100644 --- a/src/generated/resources/data/create/tags/blocks/fan_transparent.json +++ b/src/generated/resources/data/create/tags/blocks/fan_transparent.json @@ -2,6 +2,7 @@ "replace": false, "values": [ "create:blaze_burner", + "create:lit_blaze_burner", "create:sail_frame", "#minecraft:fences", "minecraft:iron_bars" diff --git a/src/main/java/com/simibubi/create/AllBlocks.java b/src/main/java/com/simibubi/create/AllBlocks.java index f0d61584c..965d9c79f 100644 --- a/src/main/java/com/simibubi/create/AllBlocks.java +++ b/src/main/java/com/simibubi/create/AllBlocks.java @@ -86,6 +86,7 @@ import com.simibubi.create.content.contraptions.processing.BasinGenerator; import com.simibubi.create.content.contraptions.processing.BasinMovementBehaviour; import com.simibubi.create.content.contraptions.processing.burner.BlazeBurnerBlock; import com.simibubi.create.content.contraptions.processing.burner.BlazeBurnerBlockItem; +import com.simibubi.create.content.contraptions.processing.burner.LitBlazeBurnerBlock; 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; @@ -445,6 +446,17 @@ public class AllBlocks { .build() .register(); + public static final BlockEntry LIT_BLAZE_BURNER = + REGISTRATE.block("lit_blaze_burner", LitBlazeBurnerBlock::new) + .initialProperties(SharedProperties::softMetal) + .properties(p -> p.lightValue(15)) + .addLayer(() -> RenderType::getCutoutMipped) + .tag(AllBlockTags.FAN_TRANSPARENT.tag, AllBlockTags.FAN_HEATERS.tag) + .loot((lt, block) -> lt.registerDropping(block, AllItems.EMPTY_BLAZE_BURNER.get())) + .blockstate((c, p) -> p.simpleBlock(c.getEntry(), p.models() + .getExistingFile(p.modLoc("block/blaze_burner/block_with_fire")))) + .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))) diff --git a/src/main/java/com/simibubi/create/content/contraptions/processing/burner/BlazeBurnerBlock.java b/src/main/java/com/simibubi/create/content/contraptions/processing/burner/BlazeBurnerBlock.java index faa70fbaa..b6ae0d8c6 100644 --- a/src/main/java/com/simibubi/create/content/contraptions/processing/burner/BlazeBurnerBlock.java +++ b/src/main/java/com/simibubi/create/content/contraptions/processing/burner/BlazeBurnerBlock.java @@ -1,5 +1,7 @@ package com.simibubi.create.content.contraptions.processing.burner; +import java.util.Random; + import javax.annotation.Nullable; import javax.annotation.ParametersAreNonnullByDefault; @@ -17,6 +19,7 @@ import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.item.BlockItemUseContext; +import net.minecraft.item.FlintAndSteelItem; import net.minecraft.item.Item; import net.minecraft.item.ItemGroup; import net.minecraft.item.ItemStack; @@ -29,6 +32,8 @@ import net.minecraft.util.Hand; import net.minecraft.util.IItemProvider; import net.minecraft.util.IStringSerializable; import net.minecraft.util.NonNullList; +import net.minecraft.util.SoundCategory; +import net.minecraft.util.SoundEvents; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.BlockRayTraceResult; import net.minecraft.util.math.MathHelper; @@ -43,6 +48,8 @@ import net.minecraft.world.storage.loot.LootTable; import net.minecraft.world.storage.loot.conditions.BlockStateProperty; import net.minecraft.world.storage.loot.conditions.ILootCondition.IBuilder; import net.minecraft.world.storage.loot.conditions.SurvivesExplosion; +import net.minecraftforge.api.distmarker.Dist; +import net.minecraftforge.api.distmarker.OnlyIn; import net.minecraftforge.common.util.FakePlayer; @MethodsReturnNonnullByDefault @@ -61,10 +68,9 @@ public class BlazeBurnerBlock extends Block implements ITE p.sendBreakAnimation(hand)); + world.setBlockState(pos, AllBlocks.LIT_BLAZE_BURNER.getDefaultState()); + return ActionResultType.SUCCESS; + } + return ActionResultType.PASS; + } + if (!tryInsert(state, world, pos, dontConsume ? heldItem.copy() : heldItem, forceOverflow, false)) return ActionResultType.PASS; return ActionResultType.SUCCESS; @@ -121,8 +140,11 @@ public class BlazeBurnerBlock extends Block implements ITE p.sendBreakAnimation(hand)); + + world.setBlockState(pos, AllBlocks.BLAZE_BURNER.getDefaultState()); + return ActionResultType.SUCCESS; + } + + @Override + public VoxelShape getShape(BlockState state, IBlockReader reader, BlockPos pos, ISelectionContext context) { + return AllBlocks.BLAZE_BURNER.get() + .getShape(state, reader, pos, context); + } + + @Override + public ItemStack getPickBlock(BlockState state, RayTraceResult target, IBlockReader world, BlockPos pos, + PlayerEntity player) { + return AllItems.EMPTY_BLAZE_BURNER.asStack(); + } + + @OnlyIn(Dist.CLIENT) + public void animateTick(BlockState p_180655_1_, World world, BlockPos pos, Random random) { + world.addOptionalParticle(ParticleTypes.LARGE_SMOKE, true, + (double) pos.getX() + 0.5D + random.nextDouble() / 3.0D * (double) (random.nextBoolean() ? 1 : -1), + (double) pos.getY() + random.nextDouble() + random.nextDouble(), + (double) pos.getZ() + 0.5D + random.nextDouble() / 3.0D * (double) (random.nextBoolean() ? 1 : -1), 0.0D, + 0.07D, 0.0D); + + if (random.nextInt(10) == 0) { + world.playSound((double) ((float) pos.getX() + 0.5F), (double) ((float) pos.getY() + 0.5F), + (double) ((float) pos.getZ() + 0.5F), SoundEvents.BLOCK_CAMPFIRE_CRACKLE, SoundCategory.BLOCKS, + 0.25F + random.nextFloat() * .25f, random.nextFloat() * 0.7F + 0.6F, false); + } + + if (random.nextInt(5) == 0) { + for (int i = 0; i < random.nextInt(1) + 1; ++i) { + world.addParticle(ParticleTypes.LAVA, (double) ((float) pos.getX() + 0.5F), + (double) ((float) pos.getY() + 0.5F), (double) ((float) pos.getZ() + 0.5F), + (double) (random.nextFloat() / 2.0F), 5.0E-5D, (double) (random.nextFloat() / 2.0F)); + } + } + } + + @Override + public VoxelShape getCollisionShape(BlockState state, IBlockReader reader, BlockPos pos, + ISelectionContext context) { + return AllBlocks.BLAZE_BURNER.get() + .getCollisionShape(state, reader, pos, context); + } + +} diff --git a/src/main/java/com/simibubi/create/content/logistics/InWorldProcessing.java b/src/main/java/com/simibubi/create/content/logistics/InWorldProcessing.java index e1eaeae27..88a5fe2fb 100644 --- a/src/main/java/com/simibubi/create/content/logistics/InWorldProcessing.java +++ b/src/main/java/com/simibubi/create/content/logistics/InWorldProcessing.java @@ -9,6 +9,7 @@ import java.util.Optional; import javax.annotation.Nullable; +import com.simibubi.create.AllBlocks; import com.simibubi.create.AllRecipeTypes; import com.simibubi.create.content.contraptions.components.fan.SplashingRecipe; import com.simibubi.create.content.contraptions.processing.ProcessingRecipe; @@ -19,6 +20,7 @@ import com.simibubi.create.foundation.item.ItemHelper; import com.simibubi.create.foundation.tileEntity.behaviour.belt.TransportedItemStackHandlerBehaviour.TransportedResult; import com.simibubi.create.foundation.utility.ColorHelper; +import net.minecraft.block.Block; import net.minecraft.block.BlockState; import net.minecraft.block.Blocks; import net.minecraft.block.CampfireBlock; @@ -65,12 +67,12 @@ public class InWorldProcessing { IFluidState fluidState = reader.getFluidState(pos); if (fluidState.getFluid() == Fluids.WATER || fluidState.getFluid() == Fluids.FLOWING_WATER) return Type.SPLASHING; - if (blockState.getBlock() == Blocks.FIRE - || (blockState.getBlock() == Blocks.CAMPFIRE && blockState.get(CampfireBlock.LIT)) + Block block = blockState.getBlock(); + if (block == Blocks.FIRE || AllBlocks.LIT_BLAZE_BURNER.has(blockState) + || (block == Blocks.CAMPFIRE && blockState.get(CampfireBlock.LIT)) || getHeatLevelOf(blockState) == BlazeBurnerBlock.HeatLevel.SMOULDERING) return Type.SMOKING; - if (blockState.getBlock() == Blocks.LAVA - || getHeatLevelOf(blockState).isAtLeast(BlazeBurnerBlock.HeatLevel.FADING)) + if (block == Blocks.LAVA || getHeatLevelOf(blockState).isAtLeast(BlazeBurnerBlock.HeatLevel.FADING)) return Type.BLASTING; return null; } diff --git a/src/main/resources/assets/create/models/block/blaze_burner/block_with_fire.json b/src/main/resources/assets/create/models/block/blaze_burner/block_with_fire.json new file mode 100644 index 000000000..317fa360b --- /dev/null +++ b/src/main/resources/assets/create/models/block/blaze_burner/block_with_fire.json @@ -0,0 +1,202 @@ +{ + "credit": "Made with Blockbench", + "parent": "block/block", + "textures": { + "1": "create:block/blaze_burner_inner", + "2": "create:block/blaze_burner_side", + "3": "create:block/dark_metal_block", + "particle": "create:block/dark_metal_block", + "fire": "block/campfire_fire" + }, + "elements": [ + { + "name": "Brazier Sides 1", + "from": [2, 5, 2], + "to": [14, 14, 14], + "faces": { + "north": {"uv": [0, 6, 12, 15], "texture": "#2"}, + "east": {"uv": [0, 6, 12, 15], "texture": "#2"}, + "south": {"uv": [0, 6, 12, 15], "texture": "#2"}, + "west": {"uv": [0, 6, 12, 15], "texture": "#2"} + } + }, + { + "name": "Brazier Sides 2", + "from": [2, 5, 14], + "to": [14, 14, 15], + "faces": { + "north": {"uv": [12, 6, 0, 15], "texture": "#2"} + } + }, + { + "name": "Brazier Sides 3", + "from": [1, 5, 2], + "to": [2, 14, 14], + "faces": { + "east": {"uv": [12, 6, 0, 15], "texture": "#2"} + } + }, + { + "name": "Brazier Sides 4", + "from": [2, 5, 1], + "to": [14, 14, 2], + "faces": { + "south": {"uv": [12, 6, 0, 15], "texture": "#2"} + } + }, + { + "name": "Brazier Sides 5", + "from": [14, 5, 2], + "to": [15, 14, 14], + "faces": { + "west": {"uv": [12, 6, 0, 15], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 1", + "from": [2, 14, 13], + "to": [14, 17, 14], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 14, 14]}, + "faces": { + "south": {"uv": [0, 3, 12, 6], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 2", + "from": [2, 14, 2], + "to": [3, 17, 14], + "rotation": {"angle": 45, "axis": "z", "origin": [2, 14, 8]}, + "faces": { + "west": {"uv": [0, 3, 12, 6], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 3", + "from": [2, 14, 2], + "to": [14, 17, 3], + "rotation": {"angle": -45, "axis": "x", "origin": [8, 14, 2]}, + "faces": { + "north": {"uv": [0, 3, 12, 6], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 4", + "from": [13, 14, 2], + "to": [14, 17, 14], + "rotation": {"angle": -45, "axis": "z", "origin": [14, 14, 8]}, + "faces": { + "east": {"uv": [0, 3, 12, 6], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 1b", + "from": [2, 14, 14], + "to": [14, 17, 15], + "rotation": {"angle": 45, "axis": "x", "origin": [8, 14, 14]}, + "faces": { + "north": {"uv": [12, 3, 0, 6], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 1b", + "from": [1, 14, 2], + "to": [2, 17, 14], + "rotation": {"angle": 45, "axis": "z", "origin": [2, 14, 8]}, + "faces": { + "east": {"uv": [12, 3, 0, 6], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 1b", + "from": [2, 14, 1], + "to": [14, 17, 2], + "rotation": {"angle": -45, "axis": "x", "origin": [8, 14, 2]}, + "faces": { + "south": {"uv": [12, 3, 0, 6], "texture": "#2"} + } + }, + { + "name": "Brazier Spikes 1b", + "from": [14, 14, 2], + "to": [15, 17, 14], + "rotation": {"angle": -45, "axis": "z", "origin": [14, 14, 8]}, + "faces": { + "west": {"uv": [12, 3, 0, 6], "texture": "#2"} + } + }, + { + "name": "Base", + "from": [0, 0, 0], + "to": [16, 4, 16], + "rotation": {"angle": 0, "axis": "y", "origin": [0.5, 8, 0.5]}, + "faces": { + "north": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}, + "east": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}, + "south": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}, + "west": {"uv": [12, 0, 16, 16], "rotation": 90, "texture": "#2"}, + "up": {"uv": [0, 0, 16, 16], "texture": "#1"}, + "down": {"uv": [0, 0, 16, 16], "texture": "#3", "cullface": "down"} + } + }, + { + "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": [0, 15, 12, 16], "texture": "#2"}, + "east": {"uv": [0, 15, 12, 16], "texture": "#2"}, + "south": {"uv": [0, 15, 12, 16], "texture": "#2"}, + "west": {"uv": [0, 15, 12, 16], "texture": "#2"}, + "up": {"uv": [2, 2, 14, 14], "texture": "#1"} + } + }, + { + "from": [0.8, 1, 8], + "to": [15.2, 17, 8], + "shade": false, + "rotation": {"angle": 45, "axis": "y", "origin": [8, 8, 8], "rescale": true}, + "faces": { + "north": {"uv": [0, 0, 16, 16], "texture": "#fire"}, + "south": {"uv": [0, 0, 16, 16], "texture": "#fire"} + } + }, + { + "from": [8, 1, 0.8], + "to": [8, 17, 15.2], + "shade": false, + "rotation": {"angle": 45, "axis": "y", "origin": [8, 8, 8], "rescale": true}, + "faces": { + "east": {"uv": [0, 0, 16, 16], "texture": "#fire"}, + "west": {"uv": [0, 0, 16, 16], "texture": "#fire"} + } + } + ], + "display": { + "head": { + "translation": [0, 10.5, 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": "campfire", + "origin": [8, 8, 8], + "children": [15, 16] + } + ] +} \ No newline at end of file