use of pneumaticCraft.common.EventHandlerPneumaticCraft in project PneumaticCraft by MineMaarten.
the class PneumaticCraft method PreInit.
@EventHandler
public void PreInit(FMLPreInitializationEvent event) {
event.getModMetadata().version = Versions.fullVersionString();
isNEIInstalled = Loader.isModLoaded(ModIds.NEI);
PneumaticRegistry.init(PneumaticCraftAPIHandler.getInstance());
UpgradeRenderHandlerList.init();
SensorHandler.init();
Config.init(event.getSuggestedConfigurationFile());
ThirdPartyManager.instance().index();
NetworkRegistry.INSTANCE.registerGuiHandler(instance, proxy);
tabPneumaticCraft = new CreativeTabPneumaticCraft("tabPneumaticCraft");
Fluids.initFluids();
Blockss.init();
Itemss.init();
HackableHandler.addDefaultEntries();
ModuleRegistrator.init();
WidgetRegistrator.init();
ThirdPartyManager.instance().preInit();
TileEntityRegistrator.init();
EntityRegistrator.init();
SemiBlockInitializer.init();
CraftingRegistrator.init();
VillagerHandler.instance().init();
GameRegistry.registerWorldGenerator(new WorldGeneratorPneumaticCraft(), 0);
AchievementHandler.init();
HeatBehaviourManager.getInstance().init();
proxy.registerRenders();
proxy.registerHandlers();
tickHandler = new TickHandlerPneumaticCraft();
FMLCommonHandler.instance().bus().register(tickHandler);
MinecraftForge.EVENT_BUS.register(new EventHandlerPneumaticCraft());
MinecraftForge.EVENT_BUS.register(new EventHandlerUniversalSensor());
MinecraftForge.EVENT_BUS.register(new DroneSpecialVariableHandler());
FMLCommonHandler.instance().bus().register(new CraftingHandler());
FMLCommonHandler.instance().bus().register(new Config());
}
use of pneumaticCraft.common.EventHandlerPneumaticCraft in project PneumaticCraft by MineMaarten.
the class DroneEntityAIPickupItems method continueExecuting.
/**
* Returns whether an in-progress EntityAIBase should continue executing
*/
@Override
public boolean continueExecuting() {
if (curPickingUpEntity.isDead)
return false;
if (Vec3.createVectorHelper(curPickingUpEntity.posX, curPickingUpEntity.posY, curPickingUpEntity.posZ).distanceTo(drone.getPosition()) < 1.5) {
ItemStack stack = curPickingUpEntity.getEntityItem();
if (itemPickupWidget.isItemValidForFilters(stack)) {
//not posting the event globally, as I don't have a way of handling a canceled event.
new EventHandlerPneumaticCraft().onPlayerPickup(new EntityItemPickupEvent(drone.getFakePlayer(), curPickingUpEntity));
int stackSize = stack.stackSize;
//side doesn't matter, drones aren't ISided.
ItemStack remainder = PneumaticCraftUtils.exportStackToInventory(drone.getInventory(), stack, ForgeDirection.UP);
if (remainder == null) {
drone.onItemPickupEvent(curPickingUpEntity, stackSize);
curPickingUpEntity.setDead();
}
}
return false;
}
return !drone.getPathNavigator().hasNoPath();
}
Aggregations