Skip to content

Commit 7776f98

Browse files
committed
Update marcin212's minetweaker integration to use the new API
1 parent dcb1d99 commit 7776f98

13 files changed

Lines changed: 106 additions & 94 deletions

build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -84,8 +84,8 @@ repositories {
8484
url = "http://default.mobiusstrip.eu/maven/"
8585
}
8686
ivy {
87-
name = 'MineTweaker3'
88-
artifactPattern = "http://minetweaker3.powerofbytes.com/download/[module]-[classifier]-[revision].[ext]"
87+
name 'MineTweaker3'
88+
artifactPattern "http://minetweaker3.powerofbytes.com/download/[module]-[classifier]-[revision].[ext]"
8989
}
9090
}
9191

src/main/java/mods/eln/Eln.java

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,6 @@
1313
import mods.eln.api.Utilities;
1414
import mods.eln.api.recipe.Recipe;
1515
import mods.eln.api.recipe.RecipesList;
16-
import mods.eln.packets.*;
1716
import mods.eln.cable.CableRenderDescriptor;
1817
import mods.eln.client.ClientKeyHandler;
1918
import mods.eln.client.SoundLoader;
@@ -149,7 +148,6 @@
149148
import mods.eln.transparentnode.waterturbine.WaterTurbineDescriptor;
150149
import mods.eln.transparentnode.windturbine.WindTurbineDescriptor;
151150
import mods.eln.wiki.Data;
152-
153151
import net.minecraft.block.Block;
154152
import net.minecraft.block.material.Material;
155153
import net.minecraft.command.ICommandManager;
@@ -170,7 +168,6 @@
170168
import net.minecraft.server.MinecraftServer;
171169
import net.minecraft.tileentity.TileEntity;
172170
import net.minecraft.world.WorldServer;
173-
174171
import net.minecraftforge.common.MinecraftForge;
175172
import net.minecraftforge.common.config.Configuration;
176173
import net.minecraftforge.common.config.Property;
@@ -965,8 +962,8 @@ public void postInit(FMLPostInitializationEvent event) {
965962
serverEventListener = new ServerEventListener();
966963

967964
if(Loader.isModLoaded("MineTweaker3")){
968-
MinetweakerIntegration.instance.initialize();
969-
}
965+
MinetweakerIntegration.INSTANCE.initialize();
966+
}
970967
}
971968

