Fix thaumic restorer suction + better automation (#102)

This commit is contained in:
vladislemon authored and GitHub committed 2026-07-15 15:15:43 +00:00
1 parent d8b69c4311
commit 853ad538df
21 files changed
+101 -73

No files matched your search

@@ -23,7 +23,6 @@ import net.minecraftforge.common.MinecraftForge;
import cpw.mods.fml.client.registry.ClientRegistry;
import cpw.mods.fml.client.registry.RenderingRegistry;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
@@ -60,6 +59,7 @@ import thaumic.tinkerer.common.block.tile.TileRepairer;
import thaumic.tinkerer.common.block.tile.kami.TileWarpGate;
import thaumic.tinkerer.common.block.tile.tablet.TileAnimationTablet;
import thaumic.tinkerer.common.compat.FumeTool;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.core.handler.ConfigHandler;
import thaumic.tinkerer.common.core.helper.EnumMobAspect;
import thaumic.tinkerer.common.core.proxy.TTCommonProxy;
@@ -81,7 +81,7 @@ public final class TTClientProxy extends TTCommonProxy {
public void preInit(FMLPreInitializationEvent event) {
super.preInit(event);
FMLCommonHandler.instance().bus().register(this);
if (Loader.isModLoaded("ComputerCraft")) {
if (LoadedMods.computerCraftLoaded) {
MinecraftForge.EVENT_BUS.register(new FumeTool());
}
@@ -4,13 +4,13 @@ import codechicken.nei.api.IConfigureNEI;
import codechicken.nei.recipe.GuiCraftingRecipe;
import codechicken.nei.recipe.GuiUsageRecipe;
import codechicken.nei.recipe.TemplateRecipeHandler;
import cpw.mods.fml.common.Loader;
import thaumic.tinkerer.common.compat.LoadedMods;
public class NEIConfig implements IConfigureNEI {
@Override
public void loadConfig() {
if (!Loader.isModLoaded("aspectrecipeindex")) return;
if (!LoadedMods.aspectRecipeIndexLoaded) return;
AspectRecipeIndexIntegration.register();
}
@@ -17,7 +17,6 @@ import net.minecraftforge.common.DimensionManager;
import org.apache.logging.log4j.Logger;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Mod;
import cpw.mods.fml.common.Mod.EventHandler;
import cpw.mods.fml.common.Mod.Instance;
@@ -34,6 +33,7 @@ import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper;
import thaumcraft.common.CommonProxy;
import thaumcraft.common.Thaumcraft;
import thaumic.tinkerer.api.InterModCommsOperations;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.core.handler.ConfigHandler;
import thaumic.tinkerer.common.core.proxy.TTCommonProxy;
import thaumic.tinkerer.common.dim.WorldProviderBedrock;
@@ -51,10 +51,6 @@ public class ThaumicTinkerer {
@SidedProxy(clientSide = LibMisc.CLIENT_PROXY, serverSide = LibMisc.COMMON_PROXY)
public static TTCommonProxy proxy;
public static boolean isBootsActive = false;
public static boolean gtLoaded;
public static final String BOOTS = "thaumicboots";
public static CommonProxy tcProxy;
public static SimpleNetworkWrapper netHandler = NetworkRegistry.INSTANCE.newSimpleChannel(LibMisc.MOD_ID + "|B");
@@ -67,16 +63,12 @@ public class ThaumicTinkerer {
log = event.getModLog();
tcProxy = Thaumcraft.proxy;
proxy.preInit(event);
if (Loader.isModLoaded("Waila")) {
if (LoadedMods.wailaLoaded) {
FMLInterModComms.sendMessage(
"Waila",
"register",
"thaumic.tinkerer.common.compat.TTinkererProvider.callbackRegister");
}
if (Loader.isModLoaded(BOOTS)) {
isBootsActive = true;
}
gtLoaded = Loader.isModLoaded("gregtech");
}
@EventHandler
@@ -111,7 +103,7 @@ public class ThaumicTinkerer {
KamiResearchItem.Blacklist.addAll(Arrays.asList(values));
}
if (message.key.equalsIgnoreCase(InterModCommsOperations.ADD_CC_BLACKLIST)) {
if (Loader.isModLoaded("ComputerCraft")) blackListCCDevices(message.getStringValue());
if (LoadedMods.computerCraftLoaded) blackListCCDevices(message.getStringValue());
}
}
}
@@ -25,7 +25,6 @@ import net.minecraft.tileentity.TileEntity;
import net.minecraft.util.IIcon;
import net.minecraft.world.World;
import cpw.mods.fml.common.Loader;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.research.ResearchPage;
@@ -34,6 +33,7 @@ import thaumcraft.common.config.ConfigItems;
import thaumic.tinkerer.client.core.helper.IconHelper;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.block.tile.TileAspectAnalyzer;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.lib.LibBlockNames;
import thaumic.tinkerer.common.lib.LibGuiIDs;
import thaumic.tinkerer.common.lib.LibResearch;
@@ -141,7 +141,7 @@ public class BlockAspectAnalyzer extends BlockModContainer {
@Override
public boolean shouldRegister() {
return Loader.isModLoaded("ComputerCraft");
return LoadedMods.computerCraftLoaded;
}
@Override
@@ -8,7 +8,6 @@ import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
import cpw.mods.fml.common.Loader;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.research.ResearchPage;
@@ -16,6 +15,7 @@ import thaumcraft.common.config.ConfigBlocks;
import thaumcraft.common.config.ConfigItems;
import thaumic.tinkerer.common.block.tile.TileCamo;
import thaumic.tinkerer.common.block.tile.TileGolemConnector;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.lib.LibBlockNames;
import thaumic.tinkerer.common.lib.LibResearch;
import thaumic.tinkerer.common.registry.ThaumicTinkererArcaneRecipe;
@@ -53,7 +53,7 @@ public class BlockGolemConnector extends BlockCamo {
@Override
public boolean shouldRegister() {
return Loader.isModLoaded("ComputerCraft");
return LoadedMods.computerCraftLoaded;
}
@Override
@@ -29,7 +29,6 @@ import net.minecraft.util.MathHelper;
import net.minecraft.world.IBlockAccess;
import net.minecraft.world.World;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import thaumcraft.api.aspects.Aspect;
@@ -39,6 +38,7 @@ import thaumcraft.common.config.ConfigBlocks;
import thaumcraft.common.config.ConfigItems;
import thaumic.tinkerer.client.lib.LibRenderIDs;
import thaumic.tinkerer.common.block.tile.TileRepairer;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.compat.TinkersConstructCompat;
import thaumic.tinkerer.common.lib.LibBlockNames;
import thaumic.tinkerer.common.lib.LibResearch;
@@ -127,7 +127,7 @@ public class BlockRepairer extends BlockModContainer {
itemstack.stackSize -= k1;
int dmg;
if (Loader.isModLoaded("TConstruct")) {
if (LoadedMods.TConstructLoaded) {
if (TinkersConstructCompat.isTConstructTool(itemstack)) {
dmg = TinkersConstructCompat.getDamage(itemstack);
} else dmg = itemstack.getItemDamage();
@@ -8,9 +8,9 @@ import net.minecraftforge.common.util.ForgeDirection;
import appeng.api.AEApi;
import appeng.api.IAppEngApi;
import cpw.mods.fml.common.Loader;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.block.mobilizer.BlockMobilizer;
import thaumic.tinkerer.common.compat.LoadedMods;
public class TileEntityMobilizer extends TileEntity {
@@ -140,7 +140,7 @@ public class TileEntityMobilizer extends TileEntity {
}
}
// If AE is installed, use its handler
} else if (Loader.isModLoaded("appliedenergistics2")) {
} else if (LoadedMods.AE2Loaded) {
IAppEngApi api = AEApi.instance();
if (api.registries().movable().askToMove(passenger)) {
worldObj.setBlock(
@@ -26,7 +26,6 @@ import net.minecraftforge.common.util.Constants;
import net.minecraftforge.common.util.ForgeDirection;
import appeng.api.movable.IMovableTile;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Optional;
import thaumcraft.api.ThaumcraftApiHelper;
import thaumcraft.api.aspects.Aspect;
@@ -34,6 +33,7 @@ import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.aspects.IAspectContainer;
import thaumcraft.api.aspects.IEssentiaTransport;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.compat.TinkersConstructCompat;
import thaumic.tinkerer.common.core.handler.ConfigHandler;
import thaumic.tinkerer.common.lib.LibBlockNames;
@@ -73,7 +73,7 @@ public class TileRepairer extends TileEntity
boolean oldTookLastTick = tookLastTick;
tookLastTick = false;
if (Loader.isModLoaded("TConstruct") && ConfigHandler.repairTConTools) {
if (LoadedMods.TConstructLoaded && ConfigHandler.repairTConTools) {
if (inventorySlots[0] != null) {
if (TinkersConstructCompat.isTConstructTool(inventorySlots[0])) {
int dmg = TinkersConstructCompat.getDamage(inventorySlots[0]);
@@ -237,20 +237,15 @@ public class TileRepairer extends TileEntity
@Override
public boolean canInsertItem(int i, ItemStack itemstack, int j) {
if (Loader.isModLoaded("TConstruct") && ConfigHandler.repairTConTools) {
if (TinkersConstructCompat.isTConstructTool(itemstack)) {
return itemstack != null;
}
}
return itemstack != null && itemstack.getItem().isRepairable();
return isRepairable(itemstack);
}
@Override
public boolean canExtractItem(int i, ItemStack itemstack, int j) {
return true;
return !isRepairable(itemstack);
}
int drawEssentia() {
private int drawEssentia() {
ForgeDirection orientation = getOrientation();
TileEntity te = ThaumcraftApiHelper.getConnectableTile(worldObj, xCoord, yCoord, zCoord, orientation);
if (te != null) {
@@ -265,7 +260,7 @@ public class TileRepairer extends TileEntity
return 0;
}
ForgeDirection getOrientation() {
private ForgeDirection getOrientation() {
return ForgeDirection.getOrientation(getBlockMetadata());
}
@@ -273,9 +268,12 @@ public class TileRepairer extends TileEntity
public AspectList getAspects() {
ItemStack stack = inventorySlots[0];
if (stack == null) return null;
if (Loader.isModLoaded("TConstruct") && ConfigHandler.repairTConTools) {
if (TinkersConstructCompat.isTConstructTool(stack))
if (LoadedMods.TConstructLoaded && TinkersConstructCompat.isTConstructTool(stack)) {
if (ConfigHandler.repairTConTools) {
return new AspectList().add(Aspect.ENTROPY, TinkersConstructCompat.getDamage(stack));
} else {
return null;
}
}
return new AspectList().add(Aspect.ENTROPY, stack.getItemDamage());
}
@@ -369,7 +367,7 @@ public class TileRepairer extends TileEntity
@Override
public int getSuctionAmount(ForgeDirection arg0) {
return arg0 == getOrientation() ? 128 : 0;
return arg0 == getOrientation() && containsRepairableStack() ? 128 : 0;
}
@Override
@@ -386,4 +384,19 @@ public class TileRepairer extends TileEntity
@Override
@Optional.Method(modid = "appliedenergistics2")
public void doneMoving() {}
private boolean containsRepairableStack() {
return isRepairable(inventorySlots[0]);
}
private boolean isRepairable(ItemStack stack) {
if (stack == null) {
return false;
}
if (LoadedMods.TConstructLoaded && TinkersConstructCompat.isTConstructTool(stack)) {
return ConfigHandler.repairTConTools && TinkersConstructCompat.getDamage(stack) > 0;
}
return stack.getItem() != null && stack.getItem().isRepairable() && stack.getItemDamage() > 0;
}
}
@@ -55,6 +55,7 @@ import li.cil.oc.api.machine.Callback;
import li.cil.oc.api.machine.Context;
import li.cil.oc.api.network.SimpleComponent;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.lib.LibBlockNames;
import thaumic.tinkerer.common.registry.TTRegistry;
import thaumic.tinkerer.mixins.early.AccessorItemInWorldManager;
@@ -110,7 +111,7 @@ public class TileAnimationTablet extends TileEntity implements IInventory, IMova
if (worldObj.isRemote) {
prevSwingProgress = swingProgress;
prevTicksElapsed = ticksElapsed;
int iterations = ThaumicTinkerer.gtLoaded ? MTEWorldAccelerator.getAccelerationForTEUnsafe(this) + 1 : 1;
int iterations = LoadedMods.gtLoaded ? MTEWorldAccelerator.getAccelerationForTEUnsafe(this) + 1 : 1;
ticksElapsed += iterations;
ItemStack stack = heldItem;
if (stack != null) {
@@ -25,7 +25,6 @@ import net.minecraftforge.fluids.IFluidHandler;
import cofh.api.energy.IEnergyHandler;
import cofh.api.energy.IEnergyProvider;
import cofh.api.energy.IEnergyReceiver;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Optional;
import dan200.computercraft.api.lua.ILuaContext;
import dan200.computercraft.api.lua.LuaException;
@@ -41,6 +40,7 @@ import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.aspects.IAspectContainer;
import thaumcraft.api.aspects.IEssentiaTransport;
import thaumic.tinkerer.common.compat.IndustrialcraftUnloadHelper;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.lib.LibFeatures;
@Optional.InterfaceList({
@@ -70,7 +70,7 @@ public class TileTransvectorInterface extends TileTransvector
if (worldObj.getTotalWorldTime() % 100 == 0) {
worldObj.notifyBlockChange(xCoord, yCoord, zCoord, worldObj.getBlock(xCoord, yCoord, zCoord));
}
if (!addedToICEnergyNet && !worldObj.isRemote && Loader.isModLoaded("IC2")) {
if (!addedToICEnergyNet && !worldObj.isRemote && LoadedMods.ic2Loaded) {
IndustrialcraftUnloadHelper.addToIC2EnergyNet(this);
addedToICEnergyNet = true;
@@ -84,7 +84,7 @@ public class TileTransvectorInterface extends TileTransvector
@Override
public void invalidate() {
if (Loader.isModLoaded("IC2")) {
if (LoadedMods.ic2Loaded) {
IndustrialcraftUnloadHelper.removeFromIC2EnergyNet(this);
}
super.invalidate();
@@ -93,7 +93,7 @@ public class TileTransvectorInterface extends TileTransvector
@Override
public void onChunkUnload() {
if (Loader.isModLoaded("IC2")) {
if (LoadedMods.ic2Loaded) {
IndustrialcraftUnloadHelper.removeFromIC2EnergyNet(this);
}
}
@@ -4,13 +4,11 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.registry.GameRegistry;
import ic2.api.item.ElectricItem;
public class EMTCompat {
public static final boolean EMTLoaded = Loader.isModLoaded("EMT");
public static Item electricHoe;
public static void init() {
@@ -18,7 +16,8 @@ public class EMTCompat {
}
public static boolean validElectricHoe(ItemStack stack) {
return EMTLoaded && stack.getItem() == EMTCompat.electricHoe && ElectricItem.manager.canUse(stack, 250);
return LoadedMods.EMTLoaded && stack.getItem() == EMTCompat.electricHoe
&& ElectricItem.manager.canUse(stack, 250);
}
public static void useEnergy(ItemStack hoeOfGrowth, EntityPlayer player) {
@@ -0,0 +1,25 @@
package thaumic.tinkerer.common.compat;
import cpw.mods.fml.common.Loader;
public class LoadedMods {
public static final boolean AE2Loaded = Loader.isModLoaded("appliedenergistics2");
public static final boolean EMTLoaded = Loader.isModLoaded("EMT");
public static final boolean NEILoaded = Loader.isModLoaded("NotEnoughItems");
public static final boolean TConstructLoaded = Loader.isModLoaded("TConstruct");
public static final boolean aspectRecipeIndexLoaded = Loader.isModLoaded("aspectrecipeindex");
public static final boolean baublesExpandedLoaded = Loader.isModLoaded("Baubles|Expanded");
public static final boolean bloodMagicLoaded = Loader.isModLoaded("BloodMagic");
public static final boolean botaniaLoaded = Loader.isModLoaded("Botania");
public static final boolean computerCraftLoaded = Loader.isModLoaded("ComputerCraft");
public static final boolean enderIOLoaded = Loader.isModLoaded("EnderIO");
public static final boolean enderStorageLoaded = Loader.isModLoaded("EnderStorage");
public static final boolean forgeMultipartLoaded = Loader.isModLoaded("ForgeMultipart");
public static final boolean gtLoaded = Loader.isModLoaded("gregtech");
public static final boolean ic2Loaded = Loader.isModLoaded("IC2");
public static final boolean openComputersLoaded = Loader.isModLoaded("OpenComputers");
public static final boolean thaumicBootsLoaded = Loader.isModLoaded("thaumicboots");
public static final boolean wailaLoaded = Loader.isModLoaded("Waila");
}
@@ -1,7 +1,5 @@
package thaumic.tinkerer.common.core.helper;
import static thaumic.tinkerer.common.compat.EMTCompat.EMTLoaded;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@@ -14,6 +12,7 @@ import thaumcraft.common.Thaumcraft;
import thaumcraft.common.config.ConfigItems;
import thaumic.tinkerer.common.block.BlockInfusedGrain;
import thaumic.tinkerer.common.compat.EMTCompat;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.core.handler.ConfigHandler;
/**
@@ -67,7 +66,7 @@ public class BonemealEventHandler {
}
private static void damageHoe(ItemStack hoeOfGrowth, EntityPlayer player) {
if (EMTLoaded && hoeOfGrowth.getItem() == EMTCompat.electricHoe) {
if (LoadedMods.EMTLoaded && hoeOfGrowth.getItem() == EMTCompat.electricHoe) {
EMTCompat.useEnergy(hoeOfGrowth, player);
} else {
hoeOfGrowth.damageItem(25, player);
@@ -29,7 +29,6 @@ import codechicken.nei.event.NEIRegisterHandlerInfosEvent;
import codechicken.nei.recipe.HandlerInfo;
import codechicken.nei.recipe.RecipeCatalysts;
import cpw.mods.fml.common.FMLCommonHandler;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Optional;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
@@ -66,6 +65,7 @@ import thaumic.tinkerer.common.block.tile.transvector.TileTransvectorInterface;
import thaumic.tinkerer.common.compat.EMTCompat;
import thaumic.tinkerer.common.compat.EnderIO;
import thaumic.tinkerer.common.compat.FumeTool;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.core.commands.KamiUnlockedCommand;
import thaumic.tinkerer.common.core.commands.MaxResearchCommand;
import thaumic.tinkerer.common.core.commands.SetTendencyCommand;
@@ -130,7 +130,7 @@ public class TTCommonProxy {
ModCreativeTab.INSTANCE.addWand();
if (Loader.isModLoaded("ComputerCraft")) {
if (LoadedMods.computerCraftLoaded) {
initCCPeripherals();
}
@@ -159,14 +159,14 @@ public class TTCommonProxy {
MinecraftForge.EVENT_BUS.register(new SoulHeartHandler());
}
if (Loader.isModLoaded("OpenComputers")) {
if (LoadedMods.openComputersLoaded) {
initOpenCDrivers();
}
if (Loader.isModLoaded("EnderIO")) {
if (LoadedMods.enderIOLoaded) {
InitEnderIO();
}
if (Loader.isModLoaded("ForgeMultipart")) {
if (LoadedMods.forgeMultipartLoaded) {
ThaumicTinkerer.log.trace("Attempting to load Multiparts");
try {
Class<?> clazz = Class.forName("thaumic.tinkerer.common.multipart.MultipartHandler");
@@ -178,7 +178,7 @@ public class TTCommonProxy {
ThaumicTinkerer.log.info("Skipping TC Multipart integration");
}
if (Loader.isModLoaded("NotEnoughItems") && Loader.isModLoaded("aspectrecipeindex")) {
if (LoadedMods.NEILoaded && LoadedMods.aspectRecipeIndexLoaded) {
MinecraftForge.EVENT_BUS.register(new NEIEventHandler());
}
@@ -21,7 +21,6 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack;
import net.minecraft.util.AxisAlignedBB;
import cpw.mods.fml.common.Loader;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.research.ResearchPage;
@@ -34,6 +33,7 @@ import thaumcraft.common.items.wands.ItemWandCasting;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.compat.BloodMagic;
import thaumic.tinkerer.common.compat.BotaniaFunctions;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.core.helper.ProjectileHelper;
import thaumic.tinkerer.common.lib.LibItemNames;
import thaumic.tinkerer.common.lib.LibResearch;
@@ -52,7 +52,7 @@ public class ItemFocusDeflect extends ItemModFocus {
public static void setupBlackList() {
DeflectBlacklist.add(EntityExpBottle.class);
if (Loader.isModLoaded("BloodMagic")) {
if (LoadedMods.bloodMagicLoaded) {
BloodMagic.setupClass();
}
}
@@ -96,7 +96,7 @@ public class ItemFocusDeflect extends ItemModFocus {
}
private static void checkBotaniaMagicMissile(Entity e) {
if (!Loader.isModLoaded("Botania")) return;
if (!LoadedMods.botaniaLoaded) return;
if (e instanceof EntityMagicMissile) {
e.setDead();
}
@@ -114,7 +114,7 @@ public class ItemFocusDeflect extends ItemModFocus {
private static boolean CheckBlackList(Entity entity) {
Class<? extends Entity> aClass = entity.getClass();
if (DeflectBlacklist.contains(aClass)) return true;
if (Loader.isModLoaded("Botania") && entity instanceof IManaBurst) {
if (LoadedMods.botaniaLoaded && entity instanceof IManaBurst) {
return BotaniaFunctions.isEntityHarmless(entity);
}
for (Class<?> testClass : DeflectBlacklist) {
@@ -19,7 +19,6 @@ import net.minecraft.item.ItemStack;
import net.minecraft.util.MovingObjectPosition;
import net.minecraft.world.World;
import cpw.mods.fml.common.Loader;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.research.ResearchPage;
@@ -29,6 +28,7 @@ import thaumcraft.common.config.ConfigBlocks;
import thaumcraft.common.config.ConfigItems;
import thaumcraft.common.items.wands.ItemWandCasting;
import thaumic.tinkerer.common.compat.EnderStorageFunctions;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.lib.LibItemNames;
import thaumic.tinkerer.common.lib.LibResearch;
import thaumic.tinkerer.common.registry.ThaumicTinkererArcaneRecipe;
@@ -44,14 +44,14 @@ public class ItemFocusEnderChest extends ItemModFocus {
@Override
public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean par4) {
super.addInformation(stack, player, list, par4);
if (Loader.isModLoaded("EnderStorage")) {
if (LoadedMods.enderStorageLoaded) {
EnderStorageFunctions.addFocusInformation(stack, player, list, par4);
}
}
@Override
public ItemStack onFocusRightClick(ItemStack stack, World world, EntityPlayer p, MovingObjectPosition pos) {
if (Loader.isModLoaded("EnderStorage")) {
if (LoadedMods.enderStorageLoaded) {
return EnderStorageFunctions.onFocusRightClick(stack, world, p, pos);
}
ItemWandCasting wand = (ItemWandCasting) stack.getItem();
@@ -76,7 +76,7 @@ public class ItemFocusEnderChest extends ItemModFocus {
@Override
public String getSortingHelper(ItemStack itemstack) {
if (Loader.isModLoaded("EnderStorage")) {
if (LoadedMods.enderStorageLoaded) {
return EnderStorageFunctions.getSortingHelper(itemstack);
}
return "TTEC" + super.getSortingHelper(itemstack);
@@ -122,7 +122,7 @@ public class ItemFocusEnderChest extends ItemModFocus {
-2,
2,
new ItemStack(this)).setWarp(1).setParents(LibResearch.KEY_FOCUS_DEFLECT).setConcealed();
if (Loader.isModLoaded("EnderStorage")) {
if (LoadedMods.enderStorageLoaded) {
((TTResearchItem) research).setPages(
new ResearchPage("ES"),
ResearchHelper.arcaneRecipePage(LibResearch.KEY_FOCUS_ENDER_CHEST));
@@ -29,7 +29,6 @@ import baubles.api.BaubleType;
import baubles.api.IBauble;
import baubles.api.expanded.BaubleItemHelper;
import baubles.api.expanded.IBaubleExpanded;
import cpw.mods.fml.common.Loader;
import cpw.mods.fml.common.Optional;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
@@ -41,6 +40,7 @@ import thaumcraft.common.config.ConfigItems;
import thaumcraft.common.items.wands.ItemFocusPouch;
import thaumic.tinkerer.client.core.helper.IconHelper;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.core.handler.ConfigHandler;
import thaumic.tinkerer.common.core.handler.ModCreativeTab;
import thaumic.tinkerer.common.core.proxy.TTCommonProxy;
@@ -57,8 +57,6 @@ import thaumic.tinkerer.common.research.ResearchHelper;
@Optional.Interface(iface = "baubles.api.expanded.IBaubleExpanded", modid = "Baubles|Expanded")
public class ItemIchorPouch extends ItemFocusPouch implements IBauble, IBaubleExpanded, ITTinkererItem {
private static final boolean baublesExpandedLoaded = Loader.isModLoaded("Baubles|Expanded");
public ItemIchorPouch() {
super();
setCreativeTab(ModCreativeTab.INSTANCE);
@@ -111,7 +109,7 @@ public class ItemIchorPouch extends ItemFocusPouch implements IBauble, IBaubleEx
@Override
@SideOnly(Side.CLIENT)
public void addInformation(ItemStack is, EntityPlayer player, List textLines, boolean showAdvancedInfo) {
if (baublesExpandedLoaded) {
if (LoadedMods.baublesExpandedLoaded) {
BaubleItemHelper.addSlotInformation(textLines, getBaubleTypes(null));
}
}
@@ -38,6 +38,7 @@ import thaumcraft.common.Thaumcraft;
import thaumcraft.common.config.ConfigBlocks;
import thaumcraft.common.config.ConfigItems;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.core.handler.ConfigHandler;
import thaumic.tinkerer.common.item.kami.ItemKamiResource;
import thaumic.tinkerer.common.lib.LibItemNames;
@@ -139,7 +140,7 @@ public class ItemGemBoots extends ItemIchorclothArmorAdv implements IBoots {
player.motionZ *= 0.5;
}
boolean omniMode = false;
if (ThaumicTinkerer.isBootsActive) {
if (LoadedMods.thaumicBootsLoaded) {
omniMode = isOmniEnabled(itemStack);
if ((player.moveForward == 0F && player.moveStrafing == 0F && omniMode)
|| (player.moveForward <= 0F && !omniMode)) {
@@ -164,7 +165,7 @@ public class ItemGemBoots extends ItemIchorclothArmorAdv implements IBoots {
bonus /= 2.0F;
}
bonus *= speedMod;
if (ThaumicTinkerer.isBootsActive) {
if (LoadedMods.thaumicBootsLoaded) {
applyOmniState(player, bonus, itemStack);
} else if (player.moveForward > 0.0) {
player.moveFlying(0.0F, player.moveForward, bonus);
@@ -18,7 +18,6 @@ import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.util.ResourceLocation;
import cpw.mods.fml.common.Loader;
import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList;
import thaumcraft.api.crafting.CrucibleRecipe;
@@ -34,6 +33,7 @@ import thaumic.tinkerer.client.lib.LibResources;
import thaumic.tinkerer.common.ThaumicTinkerer;
import thaumic.tinkerer.common.block.mobilizer.BlockMobilizer;
import thaumic.tinkerer.common.block.mobilizer.BlockMobilizerRelay;
import thaumic.tinkerer.common.compat.LoadedMods;
import thaumic.tinkerer.common.lib.LibResearch;
public final class ResearchHelper {
@@ -174,7 +174,7 @@ public final class ResearchHelper {
new ResourceLocation(LibResources.ENCHANT_VALIANCE)).setParents(LibResearch.KEY_ENCHANT_VAMPIRISM);
research.setPages(new ResearchPage("0")).setSecondary().registerResearchItem();
// Peripheral documentation research
if (Loader.isModLoaded("ComputerCraft")) {
if (LoadedMods.computerCraftLoaded) {
research = new TTResearchItem(
LibResearch.KEY_PERIPHERALS,
new AspectList(),
@@ -447,7 +447,7 @@ ttresearch.page.REVEALING_HELM.0=As it turns out, goggles don't offer much prote
# -- THAUMIC REHABILITATOR
ttresearch.name.REPAIRER=Thaumic Restorer
ttresearch.lore.REPAIRER=Undoing the damage you've done
ttresearch.page.REPAIRER.0=You created a new contraption to restore broken tools. By right clicking this block with a broken tool and hooking it to essentia tubes, it'll gather essentia to repair the tool.<BR><BR>The essentia that will repair items is Instrumentum.<BR><BR>Looking at the block with goggles of revealing also shows how worn down the item in it still is. Redstone current will be emitted while an item is being repaired.
ttresearch.page.REPAIRER.0=You created a new contraption to restore broken tools. By right clicking this block with a broken tool and hooking it to essentia tubes, it'll gather essentia to repair the tool.<BR><BR>The essentia that will repair items is Instrumentum.<BR><BR>Looking at the block with goggles of revealing also shows how worn down the item in it still is. Redstone current will be emitted while an item is being repaired.<BR><BR>Items can be inserted and extracted with automation. It will only extract the item when repairing is done.
# -- WAND FOCUS: DISTORTION
ttresearch.name.FOCUS_DEFLECT=Wand Focus: Distortion
@@ -443,7 +443,7 @@ ttresearch.page.REVEALING_HELM.0=Очки откровения не дают в
# -- THAUMIC REHABILITATOR
ttresearch.name.REPAIRER=Таум-восстановитель
ttresearch.lore.REPAIRER=Меньше трещин, чем в чипсах
ttresearch.page.REPAIRER.0=Вы открыли новый способ починки вещей. Используйте поломанный инструмент на этом блоке, подцепленном к трубам с эссенцией. Специальный механизм возьмет нужную для починки эссенцию.<BR><BR>Нужные эссенции, в основном, это Ordo, Fabrico и Instrumentum.<BR><BR>Через очки в восстановителе можно увидеть, насколько инструмент еще поломан.
ttresearch.page.REPAIRER.0=Вы открыли новый способ починки вещей. Используйте поломанный инструмент на этом блоке, подцепленном к трубам с эссенцией. Специальный механизм возьмет нужную для починки эссенцию.<BR><BR>Нужная эссенция - Instrumentum.<BR><BR>Через очки в восстановителе можно увидеть, насколько инструмент еще поломан.<BR><BR>Предметы можно класть и доставать с помощью автоматизации. Доставаться будут только полностью починенные предметы.
# -- WAND FOCUS: DISTORTION
ttresearch.name.FOCUS_DEFLECT=Набалдашник: Искажение