Essentia Gen update 2.0

+ changed Generators outputting GTEU
+ renamed "tileentityperditiogenerator" -> "tileentitylucrumgenerator"
+ created WiP autogeneratedgens (not working, disabled atm)
This commit is contained in:
LOKKO12 committed 2018-02-26 21:22:00 +01:00
1 parent 9a1a1bbf3f
commit be6fc768f8
18 files changed
+1198 -548

No files matched your search

+3 -1
View File
@@ -24,7 +24,9 @@ archivesBaseName = config.mod_name
minecraft {
version = config.mc_version + "-" + config.forge_version + "-" + config.mc_version
runDir = "run"
replaceIn "EMT.java"
replace "@version@", config.mod_version
if (project.hasProperty('mappings_version'))
mappings = project.mappings_version
}
+1 -1
View File
@@ -1,5 +1,5 @@
package_group=emt
mc_version=1.7.10
forge_version=10.13.4.1614
mod_version=1.2.6.8
mod_version=1.2.7.0
mod_name=ElectroMagicTools
Binary file not shown.
+89 -79
View File
@@ -9,19 +9,24 @@ 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.event.FMLServerStartingEvent;
import cpw.mods.fml.common.eventhandler.EventBus;
import cpw.mods.fml.common.network.NetworkRegistry;
import cpw.mods.fml.common.network.simpleimpl.SimpleNetworkWrapper;
import cpw.mods.fml.relauncher.Side;
import emt.command.CommandOutputs;
import emt.init.EMTEntities;
import emt.init.Registry;
import emt.init.EMTResearches;
import emt.init.Registry;
import emt.network.PacketEMTKeys;
import emt.proxy.CommonProxy;
import emt.util.*;
import emt.util.EMTClientEventHandler;
import emt.util.EMTConfigHandler;
import emt.util.EMTCreativeTab;
import emt.util.EMTDungeonChestGenerator;
import emt.util.EMTEssentiasOutputs;
import emt.util.EMTEventHandler;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraftforge.common.MinecraftForge;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
@@ -32,80 +37,85 @@ import org.apache.logging.log4j.Logger;
guiFactory = EMT.GUI_FACTORY,
dependencies = EMT.DEPENDS
)
public class EMT {
public static final String NAME = "Electro-Magic Tools";
public static final String MOD_ID = "EMT";
public static final String VERSION = "1.2.6.6";
public static final String TEXTURE_PATH = "emt";
public static final String GUI_FACTORY = "emt.client.gui.config.EMTGuiFactory";
public static final String CLIENT_PROXY = "emt.proxy.ClientProxy";
public static final String COMMON_PROXY = "emt.proxy.CommonProxy";
public static final String CHANNEL = "EMT";
public static final String DEPENDS = "required-after:Thaumcraft ; required-after:IC2";
@SidedProxy(
clientSide = CLIENT_PROXY,
serverSide = COMMON_PROXY
)
public static CommonProxy proxy;
public static final CreativeTabs TAB = new EMTCreativeTab(MOD_ID + ".creativeTab");
public static final Logger LOGGER = LogManager.getLogger(NAME);
public static final SimpleNetworkWrapper INSTANCE = NetworkRegistry.INSTANCE.newSimpleChannel(CHANNEL);
public boolean isSimulating()
{
return !FMLCommonHandler.instance().getEffectiveSide().isClient();
}
@Instance(MOD_ID)
public static EMT instance;
@EventHandler
public void preInit(FMLPreInitializationEvent event) {
LOGGER.info("Starting planning the world domination");
EMTConfigHandler.init(event.getSuggestedConfigurationFile());
FMLCommonHandler.instance().bus().register(new EMTEventHandler());
if(FMLCommonHandler.instance().getSide().isClient())
FMLCommonHandler.instance().bus().register(new EMTClientEventHandler());
Registry.register();
EMTEssentiasOutputs.addPrimalOutputs();
EMTEssentiasOutputs.addOutputs();
registerPackets();
LOGGER.info("Planning complete");
}
@EventHandler
public void load(FMLInitializationEvent event) {
LOGGER.info("Gathering allies");
LOGGER.info("Loading the proxies");
proxy.load();
LOGGER.info("Making mobs drop additional items");
MinecraftForge.EVENT_BUS.register(new EMTEventHandler());
if(FMLCommonHandler.instance().getSide().isClient())
MinecraftForge.EVENT_BUS.register(new EMTClientEventHandler());
LOGGER.info("Adding dungeon loot");
EMTDungeonChestGenerator.generateLoot();
LOGGER.info("Registering entities");
EMTEntities.registerEMTEntities();
LOGGER.info("Registering the GUI Handler");
NetworkRegistry.INSTANCE.registerGuiHandler(this, proxy);
LOGGER.info("Allies gathered.");
}
@EventHandler
public void postInit(FMLPostInitializationEvent event) {
LOGGER.info("Starting the world takeover");
Registry.registerLate();
EMTResearches.register();
LOGGER.info("World takeover complete. Enjoy!");
}
@EventHandler
public void onFMLServerStart(FMLServerStartingEvent event) {
event.registerServerCommand(new CommandOutputs());
}
public void registerPackets() {
INSTANCE.registerMessage(PacketEMTKeys.class, PacketEMTKeys.class, 0, Side.SERVER);
}
public class EMT
{
public static final String NAME = "Electro-Magic Tools";
public static final String MOD_ID = "EMT";
public static final String VERSION = "@version@";
public static final String TEXTURE_PATH = "emt";
public static final String GUI_FACTORY = "emt.client.gui.config.EMTGuiFactory";
public static final String CLIENT_PROXY = "emt.proxy.ClientProxy";
public static final String COMMON_PROXY = "emt.proxy.CommonProxy";
public static final String CHANNEL = "EMT";
public static final String DEPENDS = "required-after:Thaumcraft ; required-after:IC2; required-after:gregtech";
@SidedProxy(clientSide="emt.proxy.ClientProxy", serverSide="emt.proxy.CommonProxy")
public static CommonProxy proxy;
public static final CreativeTabs TAB = new EMTCreativeTab("EMT.creativeTab");
public static final Logger LOGGER = LogManager.getLogger("Electro-Magic Tools");
public static final SimpleNetworkWrapper INSTANCE = NetworkRegistry.INSTANCE.newSimpleChannel("EMT");
@Mod.Instance("EMT")
public static EMT instance;
public boolean isSimulating()
{
return !FMLCommonHandler.instance().getEffectiveSide().isClient();
}
@Mod.EventHandler
public void preInit(FMLPreInitializationEvent event)
{
LOGGER.info("Starting planning the world domination|start preinit");
EMTConfigHandler.init(event.getSuggestedConfigurationFile());
FMLCommonHandler.instance().bus().register(new EMTEventHandler());
if (FMLCommonHandler.instance().getSide().isClient()) {
FMLCommonHandler.instance().bus().register(new EMTClientEventHandler());
}
Registry.registerPreInit();
EMTEssentiasOutputs.addPrimalOutputs();
EMTEssentiasOutputs.addOutputs();
registerPackets();
LOGGER.info("Planning complete|end preinit");
}
@Mod.EventHandler
public void load(FMLInitializationEvent event)
{
LOGGER.info("Execute the plan|start init");
Registry.registerInit();
//LOGGER.info("Gathering allies");
//LOGGER.info("Loading the proxies");
proxy.load();
//LOGGER.info("Making mobs drop additional items");
MinecraftForge.EVENT_BUS.register(new EMTEventHandler());
if (FMLCommonHandler.instance().getSide().isClient()) {
MinecraftForge.EVENT_BUS.register(new EMTClientEventHandler());
}
//LOGGER.info("Adding dungeon loot");
EMTDungeonChestGenerator.generateLoot();
//LOGGER.info("Registering entities");
EMTEntities.registerEMTEntities();
//LOGGER.info("Registering the GUI Handler");
NetworkRegistry.INSTANCE.registerGuiHandler(this, proxy);
LOGGER.info("Allies gathered.|end init");
}
@Mod.EventHandler
public void postInit(FMLPostInitializationEvent event)
{
LOGGER.info("Starting the world takeover|start postinit");
Registry.registerLate();
EMTResearches.register();
LOGGER.info("World takeover complete. Enjoy!|end postinit");
}
@Mod.EventHandler
public void onFMLServerStart(FMLServerStartingEvent event)
{
event.registerServerCommand(new CommandOutputs());
}
public void registerPackets()
{
INSTANCE.registerMessage(PacketEMTKeys.class, PacketEMTKeys.class, 0, Side.SERVER);
}
}
@@ -0,0 +1,102 @@
package emt.block;
import java.util.List;
import java.util.Random;
import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import emt.EMT;
import emt.tile.generator.TileEntityBaseGenerator;
import emt.tile.generator.TileEntityReflexionGen;
import net.minecraft.block.material.Material;
import net.minecraft.client.Minecraft;
import net.minecraft.client.particle.EntitySmokeFX;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
public class BlockReflectedGen
extends BlockBaseContainer
{
private int subtypes;
public static short Set;
public BlockReflectedGen(String name, short Set)
{
super(name, Material.iron, soundTypeMetal, 16, 4.0F);
this.Set = Set;
if (Set * 16 < TileEntityReflexionGen.L.size()) {
this.subtypes = 16;
} else {
this.subtypes = (-(TileEntityReflexionGen.L.size() - Set * 16));
}
}
@SideOnly(Side.CLIENT)
public void registerBlockIcons(IIconRegister ir)
{
super.registerBlockIcons(ir);
this.blockIcon = ir.registerIcon("emt:machines/top");
for (int meta = 0; meta < this.subtypes; meta++)
{
this.iconSets[meta].top = ir.registerIcon("emt:essentiagenerator/top");
this.iconSets[meta].bottom = ir.registerIcon("emt:essentiagenerator/top");
this.iconSets[meta].side = ir.registerIcon("emt:essentiagenerator/side");
}
for (int i = 0; i < this.subtypes; i++) {
this.iconSets[i].frontOff = ir.registerIcon("emt:essentiagenerator/side");
}
}
@SideOnly(Side.CLIENT)
public void getSubBlocks(Item id, CreativeTabs tab, List list)
{
for (int i = 0; i < this.subtypes; i++) {
list.add(new ItemStack(id, 1, i));
}
}
public TileEntity createTileEntity(World world, int meta)
{
if (meta + Set * 16 < TileEntityReflexionGen.L.size()) {
return TileEntityReflexionGen.Gens[(meta + 16 * Set)];
}
return TileEntityReflexionGen.Gens[(meta + 16 * (Set - 1))];
}
@SideOnly(Side.CLIENT)
public void randomDisplayTick(World world, int x, int y, int z, Random random)
{
TileEntityBaseGenerator te = (TileEntityBaseGenerator)world.getTileEntity(x, y, z);
if (te.isActive)
{
int color = te.aspect.getColor();
float r = (color >> 16 & 0xFF) / 255.0F;
float g = (color >> 8 & 0xFF) / 255.0F;
float b = (color & 0xFF) / 255.0F;
EntitySmokeFX fx = new EntitySmokeFX(world, x + 0.5F, y + 1.1D, z + 0.5F, 0.0D, 0.1D, 0.0D, 3.0F);
fx.setRBGColorF(r, g, b);
Minecraft.getMinecraft().effectRenderer.addEffect(fx);
}
}
public boolean onBlockActivated(World world, int i, int j, int k, EntityPlayer player, int s, float f1, float f2, float f3)
{
if (player.isSneaking()) {
return false;
}
if (world.isRemote) {
return true;
}
TileEntity tileentity = world.getTileEntity(i, j, k);
if (tileentity != null) {
player.openGui(EMT.instance, 1, world, i, j, k);
}
return true;
}
}
@@ -0,0 +1,32 @@
package emt.init;
import cpw.mods.fml.common.registry.GameRegistry;
import emt.block.BlockReflectedGen;
import emt.tile.generator.TileEntityReflexionGen;
import java.util.List;
public class EMTAutogeneratedGens
implements Runnable
{
public static BlockReflectedGen[] BRG;
public static TileEntityReflexionGen TFG = new TileEntityReflexionGen();
private static short sets;
public void run()
{
sets = (short)(TileEntityReflexionGen.L.size() / 16);
if (TileEntityReflexionGen.L.size() % 16 != 0) {
sets = (short)(sets + 1);
}
BRG = new BlockReflectedGen[sets];
for (short i = 0; i < sets; i = (short)(i + 1)) {
BRG[i] = new BlockReflectedGen("EGenerator", i);
}
for (int i = 0; i < TileEntityReflexionGen.L.size(); i++) {
GameRegistry.registerTileEntity(TileEntityReflexionGen.GensS[i], "tileentity" + TileEntityReflexionGen.L.get(i));
}
for (short i = 0; i < sets; i = (short)(i + 1)) {
GameRegistry.registerBlock(BRG[i], "EGenerator.Set." + Short.toString(i));
}
}
}
+1 -1
View File
@@ -43,7 +43,7 @@ public class EMTTiles {
GameRegistry.registerTileEntity(TileEntityAuramGenerator.class, "tileentityauramgenerator");
GameRegistry.registerTileEntity(TileEntityArborGenerator.class, "tileentityarborgenerator");
GameRegistry.registerTileEntity(TileEntityAerGenerator.class, "tileentityaergenerator");
GameRegistry.registerTileEntity(TileEntityLucrumGenerator.class, "tileentityperditiogenerator");
GameRegistry.registerTileEntity(TileEntityLucrumGenerator.class, "tileentitylucrumgenerator");
//Machinery
GameRegistry.registerTileEntity(TileEntityIndustrialWandRecharge.class, "tileentityindustrialwandrecharge");
+19 -13
View File
@@ -1,16 +1,22 @@
package emt.init;
public class Registry {
public static void register() {
EMTBlocks.registerBlocks();
EMTItems.registerItems();
EMTTiles.registerTileEntities();
EMTRecipes.registerEarlyRecipes();
}
public static void registerLate() {
EMTBlocks.addAspects();
EMTRecipes.registerLateRecipes();
EMTRecipes.registerUUMInfusionRecipes();
}
public class Registry
{
public static void registerPreInit() {}
public static void registerInit()
{
EMTBlocks.registerBlocks();
EMTItems.registerItems();
EMTTiles.registerTileEntities();
EMTRecipes.registerEarlyRecipes();
}
public static void registerLate()
{
EMTBlocks.addAspects();
EMTRecipes.registerLateRecipes();
EMTRecipes.registerUUMInfusionRecipes();
// new EMTAutogeneratedGens().run();
}
}
+44 -42
View File
@@ -5,47 +5,49 @@ import net.minecraft.network.NetworkManager;
import net.minecraft.network.Packet;
import net.minecraft.network.play.server.S35PacketUpdateTileEntity;
import net.minecraft.tileentity.TileEntity;
import net.minecraft.world.World;
public abstract class TileEntityEMT extends TileEntity {
public int facing;
public boolean isOn;
@Override
public void readFromNBT(NBTTagCompound tagCompound) {
super.readFromNBT(tagCompound);
facing = tagCompound.getInteger("facing");
isOn = tagCompound.getBoolean("isOn");
}
@Override
public void writeToNBT(NBTTagCompound tagCompound) {
tagCompound.setInteger("facing", facing);
tagCompound.setBoolean("isOn", isOn);
super.writeToNBT(tagCompound);
}
@Override
public final Packet getDescriptionPacket() {
NBTTagCompound nbt = new NBTTagCompound();
writeToNBT(nbt);
S35PacketUpdateTileEntity packet = new S35PacketUpdateTileEntity(xCoord, yCoord, zCoord, 0, nbt);
return packet;
}
@Override
public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt) {
NBTTagCompound nbt = pkt.func_148857_g();
readFromNBT(nbt);
}
@Override
public void markDirty() {
super.markDirty();
if (worldObj.isRemote) {
return;
}
this.worldObj.markBlockForUpdate(xCoord, yCoord, zCoord);
}
public class TileEntityEMT
extends TileEntity
{
public int facing;
public boolean isOn;
public void readFromNBT(NBTTagCompound tagCompound)
{
super.readFromNBT(tagCompound);
this.facing = tagCompound.getInteger("facing");
this.isOn = tagCompound.getBoolean("isOn");
}
public void writeToNBT(NBTTagCompound tagCompound)
{
tagCompound.setInteger("facing", this.facing);
tagCompound.setBoolean("isOn", this.isOn);
super.writeToNBT(tagCompound);
}
public final Packet getDescriptionPacket()
{
NBTTagCompound nbt = new NBTTagCompound();
writeToNBT(nbt);
S35PacketUpdateTileEntity packet = new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 0, nbt);
return packet;
}
public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt)
{
NBTTagCompound nbt = pkt.func_148857_g();
readFromNBT(nbt);
}
public void markDirty()
{
super.markDirty();
if (this.worldObj.isRemote) {
return;
}
this.worldObj.markBlockForUpdate(this.xCoord, this.yCoord, this.zCoord);
}
}
@@ -1,18 +1,12 @@
package emt.tile.generator;
import emt.util.EMTEssentiasOutputs;
import net.minecraft.util.StatCollector;
import thaumcraft.api.aspects.Aspect;
public class TileEntityAerGenerator extends TileEntityBaseGenerator {
public TileEntityAerGenerator() {
aspect = Aspect.AIR;
generating = EMTEssentiasOutputs.outputs.get(aspect.getTag());
}
@Override
public String getInventoryName() {
return StatCollector.translateToLocal("tile.EMT.essentia.aer.name");
}
}
public class TileEntityAerGenerator
extends TileEntityBaseGenerator
{
public TileEntityAerGenerator()
{
super(Aspect.AIR);
}
}
@@ -1,18 +1,12 @@
package emt.tile.generator;
import emt.util.EMTEssentiasOutputs;
import net.minecraft.util.StatCollector;
import thaumcraft.api.aspects.Aspect;
public class TileEntityArborGenerator extends TileEntityBaseGenerator {
public TileEntityArborGenerator() {
aspect = Aspect.TREE;
generating = EMTEssentiasOutputs.outputs.get(aspect.getTag());
}
@Override
public String getInventoryName() {
return StatCollector.translateToLocal("tile.EMT.essentia.arbor.name");
}
public class TileEntityArborGenerator
extends TileEntityBaseGenerator
{
public TileEntityArborGenerator()
{
super(Aspect.TREE);
}
}
@@ -1,18 +1,12 @@
package emt.tile.generator;
import emt.util.EMTEssentiasOutputs;
import net.minecraft.util.StatCollector;
import thaumcraft.api.aspects.Aspect;
public class TileEntityAuramGenerator extends TileEntityBaseGenerator {
public TileEntityAuramGenerator() {
aspect = Aspect.AURA;
generating = EMTEssentiasOutputs.outputs.get(aspect.getTag());
}
@Override
public String getInventoryName() {
return StatCollector.translateToLocal("tile.EMT.essentia.auram.name");
}
public class TileEntityAuramGenerator
extends TileEntityBaseGenerator
{
public TileEntityAuramGenerator()
{
super(Aspect.AURA);
}
}
File diff suppressed because it is too large. Load diff
@@ -0,0 +1,17 @@
package emt.tile.generator;
import emt.util.EMTConfigHandler;
import ic2.api.energy.prefab.BasicSource;
import thaumcraft.api.aspects.Aspect;
public abstract class TileEntityCompressedGenerator
extends TileEntityBaseGenerator
{
public TileEntityCompressedGenerator(Aspect aspect)
{
super(aspect);
this.energySource = new BasicSource(this, 1000000.0D, 3);
this.energySource.setCapacity(EMTConfigHandler.EssentiaGeneratorStorage * 10.0D);
this.maxfuel *= 10;
}
}
@@ -1,18 +1,12 @@
package emt.tile.generator;
import emt.util.EMTEssentiasOutputs;
import net.minecraft.util.StatCollector;
import thaumcraft.api.aspects.Aspect;
public class TileEntityIgnisGenerator extends TileEntityBaseGenerator {
public TileEntityIgnisGenerator() {
aspect = Aspect.FIRE;
generating = EMTEssentiasOutputs.outputs.get(aspect.getTag());
}
@Override
public String getInventoryName() {
return StatCollector.translateToLocal("tile.EMT.essentia.ignis.name");
}
public class TileEntityIgnisGenerator
extends TileEntityBaseGenerator
{
public TileEntityIgnisGenerator()
{
super(Aspect.FIRE);
}
}
@@ -1,18 +1,12 @@
package emt.tile.generator;
import emt.util.EMTEssentiasOutputs;
import net.minecraft.util.StatCollector;
import thaumcraft.api.aspects.Aspect;
public class TileEntityLucrumGenerator extends TileEntityBaseGenerator {
public TileEntityLucrumGenerator() {
aspect = Aspect.GREED;
generating = EMTEssentiasOutputs.outputs.get(aspect.getTag());
}
@Override
public String getInventoryName() {
return StatCollector.translateToLocal("tile.EMT.essentia.lucrum.name");
}
public class TileEntityLucrumGenerator
extends TileEntityBaseGenerator
{
public TileEntityLucrumGenerator()
{
super(Aspect.GREED);
}
}
@@ -1,18 +1,12 @@
package emt.tile.generator;
import emt.util.EMTEssentiasOutputs;
import net.minecraft.util.StatCollector;
import thaumcraft.api.aspects.Aspect;
public class TileEntityPotentiaGenerator extends TileEntityBaseGenerator {
public TileEntityPotentiaGenerator() {
aspect = Aspect.ENERGY;
generating = EMTEssentiasOutputs.outputs.get(aspect.getTag());
}
@Override
public String getInventoryName() {
return StatCollector.translateToLocal("tile.EMT.essentia.potentia.name");
}
public class TileEntityPotentiaGenerator
extends TileEntityBaseGenerator
{
public TileEntityPotentiaGenerator()
{
super(Aspect.ENERGY);
}
}
@@ -0,0 +1,25 @@
package emt.tile.generator;
import emt.util.EMTEssentiasOutputs;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.List;
import net.minecraft.tileentity.TileEntity;
import thaumcraft.api.aspects.Aspect;
public class TileEntityReflexionGen
{
public static List L = new ArrayList(EMTEssentiasOutputs.outputs.keySet());
public static Class<? extends TileEntity>[] GensS = new Class[L.size()];
public static TileEntityBaseGenerator[] Gens = new TileEntityBaseGenerator[L.size()];
public TileEntityReflexionGen()
{
for (int i = 0; i < L.size(); i++)
{
GensS[i] = TileEntityBaseGenerator.class;
Gens[i] = new TileEntityBaseGenerator((Aspect)Aspect.aspects.get(L.get(i)));
}
}
}