resonant-induction/APIs/icbm/api/ICBM.java
2013-07-22 01:20:20 -04:00

60 lines
1.4 KiB
Java

package icbm.api;
import icbm.api.explosion.IExplosive;
import java.lang.reflect.Method;
/**
* General ICBM references.
*
* @author Calclavia
*
*/
public class ICBM {
/**
* Name of the channel and mod ID.
*/
public static final String NAME = "ICBM";
/**
* The version of ICBM.
*/
public static final String MAJOR_VERSION = "@MAJOR@";
public static final String MINOR_VERSION = "@MINOR@";
public static final String REVISION_VERSION = "@REVIS@";
public static final String BUILD_VERSION = "@BUILD@";
public static final String VERSION = MAJOR_VERSION + "." + MINOR_VERSION
+ "." + REVISION_VERSION;
/**
* The block ID in which ICBM starts with. ICBM Explosion will count up,
* ICBM Contraption will count down.
*/
public static final int BLOCK_ID_PREFIX = 3880;
/**
* The item ID in which ICBM starts with.
*/
public static final int ITEM_ID_PREFIX = 3900;
public static Class explosionManager;
/**
* @return Gets an explosive object based on the name of the explosive.
*/
public static IExplosive getExplosive(String name) {
if (name != null) {
try {
Method method = explosionManager.getMethod("get", String.class);
return (IExplosive) method.invoke(null, name);
} catch (Exception e) {
System.out
.println("ICBM: Failed to get explosive with the name: "
+ name);
e.printStackTrace();
}
}
return null;
}
}