From 7cf182652b22390910b4393c3de2f4da106d7b1d Mon Sep 17 00:00:00 2001 From: stfwi Date: Wed, 27 May 2020 20:11:53 +0200 Subject: [PATCH] v1.1.0-b1 commit: E-Furnace fixed (issue #97). 1.14/1.15: Sheet Metal Slab Slices added, Config handling unified, Dense Grid Sand textures tweaked. --- 1.12/Makefile | 49 +- 1.12/meta/update.json | 3 +- 1.12/readme.md | 4 +- .../java/wile/engineersdecor/ModContent.java | 2 +- .../blocks/BlockDecorFurnaceElectrical.java | 13 +- .../blocks/BlockDecorLabeledCrate.java | 228 +++++---- .../wile/engineersdecor/detail/ModTesrs.java | 3 +- 1.12/tasks.js | 25 - 1.14/Makefile | 37 +- 1.14/meta/update.json | 3 +- 1.14/readme.md | 6 +- .../java/wile/engineersdecor/ModConfig.java | 433 ++++++++++-------- .../java/wile/engineersdecor/ModContent.java | 33 +- .../blocks/EdElectricalFurnace.java | 10 +- .../engineersdecor/eapi/jei/JEIPlugin.java | 20 +- .../libmc/detail/Inventories.java | 45 +- ...halfslab_sheetmetal_aluminum_s0_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s1_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s2_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s3_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s4_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s5_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s6_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s7_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s8_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s9_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sa_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sb_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sc_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sd_model.json | 2 +- ...halfslab_sheetmetal_aluminum_se_model.json | 2 +- .../halfslab_sheetmetal_copper_s0_model.json | 2 +- .../halfslab_sheetmetal_copper_s1_model.json | 2 +- .../halfslab_sheetmetal_copper_s2_model.json | 2 +- .../halfslab_sheetmetal_copper_s3_model.json | 2 +- .../halfslab_sheetmetal_copper_s4_model.json | 2 +- .../halfslab_sheetmetal_copper_s5_model.json | 2 +- .../halfslab_sheetmetal_copper_s6_model.json | 2 +- .../halfslab_sheetmetal_copper_s7_model.json | 2 +- .../halfslab_sheetmetal_copper_s8_model.json | 2 +- .../halfslab_sheetmetal_copper_s9_model.json | 2 +- .../halfslab_sheetmetal_copper_sa_model.json | 2 +- .../halfslab_sheetmetal_copper_sb_model.json | 2 +- .../halfslab_sheetmetal_copper_sc_model.json | 2 +- .../halfslab_sheetmetal_copper_sd_model.json | 2 +- .../halfslab_sheetmetal_copper_se_model.json | 2 +- .../halfslab_sheetmetal_gold_s0_model.json | 2 +- .../halfslab_sheetmetal_gold_s1_model.json | 2 +- .../halfslab_sheetmetal_gold_s2_model.json | 2 +- .../halfslab_sheetmetal_gold_s3_model.json | 2 +- .../halfslab_sheetmetal_gold_s4_model.json | 2 +- .../halfslab_sheetmetal_gold_s5_model.json | 2 +- .../halfslab_sheetmetal_gold_s6_model.json | 2 +- .../halfslab_sheetmetal_gold_s7_model.json | 2 +- .../halfslab_sheetmetal_gold_s8_model.json | 2 +- .../halfslab_sheetmetal_gold_s9_model.json | 2 +- .../halfslab_sheetmetal_gold_sa_model.json | 2 +- .../halfslab_sheetmetal_gold_sb_model.json | 2 +- .../halfslab_sheetmetal_gold_sc_model.json | 2 +- .../halfslab_sheetmetal_gold_sd_model.json | 2 +- .../halfslab_sheetmetal_gold_se_model.json | 2 +- .../halfslab_sheetmetal_iron_s0_model.json | 2 +- .../halfslab_sheetmetal_iron_s1_model.json | 2 +- .../halfslab_sheetmetal_iron_s2_model.json | 2 +- .../halfslab_sheetmetal_iron_s3_model.json | 2 +- .../halfslab_sheetmetal_iron_s4_model.json | 2 +- .../halfslab_sheetmetal_iron_s5_model.json | 2 +- .../halfslab_sheetmetal_iron_s6_model.json | 2 +- .../halfslab_sheetmetal_iron_s7_model.json | 2 +- .../halfslab_sheetmetal_iron_s8_model.json | 2 +- .../halfslab_sheetmetal_iron_s9_model.json | 2 +- .../halfslab_sheetmetal_iron_sa_model.json | 2 +- .../halfslab_sheetmetal_iron_sb_model.json | 2 +- .../halfslab_sheetmetal_iron_sc_model.json | 2 +- .../halfslab_sheetmetal_iron_sd_model.json | 2 +- .../halfslab_sheetmetal_iron_se_model.json | 2 +- .../halfslab_sheetmetal_steel_s0_model.json | 2 +- .../halfslab_sheetmetal_steel_s1_model.json | 2 +- .../halfslab_sheetmetal_steel_s2_model.json | 2 +- .../halfslab_sheetmetal_steel_s3_model.json | 2 +- .../halfslab_sheetmetal_steel_s4_model.json | 2 +- .../halfslab_sheetmetal_steel_s5_model.json | 2 +- .../halfslab_sheetmetal_steel_s6_model.json | 2 +- .../halfslab_sheetmetal_steel_s7_model.json | 2 +- .../halfslab_sheetmetal_steel_s8_model.json | 2 +- .../halfslab_sheetmetal_steel_s9_model.json | 2 +- .../halfslab_sheetmetal_steel_sa_model.json | 2 +- .../halfslab_sheetmetal_steel_sb_model.json | 2 +- .../halfslab_sheetmetal_steel_sc_model.json | 2 +- .../halfslab_sheetmetal_steel_sd_model.json | 2 +- .../halfslab_sheetmetal_steel_se_model.json | 2 +- .../halfslab_treated_wood_s0_model.json | 2 +- .../halfslab_treated_wood_s1_model.json | 2 +- .../halfslab_treated_wood_s2_model.json | 2 +- .../halfslab_treated_wood_s3_model.json | 2 +- .../halfslab_treated_wood_s4_model.json | 2 +- .../halfslab_treated_wood_s5_model.json | 2 +- .../halfslab_treated_wood_s6_model.json | 2 +- .../halfslab_treated_wood_s7_model.json | 2 +- .../halfslab_treated_wood_s8_model.json | 2 +- .../halfslab_treated_wood_s9_model.json | 2 +- .../halfslab_treated_wood_sa_model.json | 2 +- .../halfslab_treated_wood_sb_model.json | 2 +- .../halfslab_treated_wood_sc_model.json | 2 +- .../halfslab_treated_wood_sd_model.json | 2 +- .../halfslab_treated_wood_se_model.json | 2 +- .../item/halfslab_sheetmetal_aluminum.json | 2 +- .../item/halfslab_sheetmetal_copper.json | 2 +- .../models/item/halfslab_sheetmetal_gold.json | 2 +- .../models/item/halfslab_sheetmetal_iron.json | 2 +- .../item/halfslab_sheetmetal_steel.json | 2 +- .../models/item/halfslab_treated_wood.json | 2 +- .../block/soil/dense_grit_sand_texture0.png | Bin 868 -> 862 bytes .../block/soil/dense_grit_sand_texture1.png | Bin 849 -> 844 bytes .../block/soil/dense_grit_sand_texture2.png | Bin 825 -> 836 bytes .../block/soil/dense_grit_sand_texture3.png | Bin 868 -> 869 bytes .../block/soil/dense_grit_sand_texture4.png | Bin 837 -> 836 bytes .../block/soil/dense_grit_sand_texture5.png | Bin 858 -> 840 bytes .../block/soil/dense_grit_sand_texture6.png | Bin 859 -> 859 bytes .../block/soil/dense_grit_sand_texture7.png | Bin 852 -> 856 bytes 1.14/tasks.js | 5 - 1.15/Makefile | 37 +- 1.15/meta/update.json | 3 +- 1.15/readme.md | 7 +- .../java/wile/engineersdecor/ModConfig.java | 424 +++++++++-------- .../java/wile/engineersdecor/ModContent.java | 35 +- .../blocks/EdElectricalFurnace.java | 8 +- .../engineersdecor/blocks/EdLabeledCrate.java | 4 +- .../engineersdecor/detail/ModRenderers.java | 2 +- .../engineersdecor/eapi/jei/JEIPlugin.java | 19 +- .../libmc/datagen/AssetsDataGen.java | 47 ++ .../libmc/datagen/LootTableGen.java | 2 +- .../libmc/detail/Inventories.java | 43 +- 1.15/src/main/resources/META-INF/mods.toml | 2 +- .../steel_mesh_fence_gate_inventory.json | 2 +- .../fence/steel_mesh_fence_inventory.json | 2 +- .../block/ladder/metal_rung_ladder_model.json | 1 + .../block/ladder/metal_rung_steps_model.json | 3 +- .../ladder/treated_wood_ladder_model.json | 3 +- .../block/misc/labeled_crate_model.json | 3 +- .../block/pole/straight_pole_head_model.json | 3 +- .../block/pole/straight_pole_model.json | 3 +- .../pole/straight_pole_support_model.json | 3 +- .../straight_thick_metal_pole_head_model.json | 3 +- .../pole/straight_thick_metal_pole_model.json | 3 +- .../straight_thin_metal_pole_head_model.json | 3 +- .../pole/straight_thin_metal_pole_model.json | 3 +- .../models/block/sign/sign_decor_model.json | 3 +- .../models/block/sign/sign_exit_model.json | 3 +- .../block/sign/sign_rect14x14_model.json | 3 +- .../block/sign/sign_triangular_model.json | 3 +- ...halfslab_sheetmetal_aluminum_s0_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s1_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s2_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s3_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s4_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s5_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s6_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s7_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s8_model.json | 2 +- ...halfslab_sheetmetal_aluminum_s9_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sa_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sb_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sc_model.json | 2 +- ...halfslab_sheetmetal_aluminum_sd_model.json | 2 +- ...halfslab_sheetmetal_aluminum_se_model.json | 2 +- .../halfslab_sheetmetal_copper_s0_model.json | 2 +- .../halfslab_sheetmetal_copper_s1_model.json | 2 +- .../halfslab_sheetmetal_copper_s2_model.json | 2 +- .../halfslab_sheetmetal_copper_s3_model.json | 2 +- .../halfslab_sheetmetal_copper_s4_model.json | 2 +- .../halfslab_sheetmetal_copper_s5_model.json | 2 +- .../halfslab_sheetmetal_copper_s6_model.json | 2 +- .../halfslab_sheetmetal_copper_s7_model.json | 2 +- .../halfslab_sheetmetal_copper_s8_model.json | 2 +- .../halfslab_sheetmetal_copper_s9_model.json | 2 +- .../halfslab_sheetmetal_copper_sa_model.json | 2 +- .../halfslab_sheetmetal_copper_sb_model.json | 2 +- .../halfslab_sheetmetal_copper_sc_model.json | 2 +- .../halfslab_sheetmetal_copper_sd_model.json | 2 +- .../halfslab_sheetmetal_copper_se_model.json | 2 +- .../halfslab_sheetmetal_gold_s0_model.json | 2 +- .../halfslab_sheetmetal_gold_s1_model.json | 2 +- .../halfslab_sheetmetal_gold_s2_model.json | 2 +- .../halfslab_sheetmetal_gold_s3_model.json | 2 +- .../halfslab_sheetmetal_gold_s4_model.json | 2 +- .../halfslab_sheetmetal_gold_s5_model.json | 2 +- .../halfslab_sheetmetal_gold_s6_model.json | 2 +- .../halfslab_sheetmetal_gold_s7_model.json | 2 +- .../halfslab_sheetmetal_gold_s8_model.json | 2 +- .../halfslab_sheetmetal_gold_s9_model.json | 2 +- .../halfslab_sheetmetal_gold_sa_model.json | 2 +- .../halfslab_sheetmetal_gold_sb_model.json | 2 +- .../halfslab_sheetmetal_gold_sc_model.json | 2 +- .../halfslab_sheetmetal_gold_sd_model.json | 2 +- .../halfslab_sheetmetal_gold_se_model.json | 2 +- .../halfslab_sheetmetal_iron_s0_model.json | 2 +- .../halfslab_sheetmetal_iron_s1_model.json | 2 +- .../halfslab_sheetmetal_iron_s2_model.json | 2 +- .../halfslab_sheetmetal_iron_s3_model.json | 2 +- .../halfslab_sheetmetal_iron_s4_model.json | 2 +- .../halfslab_sheetmetal_iron_s5_model.json | 2 +- .../halfslab_sheetmetal_iron_s6_model.json | 2 +- .../halfslab_sheetmetal_iron_s7_model.json | 2 +- .../halfslab_sheetmetal_iron_s8_model.json | 2 +- .../halfslab_sheetmetal_iron_s9_model.json | 2 +- .../halfslab_sheetmetal_iron_sa_model.json | 2 +- .../halfslab_sheetmetal_iron_sb_model.json | 2 +- .../halfslab_sheetmetal_iron_sc_model.json | 2 +- .../halfslab_sheetmetal_iron_sd_model.json | 2 +- .../halfslab_sheetmetal_iron_se_model.json | 2 +- .../halfslab_sheetmetal_steel_s0_model.json | 2 +- .../halfslab_sheetmetal_steel_s1_model.json | 2 +- .../halfslab_sheetmetal_steel_s2_model.json | 2 +- .../halfslab_sheetmetal_steel_s3_model.json | 2 +- .../halfslab_sheetmetal_steel_s4_model.json | 2 +- .../halfslab_sheetmetal_steel_s5_model.json | 2 +- .../halfslab_sheetmetal_steel_s6_model.json | 2 +- .../halfslab_sheetmetal_steel_s7_model.json | 2 +- .../halfslab_sheetmetal_steel_s8_model.json | 2 +- .../halfslab_sheetmetal_steel_s9_model.json | 2 +- .../halfslab_sheetmetal_steel_sa_model.json | 2 +- .../halfslab_sheetmetal_steel_sb_model.json | 2 +- .../halfslab_sheetmetal_steel_sc_model.json | 2 +- .../halfslab_sheetmetal_steel_sd_model.json | 2 +- .../halfslab_sheetmetal_steel_se_model.json | 2 +- .../halfslab_treated_wood_s0_model.json | 2 +- .../halfslab_treated_wood_s1_model.json | 2 +- .../halfslab_treated_wood_s2_model.json | 2 +- .../halfslab_treated_wood_s3_model.json | 2 +- .../halfslab_treated_wood_s4_model.json | 2 +- .../halfslab_treated_wood_s5_model.json | 2 +- .../halfslab_treated_wood_s6_model.json | 2 +- .../halfslab_treated_wood_s7_model.json | 2 +- .../halfslab_treated_wood_s8_model.json | 2 +- .../halfslab_treated_wood_s9_model.json | 2 +- .../halfslab_treated_wood_sa_model.json | 2 +- .../halfslab_treated_wood_sb_model.json | 2 +- .../halfslab_treated_wood_sc_model.json | 2 +- .../halfslab_treated_wood_sd_model.json | 2 +- .../halfslab_treated_wood_se_model.json | 2 +- .../item/halfslab_sheetmetal_aluminum.json | 2 +- .../item/halfslab_sheetmetal_copper.json | 2 +- .../models/item/halfslab_sheetmetal_gold.json | 2 +- .../models/item/halfslab_sheetmetal_iron.json | 2 +- .../item/halfslab_sheetmetal_steel.json | 2 +- .../models/item/halfslab_treated_wood.json | 2 +- .../block/soil/dense_grit_sand_texture0.png | Bin 868 -> 862 bytes .../block/soil/dense_grit_sand_texture1.png | Bin 849 -> 844 bytes .../block/soil/dense_grit_sand_texture2.png | Bin 825 -> 836 bytes .../block/soil/dense_grit_sand_texture3.png | Bin 868 -> 869 bytes .../block/soil/dense_grit_sand_texture4.png | Bin 837 -> 836 bytes .../block/soil/dense_grit_sand_texture5.png | Bin 858 -> 840 bytes .../block/soil/dense_grit_sand_texture6.png | Bin 859 -> 859 bytes .../block/soil/dense_grit_sand_texture7.png | Bin 852 -> 856 bytes 1.15/tasks.js | 5 - Makefile | 27 +- meta/lib/liblang.1.12.js | 2 +- meta/lib/libtask.js | 20 +- tasks.js => meta/lib/tasks.js | 17 +- meta/update.json | 9 +- 261 files changed, 1161 insertions(+), 902 deletions(-) delete mode 100644 1.12/tasks.js delete mode 100644 1.14/tasks.js create mode 100644 1.15/src/main/java/wile/engineersdecor/libmc/datagen/AssetsDataGen.java delete mode 100644 1.15/tasks.js rename tasks.js => meta/lib/tasks.js (84%) diff --git a/1.12/Makefile b/1.12/Makefile index e0fbd14..46da679 100644 --- a/1.12/Makefile +++ b/1.12/Makefile @@ -12,23 +12,20 @@ MOD_JAR=$(filter-out %-sources.jar,$(wildcard build/libs/${MOD_JAR_PREFIX}*.jar) ifeq ($(OS),Windows_NT) GRADLE=gradlew.bat --no-daemon GRADLE_STOP=gradlew.bat --stop -INSTALL_DIR=$(realpath ${APPDATA}/.minecraft) -SERVER_INSTALL_DIR=$(realpath ${APPDATA}/minecraft-server-forge-1.12.2-14.23.5.2768) DJS=djs else GRADLE=./gradlew --no-daemon GRADLE_STOP=./gradlew --stop -INSTALL_DIR=~/.minecraft -SERVER_INSTALL_DIR=~/.minecraft-server-forge-1.12.2-14.23.5.2768 DJS=djs endif +TASK=$(DJS) ../meta/lib/tasks.js wildcardr=$(foreach d,$(wildcard $1*),$(call wildcardr,$d/,$2) $(filter $(subst *,%,$2),$d)) # # Targets # -.PHONY: default mod init clean clean-all mrproper all run install sanatize dist-check dist dist-files start-server port-languages +.PHONY: default mod init clean clean-all mrproper all run install sanitize dist-check dist dist-files start-server default: mod @@ -65,42 +62,28 @@ run: @echo "[1.12] Running client ..." @$(GRADLE) runClient -install: $(MOD_JAR) | - @sleep 2s - @if [ ! -d "$(INSTALL_DIR)" ]; then echo "Cannot find installation minecraft directory."; false; fi - @echo "[1.12] Installing '$(MOD_JAR)' to '$(INSTALL_DIR)/mods' ..." - @[ -d "$(INSTALL_DIR)/mods" ] || mkdir "$(INSTALL_DIR)/mods" - @rm -f "$(INSTALL_DIR)/mods/${MOD_JAR_PREFIX}"*.jar - @cp -f "$(MOD_JAR)" "$(INSTALL_DIR)/mods/" - @echo "[1.12] Installing '$(MOD_JAR)' to '$(SERVER_INSTALL_DIR)/mods' ..." - @rm -f "$(SERVER_INSTALL_DIR)/mods/${MOD_JAR_PREFIX}"*.jar - @[ -d "$(SERVER_INSTALL_DIR)/mods" ] && cp -f "$(MOD_JAR)" "$(SERVER_INSTALL_DIR)/mods/" - -start-server: - -@make -s install - @echo "[1.12] Starting local dedicated server ..." - @cd "$(SERVER_INSTALL_DIR)" && java -jar forge-1.12.2-14.23.5.2768-universal.jar nogui - -sanatize: +sanitize: @echo "[1.12] Running sanatising tasks ..." - @djs tasks.js sanatize - @djs tasks.js sync-languages - @djs tasks.js version-check - @djs tasks.js update-json + @$(TASK) sanitize + @$(TASK) sync-languages + @$(TASK) version-check + @$(TASK) update-json @git status -s . +install: $(MOD_JAR) | + @$(TASK) install + +start-server: install + @$(TASK) start-server + dist-check: @echo "[1.12] Running dist checks ..." - @djs tasks.js dist-check + @$(TASK) dist-check dist-files: clean-all init mod @echo "[1.12] Distribution files ..." @mkdir -p dist @cp build/libs/$(MOD_JAR_PREFIX)* dist/ - @djs tasks.js dist + @$(TASK) dist -dist: sanatize dist-check dist-files - -port-languages: - @echo "[1.12] Porting language files to 1.14 ..." - @djs tasks.js port-languages +dist: sanitize dist-check dist-files diff --git a/1.12/meta/update.json b/1.12/meta/update.json index 353a725..2931722 100644 --- a/1.12/meta/update.json +++ b/1.12/meta/update.json @@ -1,6 +1,7 @@ { "homepage": "https://www.curseforge.com/minecraft/mc-mods/engineers-decor/", "1.12.2": { + "1.1.0-b1": "[F] Fixed Electrical Furnace speed sanitizing bug (issue #97, thx therobotmenace).\n[M] Changed Labeled Crate Nesting to circumvent server crashing in combination with the Sponge mod.", "1.0.20": "[R] Release based on v1.0.20-b6. Release-to-release changes: * Manual back ported. * Steel Mesh Fence Gate back ported. * E-Furnace speed selection switch back ported. * Labeled Crate back ported. * Minor bug fixes, compatibility changes.", "1.0.20-b6": "[F] Implemented compat related to issue #91.", "1.0.20-b5": "[A] Back-ported Patchouli based Manual (you need to install Vazkii_'s Patchouli, too).\n[A] Back-ported Steel Mesh Fence Gate.\n[M] Minor back-porting compatibility refractoring.", @@ -89,6 +90,6 @@ }, "promos": { "1.12.2-recommended": "1.0.20", - "1.12.2-latest": "1.0.20" + "1.12.2-latest": "1.1.0-b1" } } \ No newline at end of file diff --git a/1.12/readme.md b/1.12/readme.md index 0723974..d4943a9 100644 --- a/1.12/readme.md +++ b/1.12/readme.md @@ -10,7 +10,9 @@ Mod sources for Minecraft version 1.12.2. ---- ## Version history - ~ v1.1.0-b1 [M] + - v1.1.0-b1 [F] Fixed Electrical Furnace speed sanitizing bug (issue #97, thx therobotmenace). + [M] Changed Labeled Crate Nesting to circumvent server crashing + in combination with the Sponge mod. ------------------------------------------------------------------- - v1.0.20 [R] Release based on v1.0.20-b6. Release-to-release changes: diff --git a/1.12/src/main/java/wile/engineersdecor/ModContent.java b/1.12/src/main/java/wile/engineersdecor/ModContent.java index 443d531..3d76dd0 100644 --- a/1.12/src/main/java/wile/engineersdecor/ModContent.java +++ b/1.12/src/main/java/wile/engineersdecor/ModContent.java @@ -212,7 +212,7 @@ public class ModContent ModAuxiliaries.getPixeledAABB(0,0,0, 16,16,16) ); - public static final BlockDecorLabeledCrate.DecorLabeledCrateBlock LABELED_CRATE = new BlockDecorLabeledCrate.DecorLabeledCrateBlock( + public static final BlockDecorLabeledCrate LABELED_CRATE = new BlockDecorLabeledCrate( "labeled_crate", BlockDecor.CFG_CUTOUT|BlockDecor.CFG_HORIZIONTAL|BlockDecor.CFG_LOOK_PLACEMENT|BlockDecor.CFG_OPPOSITE_PLACEMENT, Material.WOOD, 0.5f, 128f, SoundType.METAL, diff --git a/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorFurnaceElectrical.java b/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorFurnaceElectrical.java index 101ac40..a26f314 100644 --- a/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorFurnaceElectrical.java +++ b/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorFurnaceElectrical.java @@ -9,10 +9,8 @@ package wile.engineersdecor.blocks; -import net.minecraft.init.Blocks; import wile.engineersdecor.ModContent; import wile.engineersdecor.ModEngineersDecor; - import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; import net.minecraft.block.state.IBlockState; @@ -32,6 +30,7 @@ import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.MathHelper; import net.minecraft.util.*; import net.minecraft.stats.StatList; +import net.minecraft.init.Blocks; import net.minecraftforge.common.capabilities.Capability; import net.minecraftforge.energy.CapabilityEnergy; import net.minecraftforge.energy.IEnergyStorage; @@ -316,7 +315,7 @@ public class BlockDecorFurnaceElectrical extends BlockDecorFurnace public static final int HEAT_INCREMENT = 20; public static final int MAX_ENERGY_TRANSFER = 256; public static final int MAX_ENERGY_BUFFER = 32000; - public static final int MAX_SPEED_SETTING = 2; + public static final int MAX_SPEED_SETTING = 3; public static final int NUM_OF_SLOTS = 7; public static final int SMELTING_INPUT_SLOT_NO = 0; public static final int SMELTING_AUX_SLOT_NO = 1; @@ -382,7 +381,7 @@ public class BlockDecorFurnaceElectrical extends BlockDecorFurnace proc_time_needed_ = compound.getInteger("CookTimeTotal"); energy_stored_ = compound.getInteger("Energy"); speed_ = compound.getInteger("SpeedSetting"); - speed_ = (speed_ < 0) ? (1) : ((speed_>3) ? 3 : speed_); + speed_ = (speed_ < 0) ? (1) : ((speed_>MAX_SPEED_SETTING) ? MAX_SPEED_SETTING : speed_); } protected void writenbt(NBTTagCompound compound) @@ -391,7 +390,7 @@ public class BlockDecorFurnaceElectrical extends BlockDecorFurnace compound.setInteger("CookTime", MathHelper.clamp(proc_time_elapsed_, 0, MAX_BURNTIME)); compound.setInteger("CookTimeTotal", MathHelper.clamp(proc_time_needed_, 0, MAX_BURNTIME)); compound.setInteger("Energy", MathHelper.clamp(energy_stored_,0 , MAX_ENERGY_BUFFER)); - compound.setInteger("SpeedSetting", MathHelper.clamp(speed_, -1, MAX_SPEED_SETTING)); + compound.setInteger("SpeedSetting", MathHelper.clamp(speed_, 0, MAX_SPEED_SETTING)); ItemStackHelper.saveAllItems(compound, stacks_); } @@ -655,7 +654,7 @@ public class BlockDecorFurnaceElectrical extends BlockDecorFurnace @Override public void onClientPacketReceived(EntityPlayer player, NBTTagCompound nbt) { - if(nbt.hasKey("speed")) speed_ = MathHelper.clamp(nbt.getInteger("speed"), 0, 3); + if(nbt.hasKey("speed")) speed_ = MathHelper.clamp(nbt.getInteger("speed"), 0, MAX_SPEED_SETTING); markDirty(); } @@ -761,7 +760,7 @@ public class BlockDecorFurnaceElectrical extends BlockDecorFurnace } final ItemStack last_inp_stack = current_smelting_input_stack_; current_smelting_input_stack_ = stacks_.get(SMELTING_INPUT_SLOT_NO); - if((!current_smelting_input_stack_.isEmpty()) && (enabled_) && (speed_>0) && (speed_<4)) { + if((!current_smelting_input_stack_.isEmpty()) && (enabled_) && (speed_>0) && (speed_<=MAX_SPEED_SETTING)) { if(!current_smelting_input_stack_.isItemEqual(current_smelting_input_stack_)) { proc_time_elapsed_ = 0; proc_time_needed_ = getCookTime(current_smelting_input_stack_); diff --git a/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorLabeledCrate.java b/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorLabeledCrate.java index 9a2f912..e171d00 100644 --- a/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorLabeledCrate.java +++ b/1.12/src/main/java/wile/engineersdecor/blocks/BlockDecorLabeledCrate.java @@ -8,6 +8,7 @@ */ package wile.engineersdecor.blocks; +import wile.engineersdecor.ModEngineersDecor; import net.minecraft.block.Block; import net.minecraft.block.SoundType; import net.minecraft.block.material.Material; @@ -40,13 +41,12 @@ import net.minecraftforge.fml.relauncher.SideOnly; import net.minecraftforge.items.CapabilityItemHandler; import net.minecraftforge.items.IItemHandler; import net.minecraftforge.items.ItemHandlerHelper; -import wile.engineersdecor.ModEngineersDecor; import javax.annotation.Nonnull; import javax.annotation.Nullable; -public class BlockDecorLabeledCrate +public class BlockDecorLabeledCrate extends BlockDecorDirectedHorizontal { public static void on_config(int stack_limit) { @@ -56,94 +56,129 @@ public class BlockDecorLabeledCrate // Block //-------------------------------------------------------------------------------------------------------------------- - public static class DecorLabeledCrateBlock extends BlockDecorDirectedHorizontal + public BlockDecorLabeledCrate(@Nonnull String registryName, long config, @Nullable Material material, float hardness, float resistance, @Nullable SoundType sound, @Nonnull AxisAlignedBB unrotatedAABB) + { super(registryName, config, material, hardness, resistance, sound, unrotatedAABB); } + + @Override + public boolean hasTileEntity(IBlockState state) + { return true; } + + @Override + @Nullable + public TileEntity createTileEntity(World world, IBlockState state) + { return new LabeledCrateTileEntity(); } + + @Override + public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) { - public DecorLabeledCrateBlock(@Nonnull String registryName, long config, @Nullable Material material, float hardness, float resistance, @Nullable SoundType sound, @Nonnull AxisAlignedBB unrotatedAABB) - { super(registryName, config, material, hardness, resistance, sound, unrotatedAABB); } + if(world.isRemote) return true; + player.openGui(ModEngineersDecor.instance, ModEngineersDecor.GuiHandler.GUIID_LABELED_CRATE, world, pos.getX(), pos.getY(), pos.getZ()); + return true; + } - @Override - public boolean hasTileEntity(IBlockState state) - { return true; } + @Override + public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) + { + if(world.isRemote) return; + if((!stack.hasTagCompound()) || (!stack.getTagCompound().hasKey("inventory"))) return; + NBTTagCompound inventory_nbt = stack.getTagCompound().getCompoundTag("inventory"); + if(inventory_nbt.isEmpty()) return; + final TileEntity te = world.getTileEntity(pos); + if(!(te instanceof LabeledCrateTileEntity)) return; + ((LabeledCrateTileEntity)te).readnbt(inventory_nbt); + ((LabeledCrateTileEntity)te).markDirty(); + } - @Override - @Nullable - public TileEntity createTileEntity(World world, IBlockState state) - { return new LabeledCrateTileEntity(); } + private ItemStack itemize_with_inventory(World world, BlockPos pos) + { + TileEntity te = world.getTileEntity(pos); + if(!(te instanceof LabeledCrateTileEntity)) return ItemStack.EMPTY; + ItemStack stack = new ItemStack(this, 1); + NBTTagCompound inventory_nbt = new NBTTagCompound(); + ItemStackHelper.saveAllItems(inventory_nbt, ((LabeledCrateTileEntity)te).stacks_, false); + if(!inventory_nbt.isEmpty()) { + NBTTagCompound nbt = new NBTTagCompound(); + nbt.setTag("inventory", inventory_nbt); + stack.setTagCompound(nbt); + } + return stack; + } - @Override - public boolean onBlockActivated(World world, BlockPos pos, IBlockState state, EntityPlayer player, EnumHand hand, EnumFacing facing, float hitX, float hitY, float hitZ) + @Override + public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer player, boolean willHarvest) + { + if(world.isRemote) return true; + final ItemStack stack = itemize_with_inventory(world, pos); + if(stack != ItemStack.EMPTY) { + world.spawnEntity(new EntityItem(world, pos.getX()+0.5, pos.getY()+0.5, pos.getZ()+0.5, stack)); + world.setBlockToAir(pos); + world.removeTileEntity(pos); + return false; + } else { + return super.removedByPlayer(state, world, pos, player, willHarvest); + } + } + + @Override + public void onBlockExploded(World world, BlockPos pos, Explosion explosion) + { + if(world.isRemote) return; + TileEntity te = world.getTileEntity(pos); + if(!(te instanceof LabeledCrateTileEntity)) return; + for(ItemStack stack: ((LabeledCrateTileEntity)te).stacks_) { + if(!stack.isEmpty()) world.spawnEntity(new EntityItem(world, pos.getX(), pos.getY(), pos.getZ(), stack)); + } + ((LabeledCrateTileEntity)te).reset(); + super.onBlockExploded(world, pos, explosion); + } + + @Override + @SuppressWarnings("deprecation") + public boolean hasComparatorInputOverride(IBlockState state) + { return true; } + + @Override + @SuppressWarnings("deprecation") + public int getComparatorInputOverride(IBlockState blockState, World world, BlockPos pos) + { return Container.calcRedstone(world.getTileEntity(pos)); } + + //-------------------------------------------------------------------------------------------------------------------- + // GUI + //-------------------------------------------------------------------------------------------------------------------- + + @SideOnly(Side.CLIENT) + private static class BGui extends GuiContainer + { + private final LabeledCrateTileEntity te; + + public BGui(InventoryPlayer playerInventory, World world, BlockPos pos, LabeledCrateTileEntity te) { - if(world.isRemote) return true; - player.openGui(ModEngineersDecor.instance, ModEngineersDecor.GuiHandler.GUIID_LABELED_CRATE, world, pos.getX(), pos.getY(), pos.getZ()); - return true; + super(new BContainer(playerInventory, world, pos, te)); + this.te = te; + xSize = 213; + ySize = 206; } @Override - public void onBlockPlacedBy(World world, BlockPos pos, IBlockState state, EntityLivingBase placer, ItemStack stack) - { - if(world.isRemote) return; - if((!stack.hasTagCompound()) || (!stack.getTagCompound().hasKey("inventory"))) return; - NBTTagCompound inventory_nbt = stack.getTagCompound().getCompoundTag("inventory"); - if(inventory_nbt.isEmpty()) return; - final TileEntity te = world.getTileEntity(pos); - if(!(te instanceof LabeledCrateTileEntity)) return; - ((LabeledCrateTileEntity)te).readnbt(inventory_nbt); - ((LabeledCrateTileEntity)te).markDirty(); - } + public void initGui() + { super.initGui(); } - private ItemStack itemize_with_inventory(World world, BlockPos pos) + @Override + public void drawScreen(int mouseX, int mouseY, float partialTicks) { - TileEntity te = world.getTileEntity(pos); - if(!(te instanceof LabeledCrateTileEntity)) return ItemStack.EMPTY; - ItemStack stack = new ItemStack(this, 1); - NBTTagCompound inventory_nbt = new NBTTagCompound(); - ItemStackHelper.saveAllItems(inventory_nbt, ((LabeledCrateTileEntity)te).stacks_, false); - if(!inventory_nbt.isEmpty()) { - NBTTagCompound nbt = new NBTTagCompound(); - nbt.setTag("inventory", inventory_nbt); - stack.setTagCompound(nbt); - } - return stack; + drawDefaultBackground(); + super.drawScreen(mouseX, mouseY, partialTicks); + renderHoveredToolTip(mouseX, mouseY); } @Override - public boolean removedByPlayer(IBlockState state, World world, BlockPos pos, EntityPlayer player, boolean willHarvest) + protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) { - if(world.isRemote) return true; - final ItemStack stack = itemize_with_inventory(world, pos); - if(stack != ItemStack.EMPTY) { - world.spawnEntity(new EntityItem(world, pos.getX()+0.5, pos.getY()+0.5, pos.getZ()+0.5, stack)); - world.setBlockToAir(pos); - world.removeTileEntity(pos); - return false; - } else { - return super.removedByPlayer(state, world, pos, player, willHarvest); - } + GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); + mc.getTextureManager().bindTexture(new ResourceLocation(ModEngineersDecor.MODID, "textures/gui/labeled_crate_gui.png")); + final int x0=guiLeft, y0=guiTop, w=xSize, h=ySize; + drawTexturedModalRect(x0, y0, 0, 0, w, h); } - - @Override - public void onBlockExploded(World world, BlockPos pos, Explosion explosion) - { - if(world.isRemote) return; - TileEntity te = world.getTileEntity(pos); - if(!(te instanceof LabeledCrateTileEntity)) return; - for(ItemStack stack: ((LabeledCrateTileEntity)te).stacks_) { - if(!stack.isEmpty()) world.spawnEntity(new EntityItem(world, pos.getX(), pos.getY(), pos.getZ(), stack)); - } - ((LabeledCrateTileEntity)te).reset(); - super.onBlockExploded(world, pos, explosion); - } - - @Override - @SuppressWarnings("deprecation") - public boolean hasComparatorInputOverride(IBlockState state) - { return true; } - - @Override - @SuppressWarnings("deprecation") - public int getComparatorInputOverride(IBlockState blockState, World world, BlockPos pos) - { return Container.calcRedstone(world.getTileEntity(pos)); } - } //-------------------------------------------------------------------------------------------------------------------- @@ -184,7 +219,7 @@ public class BlockDecorLabeledCrate @Override public boolean shouldRefresh(World world, BlockPos pos, IBlockState os, IBlockState ns) - { return (os.getBlock()!=ns.getBlock())||(!(ns.getBlock() instanceof DecorLabeledCrateBlock));} + { return (os.getBlock()!=ns.getBlock())||(!(ns.getBlock() instanceof BlockDecorLabeledCrate));} @Override public void readFromNBT(NBTTagCompound compound) @@ -445,45 +480,6 @@ public class BlockDecorLabeledCrate } } - //-------------------------------------------------------------------------------------------------------------------- - // GUI - //-------------------------------------------------------------------------------------------------------------------- - - @SideOnly(Side.CLIENT) - private static class BGui extends GuiContainer - { - private final LabeledCrateTileEntity te; - - public BGui(InventoryPlayer playerInventory, World world, BlockPos pos, LabeledCrateTileEntity te) - { - super(new BContainer(playerInventory, world, pos, te)); - this.te = te; - xSize = 213; - ySize = 206; - } - - @Override - public void initGui() - { super.initGui(); } - - @Override - public void drawScreen(int mouseX, int mouseY, float partialTicks) - { - drawDefaultBackground(); - super.drawScreen(mouseX, mouseY, partialTicks); - renderHoveredToolTip(mouseX, mouseY); - } - - @Override - protected void drawGuiContainerBackgroundLayer(float partialTicks, int mouseX, int mouseY) - { - GlStateManager.color(1.0F, 1.0F, 1.0F, 1.0F); - mc.getTextureManager().bindTexture(new ResourceLocation(ModEngineersDecor.MODID, "textures/gui/labeled_crate_gui.png")); - final int x0=guiLeft, y0=guiTop, w=xSize, h=ySize; - drawTexturedModalRect(x0, y0, 0, 0, w, h); - } - } - //-------------------------------------------------------------------------------------------------------------------- // Container //-------------------------------------------------------------------------------------------------------------------- @@ -542,7 +538,7 @@ public class BlockDecorLabeledCrate @Override public boolean canInteractWith(EntityPlayer player) - { return (world.getBlockState(pos).getBlock() instanceof DecorLabeledCrateBlock) && (player.getDistanceSq(pos) <= 64); } + { return (world.getBlockState(pos).getBlock() instanceof BlockDecorLabeledCrate) && (player.getDistanceSq(pos) <= 64); } @Override public boolean canMergeSlot(ItemStack stack, Slot slot) diff --git a/1.12/src/main/java/wile/engineersdecor/detail/ModTesrs.java b/1.12/src/main/java/wile/engineersdecor/detail/ModTesrs.java index 439355a..10112cf 100644 --- a/1.12/src/main/java/wile/engineersdecor/detail/ModTesrs.java +++ b/1.12/src/main/java/wile/engineersdecor/detail/ModTesrs.java @@ -28,7 +28,6 @@ import net.minecraft.util.math.MathHelper; import net.minecraftforge.fml.relauncher.Side; import net.minecraftforge.fml.relauncher.SideOnly; import wile.engineersdecor.blocks.BlockDecorLabeledCrate; -import wile.engineersdecor.blocks.BlockDecorLabeledCrate.DecorLabeledCrateBlock; import wile.engineersdecor.blocks.BlockDecorTest; public class ModTesrs @@ -114,7 +113,7 @@ public class ModTesrs try { final ItemStack stack = te.getItemFrameStack(); if(stack.isEmpty()) return; - final int di = MathHelper.clamp(te.getWorld().getBlockState(te.getPos()).getValue(DecorLabeledCrateBlock.FACING).getHorizontalIndex(), 0, 3); + final int di = MathHelper.clamp(te.getWorld().getBlockState(te.getPos()).getValue(BlockDecorLabeledCrate.FACING).getHorizontalIndex(), 0, 3); double ox = tr[di][0], oy = tr[di][1], oz = tr[di][2], ry = tr[di][3]; GlStateManager.pushMatrix(); GlStateManager.disableLighting(); diff --git a/1.12/tasks.js b/1.12/tasks.js deleted file mode 100644 index 62c5253..0000000 --- a/1.12/tasks.js +++ /dev/null @@ -1,25 +0,0 @@ -#!/usr/bin/djs -// Note for reviewers/clones: This file is a auxiliary script for my setup. It's not needed to build the mod. -"use strict"; -const constants = include("../meta/lib/constants.js")(); -const libtask = include("../meta/lib/libtask.js")(constants); -const liblang = include("../meta/lib/liblang.1.12.js")(constants); -const liblang13 = include("../meta/lib/liblang.1.13.js")(constants); -const liblang14 = include("../meta/lib/liblang.1.13.js")(constants); -var tasks = {}; - -tasks["sync-languages"] = function() { - liblang.sync_languages(); -}; - -tasks["port-languages"] = function() { - fs.find("src/main/resources/assets/"+ constants.mod_registry_name() +"/lang", '*.lang', function(path){ - const unified = liblang.load(path); - path = path.replace(/\.lang$/,""); - liblang13.save("../1.13/"+path+".json", unified); - liblang14.save("../1.14/"+path+".json", unified); - return false; - }); -}; - -libtask.run(tasks, sys.args); diff --git a/1.14/Makefile b/1.14/Makefile index 9e0fea3..31b803d 100644 --- a/1.14/Makefile +++ b/1.14/Makefile @@ -18,13 +18,14 @@ GRADLE=./gradlew --no-daemon GRADLE_STOP=./gradlew --stop DJS=djs endif +TASK=$(DJS) ../meta/lib/tasks.js wildcardr=$(foreach d,$(wildcard $1*),$(call wildcardr,$d/,$2) $(filter $(subst *,%,$2),$d)) # # Targets # -.PHONY: default mod data init clean clean-all mrproper all run install sanatize dist-check dist start-server assets +.PHONY: default mod data init clean clean-all mrproper all run install sanitize dist-check dist start-server assets default: mod @@ -34,9 +35,13 @@ mod: @echo "[1.14] Building mod using gradle ..." @$(GRADLE) build $(GRADLE_OPTS) +assets: + @echo "[1.14] Running asset generators ..." + @$(TASK) assets + data: @echo "[1.14] Running data generators ..." - @djs tasks.js datagen + @$(TASK) datagen clean: @echo "[1.14] Cleaning ..." @@ -64,28 +69,28 @@ init: @echo "[1.14] Initialising eclipse workspace using gradle ..." @$(GRADLE) eclipse -sanatize: +sanitize: @echo "[1.14] Running sanatising tasks ..." - @djs tasks.js sanatize - @djs tasks.js sync-languages - @djs tasks.js version-check - @djs tasks.js update-json + @$(TASK) sanitize + @$(TASK) sync-languages + @$(TASK) version-check + @$(TASK) update-json @git status -s . +install: $(MOD_JAR) | + @$(TASK) install + +start-server: install + @$(TASK) start-server + dist-check: @echo "[1.14] Running dist checks ..." - @djs tasks.js dist-check + @$(TASK) dist-check dist-files: clean-all init data mod @echo "[1.14] Distribution files ..." @mkdir -p dist @cp build/libs/$(MOD_JAR_PREFIX)* dist/ - @djs tasks.js dist + @$(TASK) dist -dist: sanatize dist-check dist-files - -assets: - @echo "[1.14] Running asset generators ..." - @djs tasks.js create-slab-assets - @djs tasks.js create-half-slab-assets - @djs tasks.js assets +dist: sanitize dist-check dist-files diff --git a/1.14/meta/update.json b/1.14/meta/update.json index bca2a83..2be7c45 100644 --- a/1.14/meta/update.json +++ b/1.14/meta/update.json @@ -1,6 +1,7 @@ { "homepage": "https://www.curseforge.com/minecraft/mc-mods/engineers-decor/", "1.14.4": { + "1.1.0-b1": "[F] Fixed Electrical Furnace speed sanitizing bug (issue #97, thx therobotmenace).\n[A] Sheet Metal Slab Slices added (only available if IE is installed).\n[M] Config options extended/updated.\n[M] Dense Grit Sand textures altered to get slightly more visible structure from distance.", "1.0.20-b7": "[A] Dense Grit Sand added.\n[!] Variant Slab compatibility fix. *This may alter placed slabs of this mod, data fixers don't work yet unfortunately*.", "1.0.20-b6": "[M] Slab Slice placement improved.\n[M] Quite some naming/refractoring under the hood.", "1.0.20-b5": "[A] Electrical Furnace can draw in smelting input items from an adjacent inventory when a Hopper is placed in the auxiliary slot.\n[M] Wrapped Labeled Crate label slot to prevent sorting mods from altering the label.", @@ -56,6 +57,6 @@ }, "promos": { "1.14.4-recommended": "", - "1.14.4-latest": "1.0.20-b7" + "1.14.4-latest": "1.1.0-b1" } } \ No newline at end of file diff --git a/1.14/readme.md b/1.14/readme.md index c3f5e60..1a28556 100644 --- a/1.14/readme.md +++ b/1.14/readme.md @@ -11,7 +11,11 @@ Mod sources for Minecraft version 1.14.4. ## Version history - ~ v1.1.0-b1 [M] + - v1.1.0-b1 [F] Fixed Electrical Furnace speed sanitizing bug (issue #97, thx therobotmenace). + [A] Sheet Metal Slab Slices added (only available if IE is installed). + [M] Config options extended/updated. + [M] Dense Grit Sand textures altered to get slightly more visible structure + from distance. - v1.0.20-b7 [A] Dense Grit Sand added. [!] Variant Slab compatibility fix. *This may alter placed slabs of this mod, diff --git a/1.14/src/main/java/wile/engineersdecor/ModConfig.java b/1.14/src/main/java/wile/engineersdecor/ModConfig.java index 5aa6e16..a6ad9f6 100644 --- a/1.14/src/main/java/wile/engineersdecor/ModConfig.java +++ b/1.14/src/main/java/wile/engineersdecor/ModConfig.java @@ -12,20 +12,22 @@ package wile.engineersdecor; import wile.engineersdecor.blocks.*; import wile.engineersdecor.libmc.blocks.StandardBlocks; import wile.engineersdecor.libmc.detail.Auxiliaries; -import wile.engineersdecor.libmc.detail.OptionalRecipeCondition; import net.minecraft.nbt.CompoundNBT; import net.minecraft.block.Block; import net.minecraft.item.Item; import net.minecraftforge.common.ForgeConfigSpec; import org.apache.commons.lang3.tuple.Pair; +import org.apache.logging.log4j.Logger; import javax.annotation.Nullable; import java.util.ArrayList; +import java.util.HashSet; public class ModConfig { //-------------------------------------------------------------------------------------------------------------------- - + private static final Logger LOGGER = ModEngineersDecor.logger(); + private static final String MODID = ModEngineersDecor.MODID; public static final CommonConfig COMMON; public static final ServerConfig SERVER; public static final ClientConfig CLIENT; @@ -61,11 +63,11 @@ public class ModConfig builder.comment("Opt-out settings") .push("optout"); without_tooltips = builder - .translation(ModEngineersDecor.MODID + ".config.without_tooltips") + .translation(MODID + ".config.without_tooltips") .comment("Disable CTRL-SHIFT item tooltip display.") .define("without_tooltips", false); without_ters = builder - .translation(ModEngineersDecor.MODID + ".config.without_ters") + .translation(MODID + ".config.without_ters") .comment("Disable all TERs (tile entity renderers).") .define("without_ters", false); } @@ -95,12 +97,14 @@ public class ModConfig public final ForgeConfigSpec.BooleanValue without_clinker_bricks; public final ForgeConfigSpec.BooleanValue without_slag_bricks; public final ForgeConfigSpec.BooleanValue without_rebar_concrete; + public final ForgeConfigSpec.BooleanValue without_gas_concrete; public final ForgeConfigSpec.BooleanValue without_walls; public final ForgeConfigSpec.BooleanValue without_stairs; public final ForgeConfigSpec.BooleanValue without_ie_concrete_wall; public final ForgeConfigSpec.BooleanValue without_panzer_glass; public final ForgeConfigSpec.BooleanValue without_ladders; public final ForgeConfigSpec.BooleanValue without_treated_wood_furniture; + public final ForgeConfigSpec.BooleanValue without_metal_furniture; public final ForgeConfigSpec.BooleanValue without_windows; public final ForgeConfigSpec.BooleanValue without_light_sources; public final ForgeConfigSpec.BooleanValue without_slabs; @@ -124,6 +128,8 @@ public class ModConfig public final ForgeConfigSpec.BooleanValue without_mineral_smelter; public final ForgeConfigSpec.BooleanValue without_milking_machine; public final ForgeConfigSpec.BooleanValue without_tree_cutter; + public final ForgeConfigSpec.BooleanValue without_labeled_crate; + public final ForgeConfigSpec.BooleanValue without_fences; public final ForgeConfigSpec.BooleanValue without_chair_sitting; public final ForgeConfigSpec.BooleanValue without_mob_chair_sitting; public final ForgeConfigSpec.BooleanValue without_ladder_speed_boost; @@ -166,7 +172,7 @@ public class ModConfig builder.comment("Opt-out settings") .push("optout"); pattern_excludes = builder - .translation(ModEngineersDecor.MODID + ".config.pattern_excludes") + .translation(MODID + ".config.pattern_excludes") .comment("Opt-out any block by its registry name ('*' wildcard matching, " + "comma separated list, whitespaces ignored. You must match the whole name, " + "means maybe add '*' also at the begin and end. Example: '*wood*,*steel*' " @@ -174,7 +180,7 @@ public class ModConfig + "The matching result is also traced in the log file. ") .define("pattern_excludes", ""); pattern_includes = builder - .translation(ModEngineersDecor.MODID + ".config.pattern_includes") + .translation(MODID + ".config.pattern_includes") .comment("Prevent blocks from being opt'ed by registry name ('*' wildcard matching, " + "comma separated list, whitespaces ignored. Evaluated before all other opt-out checks. " + "You must match the whole name, means maybe add '*' also at the begin and end. Example: " @@ -182,153 +188,169 @@ public class ModConfig + "The matching result is also traced in the log file.") .define("pattern_includes", ""); without_clinker_bricks = builder - .translation(ModEngineersDecor.MODID + ".config.without_clinker_bricks") + .translation(MODID + ".config.without_clinker_bricks") .comment("Disable clinker bricks and derived blocks.") .define("without_clinker_bricks", false); without_slag_bricks = builder - .translation(ModEngineersDecor.MODID + ".config.without_slag_bricks") + .translation(MODID + ".config.without_slag_bricks") .comment("Disable slag bricks and derived blocks.") .define("without_slag_bricks", false); without_rebar_concrete = builder - .translation(ModEngineersDecor.MODID + ".config.without_rebar_concrete") + .translation(MODID + ".config.without_rebar_concrete") .comment("Disable rebar concrete and derived blocks.") .define("without_rebar_concrete", false); + without_gas_concrete = builder + .translation(MODID + ".config.without_gas_concrete") + .comment("Disable gas concrete and derived blocks.") + .define("without_gas_concrete", false); without_walls = builder - .translation(ModEngineersDecor.MODID + ".config.without_walls") + .translation(MODID + ".config.without_walls") .comment("Disable all mod wall blocks.") .define("without_walls", false); without_stairs = builder - .translation(ModEngineersDecor.MODID + ".config.without_stairs") + .translation(MODID + ".config.without_stairs") .comment("Disable all mod stairs blocks.") .define("without_stairs", false); without_ie_concrete_wall = builder - .translation(ModEngineersDecor.MODID + ".config.without_ie_concrete_wall") + .translation(MODID + ".config.without_ie_concrete_wall") .comment("Disable IE concrete wall.") .define("without_ie_concrete_wall", false); without_panzer_glass = builder - .translation(ModEngineersDecor.MODID + ".config.without_panzer_glass") + .translation(MODID + ".config.without_panzer_glass") .comment("Disable panzer glass and derived blocks.") .define("without_panzer_glass", false); without_crafting_table = builder - .translation(ModEngineersDecor.MODID + ".config.without_crafting_table") + .translation(MODID + ".config.without_crafting_table") .comment("Disable treated wood crafting table.") .define("without_crafting_table", false); without_lab_furnace = builder - .translation(ModEngineersDecor.MODID + ".config.without_lab_furnace") + .translation(MODID + ".config.without_lab_furnace") .comment("Disable small lab furnace.") .define("without_lab_furnace", false); without_electrical_furnace = builder - .translation(ModEngineersDecor.MODID + ".config.without_electrical_furnace") + .translation(MODID + ".config.without_electrical_furnace") .comment("Disable small electrical pass-through furnace.") .define("without_electrical_furnace", false); without_treated_wood_furniture = builder - .translation(ModEngineersDecor.MODID + ".config.without_treated_wood_furniture") + .translation(MODID + ".config.without_treated_wood_furniture") .comment("Disable treated wood table, stool, windowsill, etc.") .define("without_treated_wood_furniture", false); + without_metal_furniture = builder + .translation(MODID + ".config.without_metal_furniture") + .comment("Disable metal tables, etc.") + .define("without_metal_furniture", false); without_windows = builder - .translation(ModEngineersDecor.MODID + ".config.without_windows") + .translation(MODID + ".config.without_windows") .comment("Disable treated wood window, etc.") .define("without_windows", false); without_light_sources = builder - .translation(ModEngineersDecor.MODID + ".config.without_light_sources") + .translation(MODID + ".config.without_light_sources") .comment("Disable light sources") .define("without_light_sources", false); without_ladders = builder - .translation(ModEngineersDecor.MODID + ".config.without_ladders") + .translation(MODID + ".config.without_ladders") .comment("Disable ladders") .define("without_ladders", false); without_chair_sitting = builder - .translation(ModEngineersDecor.MODID + ".config.without_chair_sitting") + .translation(MODID + ".config.without_chair_sitting") .comment("Disable possibility to sit on stools and chairs.") .define("without_chair_sitting", false); without_mob_chair_sitting = builder - .translation(ModEngineersDecor.MODID + ".config.without_mob_chair_sitting") + .translation(MODID + ".config.without_mob_chair_sitting") .comment("Disable that mobs will sit on chairs and stools.") .define("without_mob_chair_sitting", false); without_ladder_speed_boost = builder - .translation(ModEngineersDecor.MODID + ".config.without_ladder_speed_boost") + .translation(MODID + ".config.without_ladder_speed_boost") .comment("Disable the speed boost of ladders in this mod.") .define("without_ladder_speed_boost", false); without_crafting_table_history = builder - .translation(ModEngineersDecor.MODID + ".config.without_crafting_table_history") + .translation(MODID + ".config.without_crafting_table_history") .comment("Disable history refabrication feature of the treated wood crafting table.") .define("without_crafting_table_history", false); without_valves = builder - .translation(ModEngineersDecor.MODID + ".config.without_valves") + .translation(MODID + ".config.without_valves") .comment("Disable check valve, and redstone controlled valves.") .define("without_valves", false); without_passive_fluid_accumulator = builder - .translation(ModEngineersDecor.MODID + ".config.without_passive_fluid_accumulator") + .translation(MODID + ".config.without_passive_fluid_accumulator") .comment("Disable the passive fluid accumulator.") .define("without_passive_fluid_accumulator", false); without_waste_incinerator = builder - .translation(ModEngineersDecor.MODID + ".config.without_waste_incinerator") + .translation(MODID + ".config.without_waste_incinerator") .comment("Disable item disposal/trash/void incinerator device.") .define("without_waste_incinerator", false); without_sign_plates = builder - .translation(ModEngineersDecor.MODID + ".config.without_sign_plates") + .translation(MODID + ".config.without_sign_plates") .comment("Disable decorative sign plates (caution, hazards, etc).") .define("without_sign_plates", false); without_floor_grating = builder - .translation(ModEngineersDecor.MODID + ".config.without_floor_grating") + .translation(MODID + ".config.without_floor_grating") .comment("Disable floor gratings.") .define("without_floor_grating", false); without_factory_dropper = builder - .translation(ModEngineersDecor.MODID + ".config.without_factory_dropper") + .translation(MODID + ".config.without_factory_dropper") .comment("Disable the factory dropper.") .define("without_factory_dropper", false); without_factory_hopper = builder - .translation(ModEngineersDecor.MODID + ".config.without_factory_hopper") + .translation(MODID + ".config.without_factory_hopper") .comment("Disable the factory hopper.") .define("without_factory_hopper", false); without_factory_placer = builder - .translation(ModEngineersDecor.MODID + ".config.without_factory_placer") + .translation(MODID + ".config.without_factory_placer") .comment("Disable the factory placer.") .define("without_factory_placer", false); without_block_breaker = builder - .translation(ModEngineersDecor.MODID + ".config.without_block_breaker") + .translation(MODID + ".config.without_block_breaker") .comment("Disable the small block breaker.") .define("without_block_breaker", false); without_solar_panel = builder - .translation(ModEngineersDecor.MODID + ".config.without_solar_panel") + .translation(MODID + ".config.without_solar_panel") .comment("Disable the small solar panel.") .define("without_solar_panel", false); without_fluid_funnel = builder - .translation(ModEngineersDecor.MODID + ".config.without_fluid_funnel") + .translation(MODID + ".config.without_fluid_funnel") .comment("Disable the small fluid collection funnel.") .define("without_fluid_funnel", false); without_mineral_smelter = builder - .translation(ModEngineersDecor.MODID + ".config.without_mineral_smelter") + .translation(MODID + ".config.without_mineral_smelter") .comment("Disable the small mineral smelter.") .define("without_mineral_smelter", false); without_milking_machine = builder - .translation(ModEngineersDecor.MODID + ".config.without_milking_machine") + .translation(MODID + ".config.without_milking_machine") .comment("Disable the small milking machine.") .define("without_milking_machine", false); without_tree_cutter = builder - .translation(ModEngineersDecor.MODID + ".config.without_tree_cutter") + .translation(MODID + ".config.without_tree_cutter") .comment("Disable the small tree cutter.") .define("without_tree_cutter", false); + without_labeled_crate = builder + .translation(MODID + ".config.without_labeled_crate") + .comment("Disable labeled crate.") + .define("without_labeled_crate", false); without_slabs = builder - .translation(ModEngineersDecor.MODID + ".config.without_slabs") + .translation(MODID + ".config.without_slabs") .comment("Disable horizontal half-block slab.") .define("without_slabs", false); without_halfslabs = builder - .translation(ModEngineersDecor.MODID + ".config.without_halfslabs") + .translation(MODID + ".config.without_halfslabs") .comment("Disable stackable 1/8 block slices.") .define("without_halfslabs", false); without_poles = builder - .translation(ModEngineersDecor.MODID + ".config.without_poles") + .translation(MODID + ".config.without_poles") .comment("Disable poles of any material.") .define("without_poles", false); without_hsupports = builder - .translation(ModEngineersDecor.MODID + ".config.without_hsupports") + .translation(MODID + ".config.without_hsupports") .comment("Disable horizontal supports like the double-T support.") .define("without_hsupports", false); without_recipes = builder - .translation(ModEngineersDecor.MODID + ".config.without_recipes") + .translation(MODID + ".config.without_recipes") .comment("Disable all internal recipes, allowing to use alternative pack recipes.") .define("without_recipes", false); + without_fences = builder + .translation(MODID + ".config.without_fences") + .comment("Disable all fences and fence gates.") + .define("without_fences", false); builder.pop(); } // --- MISC --------------------------------------------------------------- @@ -336,16 +358,16 @@ public class ModConfig builder.comment("Miscellaneous settings") .push("miscellaneous"); with_experimental = builder - .translation(ModEngineersDecor.MODID + ".config.with_experimental") + .translation(MODID + ".config.with_experimental") .comment("Enables experimental features. Use at own risk.") .define("with_experimental", false); without_direct_slab_pickup = builder - .translation(ModEngineersDecor.MODID + ".config.without_direct_slab_pickup") + .translation(MODID + ".config.without_direct_slab_pickup") .comment("Disable directly picking up layers from slabs and slab " + " slices by left clicking while looking up/down.") .define("without_direct_slab_pickup", false); with_creative_mode_device_drops = builder - .translation(ModEngineersDecor.MODID + ".config.with_creative_mode_device_drops") + .translation(MODID + ".config.with_creative_mode_device_drops") .comment("Enable that devices are dropped as item also in creative mode, allowing " + " to relocate them with contents and settings.") .define("with_creative_mode_device_drops", false); @@ -356,130 +378,130 @@ public class ModConfig builder.comment("Tweaks") .push("tweaks"); furnace_smelting_speed_percent = builder - .translation(ModEngineersDecor.MODID + ".config.furnace_smelting_speed_percent") + .translation(MODID + ".config.furnace_smelting_speed_percent") .comment("Defines, in percent, how fast the lab furnace smelts compared to " + "a vanilla furnace. 100% means vanilla furnace speed, 150% means the " + "lab furnace is faster. The value can be changed on-the-fly for tuning.") .defineInRange("furnace_smelting_speed_percent", 130, 50, 800); furnace_fuel_efficiency_percent = builder - .translation(ModEngineersDecor.MODID + ".config.furnace_fuel_efficiency_percent") + .translation(MODID + ".config.furnace_fuel_efficiency_percent") .comment("Defines, in percent, how fuel efficient the lab furnace is, compared " + "to a vanilla furnace. 100% means vanilla furnace consumiton, 200% means " + "the lab furnace needs about half the fuel of a vanilla furnace, " + "The value can be changed on-the-fly for tuning.") .defineInRange("furnace_fuel_efficiency_percent", 100, 50, 400); furnace_boost_energy_consumption = builder - .translation(ModEngineersDecor.MODID + ".config.furnace_boost_energy_consumption") + .translation(MODID + ".config.furnace_boost_energy_consumption") .comment("Defines the energy consumption (per tick) for speeding up the smelting process. " + "If IE is installed, an external heater has to be inserted into an auxiliary slot " + "of the lab furnace. The power source needs to be able to provide at least 4 times " + "this consumption (fixed threshold value). The value can be changed on-the-fly for tuning. " + "The default value corresponds to the IE heater consumption.") - .defineInRange("furnace_boost_energy_consumption", 24, 8, 1024); + .defineInRange("furnace_boost_energy_consumption", 24, 2, 1024); chair_mob_sitting_probability_percent = builder - .translation(ModEngineersDecor.MODID + ".config.chair_mob_sitting_probability_percent") + .translation(MODID + ".config.chair_mob_sitting_probability_percent") .comment("Defines, in percent, how high the probability is that a mob sits on a chair " + "when colliding with it. Can be changed on-the-fly for tuning.") .defineInRange("chair_mob_sitting_probability_percent", 10.0, 0.0, 80.0); chair_mob_standup_probability_percent = builder - .translation(ModEngineersDecor.MODID + ".config.chair_mob_standup_probability_percent") + .translation(MODID + ".config.chair_mob_standup_probability_percent") .comment("Defines, in percent, probable it is that a mob leaves a chair when sitting " + "on it. The 'dice is rolled' about every 20 ticks. There is also a minimum " + "Sitting time of about 3s. The config value can be changed on-the-fly for tuning.") .defineInRange("chair_mob_standup_probability_percent", 1.0, 1e-3, 10.0); with_crafting_quickmove_buttons = builder - .translation(ModEngineersDecor.MODID + ".config.with_crafting_quickmove_buttons") + .translation(MODID + ".config.with_crafting_quickmove_buttons") .comment("Enables small quick-move arrows from/to player/block storage. " + "Makes the UI a bit too busy, therefore disabled by default.") .define("with_crafting_quickmove_buttons", false); without_crafting_mouse_scrolling = builder - .translation(ModEngineersDecor.MODID + ".config.without_crafting_mouse_scrolling") + .translation(MODID + ".config.without_crafting_mouse_scrolling") .comment("Disables increasing/decreasing the crafting grid items by scrolling over the crafting result slot.") .define("without_crafting_mouse_scrolling", false); pipevalve_max_flowrate = builder - .translation(ModEngineersDecor.MODID + ".config.pipevalve_max_flowrate") + .translation(MODID + ".config.pipevalve_max_flowrate") .comment("Defines how many millibuckets can be transferred (per tick) through the valves. " + "That is technically the 'storage size' specified for blocks that want to fill " + "fluids into the valve (the valve has no container and forward that to the output " + "block), The value can be changed on-the-fly for tuning. ") .defineInRange("pipevalve_max_flowrate", 1000, 1, 32000); pipevalve_redstone_gain = builder - .translation(ModEngineersDecor.MODID + ".config.pipevalve_redstone_gain") + .translation(MODID + ".config.pipevalve_redstone_gain") .comment("Defines how many millibuckets per redstone signal strength can be transferred per tick " + "through the analog redstone controlled valves. Note: power 0 is always off, power 15 is always " + "the max flow rate. Between power 1 and 14 this scaler will result in a flow = 'redstone slope' * 'current redstone power'. " + "The value can be changed on-the-fly for tuning. ") .defineInRange("pipevalve_redstone_gain", 20, 1, 32000); e_furnace_speed_percent = builder - .translation(ModEngineersDecor.MODID + ".config.e_furnace_speed_percent") + .translation(MODID + ".config.e_furnace_speed_percent") .comment("Defines, in percent, how fast the electrical furnace smelts compared to " + "a vanilla furnace. 100% means vanilla furnace speed, 150% means the " + "electrical furnace is faster. The value can be changed on-the-fly for tuning.") .defineInRange("e_furnace_speed_percent", EdElectricalFurnace.ElectricalFurnaceTileEntity.DEFAULT_SPEED_PERCENT, 50, 800); e_furnace_power_consumption = builder - .translation(ModEngineersDecor.MODID + ".config.e_furnace_power_consumption") + .translation(MODID + ".config.e_furnace_power_consumption") .comment("Defines how much RF per tick the the electrical furnace consumed (average) for smelting. " + "The feeders transferring items from/to adjacent have this consumption/8 for each stack transaction. " + "The default value is only slightly higher than a furnace with an IE external heater (and no burning fuel inside)." + "The config value can be changed on-the-fly for tuning.") .defineInRange("e_furnace_power_consumption", EdElectricalFurnace.ElectricalFurnaceTileEntity.DEFAULT_ENERGY_CONSUMPTION, 8, 4096); e_furnace_automatic_pulling = builder - .translation(ModEngineersDecor.MODID + ".config.e_furnace_automatic_pulling") + .translation(MODID + ".config.e_furnace_automatic_pulling") .comment("Defines if the electrical furnace automatically pulls items from an inventory at the input side." + "The config value can be changed on-the-fly for tuning.") .define("e_furnace_automatic_pulling", false); small_solar_panel_peak_production = builder - .translation(ModEngineersDecor.MODID + ".config.small_solar_panel_peak_production") + .translation(MODID + ".config.small_solar_panel_peak_production") .comment("Defines the peak power production (at noon) of the Small Solar Panel. " + "Note that the agerage power is much less, as no power is produced at all during the night, " + "and the power curve is nonlinear rising/falling during the day. Bad weather conditions also " + "decrease the production. The config value can be changed on-the-fly for tuning.") .defineInRange("small_solar_panel_peak_production", EdSolarPanel.SolarPanelTileEntity.DEFAULT_PEAK_POWER, 2, 4096); block_breaker_power_consumption = builder - .translation(ModEngineersDecor.MODID + ".config.block_breaker_power_consumption") + .translation(MODID + ".config.block_breaker_power_consumption") .comment("Defines how much RF power the Small Block Breaker requires to magnificently increase the processing speed. " + "The config value can be changed on-the-fly for tuning.") .defineInRange("block_breaker_power_consumption", EdBreaker.BreakerTileEntity.DEFAULT_BOOST_ENERGY, 4, 1024); block_breaker_reluctance = builder - .translation(ModEngineersDecor.MODID + ".config.block_breaker_reluctance") + .translation(MODID + ".config.block_breaker_reluctance") .comment("Defines how much time the Small Block Breaker needs per block hardness, " + "means: 'reluctance' * hardness + min_time, you change the 'reluctance' here." + "The unit is ticks/hardness. " + "The config value can be changed on-the-fly for tuning.") .defineInRange("block_breaker_reluctance", EdBreaker.BreakerTileEntity.DEFAULT_BREAKING_RELUCTANCE, 5, 50); block_breaker_min_breaking_time = builder - .translation(ModEngineersDecor.MODID + ".config.block_breaker_min_breaking_time") + .translation(MODID + ".config.block_breaker_min_breaking_time") .comment("Defines how much time the Small Block Breaker needs at least, better said it's an offset: " + "'reluctance' * hardness + min_time, you change the 'min_time' here, value " + "in ticks." + "The config value can be changed on-the-fly for tuning.") .defineInRange("block_breaker_min_breaking_time", EdBreaker.BreakerTileEntity.DEFAULT_MIN_BREAKING_TIME, 10, 100); block_breaker_requires_power = builder - .translation(ModEngineersDecor.MODID + ".config.block_breaker_requires_power") + .translation(MODID + ".config.block_breaker_requires_power") .comment("Defines if the Small Block Breaker does not work without RF power.") .define("block_breaker_requires_power", false); tree_cuttter_energy_consumption = builder - .translation(ModEngineersDecor.MODID + ".config.tree_cuttter_energy_consumption") + .translation(MODID + ".config.tree_cuttter_energy_consumption") .comment("Defines how much RF power the Small Tree Cutter requires to magnificently increase the processing speed. " + "The config value can be changed on-the-fly for tuning.") .defineInRange("tree_cuttter_energy_consumption", EdTreeCutter.TreeCutterTileEntity.DEFAULT_BOOST_ENERGY, 4, 1024); tree_cuttter_cutting_time_needed = builder - .translation(ModEngineersDecor.MODID + ".config.tree_cuttter_cutting_time_needed") + .translation(MODID + ".config.tree_cuttter_cutting_time_needed") .comment("Defines how much time the Small Tree Cutter needs to cut a tree without RF power. " + "The value is in seconds. With energy it is 6 times faster. " + "The config value can be changed on-the-fly for tuning.") .defineInRange("tree_cuttter_cutting_time_needed", EdTreeCutter.TreeCutterTileEntity.DEFAULT_CUTTING_TIME_NEEDED, 10, 240); tree_cuttter_requires_power = builder - .translation(ModEngineersDecor.MODID + ".config.tree_cuttter_requires_power") + .translation(MODID + ".config.tree_cuttter_requires_power") .comment("Defines if the Small Tree Cutter does not work without RF power.") .define("tree_cuttter_requires_power", false); milking_machine_energy_consumption = builder - .translation(ModEngineersDecor.MODID + ".config.milking_machine_energy_consumption") + .translation(MODID + ".config.milking_machine_energy_consumption") .comment("Defines how much time the Small Milking Machine needs work. " + "Note this is a permanent standby power, not only when the device does something. " + "Use zero to disable energy dependency and energy handling of the machine. " + "The config value can be changed on-the-fly for tuning.") .defineInRange("milking_machine_energy_consumption", EdMilker.MilkerTileEntity.DEFAULT_ENERGY_CONSUMPTION, 0, 1024); milking_machine_milking_delay = builder - .translation(ModEngineersDecor.MODID + ".config.milking_machine_milking_delay") + .translation(MODID + ".config.milking_machine_milking_delay") .comment("Defines (for each individual cow) the minimum time between milking." ) .defineInRange("milking_machine_milking_delay", EdMilker.MilkerTileEntity.DEFAULT_MILKING_DELAY_PER_COW, 1000, 24000); builder.pop(); @@ -492,96 +514,10 @@ public class ModConfig //-------------------------------------------------------------------------------------------------------------------- public static final boolean isOptedOut(final @Nullable Block block) - { return isOptedOut(block, false); } - - public static final boolean isOptedOut(final @Nullable Block block, boolean with_log_details) - { - if(block == null) return true; - if(block == ModContent.SIGN_MODLOGO) return true; - if(COMMON == null) return false; - try { - if(!COMMON.with_experimental.get()) { - if(block instanceof Auxiliaries.IExperimentalFeature) return true; - if(ModContent.isExperimentalBlock(block)) return true; - } - final String rn = block.getRegistryName().getPath(); - // Hard IE dependent blocks - if(!immersiveengineering_installed) { - if(block == ModContent.CONCRETE_WALL) return true; - if((block instanceof DecorBlock.Normal) && ((((DecorBlock.Normal)block).config & DecorBlock.CFG_HARD_IE_DEPENDENT) != 0)) return true; - if((block instanceof StandardBlocks.BaseBlock) && ((((StandardBlocks.BaseBlock)block).config & DecorBlock.CFG_HARD_IE_DEPENDENT) != 0)) return true; - } - // Force-include/exclude pattern matching - try { - for(String e:includes_) { - if(rn.matches(e)) { - if(with_log_details) ModEngineersDecor.logger().info("Optout force include: " + rn); - return false; - } - } - for(String e:excludes_) { - if(rn.matches(e)) { - if(with_log_details) ModEngineersDecor.logger().info("Optout force exclude: " + rn); - return true; - } - } - } catch(Throwable ex) { - ModEngineersDecor.logger().error("optout include pattern failed, disabling."); - includes_.clear(); - excludes_.clear(); - } - // Early non-opt out type based evaluation - if(block instanceof EdCraftingTable.CraftingTableBlock) return COMMON.without_crafting_table.get(); - if(block instanceof EdElectricalFurnace.ElectricalFurnaceBlock) return COMMON.without_electrical_furnace.get(); - if((block instanceof EdFurnace.FurnaceBlock) && (!(block instanceof EdElectricalFurnace.ElectricalFurnaceBlock))) return COMMON.without_lab_furnace.get(); - if(block instanceof EdFluidAccumulator.FluidAccumulatorBlock) return COMMON.without_passive_fluid_accumulator.get(); - if(block instanceof EdWasteIncinerator.WasteIncineratorBlock) return COMMON.without_waste_incinerator.get(); - if(block instanceof EdDropper.DropperBlock) return COMMON.without_factory_dropper.get(); - if(block instanceof EdPlacer.PlacerBlock) return COMMON.without_factory_placer.get(); - if(block instanceof EdBreaker.BreakerBlock) return COMMON.without_block_breaker.get(); - if(block instanceof EdSlabSliceBlock) return COMMON.without_halfslabs.get(); - if(block instanceof EdLadderBlock) return COMMON.without_ladders.get(); - if(block instanceof EdWindowBlock) return COMMON.without_windows.get(); - if(block instanceof EdPipeValve.PipeValveBlock) return COMMON.without_valves.get(); - if(block instanceof EdHorizontalSupportBlock) return COMMON.without_hsupports.get(); - if(block instanceof EdFloorGratingBlock) return COMMON.without_floor_grating.get(); - if(block instanceof EdHopper.HopperBlock) return COMMON.without_factory_hopper.get(); - if(block instanceof EdFluidFunnel.FluidFunnelBlock) return COMMON.without_fluid_funnel.get(); - if(block instanceof EdSolarPanel.SolarPanelBlock) return COMMON.without_solar_panel.get(); - if(block instanceof EdMineralSmelter.MineralSmelterBlock) return COMMON.without_mineral_smelter.get(); - if(block instanceof EdMilker.MilkerBlock) return COMMON.without_milking_machine.get(); - if(block instanceof EdTreeCutter.TreeCutterBlock) return COMMON.without_tree_cutter.get(); - // Type based evaluation where later filters may match, too - if(COMMON.without_slabs.get() && (block instanceof EdSlabBlock)) return true; - if(COMMON.without_stairs.get() && (block instanceof EdStairsBlock)) return true; - if(COMMON.without_walls.get() && (block instanceof EdWallBlock)) return true; - if(COMMON.without_poles.get() && (block instanceof EdStraightPoleBlock)) return true; - // String matching based evaluation - if(COMMON.without_clinker_bricks.get() && (rn.startsWith("clinker_brick_"))) return true; - if(COMMON.without_slag_bricks.get() && rn.startsWith("slag_brick_")) return true; - if(COMMON.without_rebar_concrete.get() && rn.startsWith("rebar_concrete")) return true; - if(COMMON.without_ie_concrete_wall.get() && rn.startsWith("concrete_wall")) return true; - if(COMMON.without_panzer_glass.get() && rn.startsWith("panzerglass_")) return true; - if(COMMON.without_light_sources.get() && rn.endsWith("_light")) return true; - if(COMMON.without_sign_plates.get() && rn.startsWith("sign_")) return true; - if(COMMON.without_treated_wood_furniture.get()) { - if(block instanceof EdChair.ChairBlock) return true; - if(rn.equals("treated_wood_table")) return true; - if(rn.equals("treated_wood_stool")) return true; - if(rn.equals("treated_wood_windowsill")) return true; - } - } catch(Exception ex) { - ModEngineersDecor.logger().error("Exception evaluating the optout config: '" + ex.getMessage() + "'"); - } - return false; - } + { return isOptedOut(block.asItem()); } public static final boolean isOptedOut(final @Nullable Item item) - { - if(item == null) return true; - if(SERVER == null) return false; - return false; - } + { return (item!=null) && optouts_.contains(item.getRegistryName().getPath()); } public static boolean withExperimental() { return with_experimental_features_; } @@ -592,26 +528,164 @@ public class ModConfig //-------------------------------------------------------------------------------------------------------------------- // Cache //-------------------------------------------------------------------------------------------------------------------- - private static final ArrayList includes_ = new ArrayList(); - private static final ArrayList excludes_ = new ArrayList(); + private static final CompoundNBT server_config_ = new CompoundNBT(); - public static boolean without_crafting_table = false; - public static boolean immersiveengineering_installed = false; - public static boolean with_creative_mode_device_drops = false; + private static HashSet optouts_ = new HashSet<>(); private static boolean with_experimental_features_ = false; private static boolean without_recipes_ = false; + public static boolean without_crafting_table = false; + public static boolean immersiveengineering_installed = false; + public static boolean without_direct_slab_pickup = false; + public static boolean with_creative_mode_device_drops = false; public static final CompoundNBT getServerConfig() // config that may be synchronized from server to client via net pkg. { return server_config_; } + private static final void updateOptouts() + { + final ArrayList includes_ = new ArrayList(); + final ArrayList excludes_ = new ArrayList(); + { + String inc = COMMON.pattern_includes.get().toLowerCase().replaceAll(MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); + if(COMMON.pattern_includes.get() != inc) COMMON.pattern_includes.set(inc); + if(!inc.isEmpty()) LOGGER.info("Config pattern includes: '" + inc + "'"); + String[] incl = inc.split(","); + includes_.clear(); + for(int i=0; i< incl.length; ++i) { + incl[i] = incl[i].replaceAll("[*]", ".*?"); + if(!incl[i].isEmpty()) includes_.add(incl[i]); + } + } + { + String exc = COMMON.pattern_excludes.get().toLowerCase().replaceAll(MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); + if(!exc.isEmpty()) LOGGER.info("Config pattern excludes: '" + exc + "'"); + String[] excl = exc.split(","); + excludes_.clear(); + for(int i=0; i< excl.length; ++i) { + excl[i] = excl[i].replaceAll("[*]", ".*?"); + if(!excl[i].isEmpty()) excludes_.add(excl[i]); + } + } + + { + boolean with_log_details = false; + HashSet optouts = new HashSet<>(); + ModContent.getRegisteredItems().stream().filter((Item item) -> { + if(item == null) return true; + if(SERVER == null) return false; + return false; + }).forEach( + e -> optouts.add(e.getRegistryName().getPath()) + ); + ModContent.getRegisteredBlocks().stream().filter((Block block) -> { + if(block==null) return true; + if(block==ModContent.SIGN_MODLOGO) return true; + if(COMMON==null) return false; + try { + if(!COMMON.with_experimental.get()) { + if(block instanceof Auxiliaries.IExperimentalFeature) return true; + if(ModContent.isExperimentalBlock(block)) return true; + } + final String rn = block.getRegistryName().getPath(); + // Hard IE dependent blocks + if(!immersiveengineering_installed) { + if(block==ModContent.CONCRETE_WALL) return true; + if((block instanceof DecorBlock.Normal)&&((((DecorBlock.Normal)block).config&DecorBlock.CFG_HARD_IE_DEPENDENT)!=0)) + return true; + if((block instanceof StandardBlocks.BaseBlock)&&((((StandardBlocks.BaseBlock)block).config&DecorBlock.CFG_HARD_IE_DEPENDENT)!=0)) + return true; + } + // Force-include/exclude pattern matching + try { + for(String e : includes_) { + if(rn.matches(e)) { + if(with_log_details) LOGGER.info("Optout force include: "+rn); + return false; + } + } + for(String e : excludes_) { + if(rn.matches(e)) { + if(with_log_details) LOGGER.info("Optout force exclude: "+rn); + return true; + } + } + } catch(Throwable ex) { + LOGGER.error("optout include pattern failed, disabling."); + includes_.clear(); + excludes_.clear(); + } + // Early non-opt out type based evaluation + if(block instanceof EdCraftingTable.CraftingTableBlock) return COMMON.without_crafting_table.get(); + if(block instanceof EdElectricalFurnace.ElectricalFurnaceBlock) return COMMON.without_electrical_furnace.get(); + if((block instanceof EdFurnace.FurnaceBlock)&&(!(block instanceof EdElectricalFurnace.ElectricalFurnaceBlock))) return COMMON.without_lab_furnace.get(); + if(block instanceof EdFluidAccumulator.FluidAccumulatorBlock) return COMMON.without_passive_fluid_accumulator.get(); + if(block instanceof EdWasteIncinerator.WasteIncineratorBlock) return COMMON.without_waste_incinerator.get(); + if(block instanceof EdDropper.DropperBlock) return COMMON.without_factory_dropper.get(); + if(block instanceof EdPlacer.PlacerBlock) return COMMON.without_factory_placer.get(); + if(block instanceof EdBreaker.BreakerBlock) return COMMON.without_block_breaker.get(); + if(block instanceof EdSlabSliceBlock) return COMMON.without_halfslabs.get(); + if(block instanceof EdLadderBlock) return COMMON.without_ladders.get(); + if(block instanceof EdWindowBlock) return COMMON.without_windows.get(); + if(block instanceof EdPipeValve.PipeValveBlock) return COMMON.without_valves.get(); + if(block instanceof EdHorizontalSupportBlock) return COMMON.without_hsupports.get(); + if(block instanceof EdFloorGratingBlock) return COMMON.without_floor_grating.get(); + if(block instanceof EdHopper.HopperBlock) return COMMON.without_factory_hopper.get(); + if(block instanceof EdFluidFunnel.FluidFunnelBlock) return COMMON.without_fluid_funnel.get(); + if(block instanceof EdSolarPanel.SolarPanelBlock) return COMMON.without_solar_panel.get(); + if(block instanceof EdMineralSmelter.MineralSmelterBlock) return COMMON.without_mineral_smelter.get(); + if(block instanceof EdMilker.MilkerBlock) return COMMON.without_milking_machine.get(); + if(block instanceof EdTreeCutter.TreeCutterBlock) return COMMON.without_tree_cutter.get(); + if(block instanceof EdLabeledCrate.LabeledCrateBlock) return COMMON.without_labeled_crate.get(); + // Type based evaluation where later filters may match, too + if(COMMON.without_slabs.get()&&(block instanceof EdSlabBlock)) return true; + if(COMMON.without_stairs.get()&&(block instanceof EdStairsBlock)) return true; + if(COMMON.without_walls.get()&&(block instanceof EdWallBlock)) return true; + if(COMMON.without_poles.get()&&(block instanceof EdStraightPoleBlock)) return true; + // String matching based evaluation + if(COMMON.without_clinker_bricks.get()&&(rn.startsWith("clinker_brick_"))) return true; + if(COMMON.without_slag_bricks.get()&&rn.startsWith("slag_brick_")) return true; + if(COMMON.without_rebar_concrete.get()&&rn.startsWith("rebar_concrete")) return true; + if(COMMON.without_gas_concrete.get()&&rn.startsWith("gas_concrete")) return true; + if(COMMON.without_ie_concrete_wall.get()&&rn.startsWith("concrete_wall")) return true; + if(COMMON.without_panzer_glass.get()&&rn.startsWith("panzerglass_")) return true; + if(COMMON.without_light_sources.get()&&rn.endsWith("_light")) return true; + if(COMMON.without_sign_plates.get()&&rn.startsWith("sign_")) return true; + if(COMMON.without_treated_wood_furniture.get()) { + if(block instanceof EdChair.ChairBlock) return true; + if(rn.equals("treated_wood_table")) return true; + if(rn.equals("treated_wood_stool")) return true; + if(rn.equals("treated_wood_windowsill")) return true; + if(rn.equals("treated_wood_broad_windowsill")) return true; + if(rn.equals("treated_wood_side_table")) return true; + } + if(COMMON.without_metal_furniture.get()) { + if(rn.equals("steel_table")) return true; + } + if(COMMON.without_fences.get()) { + if(block instanceof EdFenceBlock) return true; + if(block instanceof EdDoubleGateBlock) return true; + } + } catch(Exception ex) { + LOGGER.error("Exception evaluating the optout config: '"+ex.getMessage()+"'"); + } + return false; + }).forEach( + e -> optouts.add(e.getRegistryName().getPath()) + ); + optouts_ = optouts; + } + } + public static final void apply() { - without_crafting_table = isOptedOut(ModContent.TREATED_WOOD_CRAFTING_TABLE); - immersiveengineering_installed = Auxiliaries.isModLoaded("immersiveengineering"); with_experimental_features_ = COMMON.with_experimental.get(); + if(with_experimental_features_) LOGGER.info("Config: EXPERIMENTAL FEATURES ENABLED."); + immersiveengineering_installed = Auxiliaries.isModLoaded("immersiveengineering"); + updateOptouts(); + without_crafting_table = isOptedOut(ModContent.TREATED_WOOD_CRAFTING_TABLE); without_recipes_ = COMMON.without_recipes.get(); + without_direct_slab_pickup = COMMON.without_direct_slab_pickup.get(); // ----------------------------------------------------------------------------------------------------------------- - OptionalRecipeCondition.on_config(with_experimental_features_, without_recipes_, ModConfig::isOptedOut, ModConfig::isOptedOut); EdFurnace.FurnaceTileEntity.on_config(COMMON.furnace_smelting_speed_percent.get(), COMMON.furnace_fuel_efficiency_percent.get(), COMMON.furnace_boost_energy_consumption.get()); EdChair.on_config(COMMON.without_chair_sitting.get(), COMMON.without_mob_chair_sitting.get(), COMMON.chair_mob_sitting_probability_percent.get(), COMMON.chair_mob_standup_probability_percent.get()); EdLadderBlock.on_config(COMMON.without_ladder_speed_boost.get()); @@ -626,34 +700,15 @@ public class ModConfig EdSlabSliceBlock.on_config(!COMMON.without_direct_slab_pickup.get()); EdLabeledCrate.on_config(false); // ----------------------------------------------------------------------------------------------------------------- - if(with_experimental_features_) { - ModEngineersDecor.logger().info("Config: EXPERIMENTAL FEATURES ENABLED."); - } - { - String inc = COMMON.pattern_includes.get().toLowerCase().replaceAll(ModEngineersDecor.MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); - if(COMMON.pattern_includes.get() != inc) COMMON.pattern_includes.set(inc); - if(!inc.isEmpty()) ModEngineersDecor.logger().info("Config pattern includes: '" + inc + "'"); - String[] incl = inc.split(","); - includes_.clear(); - for(int i=0; i< incl.length; ++i) { - incl[i] = incl[i].replaceAll("[*]", ".*?"); - if(!incl[i].isEmpty()) includes_.add(incl[i]); - } - } - { - String exc = COMMON.pattern_includes.get().toLowerCase().replaceAll(ModEngineersDecor.MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); - if(!exc.isEmpty()) ModEngineersDecor.logger().info("Config pattern excludes: '" + exc + "'"); - String[] excl = exc.split(","); - excludes_.clear(); - for(int i=0; i< excl.length; ++i) { - excl[i] = excl[i].replaceAll("[*]", ".*?"); - if(!excl[i].isEmpty()) excludes_.add(excl[i]); - } - } { // Check if the config is already synchronized or has to be synchronised. server_config_.putBoolean("tree_cuttter_requires_power", COMMON.tree_cuttter_requires_power.get()); server_config_.putBoolean("block_breaker_requires_power", COMMON.block_breaker_requires_power.get()); + { + String s = String.join(",", optouts_); + server_config_.putString("optout", s); + if(!s.isEmpty()) LOGGER.info("Opt-outs:" + s); + } } } } diff --git a/1.14/src/main/java/wile/engineersdecor/ModContent.java b/1.14/src/main/java/wile/engineersdecor/ModContent.java index dc51934..45c7c2b 100644 --- a/1.14/src/main/java/wile/engineersdecor/ModContent.java +++ b/1.14/src/main/java/wile/engineersdecor/ModContent.java @@ -14,6 +14,7 @@ package wile.engineersdecor; import wile.engineersdecor.blocks.*; +import wile.engineersdecor.libmc.blocks.StandardBlocks.BaseBlock; import wile.engineersdecor.libmc.detail.Auxiliaries; import wile.engineersdecor.libmc.blocks.StandardBlocks; import net.minecraft.util.Direction; @@ -44,6 +45,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.List; import java.util.Collections; +import java.util.stream.Collectors; import javax.annotation.Nonnull; @SuppressWarnings("unused") @@ -713,12 +715,12 @@ public class ModContent HALFSLAB_REBARCONCRETE, HALFSLAB_GASCONCRETE, HALFSLAB_CONCRETE, - //HALFSLAB_TREATEDWOOD, - //HALFSLAB_SHEETMETALIRON, - //HALFSLAB_SHEETMETALSTEEL, - //HALFSLAB_SHEETMETALCOPPER, - //HALFSLAB_SHEETMETALGOLD, - //HALFSLAB_SHEETMETALALUMINIUM, + HALFSLAB_TREATEDWOOD, + HALFSLAB_SHEETMETALIRON, + HALFSLAB_SHEETMETALSTEEL, + HALFSLAB_SHEETMETALCOPPER, + HALFSLAB_SHEETMETALGOLD, + HALFSLAB_SHEETMETALALUMINIUM, CONCRETE_WALL, PANZERGLASS_BLOCK, PANZERGLASS_SLAB, @@ -949,10 +951,25 @@ public class ModContent public static List getRegisteredBlocks() { return Collections.unmodifiableList(registeredBlocks); } + @Nonnull + public static List getRegisteredItems() + { return new ArrayList<>(); } + public static final void registerBlocks(final RegistryEvent.Register event) { - if(Auxiliaries.isModLoaded("immersiveengineering")) Auxiliaries.logInfo("Immersive Engineering also installed ..."); - registeredBlocks.addAll(allBlocks()); + boolean ie_available = Auxiliaries.isModLoaded("immersiveengineering"); + if(ie_available) { + Auxiliaries.logInfo("Immersive Engineering also installed ..."); + registeredBlocks.addAll(allBlocks()); + } else { + registeredBlocks.addAll(allBlocks().stream() + .filter(block-> + ((!(block instanceof BaseBlock)) || ((((BaseBlock)block).config & DecorBlock.CFG_HARD_IE_DEPENDENT)==0)) + || (block == HALFSLAB_CONCRETE) // special case for 1.14 to prevent mod update issues + ) + .collect(Collectors.toList()) + ); + } for(Block e:registeredBlocks) event.getRegistry().register(e); Auxiliaries.logInfo("Registered " + Integer.toString(registeredBlocks.size()) + " blocks."); } diff --git a/1.14/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java b/1.14/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java index 34e58e2..fc78a5c 100644 --- a/1.14/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java +++ b/1.14/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java @@ -123,7 +123,7 @@ public class EdElectricalFurnace public static final int HEAT_INCREMENT = 20; public static final int MAX_ENERGY_TRANSFER = 1024; public static final int MAX_ENERGY_BUFFER = 32000; - public static final int MAX_SPEED_SETTING = 2; + public static final int MAX_SPEED_SETTING = 3; public static final int NUM_OF_SLOTS = 7; public static final int SMELTING_INPUT_SLOT_NO = 0; public static final int SMELTING_AUX_SLOT_NO = 1; @@ -196,7 +196,7 @@ public class EdElectricalFurnace proc_time_needed_ = nbt.getInt("CookTimeTotal"); energy_stored_ = nbt.getInt("Energy"); speed_ = nbt.getInt("SpeedSetting"); - speed_ = (speed_ < 0) ? (1) : ((speed_>3) ? 3 : speed_); + speed_ = (speed_ < 0) ? (1) : ((speed_>MAX_SPEED_SETTING) ? MAX_SPEED_SETTING : speed_); } protected void writenbt(CompoundNBT nbt) @@ -205,7 +205,7 @@ public class EdElectricalFurnace nbt.putInt("CookTime", MathHelper.clamp(proc_time_elapsed_, 0, MAX_BURNTIME)); nbt.putInt("CookTimeTotal", MathHelper.clamp(proc_time_needed_, 0, MAX_BURNTIME)); nbt.putInt("Energy", MathHelper.clamp(energy_stored_, 0, MAX_ENERGY_BUFFER)); - nbt.putInt("SpeedSetting", MathHelper.clamp(speed_, -1, MAX_SPEED_SETTING)); + nbt.putInt("SpeedSetting", MathHelper.clamp(speed_, 0, MAX_SPEED_SETTING)); ItemStackHelper.saveAllItems(nbt, stacks_); } @@ -492,7 +492,7 @@ public class EdElectricalFurnace } else if(energy_stored_ >= (MAX_ENERGY_BUFFER/2)) { enabled_ = true; } - if((!(stacks_.get(SMELTING_INPUT_SLOT_NO)).isEmpty()) && (enabled_) && (speed_>0) && (speed_<4)) { + if((!(stacks_.get(SMELTING_INPUT_SLOT_NO)).isEmpty()) && (enabled_) && (speed_>0) && (speed_<=MAX_SPEED_SETTING)) { IRecipe last_recipe = currentRecipe(); updateCurrentRecipe(); if(currentRecipe() != last_recipe) { @@ -769,7 +769,7 @@ public class EdElectricalFurnace { if(!(inventory_ instanceof ElectricalFurnaceTileEntity)) return; ElectricalFurnaceTileEntity te = (ElectricalFurnaceTileEntity)inventory_; - if(nbt.contains("speed")) te.speed_ = MathHelper.clamp(nbt.getInt("speed"), 0, 3); + if(nbt.contains("speed")) te.speed_ = MathHelper.clamp(nbt.getInt("speed"), 0, ElectricalFurnaceTileEntity.MAX_SPEED_SETTING); te.markDirty(); } } diff --git a/1.14/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java b/1.14/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java index dad2a41..c52d860 100644 --- a/1.14/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java +++ b/1.14/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java @@ -17,10 +17,14 @@ import mezz.jei.api.registration.IRecipeTransferRegistration; import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.runtime.IJeiRuntime; import net.minecraft.block.Block; +import net.minecraft.item.BlockItem; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; -import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.stream.Collectors; + @mezz.jei.api.JeiPlugin public class JEIPlugin implements mezz.jei.api.IModPlugin @@ -48,15 +52,21 @@ public class JEIPlugin implements mezz.jei.api.IModPlugin @Override public void onRuntimeAvailable(IJeiRuntime jeiRuntime) { - List blacklisted = new ArrayList<>(); + HashSet blacklisted = new HashSet<>(); for(Block e: ModContent.getRegisteredBlocks()) { - if(ModConfig.isOptedOut(e)) { - blacklisted.add(new ItemStack(e.asItem())); + if(ModConfig.isOptedOut(e) && (e.asItem().getRegistryName().getPath()).equals((e.getRegistryName().getPath()))) { + blacklisted.add(e.asItem()); + } + } + for(Item e: ModContent.getRegisteredItems()) { + if(ModConfig.isOptedOut(e) && (!(e instanceof BlockItem))) { + blacklisted.add(e); } } if(!blacklisted.isEmpty()) { + List blacklist = blacklisted.stream().map(ItemStack::new).collect(Collectors.toList()); try { - jeiRuntime.getIngredientManager().removeIngredientsAtRuntime(VanillaTypes.ITEM, blacklisted); + jeiRuntime.getIngredientManager().removeIngredientsAtRuntime(VanillaTypes.ITEM, blacklist); } catch(Exception e) { ModEngineersDecor.logger().warn("Exception in JEI opt-out processing: '" + e.getMessage() + "', skipping further JEI optout processing."); } diff --git a/1.14/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java b/1.14/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java index 631cb46..fb52bb6 100644 --- a/1.14/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java +++ b/1.14/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java @@ -10,10 +10,12 @@ package wile.engineersdecor.libmc.detail; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.ItemStackHelper; import net.minecraft.item.ItemStack; import net.minecraft.nbt.CompoundNBT; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Direction; +import net.minecraft.util.NonNullList; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; import net.minecraft.inventory.IInventory; @@ -86,7 +88,9 @@ public class Inventories } private static ItemStack checked(ItemStack stack) - { return stack.isEmpty() ? ItemStack.EMPTY : stack; } // explicit EMPTY return + { return stack.isEmpty() ? ItemStack.EMPTY : stack; } + + //-------------------------------------------------------------------------------------------------------------------- public static class SlotRange { @@ -138,7 +142,7 @@ public class Inventories for(int i = start_slot; i < end_slot; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); final ItemStack stack = inventory.getStackInSlot(sno); - if(stack.isEmpty() || (!inventory.isItemValidForSlot(sno, mvstack))) { + if(stack.isEmpty()) { empties[sno] = true; } else if(areItemStacksIdentical(stack, mvstack)) { matches[sno] = true; @@ -148,7 +152,7 @@ public class Inventories // first iteration: fillup existing stacks for(int i = start_slot; i < end_slot; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); - if(empties[sno] || !matches[sno]) continue; + if((empties[sno]) || (!matches[sno])) continue; final ItemStack stack = inventory.getStackInSlot(sno); int nmax = Math.min(limit_left, stack.getMaxStackSize() - stack.getCount()); if(mvstack.getCount() <= nmax) { @@ -180,7 +184,7 @@ public class Inventories } for(i=insert_start;i < insert_end; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); - if(!empties[sno]) continue; + if((!empties[sno]) || (!inventory.isItemValidForSlot(sno, mvstack))) continue; int nmax = Math.min(limit_left, mvstack.getCount()); ItemStack moved = mvstack.copy(); moved.setCount(nmax); @@ -195,7 +199,7 @@ public class Inventories final int sno = reverse ? (end_slot-1-i) : (i); if(!matches[sno]) continue; int ii = (empties[sno-1]) ? (sno-1) : (empties[sno+1] ? (sno+1) : -1); - if(ii >= 0) { + if((ii >= 0) && (inventory.isItemValidForSlot(ii, mvstack))) { int nmax = Math.min(limit_left, mvstack.getCount()); ItemStack moved = mvstack.copy(); moved.setCount(nmax); @@ -209,7 +213,7 @@ public class Inventories // third iteration: use any empty slots for(int i = start_slot; i < end_slot; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); - if(!empties[sno]) continue; + if((!empties[sno]) || (!inventory.isItemValidForSlot(sno, mvstack))) continue; int nmax = Math.min(limit_left, mvstack.getCount()); ItemStack placed = mvstack.copy(); placed.setCount(nmax); @@ -303,4 +307,33 @@ public class Inventories { return inventory.isItemValidForSlot(offset+index, stack); } } + //-------------------------------------------------------------------------------------------------------------------- + + public static NonNullList readNbtStacks(CompoundNBT nbt, String key, int size) + { + NonNullList stacks = NonNullList.withSize(size, ItemStack.EMPTY); + if((nbt == null) || (!nbt.contains(key,10))) return stacks; + CompoundNBT stacknbt = nbt.getCompound(key); + ItemStackHelper.loadAllItems(stacknbt, stacks); + return stacks; + } + + public static CompoundNBT writeNbtStacks(CompoundNBT nbt, String key, NonNullList stacks, boolean omit_trailing_empty) + { + CompoundNBT stacknbt = new CompoundNBT(); + if(omit_trailing_empty) { + for(int i=stacks.size()-1; i>=0; --i) { + if(!stacks.get(i).isEmpty()) break; + stacks.remove(i); + } + } + ItemStackHelper.saveAllItems(stacknbt, stacks); + if(nbt == null) nbt = new CompoundNBT(); + nbt.put(key, stacknbt); + return nbt; + } + + public static CompoundNBT writeNbtStacks(CompoundNBT nbt, String key, NonNullList stacks) + { return writeNbtStacks(nbt, key, stacks, false); } + } diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json index 010c521..0cc0562 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json index 1701125..5137fa2 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json index 15a1bfd..e4b5bc3 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json index da2daf0..a341146 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json index 6f9d10d..2d9ff0b 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json index 97c46bd..963f644 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json index 114e60b..386f7d2 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json index af9fc2a..8ae1c28 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json index 9aae690..03b6a03 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json index c59ece1..2996e8f 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json index 32a099d..99e67eb 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json index 012a455..4916cc3 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json index 22be791..038e8ca 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json index 7e86a61..5e47f6d 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json index a1a6c9b..f8758b2 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json index b4fae7c..2f55988 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json index bc66e0d..f517d77 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json index dc3e425..9431803 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json index 90c774f..a08a050 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json index db2cb66..2acd61c 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json index 774cbfd..7410c2b 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json index 50631c2..4f1438f 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json index bf7a696..1a3e1ad 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json index 8d2fc72..9fa6e1e 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json index 6b1c323..5af27cd 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json index 460a411..a540aba 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json index 196f65d..176f23a 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json index 75144ab..aae6702 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json index f3e0609..151de82 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json index 3e41aa4..3aa629a 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json index cc127ab..2b2ecd4 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json index 4bf17e3..3d8db0c 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json index 33985e8..75987e0 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json index ba1dfdf..4fb230a 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json index 5a28b0e..116afd4 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json index 4ad018a..8474301 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json index 9baf84a..e8f67a4 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json index 067bf85..2d65187 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json index 310b3b8..6678955 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json index d80f4df..ae8f7b3 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json index cc7bad3..0ffbf17 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json index e2b2371..c848915 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json index 05f3593..bd7b709 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json index 7bc9ba7..9766ee9 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json index 735a49e..fe86c98 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json index cc5457f..c68a8cf 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json index 80d61a1..0395cae 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json index 0fe74e2..a169032 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json index d46b68a..f255a40 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json index 03b0e72..327f6ec 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json index ebd8de7..4de2f26 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json index 6e320ce..4658327 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json index 6597c88..e7c42b8 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json index 35ef68d..7fd02a1 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json index ce7757e..bf1dc63 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json index 4b646cc..8a8a5f5 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json index bfdcf64..f8dbf5b 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json index da65821..de421e9 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json index ee5a817..859bd78 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json index f283f62..676bcaf 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json index 15cbe2a..bbb5cba 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json index 535e9bc..097a39b 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json index 01b1492..60f099f 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json index 4787f8f..0f62a50 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json index 0dd6af2..9ddef82 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json index 8728aec..f61c907 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json index 1578928..35afe35 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json index 1c96baf..d8673fe 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json index 8ac9d61..8a5e9d7 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json index f29c546..229786c 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json index 11e806b..724e523 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json index 4f62472..c29880f 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json index 2bbdc25..b5e90b7 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json index cb669a9..1566ab2 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json index c90cc2a..e230e1a 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json index e407cc4..a257b97 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json index 246e37c..c3574a5 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json index 5c2ea42..98979c5 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json index fdccbed..dc1f78e 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json index 0b7c181..97212f3 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json index 61a9c8b..0302813 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json index 97b3a2b..ab8e456 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json index 813ec2e..a78a728 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json index 47b1ee2..2c5c17c 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json index 0014aa3..69d4f74 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json index 7c3dca8..a48863c 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json index b42c04e..f595960 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json index 826f246..7da1eaa 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json index a3fc117..ddedfc0 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json index 4504ff2..5da6b1c 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json index 378409c..aab3bad 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json index 2f40718..cb024a4 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json index 16db637..09fd8a5 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json index 9b7c6af..ef26533 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json index a311aa2..f6c7b8c 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json index a36c04a..f8d7784 100644 --- a/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json +++ b/1.14/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture0.png b/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture0.png index 799fffe7034913ea208e848aba92e17e37de982a..d434d806ffd1d34dc0349586d9b3b9a6e55c8141 100644 GIT binary patch delta 833 zcmV-H1HSy^2HpmcDu4d~{{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00091NklVNK2L`zTwjLw7MW(JYculIJSXh4rpmLQC^Ug0wwVgrtH!0 zb_nKkdczSyH%Rl6@#itBZqe-YSg$rr$B#I+ffs~WN=+HA7#trXK41P$5``4CN>lDo z6&bc67=ONU(d`x=e*TpTI66Dy>iU+dsu5BmO`Vk=Al$=Kteqasx*(07$-)5LFlh}A zsIm<|yt}}$Ou{Ip>sSa;p&JdH;Sr)C(Sq4Cb#9ZC0<#umdBJS%;dVN#DuJbfzuxfG z$&lE!Xxc5JcuN+{v7J8R@ZvSIhX=ZyCXcaGpQoFDDYBBy z$|sn7A2*Hcd*JN9b+5H2Slq6xo*}FF+X@R>x!0PQ$q&b!b($e@J%p!aQKP{I%00000 LNkvXXu0mjfiHV1m delta 839 zcmV-N1GxO&2IK~iDt|fvAOICdLb+1_000SaNLh0L01m_e01m_fl`9S#00097Nkl2+$;UGo(t>HdtY8X>&f< zX?%+9*yaKr;gde;>ectPEQ4-4%wpQEm^vy=V|=%!_O=pw^T`l>bOX6e)_KN_RopeW5UT0tFwn9 z*Q}P0=%!8)ZP-Z~nrR?*DMr&FTP_#}DUt+AoaSh&2mIT=*!%pHd>!CN5#8g@D2ock zZDDr$#LIgOcaP!C4M{HJ8Zw+oJ<(2K zbU#KCGVPXuZ8q4+778`QQN-Eh1(Tak>>nMV8YackN0)1C!@_c0q%=pW9NJpVRw$&U zKuUdtZg=T@QcX0vW553d@z2$3 z(r`mj%YT@5hpNbEyEcO-Z8Xc_^{Y2j!13TI*EbWYsz%s0u4&-U7l?NM3ye+|vo6?% zQ?gBf*3fYdkEyblZ!TY8NhLuL;x!F~sL&cJotGCh>>f%mpHk=6f2JrR%M0d<6^2}~ ztptV)vDW0|WIz&a&~<~ys6a{=sEUc`zc^=pe}9kHGVv!!sU!S-;t&XqR0vcUtLfoDN&pf&sNBWg-{iK`|(#$4Hkd@iL-x58Eu%4 zCJ0TzZuL+#6$Pncvs@7SK4)Kl%gy^MbhnMt&>1}MW2rU4|3|_k!L@CIaKmbwP*egj zpFk|BtD60j=LjJ{biaZBcA<3y{D4^000SaNLh0L01m_e01m_fl`9S#0008)NkleLRl#&e#CP9`E`O$YTO!2(ih`Hbig{q81~c;2BY%UT$Ix}Cu&~SlVz*5g zI4=9w9lAT@u)Tx*4#$8>)|?)XQO0wYcmJ}lVSGGie<;u>c#R(s?>~OvWsz|I{ROqH zFx(M}J7)Ftj5i+BHywuP38N5IG3kne_H9RTsIk2xMEta1q*P2I52;x^KCJM355snl zb%`PrzJC6Ps((BXjSX&ZpUGQ;uE^QMO9Tk=P9->sXo`aA$tiW!Ae)xDZYj!=a26uz zsbs_H*#u9Qtkx;A?GXF2W)%9YZ*Q>t32#r|N#YIB@r+*f2xEZh_!zo@IrMqmFPY=%oZ>1cwy=-Fr;YldRUXO-Q=$>LaHJq+pbwXEfDRVw3Jv%PrkTgdj1Y^|LJeaEX59H^it3@6@lk68L8-&L%c2N zfYXaJzJL9oS?2k;H4X;QU9dz^2?hV}&96bca2iGn$`LrCYQnL+e_kGT?Z2 zgzMNC108c1a403(E`Fh}9ZD%s@|>z}h}T;zwd2qUJby^5Iz-Wk!UEH@c*`4IztmC-Xvm|RoFwD=YMZsX(~yXXJnfdb=^{y1)`}ME`Irq zt|+OhhRf?;Q7s24D^N_(E!MX;jHYvBo)RyX2t&j1B6LGXpme00n2G`CS3mKZtT4R* zXFB8l<};4obEu)O4`fAw=ekr`%05}KU9S=Gazo$snAU*4>ln{Zs9KH3FJCzM;fhYG tTqytXJLRFl^?j^xN^__YO^$16{12!nhcu-)qyPW_002ovPDHLkV1jUyh#UX_ delta 820 zcmV-41Izr(2GItPDt|fvAOICdLb+1_000SaNLh0L01m_e01m_fl`9S#0008D$Ns}~* z7k+Q>NjJa!+Q~BXY=`Laf$-xGe1#o>FbnyU-7=$BBJRGM=BYFE{$SvcYBBHxoD}HqTHU7XbqA>KcC(l12+$&!fmvn)*Oh9mtD<@MMHy z*_2Jq>Dd5RZCI`n(l|!h6&2d%h3&(?D5i&~OQPAF;psOt2T){zIXGvxe#US|OeYia zO2##02BQGQANq7n1DZqM)QF;l<6%HFozXK4T1lhI|9>JoD9oN;k%Wxz8Q7-ILAFrn zV3%c_efN?1O0c~C4yEYde zd^F49@qa0z1x_!{_%fN(wjIK@8H~@^Mk|DW{w>B}h}qTb(*~*iitS?{xi|@Gl6H4zNKup30jrXRSj0(A%9Lw{87m3mpkgRp~zCw^^&SOP!u_$ zE^97+yr#_y;`JI`HIWSqp(_0O#|@|ktNVX&j>a@uLNuErGzH5IQ8g8T)RL?tN_0M5 z|ANpYdajRkbWC{cVW}Pa3c6}fn&-H-O_?TaXJ6T@R)}c6rfWNThK>+|(fK9iLE+{0 y7Ay{D4^000SaNLh0L01m_e01m_fl`9S#0008yNklb8Dw+JAhz=M(p6(co$xP*FZvI1cKEton}g#Hj~&% ze2s50yAkZa<){4o(~sTt?GPN%wrS}N zM|9@_S&}020%tTPPh*_nh$@Y#+ZItB3(kf^q%IJeM%H%BE^le-itT!XDK#W5hcspE z_ApJ0!~Q^5<~Y8OsM450Frv*e+N!~l8bzLvZZ~|mdw*oIn9|e*o0GyT$ht3F$V#swx&*Fx}u=og*Z~75fXrncKM`HC|lp^EJ z_dn37I)7!^VoHV0I-)NG{wBvrgeG*yYJ zoXDaG$23r_3CH~!-}gTU({_7?(+TF;8D4Kfo_~gTLBQtWAA~9-vOW@APC;5En-#O0 z8`dvtWLL9Uu5f}8dK6NnF=bxhxGu*mW-xFO4-YGb0}H3i(7irL6V0%(>>iFS`06{I zw#cZYgXfQ^$|En2Pq=-D<@vM-DOE4@KVF;pa%-_GiMJOuL?x9Nu!x_=DP3rbU lwje)HuPekvD!3rB7U(HW{zQFWTOaW*?~ zyv7R`R0+ZTIX<21pMPxAGUx8*p6Qv3eSAul?rF;!p~#q{F@KNO*OUlk&BS&Lw5DaT zUg0|qVm5okv@ND@E^sGj=v|$x7BqEE+i9taoUT9O;_?d5w>f|NJw>)fHhcWFO6c7D z@>APL9lEAXvfWbbLW=UhX0sy+)?8eDP1#ZK{XSU~AsHr=8B{gvxIjeF7R~HYRxQrx z9D6*W=MCtYI)B6I1WncO44vR%hT;0OX-4qng%TNAk&&w`;qLbv21hR8YK74rh{~41 z$uUiuv3PpHolGbyXxa+NvN64aBF#_?6QSCDn!3ccEDR3lzK|@vloKLXXcO3L{Y-@+keY{VY^8fPR3}O#NzHx6ai_G zBZ4SHWFb96<7hHMZc2tDkL7%Urb%>~1HtT>RyRpDYj#PAu z8}^$GbzLElB=Sa(Y}Oc-O|o8~_FX)GKpO8z(|-cP8Dn@pvZ|qXRff|Edbf*b=*UOY zbCM|J_BJ3ZYTV;f7I!z~C4BSUJHq9Xc(+3-Q}R~+PcS*(?=Tz()zmR0f!Uu>pVzc? z&HU+wq1PvicL>L!iDMo+eJ^M9SxQ_le a*cIOm3WZNAa9k+>0000P diff --git a/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture3.png b/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture3.png index 3be27d1ff203dcf9119128817d617ee4370b8cc3..742912d51739770f6d1773f3a3e378a4078579f8 100644 GIT binary patch delta 840 zcmV-O1GoI-2IU5jDu4d~{{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00098NklJ_&p$LtE{Ikk`zJ@}wn4O55rzS!+(ju?*nd5bIISqF3d7WB*A4Tf z&%kkzN2B+2x)yB>*5L-zwD>T7WcDzlXKLga7~KJNOXm3U1ZQ`j?PiJ6vAJEuDCeJC zP)QB4tgVbXBBRKYib{@&s&; zObFDbMpIi<)PLyR0XM(>!PT=9L@LnSE*;k;D=He=RPhQqUM;zMSkhJ+Y|CJ}*b+oJ zl4|1nONPhCY(-8G2^JsbY=Q+vFh$pO5D9YI?y=)J6h)1crVPCfmT92cLz<$%ax~Hk zf;49|o>3HF4-ZM!6B@ZdHU~Q#U7nKV6-~!NYPXQch=2SMUE5$_TWC~#_4RZ5A01%1 z9r8FNnJ-DUIdbh!5K%&&3Cczz%^ECkND{8eqcugD4R{j831xf6I0~ zL8Jn;XLE3Rjw?zYUjNC??kNgNn_za&W^~W+{G4F1q{?#^PjkAxT}-!2-PEksbH?Ko z-AfR)Ox;pR@*KI$12@WO0PQSTVVOU=yb(Wy1X39eaEGh%iJ|G@2;HbUkLlmj405)1L=c S9YSyb0000wMmMMXyY?Hd`ZjF*-Rfu@|>qxz_8!O>biJqAAd>H(G3-C+pt)#=-D>n z-Q6wij)|tivmam>CdGGsYuW)m(h2xP?{~O z(x$FU2Hza=;eXHfoShyb$s+2>gtp^gmo*Iml-N5x z!Z>30=$LPHlU9?UnkK4Yv27au{{0>2Z_kmpC1IQ*#{LS@1jTVl0*_YPps7nV-C(ER z#jqR%LBe0n*oHo*lL3J@Cle)|kc2WV zHzC`KY$b)HC=jb6!yXJtk{F?^usb$+m|`nns9PSV3(#~9MgyFlLYc;tWrbmP$deSY zu0Y}O=AN@RuSueiJdT)NT{FFTAc#}sDq(Sb$?oou%=b}bl_v5r9GAHl@;@;Bos>MN Rd7%IR002ovPDHLkV1n&NkEZ|t diff --git a/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture4.png b/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture4.png index 2784802e4055745ee8457eb10d37ed060cb178e3..48da3010f11546848a9b60e1ccf5635de4fe743a 100644 GIT binary patch delta 807 zcmV+?1K9k<2E+!CDu4d~{{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#0008yNkl({_5J%!)x`Bv|mI?06J5Y*5993aVjXCet=)>^P3^ zm-yH$*dQd{;M;ti`yan=v#KEU_H=EBI0(3WH6txr8d)>HIDcpFdhA^fRX4GnK6=yQ z`a7nMgIKLTV%iqN(*=eiXo4Chp4v>8SCn~(Y7Y3rOHprL z-_j@@nsA2~7A!|5&ryTOO1fQ@`ErS{EMyU*$ci{vquVxmEor5Oh?5lE956n;VEy3< zeLADBNuonSuYaislLCM3v0Xi(+he+2m8Lur=QXOTAj&x8{jU$K{&M;DySL+YhcvRn8EM2>L8BVvNlJe-!W#5>eq8hV z_8e8$@z*azX+_y~pv+Ly7@-s?^Q+HMdpgL9aJOggCVxx~19a37uB;ETMrhzh^GnBgb?IXFqzMJ`1u$7-JafbO6TsUA6ip`?bDhhEje3`X^#yZ(P8WQ z_ft!0mIppi(7|0iE*DdIF`lf%{7Br%*e6O z^d4@Up~;kvW>S|0z3Cj0dLBaWqw5+)kyFbKj%5*N8C9OKI6I|oAlPnbij?&(;omiRe2HnrUFj z8gsZrUP)Rhd3oM28xP6jh%7h|hXv;GpDUxG#j%zMDdG9UC%*pX4Yk%~xB8vH+tU#O lYan3r^0Z<5xc=WOe*??OmkW5TGu8kA002ovPDHLkV1jIMi6{U7 delta 808 zcmV+@1K0e-2E_)DDt|fvAOICdLb+1_000SaNLh0L01m_e01m_fl`9S#0008zNklZ_^tC3&bEX2o^jk8^oiqK|-ivLj}=HVJ6cyY3w*o ze7EakvqC~hyur8ml-nP_YqP50;P2=-E^!!g@nT9^v^272c7J}x&hy!MKAK_SxIK)f z#S6AfToFbUGTQ(jsgd-RMxo5f~;^InS)GvIwUzH2-nm|tCr4i z%)d1s{#+ttMG;3_Utb`EAeVyiY{uf3UkSE5x|0dY%}+nHmJXYT6-iohdOV_iZcv26 z#tR67n1742A81DtZ9mr)iz;q z^E;96A!Us~RVf-lx(n#p4r$<_4~C2;W3o7+s()MD*(J{WnEq%?-!hqA9AoGPqn?TO z(Zwa{KIF}t4HX*B(J9{Df}(;?UVlO8ZwR+rY^^0spBbMV(PTN{c85J4qZLU+&vnr) z6I0e$gJa~Sq?MAV$2HT@fIN=K!aeb!zy{D4^000SaNLh0L01m_e01m_fl`9S#0008$Nklc8#J>2syFd9a(dcAOZnfxrN>?>$HS z@!PMxqQJoMSU-J%w#6QgX{AB_`phA3I14P~a72?Pph#TD=6~Vyzg%C>kkNLBVLPPz z2+eVE0}s*&TL)>oOwU6^c*bEDk=HP~yrNSCHy_@URR!|xPq*BC`b>0aP?{3m@eoeP zYQAI`hN#K_(d5{sjubjgd>~%VImR(%-XPcW1+$TdrqulK=9cX~W9ScY!ZCuLrpmeh z{S#$g;2JearGJoi23?lWN`VRz|Mq9J{gU<5S3JuiPhz^Jr57q$p7ZAYJ5UtLCdVYh zQyTV#ju0I(%`1-EXEy)+&A@YMlOu;H!3$h8Rl^+mI42kAio`vcaEK0kuT(r+WfJJ9 z!6=|_TZ#($svyoXT+3ql-P$W?HC4i>wnYJ3!Y1L|!2}kC8hdty}U|V$dQFs}ND%5+aM^fjmA^_X?JCLcH5z8&fNpzaRl`2cn9i>F z=kW#I9DksPBZijAZoNU)rjL0t!s=^^_?7Y)p&J9dvngGfGLSvCXxXl}gsw@IryO=$ zyqkCAS&7tWxc~ExebrMW31wBY-fU^Igrbx5O@(_kV_+zpUQRfj&B)@EGCeY%uaS;F z#5D~<-(vUj%5HZ=uVVVD#dbZSxMcCXK{GwNJb$O_YR2aidSi^^nn+CuCfApASx(z^ zq^m88X(Kh2yT9%jj?dAk$%}@%w`jAHGAn6U_uO1fQBB{ch>vuw2(n06@{}9be=SZ#8Xc|qEQJ6pyY>dIiD_;80 z^8-h?|NYlCEpvAM2BmKihauDRF-hLi)D`Z<85_@M|DFQ9}}2l1+ea=#-Mqc-&#Lctx~ynWSt{ z>=A;lqnLd}NkI`C#JVJpBRaB7b12Dbk&)}NdRY*xH*_2aSwA|%P+_%Lpmq)FL-qf1 zs7T_HAb*INo~87UPm$6+ZM@~D**S)L#LN9XveXphLC9e2U=1v?eT=tQVw)z)$$;KC z#HUT%YYm&f29oP(=5r1hMQC2OMdrALjLT@;tXXuQl6Esz0 z*wv9gOfN~cAz#0)$SMK*_!RH)fxLuIzuXe~E5h}fZhK%`wv0}WY0?aD`G!52Am{st zu4SPbI;PNK3?|f{cuCXh(Puu=@t)z@o`h%#p*l$7lWnJ==_}1bJ*W00000NkvXX Hu0mjfZoiL^ diff --git a/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture6.png b/1.14/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture6.png index 7f3cffc2c3f383d1329c362debfee10ecd71c06d..d703fc8abe9940a27594a0381767661508af1d4f 100644 GIT binary patch delta 800 zcmV+*1K<4H2HOUZDhdAp{{a7>y{D6rGa`R-;#L4a(W@stfo3FZgE1b{wl^87lB!e| zS>!kKH~E0xW$JXhJH`$eB#=NLkc5Vuqx|vPukF6f*+enY_1Go}H&>@*c}r7Q46ZMU z!-zPH&^i`|sbi}u;cCf==OHGOXDrvIcQM3JYYf|C6~^egN~;?@y?;-=47s>}#BqNO z{Ig4n!v@WA_!MPmUp?N_s0z(yNwmos_AI7*4Y4nfQe!Y0A#9tb*wIy6j(LoEHpV&@ zv~`Wx?lL--LvV4;DqNFmT}-_uUGL~NC7WH&Y8H{qLppANlp4p)ie#OlX)2=FZg~3r z1CuWy505w0Wx@FFj<%^uN(IMvSZseXiVB*xqDWI-pWl#{i|iT*-R;rTC7!QSw=EsV zDiiUw)!$z|tC;JY%-p@%irwX%te|6{6#K7ry`TTPj_WE}luE7)1zd$0dokEM8}1+k*TkxcT}U4(SfF e7qE!8{105rd@y6)C(R510000n`Quj(T|@QAuvd?YVeDoDaLs^hYaW2WaLvZAAHYQ`65 ztb>qs5TfWkOiRO-WrAqM&~*`u#REOZ=HTQAQ*P)wh=MhmCevvqckkcRtO8DEH}roU zlf$zaT?kta_`hJ`OA zx<*56cNu!GkAHGO6l^FI150a2H#>~BBH0y0Pa*M3fbRIHs)EvWZ1**aA|uLe!recg zSlkE9Z>BU=$?4S5`C}FYm$Fa*3fn}Wt#H%@JuT!sD_EqoCDgX!u2$ou0!v; z>~|TK=VA9PmXA-|%+64Bo#^R>G^;2(3CbKL+aly5V|;myV(5JPx*%S~Z1yU)Qe&GM z2ewJN3US(u(d3A9lj0aMn{7c}7KrCKN9<$BbKHSXx?ba16~gfN{PCWoR{4K?`^X~7 z$kq{xsv`SiMk9}1vO{rAg_kHJD{8KG_Cl+2Z&fcOPyU z9J-jpA;LU5<6=5N=Z!2YDDnbX6;y9E{lOuo)x$G7bjQWDRLr(wHa}zf!yKu|5OP~m zL@%6Po^gC~#9-*M`o6@oZG?ZS@a6V1=kqyHl(KIGZBwAA0$J)XhGRq)h6vq4*ENb_ zPu)nkw#_!rF;t0PfBS{Hg`U#V78y^g9bZ2#NW*}psS(IBMJveG5ti+cMFHA@hd&&U zZ&Rwe!yRAZ98Ku^1NuFa(PV(G>G+n3ayY#t+r-@7zOt_+yyH`XyH9@<70iGBi8y>E zUahdYH#Swr;N+M#-xDmK@g@^Qu}iUB7p-SvOC7y~3I64b>ppK4rc~`undxx;R?%?#CIy_az|6_7&dHgAS6{SBf;j7z`=$g30-WO%P%a ehTPvh@IS|+d0Y;gPG}4O0000y{D4^000SaNLh0L01m_e01m_fl`9S#0008`Nklc)u0D#etUmHRjtJ#bTb{tPTO>)tv?c4MPI@4+F#+`cVU^cS|frJ)>mR|I{ z!l^v|_G=lX3CHao#dZihkMT{1FexeWjQ;H{$GyjT_J*t(*ndt9tti>JJKBzem`=ZA z*e3O14_(R`-T#EU*<)B1rK&Ug_Dr&va{K8s&9+T@FyR~@kqwJgB9QMM?kS`S#c{{> zn9$2E98($Lc_@mEVd@C8L!Jakc}n0d(QF$n%SlxW5u8Fa!=gF-flDrTkrhnhU-)*srkj|iofAF!Z5{Dq+ z?df;K%8L-O2T{bRXHz66B6rH+;1hUzs2c2poKiOk_b$4jBQ?7`eEx!5Yakq5CQM6| zMvIEBqnI{AQt01IP!)wF@EMPL2qB1bL95$kzuNN8*FP{?Eo8kn!cbv7pQF|c@=Jzp z=$!lm?tfy2>jsQR5qAF?DLPRG2R`0)F}giwkB`VwaVBv+>YX-D-61{&Y~~9b(`0ye zi`5BeI3}uAWfMdgYK4N5?3`c^$B1ydMQAlNO(jWUvb=(0ngmfqS(NmyhhznK>lH;3 zGM&9Mf8F74H%N+tK$1ubLAZCRnKq%jL9PE^cz@ijNwX58F~IEfv6?L`Lr1q{G*v^r z#K>3U3E{zGxk)j*C075M&C4@M3Lk&@g123hTvk{T9MY23uul=iY!)jTg8?Er`P3W- zrK%Dyzhl$~G$;4;Kiu-ZSYewcmJE8kjV={TpZ-EJZH#7o(Hfb&HV1}W!@VEpqZ4(m0}RiE`f;6K2jdHpdd)%ySd002ovPDHLk FV1i79gbx4! delta 823 zcmV-71IYZ?2GjvG~`0D$3_FDF7yB!mTelD6CJI9hc^Z`Ql<9#-AXShrYxQ5<%tmcu`*4E6T@j#_C^@7An# zk~808n$(CmM$=R*+eFxXDw(2GM`m9?W4JCxSgmP2s<9j8jg2>S%SMY7$~ zu8-{YlFe+zVt?|6;Ra}$N?n{t4<)LqAc}Oy)8|JfUzc1CJq~F?I0$L#iul;V@f{Ys zjG~0PDJhbK*Oxi9qN24;gzk2!t0SJTBTpr@YI4|TbbOy6>@j_vaesG-Y8Y&0?^qqh={Wkr{*QkEm^fcqgH%u)-?>r;X!ST#b4p>wgt)ozXuVl57*)w!$`*jt!dMqh*?C zwu?|SG*P2#8Zu27kB0~$I8=h(U_dlqu~|p7!w_K(F9~{G*3&n#Od@lMq6yk=kJslH z{(YKqh=1NOTn|fc(WF~G-43|_<$;#WP?fqsZeqIq5U=ZT*rzPtrg*l^`Rxr(KgIWK zbfe8O&C#ojmTplNl6E*iWUCdz=wKK+QXVL)7M^XB<~dE>FuXXYtRY^^sb$7&z31(D zO|n{2RV4yNLDqsS+R(9Gvdt2``+wnXz2I0j_y4S^AUA^U^$)RpPeD(KB41zXl)(4 z)nIkc2(IrKeZ1j)I>)tbI-D@W5L2m{{Pj1A?P3K1MSeh36-=MMasU08QrB2dz7Ve> zS};P;?e&SHl;R}F(j&!5F#hp@?P7uVVZ includes_ = new ArrayList(); - private static final ArrayList excludes_ = new ArrayList(); + private static final CompoundNBT server_config_ = new CompoundNBT(); + private static HashSet optouts_ = new HashSet<>(); + private static boolean with_experimental_features_ = false; + private static boolean without_recipes_ = false; public static boolean without_crafting_table = false; public static boolean immersiveengineering_installed = false; public static boolean without_direct_slab_pickup = false; public static boolean with_creative_mode_device_drops = false; - private static boolean with_experimental_features_ = false; - private static boolean without_recipes_ = false; public static final CompoundNBT getServerConfig() // config that may be synchronized from server to client via net pkg. { return server_config_; } + private static final void updateOptouts() + { + final ArrayList includes_ = new ArrayList(); + final ArrayList excludes_ = new ArrayList(); + { + String inc = COMMON.pattern_includes.get().toLowerCase().replaceAll(MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); + if(COMMON.pattern_includes.get() != inc) COMMON.pattern_includes.set(inc); + if(!inc.isEmpty()) LOGGER.info("Config pattern includes: '" + inc + "'"); + String[] incl = inc.split(","); + includes_.clear(); + for(int i=0; i< incl.length; ++i) { + incl[i] = incl[i].replaceAll("[*]", ".*?"); + if(!incl[i].isEmpty()) includes_.add(incl[i]); + } + } + { + String exc = COMMON.pattern_excludes.get().toLowerCase().replaceAll(MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); + if(!exc.isEmpty()) LOGGER.info("Config pattern excludes: '" + exc + "'"); + String[] excl = exc.split(","); + excludes_.clear(); + for(int i=0; i< excl.length; ++i) { + excl[i] = excl[i].replaceAll("[*]", ".*?"); + if(!excl[i].isEmpty()) excludes_.add(excl[i]); + } + } + { + boolean with_log_details = false; + HashSet optouts = new HashSet<>(); + ModContent.getRegisteredItems().stream().filter((Item item) -> { + if(item == null) return true; + if(SERVER == null) return false; + return false; + }).forEach( + e -> optouts.add(e.getRegistryName().getPath()) + ); + ModContent.getRegisteredBlocks().stream().filter((Block block) -> { + if(block==null) return true; + if(block==ModContent.SIGN_MODLOGO) return true; + if(COMMON==null) return false; + try { + if(!COMMON.with_experimental.get()) { + if(block instanceof Auxiliaries.IExperimentalFeature) return true; + if(ModContent.isExperimentalBlock(block)) return true; + } + final String rn = block.getRegistryName().getPath(); + // Hard IE dependent blocks + if(!immersiveengineering_installed) { + if(block==ModContent.CONCRETE_WALL) return true; + if((block instanceof DecorBlock.Normal)&&((((DecorBlock.Normal)block).config&DecorBlock.CFG_HARD_IE_DEPENDENT)!=0)) + return true; + if((block instanceof StandardBlocks.BaseBlock)&&((((StandardBlocks.BaseBlock)block).config&DecorBlock.CFG_HARD_IE_DEPENDENT)!=0)) + return true; + } + // Force-include/exclude pattern matching + try { + for(String e : includes_) { + if(rn.matches(e)) { + if(with_log_details) LOGGER.info("Optout force include: "+rn); + return false; + } + } + for(String e : excludes_) { + if(rn.matches(e)) { + if(with_log_details) LOGGER.info("Optout force exclude: "+rn); + return true; + } + } + } catch(Throwable ex) { + LOGGER.error("optout include pattern failed, disabling."); + includes_.clear(); + excludes_.clear(); + } + // Early non-opt out type based evaluation + if(block instanceof EdCraftingTable.CraftingTableBlock) return COMMON.without_crafting_table.get(); + if(block instanceof EdElectricalFurnace.ElectricalFurnaceBlock) return COMMON.without_electrical_furnace.get(); + if((block instanceof EdFurnace.FurnaceBlock)&&(!(block instanceof EdElectricalFurnace.ElectricalFurnaceBlock))) return COMMON.without_lab_furnace.get(); + if(block instanceof EdFluidAccumulator.FluidAccumulatorBlock) return COMMON.without_passive_fluid_accumulator.get(); + if(block instanceof EdWasteIncinerator.WasteIncineratorBlock) return COMMON.without_waste_incinerator.get(); + if(block instanceof EdDropper.DropperBlock) return COMMON.without_factory_dropper.get(); + if(block instanceof EdPlacer.PlacerBlock) return COMMON.without_factory_placer.get(); + if(block instanceof EdBreaker.BreakerBlock) return COMMON.without_block_breaker.get(); + if(block instanceof EdSlabSliceBlock) return COMMON.without_halfslabs.get(); + if(block instanceof EdLadderBlock) return COMMON.without_ladders.get(); + if(block instanceof EdWindowBlock) return COMMON.without_windows.get(); + if(block instanceof EdPipeValve.PipeValveBlock) return COMMON.without_valves.get(); + if(block instanceof EdHorizontalSupportBlock) return COMMON.without_hsupports.get(); + if(block instanceof EdFloorGratingBlock) return COMMON.without_floor_grating.get(); + if(block instanceof EdHopper.HopperBlock) return COMMON.without_factory_hopper.get(); + if(block instanceof EdFluidFunnel.FluidFunnelBlock) return COMMON.without_fluid_funnel.get(); + if(block instanceof EdSolarPanel.SolarPanelBlock) return COMMON.without_solar_panel.get(); + if(block instanceof EdMineralSmelter.MineralSmelterBlock) return COMMON.without_mineral_smelter.get(); + if(block instanceof EdMilker.MilkerBlock) return COMMON.without_milking_machine.get(); + if(block instanceof EdTreeCutter.TreeCutterBlock) return COMMON.without_tree_cutter.get(); + if(block instanceof EdLabeledCrate.LabeledCrateBlock) return COMMON.without_labeled_crate.get(); + // Type based evaluation where later filters may match, too + if(COMMON.without_slabs.get()&&(block instanceof EdSlabBlock)) return true; + if(COMMON.without_stairs.get()&&(block instanceof EdStairsBlock)) return true; + if(COMMON.without_walls.get()&&(block instanceof EdWallBlock)) return true; + if(COMMON.without_poles.get()&&(block instanceof EdStraightPoleBlock)) return true; + // String matching based evaluation + if(COMMON.without_clinker_bricks.get()&&(rn.startsWith("clinker_brick_"))) return true; + if(COMMON.without_slag_bricks.get()&&rn.startsWith("slag_brick_")) return true; + if(COMMON.without_rebar_concrete.get()&&rn.startsWith("rebar_concrete")) return true; + if(COMMON.without_gas_concrete.get()&&rn.startsWith("gas_concrete")) return true; + if(COMMON.without_ie_concrete_wall.get()&&rn.startsWith("concrete_wall")) return true; + if(COMMON.without_panzer_glass.get()&&rn.startsWith("panzerglass_")) return true; + if(COMMON.without_light_sources.get()&&rn.endsWith("_light")) return true; + if(COMMON.without_sign_plates.get()&&rn.startsWith("sign_")) return true; + if(COMMON.without_treated_wood_furniture.get()) { + if(block instanceof EdChair.ChairBlock) return true; + if(rn.equals("treated_wood_table")) return true; + if(rn.equals("treated_wood_stool")) return true; + if(rn.equals("treated_wood_windowsill")) return true; + if(rn.equals("treated_wood_broad_windowsill")) return true; + if(rn.equals("treated_wood_side_table")) return true; + } + if(COMMON.without_metal_furniture.get()) { + if(rn.equals("steel_table")) return true; + } + if(COMMON.without_fences.get()) { + if(block instanceof EdFenceBlock) return true; + if(block instanceof EdDoubleGateBlock) return true; + } + } catch(Exception ex) { + LOGGER.error("Exception evaluating the optout config: '"+ex.getMessage()+"'"); + } + return false; + }).forEach( + e -> optouts.add(e.getRegistryName().getPath()) + ); + optouts_ = optouts; + } + } + public static final void apply() { - without_crafting_table = isOptedOut(ModContent.TREATED_WOOD_CRAFTING_TABLE); - immersiveengineering_installed = Auxiliaries.isModLoaded("immersiveengineering"); with_experimental_features_ = COMMON.with_experimental.get(); + if(with_experimental_features_) LOGGER.info("Config: EXPERIMENTAL FEATURES ENABLED."); + immersiveengineering_installed = Auxiliaries.isModLoaded("immersiveengineering"); + updateOptouts(); + without_crafting_table = isOptedOut(ModContent.TREATED_WOOD_CRAFTING_TABLE); without_recipes_ = COMMON.without_recipes.get(); without_direct_slab_pickup = COMMON.without_direct_slab_pickup.get(); // ----------------------------------------------------------------------------------------------------------------- @@ -626,34 +699,15 @@ public class ModConfig EdSlabSliceBlock.on_config(!COMMON.without_direct_slab_pickup.get()); EdLabeledCrate.on_config(false); // ----------------------------------------------------------------------------------------------------------------- - if(with_experimental_features_) { - ModEngineersDecor.logger().info("Config: EXPERIMENTAL FEATURES ENABLED."); - } - { - String inc = COMMON.pattern_includes.get().toLowerCase().replaceAll(ModEngineersDecor.MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); - if(COMMON.pattern_includes.get() != inc) COMMON.pattern_includes.set(inc); - if(!inc.isEmpty()) ModEngineersDecor.logger().info("Config pattern includes: '" + inc + "'"); - String[] incl = inc.split(","); - includes_.clear(); - for(int i=0; i< incl.length; ++i) { - incl[i] = incl[i].replaceAll("[*]", ".*?"); - if(!incl[i].isEmpty()) includes_.add(incl[i]); - } - } - { - String exc = COMMON.pattern_includes.get().toLowerCase().replaceAll(ModEngineersDecor.MODID+":", "").replaceAll("[^*_,a-z0-9]", ""); - if(!exc.isEmpty()) ModEngineersDecor.logger().info("Config pattern excludes: '" + exc + "'"); - String[] excl = exc.split(","); - excludes_.clear(); - for(int i=0; i< excl.length; ++i) { - excl[i] = excl[i].replaceAll("[*]", ".*?"); - if(!excl[i].isEmpty()) excludes_.add(excl[i]); - } - } { // Check if the config is already synchronized or has to be synchronised. server_config_.putBoolean("tree_cuttter_requires_power", COMMON.tree_cuttter_requires_power.get()); server_config_.putBoolean("block_breaker_requires_power", COMMON.block_breaker_requires_power.get()); + { + String s = String.join(",", optouts_); + server_config_.putString("optout", s); + if(!s.isEmpty()) LOGGER.info("Opt-outs:" + s); + } } } } diff --git a/1.15/src/main/java/wile/engineersdecor/ModContent.java b/1.15/src/main/java/wile/engineersdecor/ModContent.java index 98d74d0..a2fcc82 100644 --- a/1.15/src/main/java/wile/engineersdecor/ModContent.java +++ b/1.15/src/main/java/wile/engineersdecor/ModContent.java @@ -18,6 +18,7 @@ import wile.engineersdecor.blocks.EdFurnace.FurnaceContainer; import wile.engineersdecor.blocks.EdFurnace.FurnaceGui; import wile.engineersdecor.blocks.EdFurnace.FurnaceTileEntity; import wile.engineersdecor.libmc.blocks.StandardBlocks; +import wile.engineersdecor.libmc.blocks.StandardBlocks.BaseBlock; import wile.engineersdecor.libmc.blocks.StandardBlocks.IStandardBlock; import wile.engineersdecor.libmc.detail.Auxiliaries; import net.minecraft.block.material.MaterialColor; @@ -49,6 +50,7 @@ import org.apache.commons.lang3.ArrayUtils; import java.util.ArrayList; import java.util.Arrays; import java.util.List; +import java.util.stream.Collectors; import java.util.Collections; import javax.annotation.Nonnull; @@ -603,7 +605,7 @@ public class ModContent } )).setRegistryName(new ResourceLocation(ModEngineersDecor.MODID, "small_fluid_funnel")); - public static final EdLabeledCrate.DecorLabeledCrateBlock LABELED_CRATE = (EdLabeledCrate.DecorLabeledCrateBlock)(new EdLabeledCrate.DecorLabeledCrateBlock( + public static final EdLabeledCrate.LabeledCrateBlock LABELED_CRATE = (EdLabeledCrate.LabeledCrateBlock)(new EdLabeledCrate.LabeledCrateBlock( DecorBlock.CFG_HORIZIONTAL|DecorBlock.CFG_LOOK_PLACEMENT|DecorBlock.CFG_OPPOSITE_PLACEMENT, Block.Properties.create(Material.WOOD, MaterialColor.WOOD).hardnessAndResistance(0.5f, 128f).sound(SoundType.METAL).notSolid(), Auxiliaries.getPixeledAABB(0,0,0, 16,16,16) @@ -720,12 +722,12 @@ public class ModContent HALFSLAB_REBARCONCRETE, HALFSLAB_GASCONCRETE, HALFSLAB_CONCRETE, - //HALFSLAB_TREATEDWOOD, - //HALFSLAB_SHEETMETALIRON - //HALFSLAB_SHEETMETALSTEEL, - //HALFSLAB_SHEETMETALCOPPER, - //HALFSLAB_SHEETMETALGOLD, - //HALFSLAB_SHEETMETALALUMINIUM, + HALFSLAB_TREATEDWOOD, + HALFSLAB_SHEETMETALIRON, + HALFSLAB_SHEETMETALSTEEL, + HALFSLAB_SHEETMETALCOPPER, + HALFSLAB_SHEETMETALGOLD, + HALFSLAB_SHEETMETALALUMINIUM, CONCRETE_WALL, PANZERGLASS_BLOCK, PANZERGLASS_SLAB, @@ -958,10 +960,25 @@ public class ModContent public static List getRegisteredBlocks() { return Collections.unmodifiableList(registeredBlocks); } + @Nonnull + public static List getRegisteredItems() + { return new ArrayList<>(); } + public static final void registerBlocks(final RegistryEvent.Register event) { - if(Auxiliaries.isModLoaded("immersiveengineering")) Auxiliaries.logInfo("Immersive Engineering also installed ..."); - registeredBlocks.addAll(allBlocks()); + boolean ie_available = Auxiliaries.isModLoaded("immersiveengineering"); + if(ie_available) { + Auxiliaries.logInfo("Immersive Engineering also installed ..."); + registeredBlocks.addAll(allBlocks()); + } else { + registeredBlocks.addAll(allBlocks().stream() + .filter(block-> + ((!(block instanceof BaseBlock)) || ((((BaseBlock)block).config & DecorBlock.CFG_HARD_IE_DEPENDENT)==0)) + || (block == HALFSLAB_CONCRETE) + ) + .collect(Collectors.toList()) + ); + } for(Block e:registeredBlocks) event.getRegistry().register(e); Auxiliaries.logInfo("Registered " + Integer.toString(registeredBlocks.size()) + " blocks."); } diff --git a/1.15/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java b/1.15/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java index 616c2f0..016d04d 100644 --- a/1.15/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java +++ b/1.15/src/main/java/wile/engineersdecor/blocks/EdElectricalFurnace.java @@ -123,7 +123,7 @@ public class EdElectricalFurnace public static final int HEAT_INCREMENT = 20; public static final int MAX_ENERGY_TRANSFER = 1024; public static final int MAX_ENERGY_BUFFER = 32000; - public static final int MAX_SPEED_SETTING = 2; + public static final int MAX_SPEED_SETTING = 3; public static final int NUM_OF_SLOTS = 7; public static final int SMELTING_INPUT_SLOT_NO = 0; public static final int SMELTING_AUX_SLOT_NO = 1; @@ -196,7 +196,7 @@ public class EdElectricalFurnace proc_time_needed_ = nbt.getInt("CookTimeTotal"); energy_stored_ = nbt.getInt("Energy"); speed_ = nbt.getInt("SpeedSetting"); - speed_ = (speed_ < 0) ? (1) : ((speed_>3) ? 3 : speed_); + speed_ = (speed_ < 0) ? (1) : ((speed_>MAX_SPEED_SETTING) ? MAX_SPEED_SETTING : speed_); } protected void writenbt(CompoundNBT nbt) @@ -492,7 +492,7 @@ public class EdElectricalFurnace } else if(energy_stored_ >= (MAX_ENERGY_BUFFER/2)) { enabled_ = true; } - if((!(stacks_.get(SMELTING_INPUT_SLOT_NO)).isEmpty()) && (enabled_) && (speed_>0) && (speed_<4)) { + if((!(stacks_.get(SMELTING_INPUT_SLOT_NO)).isEmpty()) && (enabled_) && (speed_>0) && (speed_<=MAX_SPEED_SETTING)) { IRecipe last_recipe = currentRecipe(); updateCurrentRecipe(); if(currentRecipe() != last_recipe) { @@ -768,7 +768,7 @@ public class EdElectricalFurnace { if(!(inventory_ instanceof ElectricalFurnaceTileEntity)) return; ElectricalFurnaceTileEntity te = (ElectricalFurnaceTileEntity)inventory_; - if(nbt.contains("speed")) te.speed_ = MathHelper.clamp(nbt.getInt("speed"), 0, 3); + if(nbt.contains("speed")) te.speed_ = MathHelper.clamp(nbt.getInt("speed"), 0, ElectricalFurnaceTileEntity.MAX_SPEED_SETTING); te.markDirty(); } } diff --git a/1.15/src/main/java/wile/engineersdecor/blocks/EdLabeledCrate.java b/1.15/src/main/java/wile/engineersdecor/blocks/EdLabeledCrate.java index 380ed20..9273354 100644 --- a/1.15/src/main/java/wile/engineersdecor/blocks/EdLabeledCrate.java +++ b/1.15/src/main/java/wile/engineersdecor/blocks/EdLabeledCrate.java @@ -80,9 +80,9 @@ public class EdLabeledCrate // Block //-------------------------------------------------------------------------------------------------------------------- - public static class DecorLabeledCrateBlock extends StandardBlocks.Horizontal implements IDecorBlock + public static class LabeledCrateBlock extends StandardBlocks.Horizontal implements IDecorBlock { - public DecorLabeledCrateBlock(long config, Block.Properties builder, final AxisAlignedBB unrotatedAABB) + public LabeledCrateBlock(long config, Block.Properties builder, final AxisAlignedBB unrotatedAABB) { super(config, builder, unrotatedAABB); } @Override diff --git a/1.15/src/main/java/wile/engineersdecor/detail/ModRenderers.java b/1.15/src/main/java/wile/engineersdecor/detail/ModRenderers.java index 4a2a3e7..bf9691a 100644 --- a/1.15/src/main/java/wile/engineersdecor/detail/ModRenderers.java +++ b/1.15/src/main/java/wile/engineersdecor/detail/ModRenderers.java @@ -145,7 +145,7 @@ public class ModRenderers try { final ItemStack stack = te.getItemFrameStack(); if(stack.isEmpty()) return; - final int di = MathHelper.clamp(te.getWorld().getBlockState(te.getPos()).get(EdLabeledCrate.DecorLabeledCrateBlock.HORIZONTAL_FACING).getHorizontalIndex(), 0, 3); + final int di = MathHelper.clamp(te.getWorld().getBlockState(te.getPos()).get(EdLabeledCrate.LabeledCrateBlock.HORIZONTAL_FACING).getHorizontalIndex(), 0, 3); double ox = tr[di][0], oy = tr[di][1], oz = tr[di][2]; float ry = (float)tr[di][3]; mxs.push(); diff --git a/1.15/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java b/1.15/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java index 2c8c1dd..c52d860 100644 --- a/1.15/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java +++ b/1.15/src/main/java/wile/engineersdecor/eapi/jei/JEIPlugin.java @@ -17,10 +17,13 @@ import mezz.jei.api.registration.IRecipeTransferRegistration; import mezz.jei.api.constants.VanillaTypes; import mezz.jei.api.runtime.IJeiRuntime; import net.minecraft.block.Block; +import net.minecraft.item.BlockItem; +import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.util.ResourceLocation; -import java.util.ArrayList; +import java.util.HashSet; import java.util.List; +import java.util.stream.Collectors; @mezz.jei.api.JeiPlugin @@ -49,15 +52,21 @@ public class JEIPlugin implements mezz.jei.api.IModPlugin @Override public void onRuntimeAvailable(IJeiRuntime jeiRuntime) { - List blacklisted = new ArrayList<>(); + HashSet blacklisted = new HashSet<>(); for(Block e: ModContent.getRegisteredBlocks()) { - if(ModConfig.isOptedOut(e)) { - blacklisted.add(new ItemStack(e.asItem())); + if(ModConfig.isOptedOut(e) && (e.asItem().getRegistryName().getPath()).equals((e.getRegistryName().getPath()))) { + blacklisted.add(e.asItem()); + } + } + for(Item e: ModContent.getRegisteredItems()) { + if(ModConfig.isOptedOut(e) && (!(e instanceof BlockItem))) { + blacklisted.add(e); } } if(!blacklisted.isEmpty()) { + List blacklist = blacklisted.stream().map(ItemStack::new).collect(Collectors.toList()); try { - jeiRuntime.getIngredientManager().removeIngredientsAtRuntime(VanillaTypes.ITEM, blacklisted); + jeiRuntime.getIngredientManager().removeIngredientsAtRuntime(VanillaTypes.ITEM, blacklist); } catch(Exception e) { ModEngineersDecor.logger().warn("Exception in JEI opt-out processing: '" + e.getMessage() + "', skipping further JEI optout processing."); } diff --git a/1.15/src/main/java/wile/engineersdecor/libmc/datagen/AssetsDataGen.java b/1.15/src/main/java/wile/engineersdecor/libmc/datagen/AssetsDataGen.java new file mode 100644 index 0000000..6eff1eb --- /dev/null +++ b/1.15/src/main/java/wile/engineersdecor/libmc/datagen/AssetsDataGen.java @@ -0,0 +1,47 @@ +/* + * @file BlockStateDataGen.java + * @author Stefan Wilhelm (wile) + * @copyright (C) 2019 Stefan Wilhelm + * @license MIT (see https://opensource.org/licenses/MIT) + * + * Blockstate data generator. + */ +package wile.engineersdecor.libmc.datagen; + +import net.minecraft.block.Blocks; +import wile.engineersdecor.libmc.detail.Auxiliaries; +import net.minecraftforge.client.model.generators.*; +import net.minecraft.data.*; + +public class AssetsDataGen +{ + public static class BlockStates extends BlockStateProvider + { + public BlockStates(DataGenerator gen, ExistingFileHelper efh) + { super(gen, Auxiliaries.modid(), efh); } + + @Override + public String getName() + { return Auxiliaries.modid() + " Block states"; } + + @Override + protected void registerStatesAndModels() + { + } + } + + public static class ItemModels extends ItemModelProvider + { + public ItemModels(DataGenerator generator, ExistingFileHelper efh) + { super(generator, Auxiliaries.modid(), efh); } + + @Override + public String getName() + { return Auxiliaries.modid() + "Item models"; } + + @Override + protected void registerModels() + { + } + } +} diff --git a/1.15/src/main/java/wile/engineersdecor/libmc/datagen/LootTableGen.java b/1.15/src/main/java/wile/engineersdecor/libmc/datagen/LootTableGen.java index addf4fb..ec69461 100644 --- a/1.15/src/main/java/wile/engineersdecor/libmc/datagen/LootTableGen.java +++ b/1.15/src/main/java/wile/engineersdecor/libmc/datagen/LootTableGen.java @@ -1,5 +1,5 @@ /* - * @file ModLootTables.java + * @file LootTableGen.java * @author Stefan Wilhelm (wile) * @copyright (C) 2019 Stefan Wilhelm * @license MIT (see https://opensource.org/licenses/MIT) diff --git a/1.15/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java b/1.15/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java index 631cb46..8ee8f2f 100644 --- a/1.15/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java +++ b/1.15/src/main/java/wile/engineersdecor/libmc/detail/Inventories.java @@ -10,10 +10,12 @@ package wile.engineersdecor.libmc.detail; import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerInventory; +import net.minecraft.inventory.ItemStackHelper; import net.minecraft.item.ItemStack; import net.minecraft.nbt.CompoundNBT; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.Direction; +import net.minecraft.util.NonNullList; import net.minecraft.util.math.BlockPos; import net.minecraft.world.World; import net.minecraft.inventory.IInventory; @@ -88,6 +90,8 @@ public class Inventories private static ItemStack checked(ItemStack stack) { return stack.isEmpty() ? ItemStack.EMPTY : stack; } // explicit EMPTY return + //-------------------------------------------------------------------------------------------------------------------- + public static class SlotRange { public final IInventory inventory; @@ -138,7 +142,7 @@ public class Inventories for(int i = start_slot; i < end_slot; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); final ItemStack stack = inventory.getStackInSlot(sno); - if(stack.isEmpty() || (!inventory.isItemValidForSlot(sno, mvstack))) { + if(stack.isEmpty()) { empties[sno] = true; } else if(areItemStacksIdentical(stack, mvstack)) { matches[sno] = true; @@ -148,7 +152,7 @@ public class Inventories // first iteration: fillup existing stacks for(int i = start_slot; i < end_slot; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); - if(empties[sno] || !matches[sno]) continue; + if((empties[sno]) || (!matches[sno])) continue; final ItemStack stack = inventory.getStackInSlot(sno); int nmax = Math.min(limit_left, stack.getMaxStackSize() - stack.getCount()); if(mvstack.getCount() <= nmax) { @@ -180,7 +184,7 @@ public class Inventories } for(i=insert_start;i < insert_end; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); - if(!empties[sno]) continue; + if((!empties[sno]) || (!inventory.isItemValidForSlot(sno, mvstack))) continue; int nmax = Math.min(limit_left, mvstack.getCount()); ItemStack moved = mvstack.copy(); moved.setCount(nmax); @@ -195,7 +199,7 @@ public class Inventories final int sno = reverse ? (end_slot-1-i) : (i); if(!matches[sno]) continue; int ii = (empties[sno-1]) ? (sno-1) : (empties[sno+1] ? (sno+1) : -1); - if(ii >= 0) { + if((ii >= 0) && (inventory.isItemValidForSlot(ii, mvstack))) { int nmax = Math.min(limit_left, mvstack.getCount()); ItemStack moved = mvstack.copy(); moved.setCount(nmax); @@ -209,7 +213,7 @@ public class Inventories // third iteration: use any empty slots for(int i = start_slot; i < end_slot; ++i) { final int sno = reverse ? (end_slot-1-i) : (i); - if(!empties[sno]) continue; + if((!empties[sno]) || (!inventory.isItemValidForSlot(sno, mvstack))) continue; int nmax = Math.min(limit_left, mvstack.getCount()); ItemStack placed = mvstack.copy(); placed.setCount(nmax); @@ -303,4 +307,33 @@ public class Inventories { return inventory.isItemValidForSlot(offset+index, stack); } } + //-------------------------------------------------------------------------------------------------------------------- + + public static NonNullList readNbtStacks(CompoundNBT nbt, String key, int size) + { + NonNullList stacks = NonNullList.withSize(size, ItemStack.EMPTY); + if((nbt == null) || (!nbt.contains(key,10))) return stacks; + CompoundNBT stacknbt = nbt.getCompound(key); + ItemStackHelper.loadAllItems(stacknbt, stacks); + return stacks; + } + + public static CompoundNBT writeNbtStacks(CompoundNBT nbt, String key, NonNullList stacks, boolean omit_trailing_empty) + { + CompoundNBT stacknbt = new CompoundNBT(); + if(omit_trailing_empty) { + for(int i=stacks.size()-1; i>=0; --i) { + if(!stacks.get(i).isEmpty()) break; + stacks.remove(i); + } + } + ItemStackHelper.saveAllItems(stacknbt, stacks); + if(nbt == null) nbt = new CompoundNBT(); + nbt.put(key, stacknbt); + return nbt; + } + + public static CompoundNBT writeNbtStacks(CompoundNBT nbt, String key, NonNullList stacks) + { return writeNbtStacks(nbt, key, stacks, false); } + } diff --git a/1.15/src/main/resources/META-INF/mods.toml b/1.15/src/main/resources/META-INF/mods.toml index dde50f1..8e796b1 100644 --- a/1.15/src/main/resources/META-INF/mods.toml +++ b/1.15/src/main/resources/META-INF/mods.toml @@ -18,7 +18,7 @@ logoFile="logo.png" [[dependencies.engineersdecor]] modId="forge" mandatory=true - versionRange="[31.0.1,)" + versionRange="[31.1.0,)" ordering="NONE" side="BOTH" diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_gate_inventory.json b/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_gate_inventory.json index 6f09fa8..14ce8dc 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_gate_inventory.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_gate_inventory.json @@ -1,6 +1,6 @@ { "parent": "block/block", - "ambientocclusion": false, + "gui_light": "front", "textures": { "particle": "engineersdecor:block/fence/steel_mesh_fence", "s": "engineersdecor:block/fence/steel_mesh_fence", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_inventory.json b/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_inventory.json index 85ee931..203ed82 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_inventory.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/fence/steel_mesh_fence_inventory.json @@ -1,6 +1,6 @@ { "parent": "block/block", - "ambientocclusion": false, + "gui_light": "front", "textures": { "wall": "engineersdecor:block/fence/steel_mesh_fence", "particle": "engineersdecor:block/fence/steel_mesh_fence", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_ladder_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_ladder_model.json index 7fa76d3..135dc7f 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_ladder_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_ladder_model.json @@ -1,5 +1,6 @@ { "parent": "block/block", + "gui_light": "front", "textures": { "particle": "engineersdecor:block/iestyle/steel_texture", "o": "engineersdecor:block/iestyle/steel_texture" diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_steps_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_steps_model.json index c63879d..1319168 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_steps_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/metal_rung_steps_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "o": "engineersdecor:block/iestyle/steel_texture", "particle": "engineersdecor:block/iestyle/steel_texture" diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/treated_wood_ladder_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/treated_wood_ladder_model.json index 7fc5bad..3a165ce 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/treated_wood_ladder_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/ladder/treated_wood_ladder_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "o": "engineersdecor:block/iestyle/treated_wood_rough_texture", "particle": "engineersdecor:block/iestyle/treated_wood_rough_texture" diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/misc/labeled_crate_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/misc/labeled_crate_model.json index 377297f..c78b273 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/misc/labeled_crate_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/misc/labeled_crate_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "f": "engineersdecor:block/misc/labeled_crate_front_texture", "particle": "engineersdecor:block/misc/labeled_crate_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_head_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_head_model.json index 8636186..a096dc5 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_head_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_head_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "side": "engineersdecor:block/pole/treated_wood_pole_side_texture", "particle": "engineersdecor:block/pole/treated_wood_pole_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_model.json index 057c160..cadb575 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "side": "engineersdecor:block/pole/treated_wood_pole_side_texture", "particle": "engineersdecor:block/pole/treated_wood_pole_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_support_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_support_model.json index 963cf33..ef42384 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_support_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_pole_support_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "side": "engineersdecor:block/pole/treated_wood_pole_side_texture", "particle": "engineersdecor:block/pole/treated_wood_pole_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_head_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_head_model.json index 4aec1df..956ada9 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_head_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_head_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "side": "engineersdecor:block/pole/thick_steel_pole_side_texture", "particle": "engineersdecor:block/pole/thick_steel_pole_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_model.json index 3f4f24a..fc51027 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thick_metal_pole_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "side": "engineersdecor:block/pole/thick_steel_pole_side_texture", "particle": "engineersdecor:block/pole/thick_steel_pole_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_head_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_head_model.json index 5a4cb7c..6ed7c94 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_head_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_head_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "side": "engineersdecor:block/pole/thin_steel_pole_side_texture", "particle": "engineersdecor:block/pole/thin_steel_pole_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_model.json index 6722d35..76cf6ce 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/pole/straight_thin_metal_pole_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "side": "engineersdecor:block/pole/thin_steel_pole_side_texture", "particle": "engineersdecor:block/pole/thin_steel_pole_side_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_decor_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_decor_model.json index 4c4fcd6..9870b0a 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_decor_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_decor_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "s": "engineersdecor:block/iestyle/treated_wood_rough_texture", "f": "engineersdecor:block/sign/engineersdecor-logo", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_exit_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_exit_model.json index a219e0e..6ca6672 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_exit_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_exit_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "s": "engineersdecor:block/iestyle/treated_wood_rough_texture", "particle": "engineersdecor:block/iestyle/treated_wood_rough_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_rect14x14_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_rect14x14_model.json index 0c15b38..392e91b 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_rect14x14_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_rect14x14_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "s": "engineersdecor:block/iestyle/treated_wood_rough_texture", "particle": "engineersdecor:block/iestyle/treated_wood_rough_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_triangular_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_triangular_model.json index 5a866ae..1bced54 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_triangular_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/sign/sign_triangular_model.json @@ -1,5 +1,6 @@ { - "parent": "block/block", + "parent": "block/block", + "gui_light": "front", "textures": { "s": "engineersdecor:block/iestyle/treated_wood_rough_texture", "particle": "engineersdecor:block/iestyle/treated_wood_rough_texture", diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json index 010c521..0cc0562 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json index 1701125..5137fa2 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json index 15a1bfd..e4b5bc3 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json index da2daf0..a341146 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json index 6f9d10d..2d9ff0b 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json index 97c46bd..963f644 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json index 114e60b..386f7d2 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json index af9fc2a..8ae1c28 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json index 9aae690..03b6a03 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json index c59ece1..2996e8f 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json index 32a099d..99e67eb 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json index 012a455..4916cc3 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json index 22be791..038e8ca 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json index 7e86a61..5e47f6d 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json index a1a6c9b..f8758b2 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_aluminum_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json index b4fae7c..2f55988 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json index bc66e0d..f517d77 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json index dc3e425..9431803 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json index 90c774f..a08a050 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json index db2cb66..2acd61c 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json index 774cbfd..7410c2b 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json index 50631c2..4f1438f 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json index bf7a696..1a3e1ad 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json index 8d2fc72..9fa6e1e 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json index 6b1c323..5af27cd 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json index 460a411..a540aba 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json index 196f65d..176f23a 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json index 75144ab..aae6702 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json index f3e0609..151de82 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json index 3e41aa4..3aa629a 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_copper_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json index cc127ab..2b2ecd4 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json index 4bf17e3..3d8db0c 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json index 33985e8..75987e0 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json index ba1dfdf..4fb230a 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json index 5a28b0e..116afd4 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json index 4ad018a..8474301 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json index 9baf84a..e8f67a4 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json index 067bf85..2d65187 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json index 310b3b8..6678955 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json index d80f4df..ae8f7b3 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json index cc7bad3..0ffbf17 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json index e2b2371..c848915 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json index 05f3593..bd7b709 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json index 7bc9ba7..9766ee9 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json index 735a49e..fe86c98 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_gold_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json index cc5457f..c68a8cf 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json index 80d61a1..0395cae 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json index 0fe74e2..a169032 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json index d46b68a..f255a40 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json index 03b0e72..327f6ec 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json index ebd8de7..4de2f26 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json index 6e320ce..4658327 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json index 6597c88..e7c42b8 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json index 35ef68d..7fd02a1 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json index ce7757e..bf1dc63 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json index 4b646cc..8a8a5f5 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json index bfdcf64..f8dbf5b 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json index da65821..de421e9 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json index ee5a817..859bd78 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json index f283f62..676bcaf 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_iron_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json index 15cbe2a..bbb5cba 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json index 535e9bc..097a39b 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json index 01b1492..60f099f 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json index 4787f8f..0f62a50 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json index 0dd6af2..9ddef82 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json index 8728aec..f61c907 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json index 1578928..35afe35 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json index 1c96baf..d8673fe 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json index 8ac9d61..8a5e9d7 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json index f29c546..229786c 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json index 11e806b..724e523 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json index 4f62472..c29880f 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json index 2bbdc25..b5e90b7 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json index cb669a9..1566ab2 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json index c90cc2a..e230e1a 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_sheetmetal_steel_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json index e407cc4..a257b97 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s0_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s0_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json index 246e37c..c3574a5 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s1_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s1_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json index 5c2ea42..98979c5 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s2_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s2_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json index fdccbed..dc1f78e 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s3_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s3_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json index 0b7c181..97212f3 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s4_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s4_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json index 61a9c8b..0302813 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s5_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s5_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json index 97b3a2b..ab8e456 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s6_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s6_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json index 813ec2e..a78a728 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s7_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s7_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json index 47b1ee2..2c5c17c 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s8_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s8_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json index 0014aa3..69d4f74 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_s9_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_s9_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json index 7c3dca8..a48863c 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sa_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sa_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json index b42c04e..f595960 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sb_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sb_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json index 826f246..7da1eaa 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sc_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sc_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json index a3fc117..ddedfc0 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_sd_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_sd_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json index 4504ff2..5da6b1c 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/block/slab/specific/halfslab_treated_wood_se_model.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_se_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json index 378409c..aab3bad 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_aluminum.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_aluminum"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_aluminum"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json index 2f40718..cb024a4 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_copper.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_copper"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_copper"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json index 16db637..09fd8a5 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_gold.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_gold"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_gold"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json index 9b7c6af..ef26533 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_iron.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_iron"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_iron"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json index a311aa2..f6c7b8c 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_sheetmetal_steel.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/sheetmetal_steel"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/metal/sheetmetal_steel"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json index a36c04a..f8d7784 100644 --- a/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json +++ b/1.15/src/main/resources/assets/engineersdecor/models/item/halfslab_treated_wood.json @@ -1 +1 @@ -{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:blocks/treated_wood"}} \ No newline at end of file +{"parent":"engineersdecor:block/slab/generic/halfslab_inventory_model","textures":{"all":"immersiveengineering:block/wooden_decoration/treated_wood"}} \ No newline at end of file diff --git a/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture0.png b/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture0.png index 799fffe7034913ea208e848aba92e17e37de982a..d434d806ffd1d34dc0349586d9b3b9a6e55c8141 100644 GIT binary patch delta 833 zcmV-H1HSy^2HpmcDu4d~{{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00091NklVNK2L`zTwjLw7MW(JYculIJSXh4rpmLQC^Ug0wwVgrtH!0 zb_nKkdczSyH%Rl6@#itBZqe-YSg$rr$B#I+ffs~WN=+HA7#trXK41P$5``4CN>lDo z6&bc67=ONU(d`x=e*TpTI66Dy>iU+dsu5BmO`Vk=Al$=Kteqasx*(07$-)5LFlh}A zsIm<|yt}}$Ou{Ip>sSa;p&JdH;Sr)C(Sq4Cb#9ZC0<#umdBJS%;dVN#DuJbfzuxfG z$&lE!Xxc5JcuN+{v7J8R@ZvSIhX=ZyCXcaGpQoFDDYBBy z$|sn7A2*Hcd*JN9b+5H2Slq6xo*}FF+X@R>x!0PQ$q&b!b($e@J%p!aQKP{I%00000 LNkvXXu0mjfiHV1m delta 839 zcmV-N1GxO&2IK~iDt|fvAOICdLb+1_000SaNLh0L01m_e01m_fl`9S#00097Nkl2+$;UGo(t>HdtY8X>&f< zX?%+9*yaKr;gde;>ectPEQ4-4%wpQEm^vy=V|=%!_O=pw^T`l>bOX6e)_KN_RopeW5UT0tFwn9 z*Q}P0=%!8)ZP-Z~nrR?*DMr&FTP_#}DUt+AoaSh&2mIT=*!%pHd>!CN5#8g@D2ock zZDDr$#LIgOcaP!C4M{HJ8Zw+oJ<(2K zbU#KCGVPXuZ8q4+778`QQN-Eh1(Tak>>nMV8YackN0)1C!@_c0q%=pW9NJpVRw$&U zKuUdtZg=T@QcX0vW553d@z2$3 z(r`mj%YT@5hpNbEyEcO-Z8Xc_^{Y2j!13TI*EbWYsz%s0u4&-U7l?NM3ye+|vo6?% zQ?gBf*3fYdkEyblZ!TY8NhLuL;x!F~sL&cJotGCh>>f%mpHk=6f2JrR%M0d<6^2}~ ztptV)vDW0|WIz&a&~<~ys6a{=sEUc`zc^=pe}9kHGVv!!sU!S-;t&XqR0vcUtLfoDN&pf&sNBWg-{iK`|(#$4Hkd@iL-x58Eu%4 zCJ0TzZuL+#6$Pncvs@7SK4)Kl%gy^MbhnMt&>1}MW2rU4|3|_k!L@CIaKmbwP*egj zpFk|BtD60j=LjJ{biaZBcA<3y{D4^000SaNLh0L01m_e01m_fl`9S#0008)NkleLRl#&e#CP9`E`O$YTO!2(ih`Hbig{q81~c;2BY%UT$Ix}Cu&~SlVz*5g zI4=9w9lAT@u)Tx*4#$8>)|?)XQO0wYcmJ}lVSGGie<;u>c#R(s?>~OvWsz|I{ROqH zFx(M}J7)Ftj5i+BHywuP38N5IG3kne_H9RTsIk2xMEta1q*P2I52;x^KCJM355snl zb%`PrzJC6Ps((BXjSX&ZpUGQ;uE^QMO9Tk=P9->sXo`aA$tiW!Ae)xDZYj!=a26uz zsbs_H*#u9Qtkx;A?GXF2W)%9YZ*Q>t32#r|N#YIB@r+*f2xEZh_!zo@IrMqmFPY=%oZ>1cwy=-Fr;YldRUXO-Q=$>LaHJq+pbwXEfDRVw3Jv%PrkTgdj1Y^|LJeaEX59H^it3@6@lk68L8-&L%c2N zfYXaJzJL9oS?2k;H4X;QU9dz^2?hV}&96bca2iGn$`LrCYQnL+e_kGT?Z2 zgzMNC108c1a403(E`Fh}9ZD%s@|>z}h}T;zwd2qUJby^5Iz-Wk!UEH@c*`4IztmC-Xvm|RoFwD=YMZsX(~yXXJnfdb=^{y1)`}ME`Irq zt|+OhhRf?;Q7s24D^N_(E!MX;jHYvBo)RyX2t&j1B6LGXpme00n2G`CS3mKZtT4R* zXFB8l<};4obEu)O4`fAw=ekr`%05}KU9S=Gazo$snAU*4>ln{Zs9KH3FJCzM;fhYG tTqytXJLRFl^?j^xN^__YO^$16{12!nhcu-)qyPW_002ovPDHLkV1jUyh#UX_ delta 820 zcmV-41Izr(2GItPDt|fvAOICdLb+1_000SaNLh0L01m_e01m_fl`9S#0008D$Ns}~* z7k+Q>NjJa!+Q~BXY=`Laf$-xGe1#o>FbnyU-7=$BBJRGM=BYFE{$SvcYBBHxoD}HqTHU7XbqA>KcC(l12+$&!fmvn)*Oh9mtD<@MMHy z*_2Jq>Dd5RZCI`n(l|!h6&2d%h3&(?D5i&~OQPAF;psOt2T){zIXGvxe#US|OeYia zO2##02BQGQANq7n1DZqM)QF;l<6%HFozXK4T1lhI|9>JoD9oN;k%Wxz8Q7-ILAFrn zV3%c_efN?1O0c~C4yEYde zd^F49@qa0z1x_!{_%fN(wjIK@8H~@^Mk|DW{w>B}h}qTb(*~*iitS?{xi|@Gl6H4zNKup30jrXRSj0(A%9Lw{87m3mpkgRp~zCw^^&SOP!u_$ zE^97+yr#_y;`JI`HIWSqp(_0O#|@|ktNVX&j>a@uLNuErGzH5IQ8g8T)RL?tN_0M5 z|ANpYdajRkbWC{cVW}Pa3c6}fn&-H-O_?TaXJ6T@R)}c6rfWNThK>+|(fK9iLE+{0 y7Ay{D4^000SaNLh0L01m_e01m_fl`9S#0008yNklb8Dw+JAhz=M(p6(co$xP*FZvI1cKEton}g#Hj~&% ze2s50yAkZa<){4o(~sTt?GPN%wrS}N zM|9@_S&}020%tTPPh*_nh$@Y#+ZItB3(kf^q%IJeM%H%BE^le-itT!XDK#W5hcspE z_ApJ0!~Q^5<~Y8OsM450Frv*e+N!~l8bzLvZZ~|mdw*oIn9|e*o0GyT$ht3F$V#swx&*Fx}u=og*Z~75fXrncKM`HC|lp^EJ z_dn37I)7!^VoHV0I-)NG{wBvrgeG*yYJ zoXDaG$23r_3CH~!-}gTU({_7?(+TF;8D4Kfo_~gTLBQtWAA~9-vOW@APC;5En-#O0 z8`dvtWLL9Uu5f}8dK6NnF=bxhxGu*mW-xFO4-YGb0}H3i(7irL6V0%(>>iFS`06{I zw#cZYgXfQ^$|En2Pq=-D<@vM-DOE4@KVF;pa%-_GiMJOuL?x9Nu!x_=DP3rbU lwje)HuPekvD!3rB7U(HW{zQFWTOaW*?~ zyv7R`R0+ZTIX<21pMPxAGUx8*p6Qv3eSAul?rF;!p~#q{F@KNO*OUlk&BS&Lw5DaT zUg0|qVm5okv@ND@E^sGj=v|$x7BqEE+i9taoUT9O;_?d5w>f|NJw>)fHhcWFO6c7D z@>APL9lEAXvfWbbLW=UhX0sy+)?8eDP1#ZK{XSU~AsHr=8B{gvxIjeF7R~HYRxQrx z9D6*W=MCtYI)B6I1WncO44vR%hT;0OX-4qng%TNAk&&w`;qLbv21hR8YK74rh{~41 z$uUiuv3PpHolGbyXxa+NvN64aBF#_?6QSCDn!3ccEDR3lzK|@vloKLXXcO3L{Y-@+keY{VY^8fPR3}O#NzHx6ai_G zBZ4SHWFb96<7hHMZc2tDkL7%Urb%>~1HtT>RyRpDYj#PAu z8}^$GbzLElB=Sa(Y}Oc-O|o8~_FX)GKpO8z(|-cP8Dn@pvZ|qXRff|Edbf*b=*UOY zbCM|J_BJ3ZYTV;f7I!z~C4BSUJHq9Xc(+3-Q}R~+PcS*(?=Tz()zmR0f!Uu>pVzc? z&HU+wq1PvicL>L!iDMo+eJ^M9SxQ_le a*cIOm3WZNAa9k+>0000P diff --git a/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture3.png b/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture3.png index 3be27d1ff203dcf9119128817d617ee4370b8cc3..742912d51739770f6d1773f3a3e378a4078579f8 100644 GIT binary patch delta 840 zcmV-O1GoI-2IU5jDu4d~{{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#00098NklJ_&p$LtE{Ikk`zJ@}wn4O55rzS!+(ju?*nd5bIISqF3d7WB*A4Tf z&%kkzN2B+2x)yB>*5L-zwD>T7WcDzlXKLga7~KJNOXm3U1ZQ`j?PiJ6vAJEuDCeJC zP)QB4tgVbXBBRKYib{@&s&; zObFDbMpIi<)PLyR0XM(>!PT=9L@LnSE*;k;D=He=RPhQqUM;zMSkhJ+Y|CJ}*b+oJ zl4|1nONPhCY(-8G2^JsbY=Q+vFh$pO5D9YI?y=)J6h)1crVPCfmT92cLz<$%ax~Hk zf;49|o>3HF4-ZM!6B@ZdHU~Q#U7nKV6-~!NYPXQch=2SMUE5$_TWC~#_4RZ5A01%1 z9r8FNnJ-DUIdbh!5K%&&3Cczz%^ECkND{8eqcugD4R{j831xf6I0~ zL8Jn;XLE3Rjw?zYUjNC??kNgNn_za&W^~W+{G4F1q{?#^PjkAxT}-!2-PEksbH?Ko z-AfR)Ox;pR@*KI$12@WO0PQSTVVOU=yb(Wy1X39eaEGh%iJ|G@2;HbUkLlmj405)1L=c S9YSyb0000wMmMMXyY?Hd`ZjF*-Rfu@|>qxz_8!O>biJqAAd>H(G3-C+pt)#=-D>n z-Q6wij)|tivmam>CdGGsYuW)m(h2xP?{~O z(x$FU2Hza=;eXHfoShyb$s+2>gtp^gmo*Iml-N5x z!Z>30=$LPHlU9?UnkK4Yv27au{{0>2Z_kmpC1IQ*#{LS@1jTVl0*_YPps7nV-C(ER z#jqR%LBe0n*oHo*lL3J@Cle)|kc2WV zHzC`KY$b)HC=jb6!yXJtk{F?^usb$+m|`nns9PSV3(#~9MgyFlLYc;tWrbmP$deSY zu0Y}O=AN@RuSueiJdT)NT{FFTAc#}sDq(Sb$?oou%=b}bl_v5r9GAHl@;@;Bos>MN Rd7%IR002ovPDHLkV1n&NkEZ|t diff --git a/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture4.png b/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture4.png index 2784802e4055745ee8457eb10d37ed060cb178e3..48da3010f11546848a9b60e1ccf5635de4fe743a 100644 GIT binary patch delta 807 zcmV+?1K9k<2E+!CDu4d~{{a7>y{D4^000SaNLh0L01m_e01m_fl`9S#0008yNkl({_5J%!)x`Bv|mI?06J5Y*5993aVjXCet=)>^P3^ zm-yH$*dQd{;M;ti`yan=v#KEU_H=EBI0(3WH6txr8d)>HIDcpFdhA^fRX4GnK6=yQ z`a7nMgIKLTV%iqN(*=eiXo4Chp4v>8SCn~(Y7Y3rOHprL z-_j@@nsA2~7A!|5&ryTOO1fQ@`ErS{EMyU*$ci{vquVxmEor5Oh?5lE956n;VEy3< zeLADBNuonSuYaislLCM3v0Xi(+he+2m8Lur=QXOTAj&x8{jU$K{&M;DySL+YhcvRn8EM2>L8BVvNlJe-!W#5>eq8hV z_8e8$@z*azX+_y~pv+Ly7@-s?^Q+HMdpgL9aJOggCVxx~19a37uB;ETMrhzh^GnBgb?IXFqzMJ`1u$7-JafbO6TsUA6ip`?bDhhEje3`X^#yZ(P8WQ z_ft!0mIppi(7|0iE*DdIF`lf%{7Br%*e6O z^d4@Up~;kvW>S|0z3Cj0dLBaWqw5+)kyFbKj%5*N8C9OKI6I|oAlPnbij?&(;omiRe2HnrUFj z8gsZrUP)Rhd3oM28xP6jh%7h|hXv;GpDUxG#j%zMDdG9UC%*pX4Yk%~xB8vH+tU#O lYan3r^0Z<5xc=WOe*??OmkW5TGu8kA002ovPDHLkV1jIMi6{U7 delta 808 zcmV+@1K0e-2E_)DDt|fvAOICdLb+1_000SaNLh0L01m_e01m_fl`9S#0008zNklZ_^tC3&bEX2o^jk8^oiqK|-ivLj}=HVJ6cyY3w*o ze7EakvqC~hyur8ml-nP_YqP50;P2=-E^!!g@nT9^v^272c7J}x&hy!MKAK_SxIK)f z#S6AfToFbUGTQ(jsgd-RMxo5f~;^InS)GvIwUzH2-nm|tCr4i z%)d1s{#+ttMG;3_Utb`EAeVyiY{uf3UkSE5x|0dY%}+nHmJXYT6-iohdOV_iZcv26 z#tR67n1742A81DtZ9mr)iz;q z^E;96A!Us~RVf-lx(n#p4r$<_4~C2;W3o7+s()MD*(J{WnEq%?-!hqA9AoGPqn?TO z(Zwa{KIF}t4HX*B(J9{Df}(;?UVlO8ZwR+rY^^0spBbMV(PTN{c85J4qZLU+&vnr) z6I0e$gJa~Sq?MAV$2HT@fIN=K!aeb!zy{D4^000SaNLh0L01m_e01m_fl`9S#0008$Nklc8#J>2syFd9a(dcAOZnfxrN>?>$HS z@!PMxqQJoMSU-J%w#6QgX{AB_`phA3I14P~a72?Pph#TD=6~Vyzg%C>kkNLBVLPPz z2+eVE0}s*&TL)>oOwU6^c*bEDk=HP~yrNSCHy_@URR!|xPq*BC`b>0aP?{3m@eoeP zYQAI`hN#K_(d5{sjubjgd>~%VImR(%-XPcW1+$TdrqulK=9cX~W9ScY!ZCuLrpmeh z{S#$g;2JearGJoi23?lWN`VRz|Mq9J{gU<5S3JuiPhz^Jr57q$p7ZAYJ5UtLCdVYh zQyTV#ju0I(%`1-EXEy)+&A@YMlOu;H!3$h8Rl^+mI42kAio`vcaEK0kuT(r+WfJJ9 z!6=|_TZ#($svyoXT+3ql-P$W?HC4i>wnYJ3!Y1L|!2}kC8hdty}U|V$dQFs}ND%5+aM^fjmA^_X?JCLcH5z8&fNpzaRl`2cn9i>F z=kW#I9DksPBZijAZoNU)rjL0t!s=^^_?7Y)p&J9dvngGfGLSvCXxXl}gsw@IryO=$ zyqkCAS&7tWxc~ExebrMW31wBY-fU^Igrbx5O@(_kV_+zpUQRfj&B)@EGCeY%uaS;F z#5D~<-(vUj%5HZ=uVVVD#dbZSxMcCXK{GwNJb$O_YR2aidSi^^nn+CuCfApASx(z^ zq^m88X(Kh2yT9%jj?dAk$%}@%w`jAHGAn6U_uO1fQBB{ch>vuw2(n06@{}9be=SZ#8Xc|qEQJ6pyY>dIiD_;80 z^8-h?|NYlCEpvAM2BmKihauDRF-hLi)D`Z<85_@M|DFQ9}}2l1+ea=#-Mqc-&#Lctx~ynWSt{ z>=A;lqnLd}NkI`C#JVJpBRaB7b12Dbk&)}NdRY*xH*_2aSwA|%P+_%Lpmq)FL-qf1 zs7T_HAb*INo~87UPm$6+ZM@~D**S)L#LN9XveXphLC9e2U=1v?eT=tQVw)z)$$;KC z#HUT%YYm&f29oP(=5r1hMQC2OMdrALjLT@;tXXuQl6Esz0 z*wv9gOfN~cAz#0)$SMK*_!RH)fxLuIzuXe~E5h}fZhK%`wv0}WY0?aD`G!52Am{st zu4SPbI;PNK3?|f{cuCXh(Puu=@t)z@o`h%#p*l$7lWnJ==_}1bJ*W00000NkvXX Hu0mjfZoiL^ diff --git a/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture6.png b/1.15/src/main/resources/assets/engineersdecor/textures/block/soil/dense_grit_sand_texture6.png index 7f3cffc2c3f383d1329c362debfee10ecd71c06d..d703fc8abe9940a27594a0381767661508af1d4f 100644 GIT binary patch delta 800 zcmV+*1K<4H2HOUZDhdAp{{a7>y{D6rGa`R-;#L4a(W@stfo3FZgE1b{wl^87lB!e| zS>!kKH~E0xW$JXhJH`$eB#=NLkc5Vuqx|vPukF6f*+enY_1Go}H&>@*c}r7Q46ZMU z!-zPH&^i`|sbi}u;cCf==OHGOXDrvIcQM3JYYf|C6~^egN~;?@y?;-=47s>}#BqNO z{Ig4n!v@WA_!MPmUp?N_s0z(yNwmos_AI7*4Y4nfQe!Y0A#9tb*wIy6j(LoEHpV&@ zv~`Wx?lL--LvV4;DqNFmT}-_uUGL~NC7WH&Y8H{qLppANlp4p)ie#OlX)2=FZg~3r z1CuWy505w0Wx@FFj<%^uN(IMvSZseXiVB*xqDWI-pWl#{i|iT*-R;rTC7!QSw=EsV zDiiUw)!$z|tC;JY%-p@%irwX%te|6{6#K7ry`TTPj_WE}luE7)1zd$0dokEM8}1+k*TkxcT}U4(SfF e7qE!8{105rd@y6)C(R510000n`Quj(T|@QAuvd?YVeDoDaLs^hYaW2WaLvZAAHYQ`65 ztb>qs5TfWkOiRO-WrAqM&~*`u#REOZ=HTQAQ*P)wh=MhmCevvqckkcRtO8DEH}roU zlf$zaT?kta_`hJ`OA zx<*56cNu!GkAHGO6l^FI150a2H#>~BBH0y0Pa*M3fbRIHs)EvWZ1**aA|uLe!recg zSlkE9Z>BU=$?4S5`C}FYm$Fa*3fn}Wt#H%@JuT!sD_EqoCDgX!u2$ou0!v; z>~|TK=VA9PmXA-|%+64Bo#^R>G^;2(3CbKL+aly5V|;myV(5JPx*%S~Z1yU)Qe&GM z2ewJN3US(u(d3A9lj0aMn{7c}7KrCKN9<$BbKHSXx?ba16~gfN{PCWoR{4K?`^X~7 z$kq{xsv`SiMk9}1vO{rAg_kHJD{8KG_Cl+2Z&fcOPyU z9J-jpA;LU5<6=5N=Z!2YDDnbX6;y9E{lOuo)x$G7bjQWDRLr(wHa}zf!yKu|5OP~m zL@%6Po^gC~#9-*M`o6@oZG?ZS@a6V1=kqyHl(KIGZBwAA0$J)XhGRq)h6vq4*ENb_ zPu)nkw#_!rF;t0PfBS{Hg`U#V78y^g9bZ2#NW*}psS(IBMJveG5ti+cMFHA@hd&&U zZ&Rwe!yRAZ98Ku^1NuFa(PV(G>G+n3ayY#t+r-@7zOt_+yyH`XyH9@<70iGBi8y>E zUahdYH#Swr;N+M#-xDmK@g@^Qu}iUB7p-SvOC7y~3I64b>ppK4rc~`undxx;R?%?#CIy_az|6_7&dHgAS6{SBf;j7z`=$g30-WO%P%a ehTPvh@IS|+d0Y;gPG}4O0000y{D4^000SaNLh0L01m_e01m_fl`9S#0008`Nklc)u0D#etUmHRjtJ#bTb{tPTO>)tv?c4MPI@4+F#+`cVU^cS|frJ)>mR|I{ z!l^v|_G=lX3CHao#dZihkMT{1FexeWjQ;H{$GyjT_J*t(*ndt9tti>JJKBzem`=ZA z*e3O14_(R`-T#EU*<)B1rK&Ug_Dr&va{K8s&9+T@FyR~@kqwJgB9QMM?kS`S#c{{> zn9$2E98($Lc_@mEVd@C8L!Jakc}n0d(QF$n%SlxW5u8Fa!=gF-flDrTkrhnhU-)*srkj|iofAF!Z5{Dq+ z?df;K%8L-O2T{bRXHz66B6rH+;1hUzs2c2poKiOk_b$4jBQ?7`eEx!5Yakq5CQM6| zMvIEBqnI{AQt01IP!)wF@EMPL2qB1bL95$kzuNN8*FP{?Eo8kn!cbv7pQF|c@=Jzp z=$!lm?tfy2>jsQR5qAF?DLPRG2R`0)F}giwkB`VwaVBv+>YX-D-61{&Y~~9b(`0ye zi`5BeI3}uAWfMdgYK4N5?3`c^$B1ydMQAlNO(jWUvb=(0ngmfqS(NmyhhznK>lH;3 zGM&9Mf8F74H%N+tK$1ubLAZCRnKq%jL9PE^cz@ijNwX58F~IEfv6?L`Lr1q{G*v^r z#K>3U3E{zGxk)j*C075M&C4@M3Lk&@g123hTvk{T9MY23uul=iY!)jTg8?Er`P3W- zrK%Dyzhl$~G$;4;Kiu-ZSYewcmJE8kjV={TpZ-EJZH#7o(Hfb&HV1}W!@VEpqZ4(m0}RiE`f;6K2jdHpdd)%ySd002ovPDHLk FV1i79gbx4! delta 823 zcmV-71IYZ?2GjvG~`0D$3_FDF7yB!mTelD6CJI9hc^Z`Ql<9#-AXShrYxQ5<%tmcu`*4E6T@j#_C^@7An# zk~808n$(CmM$=R*+eFxXDw(2GM`m9?W4JCxSgmP2s<9j8jg2>S%SMY7$~ zu8-{YlFe+zVt?|6;Ra}$N?n{t4<)LqAc}Oy)8|JfUzc1CJq~F?I0$L#iul;V@f{Ys zjG~0PDJhbK*Oxi9qN24;gzk2!t0SJTBTpr@YI4|TbbOy6>@j_vaesG-Y8Y&0?^qqh={Wkr{*QkEm^fcqgH%u)-?>r;X!ST#b4p>wgt)ozXuVl57*)w!$`*jt!dMqh*?C zwu?|SG*P2#8Zu27kB0~$I8=h(U_dlqu~|p7!w_K(F9~{G*3&n#Od@lMq6yk=kJslH z{(YKqh=1NOTn|fc(WF~G-43|_<$;#WP?fqsZeqIq5U=ZT*rzPtrg*l^`Rxr(KgIWK zbfe8O&C#ojmTplNl6E*iWUCdz=wKK+QXVL)7M^XB<~dE>FuXXYtRY^^sb$7&z31(D zO|n{2RV4yNLDqsS+R(9Gvdt2``+wnXz2I0j_y4S^AUA^U^$)RpPeD(KB41zXl)(4 z)nIkc2(IrKeZ1j)I>)tbI-D@W5L2m{{Pj1A?P3K1MSeh36-=MMasU08QrB2dz7Ve> zS};P;?e&SHl;R}F(j&!5F#hp@?P7uVVZ/g, ">").replace(/"; fs.writefile("dist/" + modid + "-" + version + ".html", html); }; - stdtasks["sanatize"] = function() { + stdtasks["sanitize"] = function() { me.sanatizing.remove_trailing_whitespaces(['java','json','lang']); me.sanatizing.tabs_to_spaces(['java','lang']); me.sanatizing.lang_json_newline_fixes(); @@ -419,14 +419,17 @@ const liblang = include( (me.parsing.version_data().minecraft == "1.12.2") ? ("../meta/lib/liblang.1.12.js") : ("../meta/lib/liblang.1.13.js"))(constants); liblang.sync_languages(); }; + stdtasks["install"] = function() { + }; + stdtasks["start-server"] = function() { + }; /** * Task main */ - me.run = function(tasks, args, no_std_tasks, rel_root_path) { - if(rel_root_path===undefined) rel_root_path = ".."; - if(!fs.chdir(fs.dirname(fs.realpath(sys.script)))) throw new Error("Failed to switch to mod source directory."); - if(!fs.isdir(rel_root_path+"/.git")) throw new Error("Missing git repository in parent directory of mod source."); + me.run = function(tasks, args, no_std_tasks) { + const root_dir = fs.realpath(fs.dirname(sys.script)+"/../.."); + if(!fs.isdir(root_dir+"/.git")) throw new Error("Missing git repository in parent directory of mod source."); if(!no_std_tasks) { for(var key in stdtasks) { if(tasks[key]===undefined) tasks[key] = stdtasks[key]; @@ -441,7 +444,12 @@ alert("No task '" + task_name + "' defined."); exit(1); } else { - tasks[task_name](task_args); + const pwd = fs.cwd(); + try { + tasks[task_name](task_args); + } finally { + fs.chdir(pwd); + } } }; diff --git a/tasks.js b/meta/lib/tasks.js similarity index 84% rename from tasks.js rename to meta/lib/tasks.js index ff1a90f..ecf41c2 100644 --- a/tasks.js +++ b/meta/lib/tasks.js @@ -1,15 +1,14 @@ #!/usr/bin/djs "use strict"; -// Note for reviewers/clones: This file is a auxiliary script for my setup. It's not needed to build the mod. -const constants = include("meta/lib/constants.js")(); -const libtask = include("meta/lib/libtask.js")(constants); +const root_dir = fs.realpath(fs.dirname(sys.script)+"/../.."); +const constants = include(fs.dirname(fs.realpath(sys.script)) + "/constants.js")(); +const libtask = include(fs.dirname(fs.realpath(sys.script)) + "/libtask.js")(constants); const modid = constants.mod_registry_name(); var tasks = {}; -tasks["update-json"] = function() { - const root_dir = fs.realpath(fs.dirname(sys.script)); +tasks["combined-update-json"] = function() { const update_json = { - homepage: "https://www.curseforge.com/minecraft/mc-mods/engineers-decor/", + homepage: constants.project_download_inet_page(), promos: {} }; var update_json_src = []; @@ -37,11 +36,11 @@ tasks["update-json"] = function() { tasks["sync-main-repository"] = function() { // step-by-step-verbose operations, as the code bases and copy data are different. - if((!fs.chdir(fs.dirname(fs.realpath(sys.script)))) || (!fs.isdir(".git"))) throw new Error("Failed to switch to mod source directory."); + if((!fs.chdir(fs.dirname(fs.realpath(sys.script))+"/../..")) || (!fs.isdir(".git"))) throw new Error("Failed to switch to mod source directory."); if(sys.shell("git remote -v") != "") throw new Error("Dev repository has a remote set."); if(main_repo_local == "") throw new Error("Main repository (real) path not found."); const test_repo_local = fs.cwd(); - const main_repo_local = fs.realpath("../engineersdecor-github"); + const main_repo_local = fs.realpath("../"+ constants.mod_registry_name() + "-github"); if(main_repo_local == fs.realpath(test_repo_local)) throw new Error("This is already the main repository"); const cd_dev = function(subdir) { if((!fs.chdir(test_repo_local)) || (!fs.isdir(".git"))) throw new Error("Failed to switch to mod source directory."); @@ -81,4 +80,4 @@ tasks["sync-main-repository"] = function() { print(sys.shell("git status -s")) }; -libtask.run(tasks, sys.args, true, "."); +libtask.run(tasks, sys.args); diff --git a/meta/update.json b/meta/update.json index 74cbf0b..3269a7a 100644 --- a/meta/update.json +++ b/meta/update.json @@ -2,13 +2,14 @@ "homepage": "https://www.curseforge.com/minecraft/mc-mods/engineers-decor/", "promos": { "1.12.2-recommended": "1.0.20", - "1.12.2-latest": "1.0.20", + "1.12.2-latest": "1.1.0-b1", "1.14.4-recommended": "", - "1.14.4-latest": "1.0.20-b7", + "1.14.4-latest": "1.1.0-b1", "1.15.2-recommended": "", - "1.15.2-latest": "1.0.20-b7" + "1.15.2-latest": "1.1.0-b1" }, "1.12.2": { + "1.1.0-b1": "[F] Fixed Electrical Furnace speed sanitizing bug (issue #97, thx therobotmenace).\n[M] Changed Labeled Crate Nesting to circumvent server crashing in combination with the Sponge mod.", "1.0.20": "[R] Release based on v1.0.20-b6. Release-to-release changes: * Manual back ported. * Steel Mesh Fence Gate back ported. * E-Furnace speed selection switch back ported. * Labeled Crate back ported. * Minor bug fixes, compatibility changes.", "1.0.20-b6": "[F] Implemented compat related to issue #91.", "1.0.20-b5": "[A] Back-ported Patchouli based Manual (you need to install Vazkii_'s Patchouli, too).\n[A] Back-ported Steel Mesh Fence Gate.\n[M] Minor back-porting compatibility refractoring.", @@ -96,6 +97,7 @@ "1.0.0-b1": "[A] Initial structure.\n[A] Added clinker bricks and clinker brick stairs.\n[A] Added slag bricks and slag brick stairs.\n[A] Added metal rung ladder.\n[A] Added staggered metal steps ladder.\n[A] Added treated wood ladder.\n[A] Added treated wood pole.\n[A] Added treated wood table." }, "1.14.4": { + "1.1.0-b1": "[F] Fixed Electrical Furnace speed sanitizing bug (issue #97, thx therobotmenace).\n[A] Sheet Metal Slab Slices added (only available if IE is installed).\n[M] Config options extended/updated.\n[M] Dense Grit Sand textures altered to get slightly more visible structure from distance.", "1.0.20-b7": "[A] Dense Grit Sand added.\n[!] Variant Slab compatibility fix. *This may alter placed slabs of this mod, data fixers don't work yet unfortunately*.", "1.0.20-b6": "[M] Slab Slice placement improved.\n[M] Quite some naming/refractoring under the hood.", "1.0.20-b5": "[A] Electrical Furnace can draw in smelting input items from an adjacent inventory when a Hopper is placed in the auxiliary slot.\n[M] Wrapped Labeled Crate label slot to prevent sorting mods from altering the label.", @@ -150,6 +152,7 @@ "1.0.7-b3": "[A] Initial 1.14.2 port of decorative blocks." }, "1.15.2": { + "1.1.0-b1": "[F] Fixed Electrical Furnace speed sanitizing bug (issue #97, thx therobotmenace).\n[A] IE Sheet Metal Slab Slices added (only available if IE is installed).\n[M] Config options extended/updated.\n[M] GUI models updated to circumvent too dark representations.\n[M] Dense Grit Sand textures altered to get slightly more visible structure from distance.", "1.0.20-b7": "[A] Dense Grit Sand added.\n[!] Variant Slab compatibility fix. *This may alter placed slabs of this mod, data fixers don't work yet unfortunately*.", "1.0.20-b6": "[M] Slab Slice placement improved.\n[M] Quite some naming/refractoring under the hood.", "1.0.20-b5": "[A] Electrical Furnace can draw in smelting input items from an adjacent inventory when a Hopper is placed in the auxiliary slot.\n[M] Wrapped Labeled Crate label slot to prevent sorting mods from altering the label.",