Charcoal block & fuel support
This commit is contained in:
parent
7b40047213
commit
364382b29b
7 changed files with 29 additions and 4 deletions
13
src/main/java/ru/betterend/blocks/CharcoalBlock.java
Normal file
13
src/main/java/ru/betterend/blocks/CharcoalBlock.java
Normal file
|
@ -0,0 +1,13 @@
|
||||||
|
package ru.betterend.blocks;
|
||||||
|
|
||||||
|
import net.fabricmc.fabric.api.object.builder.v1.block.FabricBlockSettings;
|
||||||
|
import net.fabricmc.fabric.api.registry.FuelRegistry;
|
||||||
|
import net.minecraft.block.Blocks;
|
||||||
|
import ru.betterend.blocks.basis.BlockBase;
|
||||||
|
|
||||||
|
public class CharcoalBlock extends BlockBase {
|
||||||
|
public CharcoalBlock() {
|
||||||
|
super(FabricBlockSettings.copyOf(Blocks.COAL_BLOCK));
|
||||||
|
FuelRegistry.INSTANCE.add(this, 6000);
|
||||||
|
}
|
||||||
|
}
|
|
@ -9,6 +9,7 @@ import com.google.common.collect.Maps;
|
||||||
|
|
||||||
import it.unimi.dsi.fastutil.objects.Object2IntMap.Entry;
|
import it.unimi.dsi.fastutil.objects.Object2IntMap.Entry;
|
||||||
import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap;
|
import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap;
|
||||||
|
import net.fabricmc.fabric.api.registry.FuelRegistry;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
import net.minecraft.block.Blocks;
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.block.entity.LockableContainerBlockEntity;
|
import net.minecraft.block.entity.LockableContainerBlockEntity;
|
||||||
|
@ -398,7 +399,7 @@ public class EndStoneSmelterBlockEntity extends LockableContainerBlockEntity imp
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
Item item = fuel.getItem();
|
Item item = fuel.getItem();
|
||||||
return AVAILABLE_FUELS.getOrDefault(item, 0);
|
return AVAILABLE_FUELS.getOrDefault(item, getFabricFuel(fuel));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -442,7 +443,7 @@ public class EndStoneSmelterBlockEntity extends LockableContainerBlockEntity imp
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean canUseAsFuel(ItemStack stack) {
|
public static boolean canUseAsFuel(ItemStack stack) {
|
||||||
return AVAILABLE_FUELS.containsKey(stack.getItem());
|
return AVAILABLE_FUELS.containsKey(stack.getItem()) || getFabricFuel(stack) > 2000;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void registerFuel(ItemConvertible fuel, int time) {
|
public static void registerFuel(ItemConvertible fuel, int time) {
|
||||||
|
@ -452,4 +453,9 @@ public class EndStoneSmelterBlockEntity extends LockableContainerBlockEntity imp
|
||||||
public static Map<Item, Integer> availableFuels() {
|
public static Map<Item, Integer> availableFuels() {
|
||||||
return AVAILABLE_FUELS;
|
return AVAILABLE_FUELS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static int getFabricFuel(ItemStack stack) {
|
||||||
|
Integer ticks = FuelRegistry.INSTANCE.get(stack.getItem());
|
||||||
|
return ticks == null ? 0 : ticks;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -178,6 +178,8 @@ public class CraftingRecipes {
|
||||||
.addMaterial('#', EndBlocks.VIOLECITE.stone, EndBlocks.VIOLECITE.bricks, EndBlocks.VIOLECITE.tiles)
|
.addMaterial('#', EndBlocks.VIOLECITE.stone, EndBlocks.VIOLECITE.bricks, EndBlocks.VIOLECITE.tiles)
|
||||||
.addMaterial('P', Blocks.PURPUR_BLOCK)
|
.addMaterial('P', Blocks.PURPUR_BLOCK)
|
||||||
.build();
|
.build();
|
||||||
|
|
||||||
|
GridRecipe.make("charcoal_block", EndBlocks.CHARCOAL_BLOCK).setShape("###", "###", "###").addMaterial('#', Items.CHARCOAL).build();
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void registerLantern(String name, Block lantern, Block slab) {
|
private static void registerLantern(String name, Block lantern, Block slab) {
|
||||||
|
|
|
@ -21,6 +21,7 @@ import ru.betterend.blocks.BulbVineLanternBlock;
|
||||||
import ru.betterend.blocks.BulbVineLanternColoredBlock;
|
import ru.betterend.blocks.BulbVineLanternColoredBlock;
|
||||||
import ru.betterend.blocks.BulbVineSeedBlock;
|
import ru.betterend.blocks.BulbVineSeedBlock;
|
||||||
import ru.betterend.blocks.ChandelierBlock;
|
import ru.betterend.blocks.ChandelierBlock;
|
||||||
|
import ru.betterend.blocks.CharcoalBlock;
|
||||||
import ru.betterend.blocks.CharniaBlock;
|
import ru.betterend.blocks.CharniaBlock;
|
||||||
import ru.betterend.blocks.ChorusGrassBlock;
|
import ru.betterend.blocks.ChorusGrassBlock;
|
||||||
import ru.betterend.blocks.DenseEmeraldIceBlock;
|
import ru.betterend.blocks.DenseEmeraldIceBlock;
|
||||||
|
@ -292,6 +293,7 @@ public class EndBlocks {
|
||||||
public static final MetalMaterial THALLASIUM = MetalMaterial.makeNormal("thallasium", MaterialColor.BLUE, EndToolMaterial.THALLASIUM, EndArmorMaterial.TERMINITE);
|
public static final MetalMaterial THALLASIUM = MetalMaterial.makeNormal("thallasium", MaterialColor.BLUE, EndToolMaterial.THALLASIUM, EndArmorMaterial.TERMINITE);
|
||||||
public static final MetalMaterial TERMINITE = MetalMaterial.makeOreless("terminite", MaterialColor.field_25708, 7F, 9F, EndToolMaterial.TERMINITE, EndArmorMaterial.TERMINITE);
|
public static final MetalMaterial TERMINITE = MetalMaterial.makeOreless("terminite", MaterialColor.field_25708, 7F, 9F, EndToolMaterial.TERMINITE, EndArmorMaterial.TERMINITE);
|
||||||
public static final Block AETERNIUM_BLOCK = registerBlock("aeternium_block", new AeterniumBlock());
|
public static final Block AETERNIUM_BLOCK = registerBlock("aeternium_block", new AeterniumBlock());
|
||||||
|
public static final Block CHARCOAL_BLOCK = registerBlock("charcoal_block", new CharcoalBlock());
|
||||||
|
|
||||||
public static final Block ENDER_BLOCK = registerBlock("ender_block", new EnderBlock());
|
public static final Block ENDER_BLOCK = registerBlock("ender_block", new EnderBlock());
|
||||||
public static final Block AURORA_CRYSTAL = registerBlock("aurora_crystal", new AuroraCrystalBlock());
|
public static final Block AURORA_CRYSTAL = registerBlock("aurora_crystal", new AuroraCrystalBlock());
|
||||||
|
|
|
@ -657,5 +657,6 @@
|
||||||
"item.betterend.thallasium_hammer": "Thallasium Hammer",
|
"item.betterend.thallasium_hammer": "Thallasium Hammer",
|
||||||
"item.betterend.thallasium_helmet": "Thallasium Helmet",
|
"item.betterend.thallasium_helmet": "Thallasium Helmet",
|
||||||
"item.betterend.thallasium_leggings": "Thallasium Leggings",
|
"item.betterend.thallasium_leggings": "Thallasium Leggings",
|
||||||
"block.betterend.missing_tile": "Missing Tile"
|
"block.betterend.missing_tile": "Missing Tile",
|
||||||
|
"block.betterend.charcoal_block": "Charcoal Block"
|
||||||
}
|
}
|
||||||
|
|
|
@ -677,5 +677,6 @@
|
||||||
"item.betterend.thallasium_hammer": "Талласиевый молот",
|
"item.betterend.thallasium_hammer": "Талласиевый молот",
|
||||||
"item.betterend.thallasium_helmet": "Талласиевый шлем",
|
"item.betterend.thallasium_helmet": "Талласиевый шлем",
|
||||||
"item.betterend.thallasium_leggings": "Талласиевые поножи",
|
"item.betterend.thallasium_leggings": "Талласиевые поножи",
|
||||||
"block.betterend.missing_tile": "Отсутствующая плитка"
|
"block.betterend.missing_tile": "Отсутствующая плитка",
|
||||||
|
"block.betterend.charcoal_block": "Блок древесного угля"
|
||||||
}
|
}
|
Binary file not shown.
After Width: | Height: | Size: 414 B |
Loading…
Add table
Add a link
Reference in a new issue