Files
StructureLib/src/main/java/com/gtnewhorizon/structurelib/structure/IStructureElement.java
T

43 lines
842 B
Java
Raw Normal View History

package com.gtnewhorizon.structurelib.structure;
import net.minecraft.item.ItemStack;
import net.minecraft.world.World;
/**
* Use StructureUtility to instantiate
*/
public interface IStructureElement<T> {
2022-07-08 17:14:18 +08:00
boolean check(T t, World world, int x, int y, int z);
2022-07-08 17:14:18 +08:00
boolean spawnHint(T t, World world, int x, int y, int z, ItemStack trigger);
2022-07-08 17:14:18 +08:00
boolean placeBlock(T t, World world, int x, int y, int z, ItemStack trigger);
2022-07-08 17:14:18 +08:00
default int getStepA() {
return 1;
}
2022-07-08 17:14:18 +08:00
default int getStepB() {
return 0;
}
2022-07-08 17:14:18 +08:00
default int getStepC() {
return 0;
}
2022-07-08 17:14:18 +08:00
default boolean resetA() {
return false;
}
2022-07-08 17:14:18 +08:00
default boolean resetB() {
return false;
}
2022-07-08 17:14:18 +08:00
default boolean resetC() {
return false;
}
2022-07-08 17:14:18 +08:00
default boolean isNavigating() {
return false;
}
}