Added removeAll for reactor and rolling machine. Closes #1427
This commit is contained in:
parent
dfa35e2652
commit
543a2a7271
3 changed files with 48 additions and 28 deletions
|
@ -35,7 +35,6 @@ import stanhebben.zenscript.annotations.ZenClass;
|
||||||
import stanhebben.zenscript.annotations.ZenMethod;
|
import stanhebben.zenscript.annotations.ZenMethod;
|
||||||
import techreborn.api.reactor.FusionReactorRecipe;
|
import techreborn.api.reactor.FusionReactorRecipe;
|
||||||
import techreborn.api.reactor.FusionReactorRecipeHelper;
|
import techreborn.api.reactor.FusionReactorRecipeHelper;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -55,7 +54,17 @@ public class CTFusionReactor {
|
||||||
|
|
||||||
@ZenMethod
|
@ZenMethod
|
||||||
public static void removeBottomInputRecipe(IIngredient iIngredient) {
|
public static void removeBottomInputRecipe(IIngredient iIngredient) {
|
||||||
CraftTweakerAPI.apply(new RemoveTopInput(iIngredient));
|
CraftTweakerAPI.apply(new RemoveBottomInput(iIngredient));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ZenMethod
|
||||||
|
public static void removeRecipe(IItemStack output) {
|
||||||
|
CraftTweakerAPI.apply(new Remove(CraftTweakerCompat.toStack(output)));
|
||||||
|
}
|
||||||
|
|
||||||
|
@ZenMethod
|
||||||
|
public static void removeAll() {
|
||||||
|
CraftTweakerAPI.apply(new RemoveAll());
|
||||||
}
|
}
|
||||||
|
|
||||||
private static class Add implements IAction {
|
private static class Add implements IAction {
|
||||||
|
@ -76,11 +85,6 @@ public class CTFusionReactor {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ZenMethod
|
|
||||||
public static void removeRecipe(IItemStack output) {
|
|
||||||
CraftTweakerAPI.apply(new Remove(CraftTweakerCompat.toStack(output)));
|
|
||||||
}
|
|
||||||
|
|
||||||
private static class Remove implements IAction {
|
private static class Remove implements IAction {
|
||||||
private final ItemStack output;
|
private final ItemStack output;
|
||||||
List<FusionReactorRecipe> removedRecipes = new ArrayList<FusionReactorRecipe>();
|
List<FusionReactorRecipe> removedRecipes = new ArrayList<FusionReactorRecipe>();
|
||||||
|
@ -97,7 +101,6 @@ public class CTFusionReactor {
|
||||||
FusionReactorRecipeHelper.reactorRecipes.remove(recipeType);
|
FusionReactorRecipeHelper.reactorRecipes.remove(recipeType);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -133,7 +136,6 @@ public class CTFusionReactor {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
|
||||||
private static class RemoveBottomInput implements IAction {
|
private static class RemoveBottomInput implements IAction {
|
||||||
private final IIngredient output;
|
private final IIngredient output;
|
||||||
List<FusionReactorRecipe> removedRecipes = new ArrayList<FusionReactorRecipe>();
|
List<FusionReactorRecipe> removedRecipes = new ArrayList<FusionReactorRecipe>();
|
||||||
|
@ -158,4 +160,17 @@ public class CTFusionReactor {
|
||||||
return "Removing Fusion Reactor recipe";
|
return "Removing Fusion Reactor recipe";
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static class RemoveAll implements IAction {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void apply() {
|
||||||
|
FusionReactorRecipeHelper.reactorRecipes.clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String describe() {
|
||||||
|
return "Removing all Fusion Reactor recipes";
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -24,6 +24,8 @@
|
||||||
|
|
||||||
package techreborn.compat.crafttweaker;
|
package techreborn.compat.crafttweaker;
|
||||||
|
|
||||||
|
import crafttweaker.CraftTweakerAPI;
|
||||||
|
import crafttweaker.IAction;
|
||||||
import crafttweaker.api.item.IIngredient;
|
import crafttweaker.api.item.IIngredient;
|
||||||
import crafttweaker.api.item.IItemStack;
|
import crafttweaker.api.item.IItemStack;
|
||||||
import gnu.trove.set.TCharSet;
|
import gnu.trove.set.TCharSet;
|
||||||
|
@ -66,6 +68,24 @@ public class CTRollingMachine {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ZenMethod
|
||||||
|
public static void removeAll() {
|
||||||
|
CraftTweakerAPI.apply(new RemoveAll());
|
||||||
|
}
|
||||||
|
|
||||||
|
private static class RemoveAll implements IAction{
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void apply() {
|
||||||
|
RollingMachineRecipe.instance.getRecipeList().clear();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String describe() {
|
||||||
|
return "Removing all Rolling Machine recipes";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
//Stolen from https://github.com/jaredlll08/MTLib/blob/1.12/src/main/java/com/blamejared/mtlib/helpers/InputHelper.java#L170-L213
|
//Stolen from https://github.com/jaredlll08/MTLib/blob/1.12/src/main/java/com/blamejared/mtlib/helpers/InputHelper.java#L170-L213
|
||||||
//License as seen here: https://github.com/jaredlll08/MTLib/blob/1.12/LICENSE.md (MIT at time of writing)
|
//License as seen here: https://github.com/jaredlll08/MTLib/blob/1.12/LICENSE.md (MIT at time of writing)
|
||||||
public static Object[] toShapedObjects(IIngredient[][] ingredients) {
|
public static Object[] toShapedObjects(IIngredient[][] ingredients) {
|
||||||
|
|
|
@ -24,20 +24,15 @@
|
||||||
|
|
||||||
package techreborn.compat.crafttweaker;
|
package techreborn.compat.crafttweaker;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
import crafttweaker.CraftTweakerAPI;
|
import crafttweaker.CraftTweakerAPI;
|
||||||
import crafttweaker.IAction;
|
import crafttweaker.IAction;
|
||||||
import crafttweaker.api.item.IIngredient;
|
import crafttweaker.api.item.IIngredient;
|
||||||
import crafttweaker.api.item.IItemStack;
|
import crafttweaker.api.item.IItemStack;
|
||||||
import crafttweaker.api.minecraft.CraftTweakerMC;
|
import crafttweaker.api.minecraft.CraftTweakerMC;
|
||||||
import reborncore.api.recipe.IBaseRecipeType;
|
|
||||||
import reborncore.api.recipe.RecipeHandler;
|
import reborncore.api.recipe.RecipeHandler;
|
||||||
import stanhebben.zenscript.annotations.ZenClass;
|
import stanhebben.zenscript.annotations.ZenClass;
|
||||||
import stanhebben.zenscript.annotations.ZenMethod;
|
import stanhebben.zenscript.annotations.ZenMethod;
|
||||||
import techreborn.api.Reference;
|
import techreborn.api.Reference;
|
||||||
import techreborn.api.recipe.BaseRecipe;
|
|
||||||
import techreborn.api.recipe.machines.ScrapboxRecipe;
|
import techreborn.api.recipe.machines.ScrapboxRecipe;
|
||||||
import techreborn.compat.crafttweaker.CTGeneric.Remove;
|
import techreborn.compat.crafttweaker.CTGeneric.Remove;
|
||||||
|
|
||||||
|
@ -58,8 +53,8 @@ public class CTScrapbox {
|
||||||
}
|
}
|
||||||
|
|
||||||
@ZenMethod
|
@ZenMethod
|
||||||
public static void removeAllRecipes() {
|
public static void removeAll() {
|
||||||
CraftTweakerAPI.apply(new RemoveAll(getMachineName()));
|
CraftTweakerAPI.apply(new RemoveAll());
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getMachineName() {
|
public static String getMachineName() {
|
||||||
|
@ -67,25 +62,15 @@ public class CTScrapbox {
|
||||||
}
|
}
|
||||||
|
|
||||||
public static class RemoveAll implements IAction {
|
public static class RemoveAll implements IAction {
|
||||||
List<BaseRecipe> removedRecipes = new ArrayList<BaseRecipe>();
|
|
||||||
private final String name;
|
|
||||||
|
|
||||||
public RemoveAll(String machineName) {
|
|
||||||
this.name = machineName;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void apply() {
|
public void apply() {
|
||||||
for (IBaseRecipeType recipeType : RecipeHandler.getRecipeClassFromName(name)) {
|
RecipeHandler.recipeList.removeAll(RecipeHandler.getRecipeClassFromName(Reference.scrapboxRecipe));
|
||||||
removedRecipes.add((BaseRecipe) recipeType);
|
|
||||||
RecipeHandler.recipeList.remove(recipeType);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String describe() {
|
public String describe() {
|
||||||
return "Removing all recipies for " + name;
|
return "Removing all Scrapbox recipies";
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue