2022-11-09 22:15:45 +01:00
|
|
|
package mffs.api;
|
|
|
|
|
|
|
|
import java.util.Set;
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
import mffs.api.modules.IModule;
|
2022-11-09 22:16:55 +01:00
|
|
|
import mffs.api.modules.IModuleAcceptor;
|
|
|
|
import mffs.api.modules.IProjectorMode;
|
2022-11-09 22:15:45 +01:00
|
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
import net.minecraftforge.common.util.ForgeDirection;
|
2022-11-09 22:16:55 +01:00
|
|
|
import universalelectricity.core.vector.Vector3;
|
2022-11-09 22:15:45 +01:00
|
|
|
import universalelectricity.prefab.implement.IRotatable;
|
|
|
|
|
2022-11-09 22:16:55 +01:00
|
|
|
public interface IFieldInteraction extends IModuleAcceptor, IRotatable, IActivatable {
|
2022-11-09 22:15:45 +01:00
|
|
|
IProjectorMode getMode();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
ItemStack getModeStack();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
int[] getSlotsBasedOnDirection(final ForgeDirection p0);
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
int[] getModuleSlots();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
int getSidedModuleCount(final IModule p0, final ForgeDirection... p1);
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
Vector3 getTranslation();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
Vector3 getPositiveScale();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
Vector3 getNegativeScale();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
int getRotationYaw();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
int getRotationPitch();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
Set<Vector3> getCalculatedField();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
Set<Vector3> getInteriorPoints();
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
void setCalculating(final boolean p0);
|
2022-11-09 22:16:55 +01:00
|
|
|
|
2022-11-09 22:15:45 +01:00
|
|
|
void setCalculated(final boolean p0);
|
|
|
|
}
|