Starting to get somewhere

This commit is contained in:
Christian Weeks committed 2012-03-30 01:12:59 -04:00
1 parent 0a7e8a8c3e
commit 3197817a76
16 files changed
+358 -171

No files matched your search

+51 -8
View File
@@ -1,30 +1,73 @@
package fml.server;
import net.minecraft.src.BaseMod;
public class ModLoaderModContainer implements ModContainer {
private Class<? extends BaseMod> modClazz;
private BaseMod mod;
private boolean isTicking;
public ModLoaderModContainer(Class<? extends BaseMod> modClazz) {
this.modClazz=modClazz;
}
public boolean wantsPreInit() {
return false;
return true;
}
public boolean wantsPostInit() {
return false;
return true;
}
@Override
public void preInit() {
// TODO Auto-generated method stub
try {
mod=modClazz.newInstance();
} catch (Exception e) {
throw new LoaderException(e);
}
}
@Override
public void init() {
// TODO Auto-generated method stub
mod.load();
}
@Override
public void postInit() {
// TODO Auto-generated method stub
mod.modsLoaded();
}
@Override
public void tickStart(float tickTime) {
if (isTicking) {
isTicking=mod.onTickInGame(tickTime);
}
}
@Override
public void tickEnd(float tickTime) {
// NOOP for modloader
}
@Override
public String getName() {
return mod!=null?mod.getName():null;
}
public static ModContainer findContainerFor(BaseMod mod) {
for (ModContainer mc :Loader.getModList()) {
if (mc.matches(mod)) {
return mc;
}
}
return null;
}
@Override
public boolean matches(Object mod) {
return modClazz.isInstance(mod);
}
public void setTicking(boolean enable) {
isTicking=enable;
}
}