Merge branch 'main' of github.com-quiqueck:paulevsGitch/BCLib

This commit is contained in:
Frank 2022-01-23 21:34:45 +01:00
commit fffbc6acc2
4 changed files with 94 additions and 0 deletions

View file

@ -0,0 +1,20 @@
package ru.bclib.api;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.state.BlockState;
import ru.bclib.mixin.common.ShovelItemAccessor;
import java.util.Map;
public class ShovelAPI {
/**
* Will add left-click behaviour to shovel: when it is targeting cetrain {@link Block} it will be converting to new
* {@link BlockState} on usage. Example: grass converting to path.
* @param target {@link Block} that will be converted.
* @param convert {@link BlockState} to convert block into.
*/
public static void addShovelBehaviour(Block target, BlockState convert) {
Map<Block, BlockState> map = ShovelItemAccessor.bclib_getFlattenables();
map.put(target, convert);
}
}

View file

@ -0,0 +1,17 @@
package ru.bclib.mixin.common;
import net.minecraft.world.item.ShovelItem;
import net.minecraft.world.level.block.Block;
import net.minecraft.world.level.block.state.BlockState;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.gen.Accessor;
import java.util.Map;
@Mixin(ShovelItem.class)
public interface ShovelItemAccessor {
@Accessor("FLATTENABLES")
static Map<Block, BlockState> bclib_getFlattenables() {
throw new AssertionError("@Accessor dummy body called");
}
}