2018-11-23 19:21:52 +01:00
|
|
|
package de.ellpeck.naturesaura.api.multiblock;
|
|
|
|
|
|
|
|
import net.minecraft.util.ResourceLocation;
|
|
|
|
import net.minecraft.util.math.BlockPos;
|
2020-04-29 16:38:50 +02:00
|
|
|
import net.minecraft.world.World;
|
2018-11-23 19:21:52 +01:00
|
|
|
|
|
|
|
import java.util.Map;
|
|
|
|
import java.util.function.BiFunction;
|
|
|
|
|
|
|
|
public interface IMultiblock {
|
|
|
|
|
2020-04-29 16:38:50 +02:00
|
|
|
boolean isComplete(World world, BlockPos center);
|
2018-11-23 19:21:52 +01:00
|
|
|
|
|
|
|
boolean forEach(BlockPos center, char c, BiFunction<BlockPos, Matcher, Boolean> function);
|
|
|
|
|
|
|
|
BlockPos getStart(BlockPos center);
|
|
|
|
|
|
|
|
char getChar(BlockPos offset);
|
|
|
|
|
|
|
|
ResourceLocation getName();
|
|
|
|
|
|
|
|
Map<BlockPos, Matcher> getMatchers();
|
|
|
|
|
|
|
|
int getWidth();
|
|
|
|
|
|
|
|
int getHeight();
|
|
|
|
|
|
|
|
int getDepth();
|
|
|
|
|
|
|
|
int getXOffset();
|
|
|
|
|
|
|
|
int getYOffset();
|
|
|
|
|
|
|
|
int getZOffset();
|
|
|
|
|
|
|
|
char[][][] getRawPattern();
|
|
|
|
}
|