diff --git a/build.gradle b/build.gradle index 093e96fd3..458a1bbeb 100644 --- a/build.gradle +++ b/build.gradle @@ -36,8 +36,6 @@ minecraft { runs { client { workingDirectory project.file('run') - property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' - property 'forge.logging.console.level', 'debug' mods { actuallyadditions { source sourceSets.main @@ -47,8 +45,6 @@ minecraft { server { workingDirectory project.file('run') - property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' - property 'forge.logging.console.level', 'debug' mods { actuallyadditions { source sourceSets.main @@ -58,8 +54,6 @@ minecraft { data { workingDirectory project.file('run') - property 'forge.logging.markers', 'SCAN,REGISTRIES,REGISTRYDUMP' - property 'forge.logging.console.level', 'debug' args '--mod', 'actuallyadditions', '--all', '--output', file('src/generated/resources/'), '--existing', file('src/main/resources/') mods { diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache index 04dcd1010..d9518db0d 100644 --- a/src/generated/resources/.cache/cache +++ b/src/generated/resources/.cache/cache @@ -56,19 +56,19 @@ d8b99c7f215d465fc850a1194592d013534a4f13 data/actuallyadditions/recipes/drill_up 904fea248e94ca5f6f5e8c8b0a86cbb58a7fcdb2 data/actuallyadditions/recipes/drill_upgrade_speed_iii.json e486645f290728de9a6ed7e33c52cb6aa59f15d1 data/actuallyadditions/recipes/drill_upgrade_three_by_three.json 7dda4aacecfa2287bbb8ddde3d1a9418630bd578 data/actuallyadditions/recipes/empowerer.json -2e462a811b5513ff1ebd2e53c30c00b915b055cd data/actuallyadditions/recipes/empowering/diamatine.json -6eaf4dce3dff1f659e19c9d43697676aab3a364f data/actuallyadditions/recipes/empowering/diamatine_block.json -bc902cd6f6fb9f82873a2a70b414583b37c69667 data/actuallyadditions/recipes/empowering/emeradic.json -f2a75d7705a9e4c9283f5e81eed9f74ea35b9ff0 data/actuallyadditions/recipes/empowering/emeradic_block.json -6818e2883d3a45820bf91ddc6088e1d61a103d79 data/actuallyadditions/recipes/empowering/empowered_canola.json -dfaeebf801b6b463ade0c84c0ce59609b0acb7b6 data/actuallyadditions/recipes/empowering/enori.json -6bd59e8d8d57a25f2a5ba421419cdbb1d9d2f828 data/actuallyadditions/recipes/empowering/enori_block.json -3d7d9c9c3d4325a367216de8bc96d1e80a69e737 data/actuallyadditions/recipes/empowering/palis.json -f6216f204524dc168bc6aad1bc6c80184ab266ad data/actuallyadditions/recipes/empowering/palis_block.json -fba8f3439d45ef58d5daaf05904946984e9a3a5e data/actuallyadditions/recipes/empowering/restonia.json -336a4db9dff51dfe52c4f0a195f8bb8c0ed97f09 data/actuallyadditions/recipes/empowering/restonia_block.json -5a9cc160c10d88ee6dce01151f798bc68b870ab7 data/actuallyadditions/recipes/empowering/void.json -e9d945f5dc36d2ff5895e9565715d15ed085486d data/actuallyadditions/recipes/empowering/void_block.json +9316df62bc7b545672dedff2c762f9a0b766a0ea data/actuallyadditions/recipes/empowering/diamatine.json +a4b75e14148ccece9e0e28e20baa4e03ca3b86ed data/actuallyadditions/recipes/empowering/diamatine_block.json +f24a635e12529518687af4b2a05c65fc527ed625 data/actuallyadditions/recipes/empowering/emeradic.json +3e9844c73c0961a25c743336d7132417a0fa492d data/actuallyadditions/recipes/empowering/emeradic_block.json +e069e8f2429a4830ac0359545554da0361a8341b data/actuallyadditions/recipes/empowering/empowered_canola.json +0d1c582f3a224dddd276024c8a5603e0a6848f48 data/actuallyadditions/recipes/empowering/enori.json +3bcaf3ff322a000c84d268e616e8a3e584e01c45 data/actuallyadditions/recipes/empowering/enori_block.json +e4d136505f3e77399c0083c8e63b178b3446eec4 data/actuallyadditions/recipes/empowering/palis.json +d8f2aa6eeee377b743a62754e4365c3c238a5d67 data/actuallyadditions/recipes/empowering/palis_block.json +77ecf4721164a38d62e27128c833428a70319cb3 data/actuallyadditions/recipes/empowering/restonia.json +a388056389c80dab94220074e65eb5522dc19b11 data/actuallyadditions/recipes/empowering/restonia_block.json +48aab165ea325696ed7a3b7632160aa0c8cdf6de data/actuallyadditions/recipes/empowering/void.json +f2b6e259012a8d9889a325d0c9e6a44aff4a8cc5 data/actuallyadditions/recipes/empowering/void_block.json f4d47f3dbd7f20c539567efb8520ab2196a8bef8 data/actuallyadditions/recipes/engineer_goggles.json 3bcb439db08c2b931bec7d623c2b24738e515c0d data/actuallyadditions/recipes/engineer_goggles_advanced.json 80df7dd9bc05ca5666c4945d632f9bfdb4cd6191 data/actuallyadditions/recipes/ethetic_green_slab.json diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine.json index 83cf207e7..61a6b21b5 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:diamatine_crystal" }, - "modifier1": { - "tag": "forge:dyes/light_blue" - }, - "modifier2": { - "item": "minecraft:clay_ball" - }, - "modifier3": { - "item": "minecraft:clay_ball" - }, - "modifier4": { - "item": "minecraft:clay" - }, + "modifiers": [ + { + "tag": "forge:dyes/light_blue" + }, + { + "item": "minecraft:clay_ball" + }, + { + "item": "minecraft:clay_ball" + }, + { + "item": "minecraft:clay" + } + ], "energy": 5000, "time": 6522834, "color": 50, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine_block.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine_block.json index 9a9dccfe2..dabdd7754 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine_block.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/diamatine_block.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:diamatine_crystal_block" }, - "modifier1": { - "tag": "forge:dyes/light_blue" - }, - "modifier2": { - "item": "minecraft:clay_ball" - }, - "modifier3": { - "item": "minecraft:clay_ball" - }, - "modifier4": { - "item": "minecraft:clay" - }, + "modifiers": [ + { + "tag": "forge:dyes/light_blue" + }, + { + "item": "minecraft:clay_ball" + }, + { + "item": "minecraft:clay_ball" + }, + { + "item": "minecraft:clay" + } + ], "energy": 50000, "time": 6522834, "color": 500, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic.json index 9f21d944c..5098b13c8 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:emeradic_crystal" }, - "modifier1": { - "tag": "forge:dyes/lime" - }, - "modifier2": { - "item": "minecraft:tall_grass" - }, - "modifier3": { - "tag": "minecraft:saplings" - }, - "modifier4": { - "tag": "forge:slimeballs" - }, + "modifiers": [ + { + "tag": "forge:dyes/lime" + }, + { + "item": "minecraft:tall_grass" + }, + { + "tag": "minecraft:saplings" + }, + { + "tag": "forge:slimeballs" + } + ], "energy": 5000, "time": 3492376, "color": 50, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic_block.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic_block.json index a525722bf..254f2b8a8 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic_block.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/emeradic_block.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:emeradic_crystal_block" }, - "modifier1": { - "tag": "forge:dyes/lime" - }, - "modifier2": { - "item": "minecraft:tall_grass" - }, - "modifier3": { - "tag": "minecraft:saplings" - }, - "modifier4": { - "tag": "forge:slimeballs" - }, + "modifiers": [ + { + "tag": "forge:dyes/lime" + }, + { + "item": "minecraft:tall_grass" + }, + { + "tag": "minecraft:saplings" + }, + { + "tag": "forge:slimeballs" + } + ], "energy": 50000, "time": 3492376, "color": 500, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/empowered_canola.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/empowered_canola.json index 2e5bc876a..6831966f9 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/empowered_canola.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/empowered_canola.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:crystallized_canola_seed" }, - "modifier1": { - "item": "actuallyadditions:canola_seed" - }, - "modifier2": { - "item": "actuallyadditions:canola_seed" - }, - "modifier3": { - "item": "actuallyadditions:canola_seed" - }, - "modifier4": { - "item": "actuallyadditions:canola_seed" - }, + "modifiers": [ + { + "item": "actuallyadditions:canola_seed" + }, + { + "item": "actuallyadditions:canola_seed" + }, + { + "item": "actuallyadditions:canola_seed" + }, + { + "item": "actuallyadditions:canola_seed" + } + ], "energy": 1000, "time": 88908, "color": 30, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/enori.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/enori.json index 67d636771..708e4c399 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/enori.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/enori.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:enori_crystal" }, - "modifier1": { - "tag": "forge:dyes/gray" - }, - "modifier2": { - "item": "minecraft:snowball" - }, - "modifier3": { - "item": "minecraft:stone_button" - }, - "modifier4": { - "tag": "forge:cobblestone" - }, + "modifiers": [ + { + "tag": "forge:dyes/gray" + }, + { + "item": "minecraft:snowball" + }, + { + "item": "minecraft:stone_button" + }, + { + "tag": "forge:cobblestone" + } + ], "energy": 5000, "time": 13421772, "color": 50, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/enori_block.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/enori_block.json index 0a10df9fc..08bddb5ba 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/enori_block.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/enori_block.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:enori_crystal_block" }, - "modifier1": { - "tag": "forge:dyes/gray" - }, - "modifier2": { - "item": "minecraft:snowball" - }, - "modifier3": { - "item": "minecraft:stone_button" - }, - "modifier4": { - "tag": "forge:cobblestone" - }, + "modifiers": [ + { + "tag": "forge:dyes/gray" + }, + { + "item": "minecraft:snowball" + }, + { + "item": "minecraft:stone_button" + }, + { + "tag": "forge:cobblestone" + } + ], "energy": 50000, "time": 13421772, "color": 500, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/palis.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/palis.json index 84a9d6024..ea196c658 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/palis.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/palis.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:palis_crystal" }, - "modifier1": { - "tag": "forge:dyes/cyan" - }, - "modifier2": { - "item": "minecraft:prismarine_shard" - }, - "modifier3": { - "item": "minecraft:prismarine_shard" - }, - "modifier4": { - "item": "minecraft:prismarine_shard" - }, + "modifiers": [ + { + "tag": "forge:dyes/cyan" + }, + { + "item": "minecraft:prismarine_shard" + }, + { + "item": "minecraft:prismarine_shard" + }, + { + "item": "minecraft:prismarine_shard" + } + ], "energy": 5000, "time": 2437779, "color": 50, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/palis_block.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/palis_block.json index 580d48e4c..c223f1aba 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/palis_block.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/palis_block.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:palis_crystal_block" }, - "modifier1": { - "tag": "forge:dyes/cyan" - }, - "modifier2": { - "item": "minecraft:prismarine_shard" - }, - "modifier3": { - "item": "minecraft:prismarine_shard" - }, - "modifier4": { - "item": "minecraft:prismarine_shard" - }, + "modifiers": [ + { + "tag": "forge:dyes/cyan" + }, + { + "item": "minecraft:prismarine_shard" + }, + { + "item": "minecraft:prismarine_shard" + }, + { + "item": "minecraft:prismarine_shard" + } + ], "energy": 50000, "time": 2437779, "color": 500, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia.json index 0e7c07363..0cb187408 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:restonia_crystal" }, - "modifier1": { - "tag": "forge:dyes/red" - }, - "modifier2": { - "item": "minecraft:nether_brick" - }, - "modifier3": { - "tag": "forge:dusts/redstone" - }, - "modifier4": { - "item": "minecraft:brick" - }, + "modifiers": [ + { + "tag": "forge:dyes/red" + }, + { + "item": "minecraft:nether_brick" + }, + { + "tag": "forge:dusts/redstone" + }, + { + "item": "minecraft:brick" + } + ], "energy": 5000, "time": 10365735, "color": 50, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia_block.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia_block.json index 9be3cb656..1ad47ed32 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia_block.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/restonia_block.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:restonia_crystal_block" }, - "modifier1": { - "tag": "forge:dyes/red" - }, - "modifier2": { - "item": "minecraft:nether_brick" - }, - "modifier3": { - "tag": "forge:dusts/redstone" - }, - "modifier4": { - "item": "minecraft:brick" - }, + "modifiers": [ + { + "tag": "forge:dyes/red" + }, + { + "item": "minecraft:nether_brick" + }, + { + "tag": "forge:dusts/redstone" + }, + { + "item": "minecraft:brick" + } + ], "energy": 50000, "time": 10365735, "color": 500, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/void.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/void.json index aec065799..a53b0c5ad 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/void.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/void.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:void_crystal" }, - "modifier1": { - "tag": "forge:dyes/black" - }, - "modifier2": { - "tag": "minecraft:coals" - }, - "modifier3": { - "item": "minecraft:flint" - }, - "modifier4": { - "tag": "forge:stone" - }, + "modifiers": [ + { + "tag": "forge:dyes/black" + }, + { + "tag": "minecraft:coals" + }, + { + "item": "minecraft:flint" + }, + { + "tag": "forge:stone" + } + ], "energy": 5000, "time": 3355443, "color": 50, diff --git a/src/generated/resources/data/actuallyadditions/recipes/empowering/void_block.json b/src/generated/resources/data/actuallyadditions/recipes/empowering/void_block.json index fce21cdd1..9e649110f 100644 --- a/src/generated/resources/data/actuallyadditions/recipes/empowering/void_block.json +++ b/src/generated/resources/data/actuallyadditions/recipes/empowering/void_block.json @@ -3,18 +3,20 @@ "base": { "item": "actuallyadditions:void_crystal_block" }, - "modifier1": { - "tag": "forge:dyes/black" - }, - "modifier2": { - "tag": "minecraft:coals" - }, - "modifier3": { - "item": "minecraft:flint" - }, - "modifier4": { - "tag": "forge:stone" - }, + "modifiers": [ + { + "tag": "forge:dyes/black" + }, + { + "tag": "minecraft:coals" + }, + { + "item": "minecraft:flint" + }, + { + "tag": "forge:stone" + } + ], "energy": 50000, "time": 3355443, "color": 500, diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/CrushingRecipe.java b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/CrushingRecipe.java index d18e6577b..5bf040bc5 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/CrushingRecipe.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/CrushingRecipe.java @@ -113,7 +113,7 @@ public class CrushingRecipe implements IRecipe { public CrushingRecipe fromJson(@Nonnull ResourceLocation pRecipeId, @Nonnull JsonObject pJson) { Ingredient ingredient = Ingredient.fromJson(JSONUtils.getAsJsonObject(pJson, "ingredient")); - JsonArray resultList = JSONUtils.getAsJsonObject(pJson, "result").getAsJsonArray(); + JsonArray resultList = JSONUtils.getAsJsonArray(pJson, "result"); if (resultList.size() < 1) throw new IllegalStateException(pRecipeId.toString() + ": Recipe must contain at least 1 result item"); diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/EmpowererRecipe.java b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/EmpowererRecipe.java index ec25c9e61..d70271841 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/EmpowererRecipe.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/crafting/EmpowererRecipe.java @@ -1,5 +1,6 @@ package de.ellpeck.actuallyadditions.mod.crafting; +import com.google.gson.JsonArray; import com.google.gson.JsonObject; import net.minecraft.data.IFinishedRecipe; import net.minecraft.inventory.IInventory; @@ -154,10 +155,15 @@ public class EmpowererRecipe implements IRecipe { @Nonnull public EmpowererRecipe fromJson(@Nonnull ResourceLocation pRecipeId, @Nonnull JsonObject pJson) { Ingredient base = Ingredient.fromJson(JSONUtils.getAsJsonObject(pJson, "base")); - Ingredient mod1 = Ingredient.fromJson(JSONUtils.getAsJsonObject(pJson, "modifier1")); - Ingredient mod2 = Ingredient.fromJson(JSONUtils.getAsJsonObject(pJson, "modifier2")); - Ingredient mod3 = Ingredient.fromJson(JSONUtils.getAsJsonObject(pJson, "modifier3")); - Ingredient mod4 = Ingredient.fromJson(JSONUtils.getAsJsonObject(pJson, "modifier4")); + + JsonArray modifiers = JSONUtils.getAsJsonArray(pJson, "modifiers"); + if (modifiers.size() != 4) + throw new IllegalStateException(pRecipeId.toString() + ": Must have exactly 4 modifiers, has: " + modifiers.size()); + + Ingredient mod1 = Ingredient.fromJson(modifiers.get(0)); + Ingredient mod2 = Ingredient.fromJson(modifiers.get(1)); + Ingredient mod3 = Ingredient.fromJson(modifiers.get(2)); + Ingredient mod4 = Ingredient.fromJson(modifiers.get(3)); int energy = JSONUtils.getAsInt(pJson, "energy"); int color = JSONUtils.getAsInt(pJson, "color"); int time = JSONUtils.getAsInt(pJson, "time"); @@ -225,10 +231,15 @@ public class EmpowererRecipe implements IRecipe { @Override public void serializeRecipeData(JsonObject pJson) { pJson.add("base", base.toJson()); - pJson.add("modifier1", mod1.toJson()); - pJson.add("modifier2", mod2.toJson()); - pJson.add("modifier3", mod3.toJson()); - pJson.add("modifier4", mod4.toJson()); + + JsonArray modifiers = new JsonArray(); + + modifiers.add(mod1.toJson()); + modifiers.add(mod2.toJson()); + modifiers.add(mod3.toJson()); + modifiers.add(mod4.toJson()); + + pJson.add("modifiers", modifiers); pJson.addProperty("energy", energy); pJson.addProperty("time", time); pJson.addProperty("color", color);