Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 22 additions & 22 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,22 +1,22 @@
# eclipse
bin
*.launch
.settings
.metadata
.classpath
.project

# idea
out
*.ipr
*.iws
*.iml
.idea

# gradle
build
.gradle

# other
eclipse
run
# eclipse
bin
*.launch
.settings
.metadata
.classpath
.project
# idea
out
*.ipr
*.iws
*.iml
.idea
# gradle
build
.gradle
# other
eclipse
run
13 changes: 11 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ compileJava {
}

minecraft {
version = "1.12.2-14.23.4.2756"
version = "1.12.2-14.23.5.2847"
runDir = "run"

replace '${version}', project.version
Expand All @@ -34,18 +34,27 @@ minecraft {
// stable_# stables are built at the discretion of the MCP team.
// Use non-default mappings at your own risk. they may not always work.
// simply re-run your setup task after changing the mappings to update your workspace.
mappings = "snapshot_20171003"
mappings = "stable_39"
// makeObfSourceJar = false // an Srg named sources jar is made by default. uncomment this to disable.
}
repositories {
maven {
name 'jared maven'
url 'http://blamejared.com/maven'
}
maven {
name 'Progwml6 maven'
url 'https://dvs1.progwml6.com/files/maven/'
}
maven {
name 'JEI'
url 'https://modmaven.k-4u.nl'
}
}

dependencies {
deobfCompile "blusunrize:ImmersiveEngineering:0.12-+:deobf"
runtime "mezz.jei:jei_1.12.2:4.15.0.297"
}

processResources {
Expand Down
124 changes: 49 additions & 75 deletions src/main/java/antibluequirk/alternatingflux/AlternatingFlux.java
Original file line number Diff line number Diff line change
@@ -1,113 +1,87 @@
package antibluequirk.alternatingflux;

import java.util.ArrayList;
import java.util.List;

import org.apache.logging.log4j.Logger;

import antibluequirk.alternatingflux.block.BlockConnector;
import antibluequirk.alternatingflux.block.TileEntityRelayAF;
import antibluequirk.alternatingflux.block.TileEntityTransformerAF;
import antibluequirk.alternatingflux.item.ItemAFBase;
import antibluequirk.alternatingflux.item.ItemMaterial;
import antibluequirk.alternatingflux.item.ItemWireCoil;
import antibluequirk.alternatingflux.wire.AFWireType;
import blusunrize.immersiveengineering.ImmersiveEngineering;
import net.minecraft.block.Block;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.item.crafting.IRecipe;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.event.RegistryEvent;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.common.Mod.EventHandler;
import net.minecraftforge.fml.common.SidedProxy;
import net.minecraftforge.fml.common.event.*;
import net.minecraftforge.fml.common.eventhandler.SubscribeEvent;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.oredict.OreDictionary;
import net.minecraftforge.registries.IForgeRegistry;

@Mod(modid = AlternatingFlux.MODID, version = AlternatingFlux.VERSION, dependencies = "required-after:immersiveengineering@[0.12,)", acceptedMinecraftVersions = "[1.12.2]")
@Mod.EventBusSubscriber
public class AlternatingFlux {
public static final String MODID = "alternatingflux";
public static final String VERSION = "${version}";
public static final String MODNAME = "Alternating Flux";

public static final String MODID = "alternatingflux";
public static final String VERSION = "${version}";
public static final String MODNAME = "Alternating Flux";
public static Logger logger;

@Mod.Instance(MODID)
public static AlternatingFlux instance = new AlternatingFlux();
public static CreativeTabs creativeTab = new CreativeTabs(MODID) {
@Override
public ItemStack getTabIconItem() {
return new ItemStack(AlternatingFlux.item_coil, 1, 0);
}
};

public static final List<Block> blocks = new ArrayList<>();
public static final List<Item> items = new ArrayList<>();

public static BlockConnector block_conn = null;

public static ItemAFBase item_conn = null;
public static ItemWireCoil item_coil = null;
public static ItemMaterial item_material = null;
public static AlternatingFlux instance = new AlternatingFlux();
public static CreativeTabs creativeTab;

public static Item item_conn, item_coil, item_wire;
public static BlockConnector block_conn;

public static ResourceLocation TEX_PASSTHROUGH_AF = new ResourceLocation(AlternatingFlux.MODID, "blocks/passthrough_af");

@SidedProxy(clientSide = "antibluequirk.alternatingflux.client.ClientProxy", serverSide = "antibluequirk.alternatingflux.CommonProxy")
public static CommonProxy proxy;

@EventHandler
public void preInit(FMLPreInitializationEvent e) {
logger = e.getModLog();
Config.preInit(e);

AFWireType.init();
proxy.preInit();

GameRegistry.registerTileEntity(TileEntityRelayAF.class, MODID + ":af_relay");
GameRegistry.registerTileEntity(TileEntityTransformerAF.class, MODID + ":af_transformer");
public void preInit(FMLPreInitializationEvent event) {
logger = event.getModLog();

// Initialize the creative tab
if(AlternatingFluxConfig.mergeTab) AlternatingFlux.creativeTab = ImmersiveEngineering.creativeTab;
else
{
AlternatingFlux.creativeTab = new CreativeTabs(MODID) {
@Override
public ItemStack createIcon()
{
return new ItemStack(AlternatingFlux.item_coil, 1, 0);
}
};
}

item_wire = new Item().setRegistryName(new ResourceLocation(AlternatingFlux.MODID, "wire_constantan")).setTranslationKey("wire_constantan").setCreativeTab(creativeTab);
block_conn = new BlockConnector();
item_coil = new ItemWireCoil();

proxy.preInit();
}

private static ResourceLocation createRegistryName(String unlocalized)
{
unlocalized = unlocalized.substring(unlocalized.indexOf(MODID));
unlocalized = unlocalized.replaceFirst("\\.", ":");
return new ResourceLocation(unlocalized);

@EventHandler
public void init(FMLInitializationEvent event) {
proxy.init();
}

@EventHandler
public void postInit(FMLPostInitializationEvent event) {
proxy.postInit();
}

@SubscribeEvent
public static void registerBlocks(RegistryEvent.Register<Block> event) {
block_conn = new BlockConnector();

for (Block block : blocks)
event.getRegistry().register(block.setRegistryName(createRegistryName(block.getUnlocalizedName())));
event.getRegistry().register(block_conn);
}

@SubscribeEvent
public static void registerItems(RegistryEvent.Register<Item> event) {
//item_conn = block_conn.createItemBlock();
item_coil = new ItemWireCoil();
item_material = new ItemMaterial();

for (Item item : items)
event.getRegistry().register(item.setRegistryName(createRegistryName(item.getUnlocalizedName())));

OreDictionary.registerOre("wireConstantan", new ItemStack(item_material, 1, 0));
}

@SubscribeEvent
public static void registerRecipes(RegistryEvent.Register<IRecipe> event) {
//Recipes.addRecipes(event.getRegistry());
}

@EventHandler
public void init(FMLInitializationEvent e) {
}

@EventHandler
public void postInit(FMLPostInitializationEvent e) {
proxy.postInit();
IForgeRegistry<Item> reg = event.getRegistry();
reg.register(AlternatingFlux.block_conn.getItemBlock());
reg.registerAll(item_coil, item_wire);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
package antibluequirk.alternatingflux;

import net.minecraftforge.common.config.Config;

@Config(modid = AlternatingFlux.MODID, name = AlternatingFlux.MODID, category = "general")
public class AlternatingFluxConfig {
@Config.Comment({"The transfer rates for the wires."})
@Config.LangKey("config.alternatingflux.wireTransferRate.name")
public static int wireTransferRate = 131072;

@Config.Comment({"True to disable creation of Alternating Flux creative tab. The items will be available under Immersive Engineering tab"})
@Config.LangKey("config.alternatingflux.mergeTab.name")
@Config.RequiresMcRestart
public static boolean mergeTab = false;

@Config.Comment({
"The percentage of power lost every X blocks of distance for a wire network. (X is equal to the maximum wire length.)",
"The default value of 0.005 for AF is approximately equivalent to 10.67-14.93% over 1024 blocks, depending on the capacity penalty.",
"If you'd like to halve that penalty to 5.33-7.47%, set this value to 0.0025."
})
@Config.LangKey("config.alternatingflux.wireLossRatio.name")
public static double wireLossRatio = 0.005;

@Config.Comment({"The RGB values for the color of the wire."})
@Config.LangKey("config.alternatingflux.wireColouration.name")
public static int wireColouration = 0xf6866c;

@Config.Comment({"The maximum length of a single wire. ", "The loss penalty is applied for each of these lengths, so increasing this value increases the efficiency of the wire."})
@Config.LangKey("config.alternatingflux.wireLength.name")
public static int wireLength = 48;
}
15 changes: 15 additions & 0 deletions src/main/java/antibluequirk/alternatingflux/CommonProxy.java
Original file line number Diff line number Diff line change
@@ -1,9 +1,24 @@
package antibluequirk.alternatingflux;

import antibluequirk.alternatingflux.block.TileEntityRelayAF;
import antibluequirk.alternatingflux.block.TileEntityTransformerAF;
import antibluequirk.alternatingflux.wire.AFWireType;
import net.minecraft.item.ItemStack;
import net.minecraft.util.ResourceLocation;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.oredict.OreDictionary;

public class CommonProxy {
public void preInit() {
GameRegistry.registerTileEntity(TileEntityRelayAF.class, new ResourceLocation(AlternatingFlux.MODID, "af_relay"));
GameRegistry.registerTileEntity(TileEntityTransformerAF.class, new ResourceLocation(AlternatingFlux.MODID, "af_af_transformer"));
}

public void init() {
AFWireType.init();
}

public void postInit() {
OreDictionary.registerOre("wireConstantan", new ItemStack(AlternatingFlux.item_wire, 1, 0));
}
}
60 changes: 0 additions & 60 deletions src/main/java/antibluequirk/alternatingflux/Config.java

This file was deleted.

Loading