equivalent-exchange-3/src/main/java/com/pahimar/ee3/api/exchange/EnergyValueRegistryProxy.java

107 lines
2.6 KiB
Java
Raw Normal View History

2015-05-07 19:45:06 +02:00
package com.pahimar.ee3.api.exchange;
import com.pahimar.ee3.EquivalentExchange3;
import cpw.mods.fml.common.Mod;
import java.util.Collections;
import java.util.List;
public final class EnergyValueRegistryProxy {
@Mod.Instance("EE3")
private static Object ee3Mod;
2014-07-14 12:52:08 +02:00
public static boolean hasEnergyValue(Object object)
{
return hasEnergyValue(object, false);
}
public static boolean hasEnergyValue(Object object, boolean strict) {
init();
if (ee3Mod != null) {
return EE3Wrapper.ee3mod.getEnergyValueRegistry().hasEnergyValue(object, strict);
}
return false;
}
public static EnergyValue getEnergyValue(Object object) {
return getEnergyValue(object, false);
}
public static EnergyValue getEnergyValue(Object object, boolean strict) {
init();
if (ee3Mod != null) {
return EE3Wrapper.ee3mod.getEnergyValueRegistry().getEnergyValue(object, strict);
}
return null;
}
public static EnergyValue getEnergyValueForStack(Object object) {
2015-04-19 21:01:35 +02:00
return getEnergyValueForStack(object, false);
}
public static EnergyValue getEnergyValueForStack(Object object, boolean strict) {
2015-04-19 21:01:35 +02:00
init();
if (ee3Mod != null) {
2015-04-19 21:01:35 +02:00
return EE3Wrapper.ee3mod.getEnergyValueRegistry().getEnergyValueForStack(object, strict);
}
return null;
}
public static List getStacksInRange(Number start, Number finish) {
return getStacksInRange(start, finish);
}
public static List getStacksInRange(EnergyValue start, EnergyValue finish) {
init();
if (ee3Mod != null) {
return EE3Wrapper.ee3mod.getEnergyValueRegistry().getStacksInRange(start, finish);
}
return Collections.EMPTY_LIST;
}
public static void setEnergyValue(Object object, Number energyValue) {
setEnergyValue(object, energyValue, Phase.POST_CALCULATION);
2015-04-09 18:40:19 +02:00
}
public static void setEnergyValue(Object object, Number energyValue, Phase phase) {
2015-04-09 18:40:19 +02:00
init();
if (ee3Mod != null) {
EE3Wrapper.ee3mod.getEnergyValueRegistry().setEnergyValue(object, new EnergyValue(energyValue), phase);
2015-04-09 18:40:19 +02:00
}
}
private static class EE3Wrapper {
private static EquivalentExchange3 ee3mod;
}
private static void init() {
if (ee3Mod != null) {
EE3Wrapper.ee3mod = (EquivalentExchange3) ee3Mod;
}
}
2015-04-09 18:40:19 +02:00
public enum Phase {
@Deprecated PRE_ASSIGNMENT,
PRE_CALCULATION,
@Deprecated POST_ASSIGNMENT,
POST_CALCULATION,
2015-04-09 18:40:19 +02:00
ALL
}
}