Skip to content

Commit

Permalink
Clean Up ModuleManager and remove unused parameter
Browse files Browse the repository at this point in the history
  • Loading branch information
Nedelosk committed Aug 9, 2017
1 parent a502020 commit cd82361
Show file tree
Hide file tree
Showing 18 changed files with 162 additions and 185 deletions.
2 changes: 2 additions & 0 deletions src/main/java/binnie/Constants.java
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@

public final class Constants {

public static final String FORESTRY_CONFIG_FOLDER = "forestry/";

public static final String CORE_MOD_ID = "binniecore";
public static final String BOTANY_MOD_ID = "botany";
public static final String EXTRA_TREES_MOD_ID = "extratrees";
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/binnie/botany/blocks/BlockSoil.java
Original file line number Diff line number Diff line change
Expand Up @@ -299,7 +299,7 @@ public void onNeighborChange(IBlockAccess world, BlockPos pos, BlockPos neighbor
@Override
public boolean canSustainPlant(IBlockState state, IBlockAccess world, BlockPos pos, EnumFacing direction, IPlantable plantable) {
IBlockState plant = plantable.getPlant(world, pos.up());
if(ModuleManager.isEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS)) {
if(ModuleManager.isModuleEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS)) {
if (plant.getBlock() == ModuleFlowers.flower) {
return true;
}
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/binnie/botany/items/ItemTrowel.java
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ public EnumActionResult onItemUse(EntityPlayer player, World worldIn, BlockPos p
}

Block block = worldIn.getBlockState(pos).getBlock();
if (facing == EnumFacing.DOWN || (!worldIn.isAirBlock(pos.up()) && ModuleManager.isEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS) && worldIn.getBlockState(pos.up()).getBlock() != ModuleFlowers.flower) || (block != Blocks.GRASS && block != Blocks.DIRT && block != Blocks.GRASS_PATH)) {
if (facing == EnumFacing.DOWN || (!worldIn.isAirBlock(pos.up()) && ModuleManager.isModuleEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS) && worldIn.getBlockState(pos.up()).getBlock() != ModuleFlowers.flower) || (block != Blocks.GRASS && block != Blocks.DIRT && block != Blocks.GRASS_PATH)) {
return EnumActionResult.PASS;
}

Expand Down
2 changes: 1 addition & 1 deletion src/main/java/binnie/botany/modules/ModuleCeramic.java
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public void postInit() {
RecipeUtil recipeUtil = new RecipeUtil(Constants.BOTANY_MOD_ID);
ForgeRegistries.RECIPES.register(new CeramicTileRecipe());

if(ModuleManager.isEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.GARDENING)){
if(ModuleManager.isModuleEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.GARDENING)){
recipeUtil.addShapelessRecipe("mortar_old", CeramicItems.MORTAR.get(1), BotanyItems.MORTAR.get(1));
}

Expand Down
2 changes: 1 addition & 1 deletion src/main/java/binnie/core/genetics/ManagerGenetics.java
Original file line number Diff line number Diff line change
Expand Up @@ -69,7 +69,7 @@ public void preInit() {
if (BinnieCore.isLepidopteryActive()) {
this.mothBreedingSystem = new MothBreedingSystem();
}
if (ModuleManager.isEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS)) {
if (ModuleManager.isModuleEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS)) {
this.flowerBreedingSystem = new FlowerBreedingSystem();
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@

import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.fml.common.Optional;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;

import binnie.Constants;
import binnie.extratrees.integration.crafttweaker.handlers.BreweryRecipeHandler;
Expand All @@ -23,7 +22,7 @@ public class CraftTweakerModule extends Module {
public static final String MOD_ID = "crafttweaker";

@Override
public void init(FMLInitializationEvent event) {
public void init() {
initCT();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ public class ExtraTreesJeiPlugin implements IModPlugin {

@Override
public void registerItemSubtypes(ISubtypeRegistry subtypeRegistry) {
if(ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.WOOD)){
if(ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.WOOD)){
subtypeRegistry.registerSubtypeInterpreter(Item.getItemFromBlock(ModuleBlocks.blockMultiFence), (ItemStack itemStack) -> {
FenceDescription desc = WoodManager.getFenceDescription(itemStack);
if (desc != null) {
Expand All @@ -52,7 +52,7 @@ public void registerItemSubtypes(ISubtypeRegistry subtypeRegistry) {
return Integer.toString(itemStack.getItemDamage());
});
}
if(ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.ALCOHOL)) {
if(ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.ALCOHOL)) {
subtypeRegistry.registerSubtypeInterpreter(ModuleAlcohol.drink, (ItemStack itemStack) -> {
String glassware = ModuleAlcohol.drink.getGlassware(itemStack).getName();
FluidStack fluidStack = FluidUtil.getFluidContained(itemStack);
Expand All @@ -70,7 +70,7 @@ public void registerCategories(IRecipeCategoryRegistration registry) {
ExtraTreesJeiPlugin.guiHelper = jeiHelpers.getGuiHelper();
ExtraTreesJeiPlugin.drawables = Drawables.getDrawables(guiHelper);

if(ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.MACHINES)) {
if(ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.MACHINES)) {
registry.addRecipeCategories(
new LumbermillRecipeCategory(),
new FruitPressRecipeCategory(),
Expand All @@ -82,7 +82,7 @@ public void registerCategories(IRecipeCategoryRegistration registry) {

@Override
public void register(IModRegistry registry) {
if(ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.MACHINES)) {
if(ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.MACHINES)) {
registry.addRecipeCatalyst(ExtraTreeMachine.Lumbermill.get(1), RecipeUids.LUMBERMILL);
registry.addRecipeCatalyst(ExtraTreeMachine.Press.get(1), RecipeUids.FRUIT_PRESS);
registry.addRecipeCatalyst(ExtraTreeMachine.BREWERY.get(1), RecipeUids.BREWING);
Expand All @@ -94,7 +94,7 @@ public void register(IModRegistry registry) {
registry.addRecipes(DistilleryRecipeMaker.create(), RecipeUids.DISTILLING);
}

if(ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.WOOD)) {
if(ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.WOOD)) {
registry.addRecipeRegistryPlugin(new MultiFenceRecipeRegistryPlugin());
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -49,10 +49,10 @@ public Class<? extends MachinePackage> getPackageClass() {
@Override
public boolean isActive() {
if (this == ExtraTreeMachine.Tileworker) {
return ModuleManager.isEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.CERAMIC);
return ModuleManager.isModuleEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.CERAMIC);
}
if(this == Glassworker || this == Woodworker || this == Panelworker){
return ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.CARPENTRY);
return ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.CARPENTRY);
}
return this != ExtraTreeMachine.Nursery;
}
Expand Down
6 changes: 3 additions & 3 deletions src/main/java/binnie/extratrees/machines/ModuleMachine.java
Original file line number Diff line number Diff line change
@@ -1,17 +1,17 @@
package binnie.extratrees.machines;

import binnie.Constants;
import binnie.core.util.RecipeUtil;
import net.minecraft.block.Block;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;

import forestry.api.core.Tabs;

import binnie.Constants;
import binnie.core.BinnieCore;
import binnie.core.Mods;
import binnie.core.machines.MachineGroup;
import binnie.core.machines.inventory.ValidatorSprite;
import binnie.core.util.RecipeUtil;
import binnie.extratrees.ExtraTrees;
import binnie.extratrees.api.recipes.ExtraTreesRecipeManager;
import binnie.extratrees.item.ExtraTreeItems;
Expand Down Expand Up @@ -66,7 +66,7 @@ public void postInit() {
recipeUtil.addRecipe("press", ExtraTreeMachine.Press.get(1), "iGi", "tSt", "tPt", 'i', "ingotIron", 'G', Blocks.GLASS, 't', "ingotTin", 'S', Mods.Forestry.stack("sturdy_machine"), 'P', "gearBronze");
recipeUtil.addRecipe("brewery", ExtraTreeMachine.BREWERY.get(1), "bGb", "iSi", "bPb", 'i', "ingotIron", 'G', Blocks.GLASS, 'b', "gearBronze", 'S', Mods.Forestry.stack("sturdy_machine"), 'P', "gearBronze");
recipeUtil.addRecipe("distillery", ExtraTreeMachine.Distillery.get(1), "rGr", "iSi", "rPr", 'i', "ingotIron", 'G', Blocks.GLASS, 'r', "dustRedstone", 'S', Mods.Forestry.stack("sturdy_machine"), 'P', "gearBronze");
if(ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.CARPENTRY)){
if(ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.CARPENTRY)){
recipeUtil.addRecipe("woodworker", ExtraTreeMachine.Woodworker.get(1), "wGw", "GsG", "ggg", 'G', Blocks.GLASS, 'g', ExtraTreeItems.PROVEN_GEAR.get(1), 'w', Blocks.PLANKS, 's', Mods.Forestry.stack("impregnated_casing"));
recipeUtil.addRecipe("panelworker", ExtraTreeMachine.Panelworker.get(1), "wGw", "GsG", "ggg", 'G', Blocks.GLASS, 'g', ExtraTreeItems.PROVEN_GEAR.get(1), 'w', Blocks.WOODEN_SLAB, 's', Mods.Forestry.stack("impregnated_casing"));
recipeUtil.addRecipe("glassworker", ExtraTreeMachine.Glassworker.get(1), "wGw", "GsG", "ggg", 'G', Blocks.GLASS, 'g', ExtraTreeItems.PROVEN_GEAR.get(1), 'w', Blocks.GLASS, 's', Mods.Forestry.stack("impregnated_casing"));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;

import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;

import forestry.api.recipes.ICarpenterManager;
import forestry.api.recipes.RecipeManagers;

Expand All @@ -31,7 +29,7 @@ public void registerItemsAndBlocks() {
}

@Override
public void postInit(FMLPostInitializationEvent event) {
public void postInit() {
ICarpenterManager carpenterManager = RecipeManagers.carpenterManager;

carpenterManager.addRecipe(100, Binnie.LIQUID.getFluidStack(ManagerLiquid.WATER, 2000), ItemStack.EMPTY, new ItemStack(itemDictionaryLepi), "X#X", "YEY", "RDR", '#', Blocks.GLASS_PANE, 'X', Items.GOLD_INGOT, 'Y', "ingotBronze", 'R', Items.REDSTONE, 'D', Items.DIAMOND, 'E', Items.EMERALD);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,6 @@
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;

import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;

import forestry.api.recipes.ICarpenterManager;
import forestry.api.recipes.RecipeManagers;

Expand All @@ -29,7 +27,7 @@ public void registerItemsAndBlocks() {
}

@Override
public void postInit(FMLPostInitializationEvent event) {
public void postInit() {
ICarpenterManager carpenterManager = RecipeManagers.carpenterManager;
carpenterManager.addRecipe(100, Binnie.LIQUID.getFluidStack(ManagerLiquid.WATER, 2000), ItemStack.EMPTY, new ItemStack(ModuleTreeDatabase.itemDictionary), "X#X", "YEY", "RDR", '#', Blocks.GLASS_PANE, 'X', Items.GOLD_INGOT, 'Y', "ingotCopper", 'R', Items.REDSTONE, 'D', Items.DIAMOND, 'E', Items.EMERALD);
}
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/binnie/genetics/item/ModuleItems.java
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package binnie.genetics.item;

import binnie.core.util.RecipeUtil;
import com.google.common.base.Preconditions;

import javax.annotation.Nullable;
Expand All @@ -26,6 +25,7 @@
import binnie.core.liquid.FluidContainerType;
import binnie.core.liquid.ManagerLiquid;
import binnie.core.resource.BinnieSprite;
import binnie.core.util.RecipeUtil;
import binnie.extratrees.modules.ExtraTreesModuleUIDs;
import binnie.extratrees.modules.ModuleMothDatabase;
import binnie.extratrees.modules.ModuleTreeDatabase;
Expand Down Expand Up @@ -182,7 +182,7 @@ Items.GLOWSTONE_DUST, new ItemStack(Items.DYE, 1, 5)

// TODO: make this crazy list of recipes into one custom recipe
Item[] databases = {ExtraBeesIntegration.dictionary, ModuleTreeDatabase.itemDictionary, ModuleMothDatabase.itemDictionaryLepi, ModuleDatabase.database};
if (ModuleManager.isEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.DATABASE) && BinnieCore.isExtraBeesActive() && ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.TREE_DATABASE) && ModuleManager.isEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.MOTH_DATABASE)) {
if (ModuleManager.isModuleEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.DATABASE) && BinnieCore.isExtraBeesActive() && ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.TREE_DATABASE) && ModuleManager.isModuleEnabled(Constants.EXTRA_TREES_MOD_ID, ExtraTreesModuleUIDs.MOTH_DATABASE)) {
int recipeNum = 0;
for (Item databaseA : databases) {
for (Item databaseB : databases) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ public static void setupRecipes() {
addTolerance(Binnie.GENETICS.getButterflyRoot().getUID(), EnumButterflyChromosome.HUMIDITY_TOLERANCE, ToleranceType.Humidity);
addTolerance(Binnie.GENETICS.getButterflyRoot().getUID(), EnumButterflyChromosome.TEMPERATURE_TOLERANCE, ToleranceType.Temperature);
}
if (ModuleManager.isEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS)) {
if (ModuleManager.isModuleEnabled(Constants.BOTANY_MOD_ID, BotanyModuleUIDs.FLOWERS)) {
addTolerance(Binnie.GENETICS.getFlowerRoot().getUID(), EnumFlowerChromosome.HUMIDITY_TOLERANCE, ToleranceType.Humidity);
addTolerance(Binnie.GENETICS.getFlowerRoot().getUID(), EnumFlowerChromosome.TEMPERATURE_TOLERANCE, ToleranceType.Temperature);
addTolerance(Binnie.GENETICS.getFlowerRoot().getUID(), EnumFlowerChromosome.PH_TOLERANCE, ToleranceType.PH);
Expand Down
67 changes: 7 additions & 60 deletions src/main/java/binnie/modules/BlankModuleContainer.java
Original file line number Diff line number Diff line change
@@ -1,87 +1,34 @@
package binnie.modules;

import java.io.File;
import java.util.LinkedHashSet;
import java.util.Set;

import net.minecraftforge.fml.common.Loader;
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;

import binnie.core.AbstractMod;

public abstract class BlankModuleContainer extends AbstractMod implements IModuleContainer {
protected Set<Module> loadedModules;
protected Set<Module> unloadedModules;
protected Set<String> enabledModules;
protected Set<String> disabledModules;
protected File configFolder;
public abstract class BlankModuleContainer extends AbstractMod {
protected final ModuleContainer container;

public BlankModuleContainer() {
super();
this.loadedModules = new LinkedHashSet<>();
this.unloadedModules = new LinkedHashSet<>();
this.enabledModules = new LinkedHashSet<>();
this.disabledModules = new LinkedHashSet<>();
ModuleManager.register(this);
configFolder = new File(Loader.instance().getConfigDir(), "forestry/" + getModID());
this.container = new ModuleContainer(getModID(), () -> isAvailable());
ModuleManager.register(container);
}

@Override
protected void preInitModules(FMLPreInitializationEvent event) {
ModuleManager.runRegisterItemsAndBlocks(this);
ModuleManager.runPreInit(event, this);
container.runPreInit(event);
}

@Override
public void init(FMLInitializationEvent event) {
super.init(event);
ModuleManager.runInit(event, this);
container.runInit(event);
}

@Override
public void postInit(FMLPostInitializationEvent event) {
super.postInit(event);
ModuleManager.runPostInit(event, this);
}

public final boolean isModuleEnabled(String moduleUID){
return enabledModules.contains(moduleUID);
}

@Override
public String getID() {
return getModID();
}

@Override
public File getConfigFolder() {
return configFolder;
}

@Override
public Set<String> getEnabledModules() {
return enabledModules;
}

@Override
public void enableModule(String uid) {
enabledModules.add(uid);
}

@Override
public void disableModule(String uid) {
disabledModules.add(uid);
}

@Override
public Set<Module> getLoadedModules() {
return loadedModules;
}

@Override
public Set<Module> getUnloadedModules() {
return unloadedModules;
container.runPostInit(event);
}
}
8 changes: 7 additions & 1 deletion src/main/java/binnie/modules/IModuleContainer.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@
import java.io.File;
import java.util.Set;

import net.minecraftforge.common.config.Configuration;

public interface IModuleContainer {

/**
Expand All @@ -19,11 +21,15 @@ public interface IModuleContainer {

void enableModule(String uid);

void disableModule(String uid);
boolean isModuleEnabled(String moduleID);

Set<Module> getLoadedModules();

Set<Module> getUnloadedModules();

boolean isAvailable();

Configuration getModulesConfig();

Configuration getMainConfig();
}
23 changes: 1 addition & 22 deletions src/main/java/binnie/modules/Module.java
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,7 @@
import java.util.Collections;
import java.util.Set;

import net.minecraftforge.fml.common.event.FMLInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;

import binnie.core.IInitializable;

public abstract class Module implements IInitializable{
public abstract class Module{

public void registerItemsAndBlocks(){
}
Expand All @@ -36,27 +30,12 @@ public void setupAPI(){
public void disabledSetupAPI(){
}

public void preInit(FMLPreInitializationEvent event){
preInit();
}

public void init(FMLInitializationEvent event){
init();
}

public void postInit(FMLPostInitializationEvent event){
postInit();
}

@Override
public void preInit() {
}

@Override
public void init() {
}

@Override
public void postInit() {
}
}
Loading

0 comments on commit cd82361

Please sign in to comment.