New Composter API usage, missing items fix
This commit is contained in:
parent
2afb62d6c8
commit
1ca8ffca7c
4 changed files with 17 additions and 37 deletions
|
@ -9,17 +9,22 @@ import org.spongepowered.asm.mixin.gen.Accessor;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.function.Supplier;
|
import java.util.function.Supplier;
|
||||||
|
|
||||||
|
@Deprecated(forRemoval = true)
|
||||||
@Mixin(BiomeGenerationSettings.class)
|
@Mixin(BiomeGenerationSettings.class)
|
||||||
public interface BiomeGenerationSettingsAccessor {
|
public interface BiomeGenerationSettingsAccessor {
|
||||||
@Accessor("features")
|
@Accessor("features")
|
||||||
|
@Deprecated(forRemoval = true)
|
||||||
List<List<Supplier<ConfiguredFeature<?, ?>>>> be_getFeatures();
|
List<List<Supplier<ConfiguredFeature<?, ?>>>> be_getFeatures();
|
||||||
|
|
||||||
@Accessor("features")
|
@Accessor("features")
|
||||||
|
@Deprecated(forRemoval = true)
|
||||||
void be_setFeatures(List<List<Supplier<ConfiguredFeature<?, ?>>>> features);
|
void be_setFeatures(List<List<Supplier<ConfiguredFeature<?, ?>>>> features);
|
||||||
|
|
||||||
@Accessor("structureStarts")
|
@Accessor("structureStarts")
|
||||||
|
@Deprecated(forRemoval = true)
|
||||||
List<Supplier<ConfiguredStructureFeature<?, ?>>> be_getStructures();
|
List<Supplier<ConfiguredStructureFeature<?, ?>>> be_getStructures();
|
||||||
|
|
||||||
@Accessor("structureStarts")
|
@Accessor("structureStarts")
|
||||||
|
@Deprecated(forRemoval = true)
|
||||||
void be_setStructures(List<Supplier<ConfiguredStructureFeature<?, ?>>> structures);
|
void be_setStructures(List<Supplier<ConfiguredStructureFeature<?, ?>>> structures);
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,23 +2,20 @@ package ru.betterend.registry;
|
||||||
|
|
||||||
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
|
import net.fabricmc.fabric.api.item.v1.FabricItemSettings;
|
||||||
import net.minecraft.resources.ResourceLocation;
|
import net.minecraft.resources.ResourceLocation;
|
||||||
|
import net.minecraft.world.item.Item;
|
||||||
import net.minecraft.world.level.block.Block;
|
import net.minecraft.world.level.block.Block;
|
||||||
import net.minecraft.world.level.block.Blocks;
|
import net.minecraft.world.level.block.Blocks;
|
||||||
import net.minecraft.world.level.material.MaterialColor;
|
import net.minecraft.world.level.material.MaterialColor;
|
||||||
import org.jetbrains.annotations.NotNull;
|
import org.jetbrains.annotations.NotNull;
|
||||||
import ru.bclib.blocks.BaseBarrelBlock;
|
|
||||||
import ru.bclib.blocks.BaseChestBlock;
|
|
||||||
import ru.bclib.blocks.BaseFurnaceBlock;
|
import ru.bclib.blocks.BaseFurnaceBlock;
|
||||||
import ru.bclib.blocks.BaseOreBlock;
|
import ru.bclib.blocks.BaseOreBlock;
|
||||||
import ru.bclib.blocks.BasePathBlock;
|
import ru.bclib.blocks.BasePathBlock;
|
||||||
import ru.bclib.blocks.BaseRotatedPillarBlock;
|
import ru.bclib.blocks.BaseRotatedPillarBlock;
|
||||||
import ru.bclib.blocks.BaseSignBlock;
|
|
||||||
import ru.bclib.blocks.BaseSlabBlock;
|
import ru.bclib.blocks.BaseSlabBlock;
|
||||||
import ru.bclib.blocks.BaseStairsBlock;
|
import ru.bclib.blocks.BaseStairsBlock;
|
||||||
import ru.bclib.blocks.BaseVineBlock;
|
import ru.bclib.blocks.BaseVineBlock;
|
||||||
import ru.bclib.blocks.SimpleLeavesBlock;
|
import ru.bclib.blocks.SimpleLeavesBlock;
|
||||||
import ru.bclib.blocks.StalactiteBlock;
|
import ru.bclib.blocks.StalactiteBlock;
|
||||||
import ru.bclib.registry.BaseBlockEntities;
|
|
||||||
import ru.bclib.registry.BlockRegistry;
|
import ru.bclib.registry.BlockRegistry;
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
import ru.betterend.blocks.AeterniumAnvil;
|
import ru.betterend.blocks.AeterniumAnvil;
|
||||||
|
@ -525,22 +522,14 @@ public class EndBlocks {
|
||||||
return BlockRegistry.getModBlocks(BetterEnd.MOD_ID);
|
return BlockRegistry.getModBlocks(BetterEnd.MOD_ID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static List<Item> getModBlockItems() {
|
||||||
|
return BlockRegistry.getModBlockItems(BetterEnd.MOD_ID);
|
||||||
|
}
|
||||||
|
|
||||||
public static Block registerBlock(ResourceLocation id, Block block) {
|
public static Block registerBlock(ResourceLocation id, Block block) {
|
||||||
if (!Configs.BLOCK_CONFIG.getBooleanRoot(id.getPath(), true)) {
|
if (!Configs.BLOCK_CONFIG.getBooleanRoot(id.getPath(), true)) {
|
||||||
return block;
|
return block;
|
||||||
}
|
}
|
||||||
if (block instanceof BaseChestBlock) {
|
|
||||||
BaseBlockEntities.CHEST.registerBlock(block);
|
|
||||||
}
|
|
||||||
if (block instanceof BaseSignBlock) {
|
|
||||||
BaseBlockEntities.SIGN.registerBlock(block);
|
|
||||||
}
|
|
||||||
if (block instanceof BaseBarrelBlock) {
|
|
||||||
BaseBlockEntities.BARREL.registerBlock(block);
|
|
||||||
}
|
|
||||||
if (block instanceof BaseFurnaceBlock) {
|
|
||||||
BaseBlockEntities.FURNACE.registerBlock(block);
|
|
||||||
}
|
|
||||||
getBlockRegistry().register(id, block);
|
getBlockRegistry().register(id, block);
|
||||||
return block;
|
return block;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,9 +1,6 @@
|
||||||
package ru.betterend.registry;
|
package ru.betterend.registry;
|
||||||
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
|
|
||||||
import net.fabricmc.fabric.impl.tool.attribute.ToolManagerImpl;
|
import net.fabricmc.fabric.impl.tool.attribute.ToolManagerImpl;
|
||||||
import net.fabricmc.fabric.impl.tool.attribute.handlers.ModdedToolsVanillaBlocksToolHandler;
|
import net.fabricmc.fabric.impl.tool.attribute.handlers.ModdedToolsVanillaBlocksToolHandler;
|
||||||
import net.fabricmc.fabric.mixin.object.builder.AbstractBlockAccessor;
|
import net.fabricmc.fabric.mixin.object.builder.AbstractBlockAccessor;
|
||||||
|
@ -24,15 +21,17 @@ import net.minecraft.world.level.block.state.BlockBehaviour.Properties;
|
||||||
import net.minecraft.world.level.levelgen.surfacebuilders.SurfaceBuilderConfiguration;
|
import net.minecraft.world.level.levelgen.surfacebuilders.SurfaceBuilderConfiguration;
|
||||||
import net.minecraft.world.level.material.Material;
|
import net.minecraft.world.level.material.Material;
|
||||||
import ru.bclib.api.BonemealAPI;
|
import ru.bclib.api.BonemealAPI;
|
||||||
|
import ru.bclib.api.ComposterAPI;
|
||||||
import ru.bclib.api.TagAPI;
|
import ru.bclib.api.TagAPI;
|
||||||
import ru.bclib.blocks.BaseVineBlock;
|
import ru.bclib.blocks.BaseVineBlock;
|
||||||
import ru.bclib.blocks.SimpleLeavesBlock;
|
import ru.bclib.blocks.SimpleLeavesBlock;
|
||||||
import ru.bclib.mixin.common.ComposterBlockAccessor;
|
|
||||||
import ru.betterend.BetterEnd;
|
import ru.betterend.BetterEnd;
|
||||||
import ru.betterend.blocks.basis.EndTerrainBlock;
|
import ru.betterend.blocks.basis.EndTerrainBlock;
|
||||||
import ru.betterend.blocks.basis.PedestalBlock;
|
import ru.betterend.blocks.basis.PedestalBlock;
|
||||||
import ru.betterend.item.tool.EndHammerItem;
|
import ru.betterend.item.tool.EndHammerItem;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
public class EndTags {
|
public class EndTags {
|
||||||
// Table with common (c) tags:
|
// Table with common (c) tags:
|
||||||
// https://fabricmc.net/wiki/tutorial:tags
|
// https://fabricmc.net/wiki/tutorial:tags
|
||||||
|
@ -45,12 +44,6 @@ public class EndTags {
|
||||||
public static final Tag.Named<Item> ALLOYING_GOLD = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_gold");
|
public static final Tag.Named<Item> ALLOYING_GOLD = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_gold");
|
||||||
public static final Tag.Named<Item> ALLOYING_COPPER = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_copper");
|
public static final Tag.Named<Item> ALLOYING_COPPER = TagAPI.makeItemTag(BetterEnd.MOD_ID, "alloying_copper");
|
||||||
|
|
||||||
private static void allowCompost(float chance, Item item){
|
|
||||||
if (item!=null && item != Items.AIR) {
|
|
||||||
ComposterBlockAccessor.callAdd(chance, item);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static void register() {
|
public static void register() {
|
||||||
TagAPI.addEndGround(EndBlocks.THALLASIUM.ore);
|
TagAPI.addEndGround(EndBlocks.THALLASIUM.ore);
|
||||||
TagAPI.addEndGround(EndBlocks.ENDSTONE_DUST);
|
TagAPI.addEndGround(EndBlocks.ENDSTONE_DUST);
|
||||||
|
@ -81,10 +74,7 @@ public class EndTags {
|
||||||
}
|
}
|
||||||
else if (block instanceof LeavesBlock || block instanceof SimpleLeavesBlock) {
|
else if (block instanceof LeavesBlock || block instanceof SimpleLeavesBlock) {
|
||||||
TagAPI.addTag(BlockTags.LEAVES, block);
|
TagAPI.addTag(BlockTags.LEAVES, block);
|
||||||
|
ComposterAPI.allowCompost(0.3f, item);
|
||||||
//TODO: for BCLib 0.5.3
|
|
||||||
//ComposterAPI.allowCompost(0.3f, item);
|
|
||||||
allowCompost(0.3F, item);
|
|
||||||
}
|
}
|
||||||
else if (block instanceof BaseVineBlock) {
|
else if (block instanceof BaseVineBlock) {
|
||||||
TagAPI.addTag(BlockTags.CLIMBABLE, block);
|
TagAPI.addTag(BlockTags.CLIMBABLE, block);
|
||||||
|
@ -95,9 +85,7 @@ public class EndTags {
|
||||||
|
|
||||||
Material mat = block.defaultBlockState().getMaterial();
|
Material mat = block.defaultBlockState().getMaterial();
|
||||||
if (mat.equals(Material.PLANT) || mat.equals(Material.REPLACEABLE_PLANT)) {
|
if (mat.equals(Material.PLANT) || mat.equals(Material.REPLACEABLE_PLANT)) {
|
||||||
//TODO: for BCLib 0.5.3
|
ComposterAPI.allowCompost(0.1F, item);
|
||||||
//ComposterAPI.allowCompost(0.3f, item);
|
|
||||||
allowCompost(0.1F, item);
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
TagAPI.addEndGround(EndBlocks.CAVE_MOSS);
|
TagAPI.addEndGround(EndBlocks.CAVE_MOSS);
|
||||||
|
@ -112,9 +100,7 @@ public class EndTags {
|
||||||
FoodProperties food = item.getFoodProperties();
|
FoodProperties food = item.getFoodProperties();
|
||||||
if (food != null) {
|
if (food != null) {
|
||||||
float compost = food.getNutrition() * food.getSaturationModifier() * 0.18F;
|
float compost = food.getNutrition() * food.getSaturationModifier() * 0.18F;
|
||||||
//TODO: for BCLib 0.5.3
|
ComposterAPI.allowCompost(compost, item);
|
||||||
//ComposterAPI.allowCompost(0.3f, item);
|
|
||||||
allowCompost(compost, item);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (item instanceof EndHammerItem) {
|
if (item instanceof EndHammerItem) {
|
||||||
|
|
|
@ -17,7 +17,7 @@ public class CreativeTabs {
|
||||||
TAB_BLOCKS = FabricItemGroupBuilder
|
TAB_BLOCKS = FabricItemGroupBuilder
|
||||||
.create(BetterEnd.makeID("end_blocks"))
|
.create(BetterEnd.makeID("end_blocks"))
|
||||||
.icon(() -> new ItemStack(EndBlocks.END_MYCELIUM))
|
.icon(() -> new ItemStack(EndBlocks.END_MYCELIUM))
|
||||||
.appendItems(stacks -> stacks.addAll(EndBlocks.getModBlocks()
|
.appendItems(stacks -> stacks.addAll(EndBlocks.getModBlockItems()
|
||||||
.stream()
|
.stream()
|
||||||
.map(ItemStack::new)
|
.map(ItemStack::new)
|
||||||
.collect(Collectors.toList())))
|
.collect(Collectors.toList())))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue