Switch to real logger, create ConfigGui, remove random debug thing

-Uses an actual logger instead of System.out.println.
-ConfigGui for ingame editing of configs.
-Some random leftover debug was being sent to console at startup. This
removes that.
This commit is contained in:
TehNut 2014-11-03 16:11:10 -08:00
parent 51346b5638
commit 4638f1b239
10 changed files with 693 additions and 717 deletions

View file

@ -1,14 +1,53 @@
package WayofTime.alchemicalWizardry; package WayofTime.alchemicalWizardry;
import java.io.File; import WayofTime.alchemicalWizardry.api.alchemy.AlchemicalPotionCreationHandler;
import java.io.FileOutputStream; import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
import java.io.InputStream; import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry;
import java.lang.reflect.Field; import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
import java.lang.reflect.Modifier; import WayofTime.alchemicalWizardry.api.altarRecipeRegistry.AltarRecipeRegistry;
import java.util.List; import WayofTime.alchemicalWizardry.api.bindingRegistry.BindingRegistry;
import java.util.zip.ZipEntry; import WayofTime.alchemicalWizardry.api.harvest.HarvestRegistry;
import java.util.zip.ZipInputStream; import WayofTime.alchemicalWizardry.api.items.ShapedBloodOrbRecipe;
import WayofTime.alchemicalWizardry.api.items.ShapelessBloodOrbRecipe;
import WayofTime.alchemicalWizardry.api.rituals.Rituals;
import WayofTime.alchemicalWizardry.api.summoningRegistry.SummoningRegistry;
import WayofTime.alchemicalWizardry.common.*;
import WayofTime.alchemicalWizardry.common.alchemy.CombinedPotionRegistry;
import WayofTime.alchemicalWizardry.common.block.ArmourForge;
import WayofTime.alchemicalWizardry.common.bloodAltarUpgrade.UpgradedAltars;
import WayofTime.alchemicalWizardry.common.book.BUEntries;
import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonPacketAngel;
import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonPacketRegistry;
import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal;
import WayofTime.alchemicalWizardry.common.entity.mob.*;
import WayofTime.alchemicalWizardry.common.harvest.BloodMagicHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.CactusReedHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.GourdHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.PamHarvestCompatRegistry;
import WayofTime.alchemicalWizardry.common.items.ItemRitualDiviner;
import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHolding;
import WayofTime.alchemicalWizardry.common.items.thaumcraft.ItemSanguineArmour;
import WayofTime.alchemicalWizardry.common.potion.*;
import WayofTime.alchemicalWizardry.common.renderer.AlchemyCircleRenderer;
import WayofTime.alchemicalWizardry.common.rituals.*;
import WayofTime.alchemicalWizardry.common.spell.simple.*;
import WayofTime.alchemicalWizardry.common.summoning.SummoningHelperAW;
import WayofTime.alchemicalWizardry.common.summoning.meteor.MeteorRegistry;
import WayofTime.alchemicalWizardry.common.tileEntity.*;
import WayofTime.alchemicalWizardry.common.tileEntity.gui.GuiHandler;
import WayofTime.alchemicalWizardry.common.tweaker.MineTweakerIntegration;
import cpw.mods.fml.common.FMLCommonHandler;
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;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
import net.minecraft.creativetab.CreativeTabs; import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks; import net.minecraft.init.Blocks;
import net.minecraft.init.Items; import net.minecraft.init.Items;
@ -28,150 +67,23 @@ import net.minecraftforge.fluids.FluidRegistry;
import net.minecraftforge.oredict.OreDictionary; import net.minecraftforge.oredict.OreDictionary;
import net.minecraftforge.oredict.RecipeSorter; import net.minecraftforge.oredict.RecipeSorter;
import net.minecraftforge.oredict.RecipeSorter.Category; import net.minecraftforge.oredict.RecipeSorter.Category;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
import thaumcraft.api.ItemApi; import thaumcraft.api.ItemApi;
import thaumcraft.api.ThaumcraftApi; import thaumcraft.api.ThaumcraftApi;
import thaumcraft.api.aspects.Aspect; import thaumcraft.api.aspects.Aspect;
import thaumcraft.api.aspects.AspectList; import thaumcraft.api.aspects.AspectList;
import WayofTime.alchemicalWizardry.api.alchemy.AlchemicalPotionCreationHandler;
import WayofTime.alchemicalWizardry.api.alchemy.AlchemyRecipeRegistry;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry;
import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentStack;
import WayofTime.alchemicalWizardry.api.altarRecipeRegistry.AltarRecipeRegistry;
import WayofTime.alchemicalWizardry.api.bindingRegistry.BindingRegistry;
import WayofTime.alchemicalWizardry.api.harvest.HarvestRegistry;
import WayofTime.alchemicalWizardry.api.items.ShapedBloodOrbRecipe;
import WayofTime.alchemicalWizardry.api.items.ShapelessBloodOrbRecipe;
import WayofTime.alchemicalWizardry.api.rituals.Rituals;
import WayofTime.alchemicalWizardry.api.summoningRegistry.SummoningRegistry;
import WayofTime.alchemicalWizardry.common.AlchemicalWizardryEventHooks;
import WayofTime.alchemicalWizardry.common.AlchemicalWizardryFuelHandler;
import WayofTime.alchemicalWizardry.common.CommonProxy;
import WayofTime.alchemicalWizardry.common.EntityAirElemental;
import WayofTime.alchemicalWizardry.common.LifeBucketHandler;
import WayofTime.alchemicalWizardry.common.LifeEssence;
import WayofTime.alchemicalWizardry.common.ModLivingDropsEvent;
import WayofTime.alchemicalWizardry.common.NewPacketHandler;
import WayofTime.alchemicalWizardry.common.alchemy.CombinedPotionRegistry;
import WayofTime.alchemicalWizardry.common.block.ArmourForge;
import WayofTime.alchemicalWizardry.common.bloodAltarUpgrade.UpgradedAltars;
import WayofTime.alchemicalWizardry.common.book.BUEntries;
import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonPacketAngel;
import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonPacketRegistry;
import WayofTime.alchemicalWizardry.common.demonVillage.tileEntity.TEDemonPortal;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityBileDemon;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityBoulderFist;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityEarthElemental;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityFallenAngel;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityFireElemental;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityHolyElemental;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityIceDemon;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityLowerGuardian;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityShade;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityShadeElemental;
import WayofTime.alchemicalWizardry.common.entity.mob.EntitySmallEarthGolem;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityWaterElemental;
import WayofTime.alchemicalWizardry.common.entity.mob.EntityWingedFireDemon;
import WayofTime.alchemicalWizardry.common.harvest.BloodMagicHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.CactusReedHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.GourdHarvestHandler;
import WayofTime.alchemicalWizardry.common.harvest.PamHarvestCompatRegistry;
import WayofTime.alchemicalWizardry.common.items.ItemRitualDiviner;
import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHolding;
import WayofTime.alchemicalWizardry.common.items.thaumcraft.ItemSanguineArmour;
import WayofTime.alchemicalWizardry.common.potion.PotionBoost;
import WayofTime.alchemicalWizardry.common.potion.PotionDeaf;
import WayofTime.alchemicalWizardry.common.potion.PotionDrowning;
import WayofTime.alchemicalWizardry.common.potion.PotionFeatherFall;
import WayofTime.alchemicalWizardry.common.potion.PotionFireFuse;
import WayofTime.alchemicalWizardry.common.potion.PotionFlameCloak;
import WayofTime.alchemicalWizardry.common.potion.PotionFlight;
import WayofTime.alchemicalWizardry.common.potion.PotionHeavyHeart;
import WayofTime.alchemicalWizardry.common.potion.PotionIceCloak;
import WayofTime.alchemicalWizardry.common.potion.PotionInhibit;
import WayofTime.alchemicalWizardry.common.potion.PotionPlanarBinding;
import WayofTime.alchemicalWizardry.common.potion.PotionProjectileProtect;
import WayofTime.alchemicalWizardry.common.potion.PotionReciprocation;
import WayofTime.alchemicalWizardry.common.potion.PotionSoulFray;
import WayofTime.alchemicalWizardry.common.potion.PotionSoulHarden;
import WayofTime.alchemicalWizardry.common.renderer.AlchemyCircleRenderer;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectAnimalGrowth;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectAutoAlchemy;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectBiomeChanger;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectContainment;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectCrushing;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectEllipsoid;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectEvaporation;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectExpulsion;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFeatheredEarth;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFeatheredKnife;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFlight;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectFullStomach;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectGrowth;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHarvest;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectHealing;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectInterdiction;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectItemSuction;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectJumping;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectLava;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectLeap;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectLifeConduit;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectMagnetic;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectSoulBound;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectSpawnWard;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectSummonMeteor;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectSupression;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectUnbinding;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectVeilOfEvil;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectWater;
import WayofTime.alchemicalWizardry.common.rituals.RitualEffectWellOfSuffering;
import WayofTime.alchemicalWizardry.common.spell.simple.HomSpellRegistry;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellEarthBender;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellExplosions;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellFireBurst;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellFrozenWater;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellHolyBlast;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellLightningBolt;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellTeleport;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellWateryGrave;
import WayofTime.alchemicalWizardry.common.spell.simple.SpellWindGust;
import WayofTime.alchemicalWizardry.common.summoning.SummoningHelperAW;
import WayofTime.alchemicalWizardry.common.summoning.meteor.MeteorRegistry;
import WayofTime.alchemicalWizardry.common.tileEntity.TEAlchemicCalcinator;
import WayofTime.alchemicalWizardry.common.tileEntity.TEAltar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEBellJar;
import WayofTime.alchemicalWizardry.common.tileEntity.TEConduit;
import WayofTime.alchemicalWizardry.common.tileEntity.TEHomHeart;
import WayofTime.alchemicalWizardry.common.tileEntity.TEMasterStone;
import WayofTime.alchemicalWizardry.common.tileEntity.TEOrientable;
import WayofTime.alchemicalWizardry.common.tileEntity.TEPedestal;
import WayofTime.alchemicalWizardry.common.tileEntity.TEPlinth;
import WayofTime.alchemicalWizardry.common.tileEntity.TEReagentConduit;
import WayofTime.alchemicalWizardry.common.tileEntity.TESchematicSaver;
import WayofTime.alchemicalWizardry.common.tileEntity.TESocket;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpectralBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpectralContainer;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellEffectBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellEnhancementBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellModifierBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TESpellParadigmBlock;
import WayofTime.alchemicalWizardry.common.tileEntity.TETeleposer;
import WayofTime.alchemicalWizardry.common.tileEntity.TEWritingTable;
import WayofTime.alchemicalWizardry.common.tileEntity.gui.GuiHandler;
import WayofTime.alchemicalWizardry.common.tweaker.MineTweakerIntegration;
import cpw.mods.fml.common.FMLCommonHandler;
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;
import cpw.mods.fml.common.SidedProxy;
import cpw.mods.fml.common.event.FMLInitializationEvent;
import cpw.mods.fml.common.event.FMLPostInitializationEvent;
import cpw.mods.fml.common.event.FMLPreInitializationEvent;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.registry.EntityRegistry;
import cpw.mods.fml.common.registry.GameRegistry;
@Mod(modid = "AWWayofTime", name = "AlchemicalWizardry", version = "v1.2.0b (Beta1)") import java.io.File;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.List;
import java.util.zip.ZipEntry;
import java.util.zip.ZipInputStream;
@Mod(modid = "AWWayofTime", name = "AlchemicalWizardry", version = "v1.2.0b (Beta1)", guiFactory = "WayofTime.alchemicalWizardry.client.gui.ConfigGuiFactory")
public class AlchemicalWizardry public class AlchemicalWizardry
{ {
@ -230,6 +142,7 @@ public class AlchemicalWizardry
public static List<Class> wellBlacklist; public static List<Class> wellBlacklist;
public static Logger logger = LogManager.getLogger("BloodMagic");
public static CreativeTabs tabBloodMagic = new CreativeTabs("tabBloodMagic") public static CreativeTabs tabBloodMagic = new CreativeTabs("tabBloodMagic")
{ {
@Override @Override
@ -294,10 +207,10 @@ public class AlchemicalWizardry
try try
{ {
InputStream in = AlchemicalWizardry.class.getResourceAsStream("/assets/alchemicalwizardry/schematics/building/buildings.zip"); InputStream in = AlchemicalWizardry.class.getResourceAsStream("/assets/alchemicalwizardry/schematics/building/buildings.zip");
System.out.println("none yet!"); logger.info("none yet!");
if (in != null) if (in != null)
{ {
System.out.println("I have found a zip!"); logger.info("I have found a zip!");
ZipInputStream zipStream = new ZipInputStream(in); ZipInputStream zipStream = new ZipInputStream(in);
ZipEntry entry = null; ZipEntry entry = null;
@ -948,12 +861,12 @@ public class AlchemicalWizardry
if (Loader.isModLoaded("harvestcraft")) if (Loader.isModLoaded("harvestcraft"))
{ {
PamHarvestCompatRegistry.registerPamHandlers(); PamHarvestCompatRegistry.registerPamHandlers();
System.out.println("Loaded Harvestcraft Handlers!"); AlchemicalWizardry.logger.info("Loaded Harvestcraft Handlers!");
} }
if(Loader.isModLoaded("MineTweaker3")) { if(Loader.isModLoaded("MineTweaker3")) {
MineTweakerIntegration.register(); MineTweakerIntegration.register();
System.out.println("Loaded MineTweaker 3 Integration"); AlchemicalWizardry.logger.info("Loaded MineTweaker 3 Integration");
} }
this.isBotaniaLoaded = Loader.isModLoaded("Botania"); this.isBotaniaLoaded = Loader.isModLoaded("Botania");

View file

@ -43,9 +43,21 @@ public class BloodMagicConfiguration
try try
{ {
config.load(); config.load();
syncConfig();
} catch (Exception e)
{
AlchemicalWizardry.logger.error("There has been a problem loading the configuration, go ask on the forums :p");
} finally
{
config.save();
}
}
public static void syncConfig()
{
AlchemicalWizardry.standardBindingAgentDungeonChance = config.get("Dungeon Loot Chances", "standardBindingAgent", 30).getInt(); AlchemicalWizardry.standardBindingAgentDungeonChance = config.get("Dungeon Loot Chances", "standardBindingAgent", 30).getInt();
AlchemicalWizardry.mundanePowerCatalystDungeonChance = config.get("Dungeon Loot Chances", "mundanePowerCatalyst", 20).getInt(); AlchemicalWizardry.mundanePowerCatalystDungeonChance = config.get("Dungeon Loot Chances", "mundanePowerCatalyst", 20).getInt();
AlchemicalWizardry.averagePowerCatalystDungeonChance = config.get("Dungeon Loot Chances", "averagePowerCatalyst", 10).getInt(); AlchemicalWizardry.averagePowerCatalystDungeonChance = config.get("Dungeon Loot Chances", "averagePowerCatalyst", 10).getInt();
@ -95,18 +107,8 @@ public class BloodMagicConfiguration
RenderHelper.yOffset = config.get("ClientSettings", "AlchemyHUDyOffset", 2).getInt(); RenderHelper.yOffset = config.get("ClientSettings", "AlchemyHUDyOffset", 2).getInt();
} }
} catch (Exception e)
{
//TODO Log
//FMLLog.log(Level.SEVERE, e, "Blood Magic" + " has had a problem loading its configuration, go ask on the forums :p");
} finally
{
config.save(); config.save();
} }
}
public static void set(String categoryName, String propertyName, String newValue) public static void set(String categoryName, String propertyName, String newValue)
{ {

View file

@ -0,0 +1,35 @@
package WayofTime.alchemicalWizardry.client.gui;
import cpw.mods.fml.client.config.GuiConfig;
import cpw.mods.fml.client.config.IConfigElement;
import net.minecraft.client.gui.GuiScreen;
import net.minecraftforge.common.config.ConfigCategory;
import net.minecraftforge.common.config.ConfigElement;
import java.util.ArrayList;
import java.util.List;
import static WayofTime.alchemicalWizardry.BloodMagicConfiguration.config;
public class ConfigGui extends GuiConfig {
public ConfigGui(GuiScreen parentScreen) {
super(parentScreen, getConfigElements(parentScreen), "AWWayofTime", false, false, "Blood Magic Configuration");
}
@SuppressWarnings("rawtypes")
private static List<IConfigElement> getConfigElements(GuiScreen parent) {
List<IConfigElement> list = new ArrayList<IConfigElement>();
// adds sections declared in ConfigHandler. toLowerCase() is used because the configuration class automatically does this, so must we.
list.add(new ConfigElement<ConfigCategory>(config.getCategory("clientsettings".toLowerCase())));
list.add(new ConfigElement<ConfigCategory>(config.getCategory("dungeon loot chances".toLowerCase())));
list.add(new ConfigElement<ConfigCategory>(config.getCategory("meteor".toLowerCase())));
list.add(new ConfigElement<ConfigCategory>(config.getCategory("orecrushing".toLowerCase())));
list.add(new ConfigElement<ConfigCategory>(config.getCategory("potion id".toLowerCase())));
list.add(new ConfigElement<ConfigCategory>(config.getCategory("wellofsufferingblacklist".toLowerCase())));
list.add(new ConfigElement<ConfigCategory>(config.getCategory("wimpysettings".toLowerCase())));
return list;
}
}

View file

@ -0,0 +1,30 @@
package WayofTime.alchemicalWizardry.client.gui;
import cpw.mods.fml.client.IModGuiFactory;
import net.minecraft.client.Minecraft;
import net.minecraft.client.gui.GuiScreen;
import java.util.Set;
public class ConfigGuiFactory implements IModGuiFactory {
@Override
public void initialize(Minecraft minecraftInstance) {
}
@Override
public Class<? extends GuiScreen> mainConfigGuiClass() {
return ConfigGui.class;
}
@Override
public Set<RuntimeOptionCategoryElement> runtimeGuiCategories() {
return null;
}
@Override
public RuntimeOptionGuiHandler getHandlerFor(RuntimeOptionCategoryElement element) {
return null;
}
}

View file

@ -1,11 +1,18 @@
package WayofTime.alchemicalWizardry.common; package WayofTime.alchemicalWizardry.common;
import java.util.ArrayList; import WayofTime.alchemicalWizardry.AlchemicalWizardry;
import java.util.HashMap; import WayofTime.alchemicalWizardry.BloodMagicConfiguration;
import java.util.Iterator; import WayofTime.alchemicalWizardry.common.entity.projectile.EnergyBlastProjectile;
import java.util.List; import WayofTime.alchemicalWizardry.common.items.BoundArmour;
import java.util.Map; import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
import WayofTime.alchemicalWizardry.common.tileEntity.TEMasterStone;
import cpw.mods.fml.client.event.ConfigChangedEvent;
import cpw.mods.fml.common.ObfuscationReflectionHelper;
import cpw.mods.fml.common.Optional;
import cpw.mods.fml.common.eventhandler.Event.Result;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent.PlayerRespawnEvent;
import cpw.mods.fml.common.registry.GameRegistry;
import net.minecraft.entity.Entity; import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.IProjectile; import net.minecraft.entity.IProjectile;
@ -28,17 +35,8 @@ import net.minecraftforge.event.entity.living.LivingEvent.LivingJumpEvent;
import net.minecraftforge.event.entity.living.LivingEvent.LivingUpdateEvent; import net.minecraftforge.event.entity.living.LivingEvent.LivingUpdateEvent;
import net.minecraftforge.event.entity.living.LivingSpawnEvent.CheckSpawn; import net.minecraftforge.event.entity.living.LivingSpawnEvent.CheckSpawn;
import vazkii.botania.api.internal.IManaBurst; import vazkii.botania.api.internal.IManaBurst;
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
import WayofTime.alchemicalWizardry.common.entity.projectile.EnergyBlastProjectile; import java.util.*;
import WayofTime.alchemicalWizardry.common.items.BoundArmour;
import WayofTime.alchemicalWizardry.common.spell.complex.effect.SpellHelper;
import WayofTime.alchemicalWizardry.common.tileEntity.TEMasterStone;
import cpw.mods.fml.common.ObfuscationReflectionHelper;
import cpw.mods.fml.common.Optional;
import cpw.mods.fml.common.eventhandler.Event.Result;
import cpw.mods.fml.common.eventhandler.SubscribeEvent;
import cpw.mods.fml.common.gameevent.PlayerEvent.PlayerRespawnEvent;
import cpw.mods.fml.common.registry.GameRegistry;
public class AlchemicalWizardryEventHooks public class AlchemicalWizardryEventHooks
{ {
@ -495,6 +493,15 @@ public class AlchemicalWizardryEventHooks
} }
} }
@SubscribeEvent
public void onConfigChanged(ConfigChangedEvent.OnConfigChangedEvent event) {
if (event.modID.equals("AWWayofTime")) {
BloodMagicConfiguration.syncConfig();
AlchemicalWizardry.logger.info("Refreshing configuration file.");
BloodMagicConfiguration.syncConfig();
}
}
@Optional.Method(modid = "Botania") @Optional.Method(modid = "Botania")
private boolean isManaBurst(Entity projectile) private boolean isManaBurst(Entity projectile)
{ {

View file

@ -1,5 +1,6 @@
package WayofTime.alchemicalWizardry.common.demonVillage; package WayofTime.alchemicalWizardry.common.demonVillage;
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
import WayofTime.alchemicalWizardry.ModBlocks; import WayofTime.alchemicalWizardry.ModBlocks;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.world.World; import net.minecraft.world.World;
@ -64,8 +65,6 @@ public class GridSpaceHolder
{ {
GridSpace[][] newGrid = new GridSpace[negXRadius + posXRadius + 1][negZRadius + posZRadius + 2]; GridSpace[][] newGrid = new GridSpace[negXRadius + posXRadius + 1][negZRadius + posZRadius + 2];
System.out.println("x " + newGrid.length + "z " + newGrid[0].length);
for (int i = 0; i <= negXRadius + posXRadius; i++) for (int i = 0; i <= negXRadius + posXRadius; i++)
{ {
newGrid[i][0] = new GridSpace(); newGrid[i][0] = new GridSpace();
@ -147,7 +146,7 @@ public class GridSpaceHolder
{ {
if (master != null) if (master != null)
{ {
System.out.println("negXRadius: " + negXRadius + " posXRadius: " + posXRadius + " negZRadius: " + negZRadius + " posZRadius: " + posZRadius); AlchemicalWizardry.logger.info("negXRadius: " + negXRadius + " posXRadius: " + posXRadius + " negZRadius: " + negZRadius + " posZRadius: " + posZRadius);
for (int i = -negXRadius; i <= posXRadius; i++) for (int i = -negXRadius; i <= posXRadius; i++)
{ {
for (int j = -negZRadius; j <= posZRadius; j++) for (int j = -negZRadius; j <= posZRadius; j++)
@ -158,7 +157,7 @@ public class GridSpaceHolder
continue; continue;
} }
System.out.println("x: " + i + " z: " + j); AlchemicalWizardry.logger.info("x: " + i + " z: " + j);
int xOff = 0; int xOff = 0;
int zOff = 0; int zOff = 0;
@ -195,7 +194,7 @@ public class GridSpaceHolder
public void setAllGridSpaces(int xInit, int zInit, int yLevel, ForgeDirection dir, int type, GridSpaceHolder master) public void setAllGridSpaces(int xInit, int zInit, int yLevel, ForgeDirection dir, int type, GridSpaceHolder master)
{ {
System.out.println("Grid space selected: (" + xInit + "," + zInit + ")"); AlchemicalWizardry.logger.info("Grid space selected: (" + xInit + "," + zInit + ")");
if (master != null) if (master != null)
{ {
for (int i = -negXRadius; i <= posXRadius; i++) for (int i = -negXRadius; i <= posXRadius; i++)
@ -231,7 +230,7 @@ public class GridSpaceHolder
break; break;
} }
System.out.println("Grid space (" + (xInit + xOff) + "," + (zInit + zOff) + ")"); AlchemicalWizardry.logger.info("Grid space (" + (xInit + xOff) + "," + (zInit + zOff) + ")");
master.setGridSpace(xInit + xOff, zInit + zOff, new GridSpace(type, yLevel)); master.setGridSpace(xInit + xOff, zInit + zOff, new GridSpace(type, yLevel));
} }

View file

@ -1,19 +1,14 @@
package WayofTime.alchemicalWizardry.common.demonVillage.tileEntity; package WayofTime.alchemicalWizardry.common.demonVillage.tileEntity;
import java.io.BufferedReader; import WayofTime.alchemicalWizardry.AlchemicalWizardry;
import java.io.File; import WayofTime.alchemicalWizardry.common.Int3;
import java.io.FileNotFoundException; import WayofTime.alchemicalWizardry.common.block.BlockTeleposer;
import java.io.FileReader; import WayofTime.alchemicalWizardry.common.demonVillage.*;
import java.util.ArrayList; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonPacketRegistry;
import java.util.HashMap; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonType;
import java.util.HashSet; import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.IHoardDemon;
import java.util.LinkedList; import com.google.gson.Gson;
import java.util.List; import com.google.gson.GsonBuilder;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Random;
import java.util.Set;
import net.minecraft.block.Block; import net.minecraft.block.Block;
import net.minecraft.entity.EntityCreature; import net.minecraft.entity.EntityCreature;
import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.EntityLivingBase;
@ -24,20 +19,13 @@ import net.minecraft.nbt.NBTTagList;
import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntity;
import net.minecraftforge.common.util.Constants; import net.minecraftforge.common.util.Constants;
import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.common.util.ForgeDirection;
import WayofTime.alchemicalWizardry.common.Int3;
import WayofTime.alchemicalWizardry.common.block.BlockTeleposer;
import WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic;
import WayofTime.alchemicalWizardry.common.demonVillage.DemonBuilding;
import WayofTime.alchemicalWizardry.common.demonVillage.DemonCrosspath;
import WayofTime.alchemicalWizardry.common.demonVillage.DemonVillagePath;
import WayofTime.alchemicalWizardry.common.demonVillage.GridSpace;
import WayofTime.alchemicalWizardry.common.demonVillage.GridSpaceHolder;
import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonPacketRegistry;
import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.DemonType;
import WayofTime.alchemicalWizardry.common.demonVillage.demonHoard.demon.IHoardDemon;
import com.google.gson.Gson; import java.io.BufferedReader;
import com.google.gson.GsonBuilder; import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.util.*;
import java.util.Map.Entry;
public class TEDemonPortal extends TileEntity public class TEDemonPortal extends TileEntity
{ {
@ -240,11 +228,11 @@ public class TEDemonPortal extends TileEntity
this.incrementPoints(); this.incrementPoints();
this.assignPoints(); this.assignPoints();
System.out.println("Roads: " + roadCooldown + " Buildings: " + houseCooldown); AlchemicalWizardry.logger.info("Roads: " + roadCooldown + " Buildings: " + houseCooldown);
if(buildingStage >= 0 && buildingStage <=2) if(buildingStage >= 0 && buildingStage <=2)
{ {
System.out.println("BuildingStage = " + buildingStage); AlchemicalWizardry.logger.info("BuildingStage = " + buildingStage);
this.createPortalBuilding(buildingStage, nextDemonPortalName, tier); this.createPortalBuilding(buildingStage, nextDemonPortalName, tier);
buildingStage++; buildingStage++;
return; return;
@ -463,7 +451,7 @@ public class TEDemonPortal extends TileEntity
int z = road.zCoord; int z = road.zCoord;
if(printDebug) if(printDebug)
System.out.println("X: " + x + " Z: " + z + " Direction: " + dir.toString()); AlchemicalWizardry.logger.info("X: " + x + " Z: " + z + " Direction: " + dir.toString());
List<ForgeDirection> directions = this.findValidExtentionDirection(x, z); List<ForgeDirection> directions = this.findValidExtentionDirection(x, z);
@ -495,9 +483,9 @@ public class TEDemonPortal extends TileEntity
return 0; return 0;
} }
if(printDebug) if(printDebug)
System.out.println("I got here!"); AlchemicalWizardry.logger.info("I got here!");
if(printDebug) if(printDebug)
System.out.println("Distance: " + distance + " Direction: " + dominantDirection.toString() + " yLevel: " + yLevel); AlchemicalWizardry.logger.info("Distance: " + distance + " Direction: " + dominantDirection.toString() + " yLevel: " + yLevel);
this.createGriddedRoad(x, yLevel, z, dominantDirection, distance + 1, true); this.createGriddedRoad(x, yLevel, z, dominantDirection, distance + 1, true);
@ -859,7 +847,7 @@ public class TEDemonPortal extends TileEntity
{ {
initY = next.yCoord; initY = next.yCoord;
if(printDebug) if(printDebug)
System.out.println("" + initY); AlchemicalWizardry.logger.info("" + initY);
} }
initGridX += dir.offsetX; initGridX += dir.offsetX;
@ -918,7 +906,7 @@ public class TEDemonPortal extends TileEntity
GridSpace[][] newGrid = new GridSpace[negXRadius + posXRadius + 1][negZRadius + posZRadius + 2]; GridSpace[][] newGrid = new GridSpace[negXRadius + posXRadius + 1][negZRadius + posZRadius + 2];
if(printDebug) if(printDebug)
System.out.println("x " + newGrid.length + "z " + newGrid[0].length); AlchemicalWizardry.logger.info("x " + newGrid.length + "z " + newGrid[0].length);
for (int i = 0; i <= negXRadius + posXRadius; i++) for (int i = 0; i <= negXRadius + posXRadius; i++)
{ {
@ -1033,7 +1021,7 @@ public class TEDemonPortal extends TileEntity
public int createPortalBuilding(int buildingTier) //TODO Telepose block next time, then build the new building. public int createPortalBuilding(int buildingTier) //TODO Telepose block next time, then build the new building.
{ {
System.out.println("Hello, I am here!"); AlchemicalWizardry.logger.info("Hello, I am here!");
int x = 0; int x = 0;
int z = 0; int z = 0;
@ -1189,7 +1177,7 @@ public class TEDemonPortal extends TileEntity
int yLevel = space.yCoord; int yLevel = space.yCoord;
if(printDebug) if(printDebug)
System.out.println("Road space - x: " + x + " z: " + z); AlchemicalWizardry.logger.info("Road space - x: " + x + " z: " + z);
GridSpaceHolder grid = this.createGSH(); GridSpaceHolder grid = this.createGSH();
@ -1240,7 +1228,7 @@ public class TEDemonPortal extends TileEntity
} }
} else } else
{ {
System.out.println("This ISN'T valid!"); AlchemicalWizardry.logger.info("This ISN'T valid!");
} }
} }
} }

View file

@ -356,7 +356,7 @@ public class ItemFluidSigil extends Item implements IFluidContainerItem
} }
Fluid fluid = FluidRegistry.lookupFluidForBlock(block); Fluid fluid = FluidRegistry.lookupFluidForBlock(block);
System.out.println("x: " + (i - range) + " y: " + (j - range) + " z: " + (k - range)); AlchemicalWizardry.logger.info("x: " + (i - range) + " y: " + (j - range) + " z: " + (k - range));
if (fluid == null || world.getBlockMetadata(x + i - range, y + j - range, z + k - range) != 0) if (fluid == null || world.getBlockMetadata(x + i - range, y + j - range, z + k - range) != 0)

View file

@ -1,5 +1,6 @@
package WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.tool; package WayofTime.alchemicalWizardry.common.spell.complex.effect.impactEffects.tool;
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
import WayofTime.alchemicalWizardry.common.items.spell.ItemSpellMultiTool; import WayofTime.alchemicalWizardry.common.items.spell.ItemSpellMultiTool;
import net.minecraft.entity.player.EntityPlayer; import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
@ -37,7 +38,7 @@ public class DigAreaTunnel extends DigAreaEffect
ForgeDirection sidehit = ForgeDirection.getOrientation(blockPos.sideHit); ForgeDirection sidehit = ForgeDirection.getOrientation(blockPos.sideHit);
ForgeDirection opposite = sidehit.getOpposite(); ForgeDirection opposite = sidehit.getOpposite();
System.out.println(opposite.toString()); AlchemicalWizardry.logger.info(opposite.toString());
double initialLength = this.getRandomVectorLength(); double initialLength = this.getRandomVectorLength();
@ -149,7 +150,7 @@ public class DigAreaTunnel extends DigAreaEffect
public void travelVector(Vec3 vector, World world, double x, double y, double z) public void travelVector(Vec3 vector, World world, double x, double y, double z)
{ {
double vecLength = vector.lengthVector(); double vecLength = vector.lengthVector();
System.out.println(vecLength); AlchemicalWizardry.logger.info(vecLength);
Vec3 normVec = Vec3.createVectorHelper(vector.xCoord, vector.yCoord, vector.zCoord); Vec3 normVec = Vec3.createVectorHelper(vector.xCoord, vector.yCoord, vector.zCoord);
normVec = normVec.normalize(); normVec = normVec.normalize();
@ -158,7 +159,7 @@ public class DigAreaTunnel extends DigAreaEffect
while (distanceTravelled < vecLength) while (distanceTravelled < vecLength)
{ {
System.out.println(distanceTravelled); AlchemicalWizardry.logger.info(distanceTravelled);
double stepLength = this.getRandomStepLength(); double stepLength = this.getRandomStepLength();
prevVec = prevVec.addVector(stepLength * normVec.xCoord, stepLength * normVec.yCoord, normVec.zCoord); prevVec = prevVec.addVector(stepLength * normVec.xCoord, stepLength * normVec.yCoord, normVec.zCoord);

View file

@ -1,5 +1,6 @@
package WayofTime.alchemicalWizardry.common.tileEntity; package WayofTime.alchemicalWizardry.common.tileEntity;
import WayofTime.alchemicalWizardry.AlchemicalWizardry;
import WayofTime.alchemicalWizardry.ModBlocks; import WayofTime.alchemicalWizardry.ModBlocks;
import WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic; import WayofTime.alchemicalWizardry.common.demonVillage.BuildingSchematic;
import com.google.gson.Gson; import com.google.gson.Gson;
@ -45,13 +46,13 @@ public class TESchematicSaver extends TileEntity
} }
} }
System.out.println("" + i); AlchemicalWizardry.logger.info("" + i);
} }
System.out.println("I got here!"); AlchemicalWizardry.logger.info("I got here!");
Gson gson = new GsonBuilder().setPrettyPrinting().create(); Gson gson = new GsonBuilder().setPrettyPrinting().create();
String json = gson.toJson(schematic); String json = gson.toJson(schematic);
System.out.println("Here, too!"); AlchemicalWizardry.logger.info("Here, too!");
Writer writer; Writer writer;
try try
{ {