/*
package vazkii.botania.common.integration.buildcraft;
import org.apache.commons.lang3.text.WordUtils;
import buildcraft.api.statements.IStatementContainer;
import buildcraft.api.statements.IStatementParameter;
import buildcraft.api.statements.ITriggerExternal;
import net.minecraft.client.renderer.texture.TextureAtlasSprite;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.EnumFacing;
import net.minecraft.util.text.translation.I18n;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.relauncher.SideOnly;
import vazkii.botania.api.mana.IManaBlock;
import vazkii.botania.api.mana.IManaReceiver;
import vazkii.botania.client.core.handler.MiscellaneousIcons;
import vazkii.botania.common.lib.LibTriggerNames;
public class TriggerManaLevel extends StatementBase implements ITriggerExternal {
public enum State {
EMPTY,
CONTAINS,
SPACE,
FULL
};
private final State state;
public TriggerManaLevel(State state) {
this.state = state;
}
@Override
public String getUniqueTag() {
return "botania:mana" + state.name();
}
@Override
@SideOnly(Side.CLIENT)
public TextureAtlasSprite getGuiSprite() {
return MiscellaneousIcons.INSTANCE.manaLevelTriggerIcons.get(state);
}
@Override
public String getDescription() {
return I18n.translateToLocal(LibTriggerNames.TRIGGER_MANA_PREFIX + WordUtils.capitalizeFully(state.name()));
}
@Override
public boolean isTriggerActive(TileEntity target, EnumFacing side, IStatementContainer source, IStatementParameter[] parameters) {
if(target instanceof IManaBlock) {
if(state == State.EMPTY) return ((IManaBlock) target).getCurrentMana() == 0;
else if(state == State.CONTAINS) return ((IManaBlock) target).getCurrentMana() > 0;
else if(target instanceof IManaReceiver) {
if(state == State.SPACE) return !((IManaReceiver) target).isFull();
else if(state == State.FULL) return ((IManaReceiver) target).isFull();
}
}
return false;
}
}
*/