001 package cpw.mods.fml.common.event; 002 003 import com.google.common.base.Throwables; 004 005 import cpw.mods.fml.common.Loader; 006 import cpw.mods.fml.common.LoaderState.ModState; 007 008 public class FMLPostInitializationEvent extends FMLStateEvent 009 { 010 public FMLPostInitializationEvent(Object... data) 011 { 012 super(data); 013 } 014 015 @Override 016 public ModState getModState() 017 { 018 return ModState.POSTINITIALIZED; 019 } 020 021 public Object buildSoftDependProxy(String modId, String className) 022 { 023 if (Loader.isModLoaded(modId)) 024 { 025 try 026 { 027 Class<?> clz = Class.forName(className,true,Loader.instance().getModClassLoader()); 028 return clz.newInstance(); 029 } 030 catch (Exception e) 031 { 032 Throwables.propagateIfPossible(e); 033 return null; 034 } 035 } 036 return null; 037 } 038 }