mirror of
https://github.com/GTNewHorizons/ForestryMC.git
synced 2026-11-14 01:04:12 +00:00
89 lines
3.6 KiB
Java
Executable File
89 lines
3.6 KiB
Java
Executable File
/*******************************************************************************
|
|
* Copyright (c) 2011-2014 SirSengir.
|
|
* All rights reserved. This program and the accompanying materials
|
|
* are made available under the terms of the GNU Lesser Public License v3
|
|
* which accompanies this distribution, and is available at
|
|
* http://www.gnu.org/licenses/lgpl-3.0.txt
|
|
*
|
|
* Various Contributors including, but not limited to:
|
|
* SirSengir (original work), CovertJaguar, Player, Binnie, MysteriousAges
|
|
******************************************************************************/
|
|
package forestry.plugins;
|
|
|
|
import java.lang.reflect.Field;
|
|
|
|
import net.minecraft.block.Block;
|
|
import net.minecraft.item.ItemStack;
|
|
|
|
import net.minecraftforge.common.BiomeDictionary;
|
|
|
|
import forestry.api.genetics.AlleleManager;
|
|
import forestry.api.genetics.IMutation;
|
|
import forestry.apiculture.genetics.AlleleBeeSpecies;
|
|
import forestry.apiculture.genetics.BeeTemplates;
|
|
import forestry.apiculture.genetics.IJubilanceProvider;
|
|
import forestry.apiculture.genetics.JubilanceReqRes;
|
|
import forestry.apiculture.genetics.MutationEMC;
|
|
import forestry.core.config.Defaults;
|
|
import forestry.core.genetics.Allele;
|
|
import forestry.core.proxy.Proxies;
|
|
|
|
@Plugin(pluginID = "EqEx2", name = "Equivalent Exchange 2", author = "SirSengir", url = Defaults.URL, unlocalizedDescription = "for.plugin.ee2.description")
|
|
public class PluginEE extends ForestryPlugin {
|
|
|
|
public IMutation darkenedA;
|
|
public IMutation reddenedA;
|
|
public IMutation omegaA;
|
|
|
|
public ItemStack eeBlock1;
|
|
public ItemStack eeBlock2;
|
|
|
|
public Class<?> eeRelay2Class;
|
|
public Class<?> eeRelay3Class;
|
|
public Field eeRelay2EMCField;
|
|
public Field eeRelay3EMCField;
|
|
|
|
@Override
|
|
public boolean isAvailable() {
|
|
return Proxies.common.isModLoaded("mod_EE");
|
|
}
|
|
|
|
@Override
|
|
public String getFailMessage() {
|
|
return "Equivalent Exchange not found";
|
|
}
|
|
|
|
@Override
|
|
public void postInit() {
|
|
|
|
try {
|
|
|
|
eeBlock1 = new ItemStack((Block) Class.forName("ee.EEBlock").getField("eeStone").get(null), 1, 8);
|
|
eeBlock2 = new ItemStack((Block) Class.forName("ee.EEBlock").getField("eeStone").get(null), 1, 9);
|
|
eeRelay2Class = Class.forName("ee.TileRelay2");
|
|
eeRelay2EMCField = eeRelay2Class.getField("scaledEnergy");
|
|
eeRelay3Class = Class.forName("ee.TileRelay3");
|
|
eeRelay3EMCField = eeRelay3Class.getField("scaledEnergy");
|
|
|
|
} catch (Exception ex) {
|
|
Proxies.log.fine("Necessary block/classes from EE were not found");
|
|
return;
|
|
}
|
|
|
|
IJubilanceProvider jubilanceProviderDarkened = new JubilanceReqRes(eeBlock1);
|
|
IJubilanceProvider jubilanceProviderReddened = new JubilanceReqRes(eeBlock2);
|
|
|
|
((AlleleBeeSpecies) AlleleManager.alleleRegistry.getAllele("forestry.speciesDarkened")).jubilanceProvider = jubilanceProviderDarkened;
|
|
((AlleleBeeSpecies) AlleleManager.alleleRegistry.getAllele("forestry.speciesReddened")).jubilanceProvider = jubilanceProviderReddened;
|
|
((AlleleBeeSpecies) AlleleManager.alleleRegistry.getAllele("forestry.speciesOmega")).jubilanceProvider = jubilanceProviderReddened;
|
|
|
|
darkenedA = new MutationEMC(Allele.speciesModest, Allele.speciesWintry, BeeTemplates.getDarkenedTemplate(), 100, eeBlock1, eeRelay2Class,
|
|
eeRelay2EMCField, 139264);
|
|
reddenedA = new MutationEMC(Allele.speciesDarkened, Allele.speciesTropical, BeeTemplates.getReddenedTemplate(), 100, eeBlock2, eeRelay3Class,
|
|
eeRelay3EMCField, 466944);
|
|
omegaA = new MutationEMC(Allele.speciesDarkened, Allele.speciesReddened, BeeTemplates.getOmegaTemplate(), 100, eeBlock2, eeRelay3Class,
|
|
eeRelay3EMCField, 933888).restrictBiomeType(BiomeDictionary.Type.NETHER).restrictBiomeType(BiomeDictionary.Type.SANDY);
|
|
|
|
}
|
|
}
|