972969
/*

src/main/java/mods/eln/api/Misc.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package mods.eln.api;
22

3+
import java.lang.reflect.Field;
4+
35
/**
46
* Created by Gregory Maddra on 2016-11-16.
57
*/
@@ -9,7 +11,9 @@ public static Object getRecipeList(String list){
911
try {
1012
Class<?> Eln = getEln();
1113
Object instanceObject = getElnInstance(Eln);
12-
return Eln != null ? Eln.getDeclaredField(list).get(instanceObject) : null;
14+
Field recipeList = Eln.getDeclaredField(list);
15+
recipeList.setAccessible(true);
16+
return Eln != null ? recipeList.get(instanceObject) : null;
1317
} catch (NoSuchFieldException | IllegalAccessException e) {
1418
e.printStackTrace();
1519
}

src/main/java/mods/eln/api/recipe/CompressorRecipeList.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package mods.eln.api.recipe;
22

3-
import java.util.ArrayList;
4-
53
import mods.eln.api.Misc;
64
import net.minecraft.item.ItemStack;
75

6+
import java.util.ArrayList;
7+
88
public class CompressorRecipeList implements IELNMachineRecipeList {
99
private static RecipesList recipes = (RecipesList) Misc.getRecipeList("compressorRecipes");
1010

@@ -38,8 +38,13 @@ public void addRecipe(ItemStack input, ItemStack output, double energy){
3838
Recipe recipe = new Recipe(input, output, energy);
3939
recipes.addRecipe(recipe);
4040
}
41-
42-
/**
41+
42+
public void addRecipe(Recipe recipe) {
43+
//Maintain existing checks
44+
addRecipe(recipe.input, recipe.output, recipe.energy);
45+
}
46+
47+
/**
4348
* Removes a recipe from the compressor
4449
* @param input an ItemStack representing the input of the recipe
4550
*/

src/main/java/mods/eln/api/recipe/IELNMachineRecipeList.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,8 @@ public interface IELNMachineRecipeList {
1616

1717
void addRecipe(ItemStack input, ItemStack output, double energy) throws IllegalArgumentException;
1818

19+
void addRecipe(Recipe recipe);
20+
1921
void removeRecipe(ItemStack input);
2022

2123
void removeRecipeByOutput(ItemStack output);

src/main/java/mods/eln/api/recipe/MaceratorRecipeList.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package mods.eln.api.recipe;
22

3-
import java.util.ArrayList;
4-
53
import mods.eln.api.Misc;
64
import net.minecraft.item.ItemStack;
75

6+
import java.util.ArrayList;
7+
88
public class MaceratorRecipeList implements IELNMachineRecipeList {
99

1010
private static RecipesList recipes = (RecipesList) Misc.getRecipeList("maceratorRecipes");
@@ -42,8 +42,13 @@ public void addRecipe(ItemStack input, ItemStack output, double energy) {
4242
recipes.addRecipe(recipe);
4343
System.out.println("Added recipe to macerator!");
4444
}
45-
46-
/**
45+
46+
public void addRecipe(Recipe recipe) {
47+
//Maintain existing checks
48+
addRecipe(recipe.input, recipe.output, recipe.energy);
49+
}
50+
51+
/**
4752
* Removes a recipe from the macerator
4853
* @param input an ItemStack representing the input of the recipe
4954
*/

src/main/java/mods/eln/api/recipe/MagnetizerRecipeList.java

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
package mods.eln.api.recipe;
22

3-
import java.util.ArrayList;
4-
53
import mods.eln.api.Misc;
64
import net.minecraft.item.ItemStack;
75

6+
import java.util.ArrayList;
7+
88
public class MagnetizerRecipeList implements IELNMachineRecipeList {
9-
private static RecipesList recipes = (RecipesList) Misc.getRecipeList("magnetiserRecipes");
10-
11-
/**
9+
private static RecipesList recipes = (RecipesList) Misc.getRecipeList("magnetizerRecipes");
10+
11+
/**
1212
* Adds a new recipe to the magnetizer
1313
* @param input an ItemStack representing the input of the recipe
1414
* @param output an ItemStack[] representing the outputs of the recipe
@@ -38,7 +38,12 @@ public void addRecipe(ItemStack input, ItemStack output, double energy){
3838
Recipe recipe = new Recipe(input, output, energy);
3939
recipes.addRecipe(recipe);
4040
}
41-
41+
42+
public void addRecipe(Recipe recipe) {
43+
//Maintain existing checks
44+
addRecipe(recipe.input, recipe.output, recipe.energy);
45+
}
46+
4247
/**
4348
* Removes a recipe from the magnetizer
4449
* @param input an ItemStack representing the input of the recipe

src/main/java/mods/eln/api/recipe/PlateMachineRecipeList.java

Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
package mods.eln.api.recipe;
22

3-
import java.util.ArrayList;
4-
53
import mods.eln.api.Misc;
64
import net.minecraft.item.ItemStack;
75

6+
import java.util.ArrayList;
7+
88
public class PlateMachineRecipeList implements IELNMachineRecipeList {
99
private static RecipesList recipes = (RecipesList) Misc.getRecipeList("plateMachineRecipes");
1010

@@ -38,8 +38,13 @@ public void addRecipe(ItemStack input, ItemStack output, double energy){
3838
Recipe recipe = new Recipe(input, output, energy);
3939
recipes.addRecipe(recipe);
4040
}
41-
42-
/**
41+
42+
public void addRecipe(Recipe recipe) {
43+
//Maintain existing checks
44+
addRecipe(recipe.input, recipe.output, recipe.energy);
45+
}
46+
47+
/**
4348
* Removes a recipe from the plate machine
4449
* @param input an ItemStack representing the input of the recipe
4550
*/

src/main/java/mods/eln/integration/minetweaker/MinetweakerIntegration.java

Lines changed: 0 additions & 20 deletions
This file was deleted.
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
package mods.eln.integration.minetweaker
2+
3+
import minetweaker.MineTweakerAPI
4+
import mods.eln.integration.minetweaker.machines.Compressor
5+
import mods.eln.integration.minetweaker.machines.Macerator
6+
import mods.eln.integration.minetweaker.machines.Magnetizer
7+
import mods.eln.integration.minetweaker.machines.PlateMachine
8+
9+
object MinetweakerIntegration {
10+
11+
fun initialize() {
12+
MineTweakerAPI.registerClass(Macerator::class.java)
13+
MineTweakerAPI.registerClass(Compressor::class.java)
14+
MineTweakerAPI.registerClass(Magnetizer::class.java)
15+
MineTweakerAPI.registerClass(PlateMachine::class.java)
16+
}
17+
18+
}

0 commit comments

Comments
 (0)