From 51aeb7cfeadb48655a31117596983c1a040e0fa3 Mon Sep 17 00:00:00 2001 From: Xikaro Date: Tue, 9 Sep 2025 03:37:43 +0500 Subject: [PATCH 1/2] Update build.yml --- .github/workflows/build.yml | 26 +++++++++++++------------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index ce04c365c..543503bb4 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -531,19 +531,19 @@ jobs: fi echo "✔️ All artifacts found" - - name: 🚀 Upload Modrinth - id: release - uses: Xikaro/upload-curseforge-modpack-action@1.1.1 - with: - api-token: ${{ secrets.MODRINTH_TOKEN }} - project-id: ${{ vars.MODRINTH_ID }} - modpack-path: ${{ needs.info.outputs.project_full_name }}-modrinth.mrpack - changelog: ${{ needs.info.outputs.changelog }} - changelog-format: markdown - game-version: ${{ needs.info.outputs.mc_version }} - display-name: ${{ needs.info.outputs.project_full_name }} + # - name: 🚀 Upload Modrinth + # id: release + # uses: Xikaro/upload-curseforge-modpack-action@1.1.1 + # with: + # api-token: ${{ secrets.MODRINTH_TOKEN }} + # project-id: ${{ vars.MODRINTH_ID }} + # modpack-path: ${{ needs.info.outputs.project_full_name }}-modrinth.mrpack + # changelog: ${{ needs.info.outputs.changelog }} + # changelog-format: markdown + # game-version: ${{ needs.info.outputs.mc_version }} + # display-name: ${{ needs.info.outputs.project_full_name }} - release-type: ${{ needs.info.outputs.release_type }} + # release-type: ${{ needs.info.outputs.release_type }} discord-message: name: 📱 Discord Message @@ -569,7 +569,7 @@ jobs: **Release Type**: `${{ needs.info.outputs.release_type }}` **Game Version**: `${{ needs.info.outputs.mc_version }}` - :curseforge_logo: [CurseForge](https://www.curseforge.com/minecraft/modpacks/terrafirmagreg-modern/files/${{ needs.release-curseforge.outputs.id }}) • :github_logo: [GitHub](${{ needs.release-github.outputs.url }}) • [Issues](https://github.com/${{ github.repository }}/issues) + [CurseForge](https://www.curseforge.com/minecraft/modpacks/terrafirmagreg-modern/files/${{ needs.release-curseforge.outputs.id }}) • [GitHub](${{ needs.release-github.outputs.url }}) • [Issues](https://github.com/${{ github.repository }}/issues) ```markdown ${{ steps.truncated.outputs.text }} - ...``` From 96188e761d0e766c585953127decf7fac8984200 Mon Sep 17 00:00:00 2001 From: Adrien Vidal Date: Tue, 9 Sep 2025 01:16:27 +0200 Subject: [PATCH 2/2] TFG-fication of all exotic stone types (#1764) * Deepslate, Blackstone and Dripstone + hammer crushing refactor * crackrack and space stones * tags + stonecutting + fixes * Moon deepslate set + QoL recipes + tags fixes * pyroxenite tags * Update tags.js * Update constants.js * Update constants.js --------- Signed-off-by: Pyritie Co-authored-by: Pyritie --- .../textures/block/polished_mercury_stone.png | Bin 0 -> 938 bytes .../tfg/blockstates/loose/crackrack.json | 55 +++ .../rock/bricks_moon_deepslate.json | 7 + .../rock/chiseled_bricks_moon_deepslate.json | 7 + .../blockstates/rock/cobble_blackstone.json | 7 + .../blockstates/rock/cobble_crackrack.json | 7 + .../blockstates/rock/cobble_dripstone.json | 7 + .../rock/cobble_moon_deepslate.json | 7 + .../blockstates/rock/cobble_permafrost.json | 7 + .../rock/cracked_bricks_moon_deepslate.json | 7 + .../blockstates/rock/gravel_blackstone.json | 7 + .../blockstates/rock/gravel_crackrack.json | 7 + .../blockstates/rock/gravel_deepslate.json | 7 + .../blockstates/rock/gravel_dripstone.json | 7 + .../tfg/blockstates/rock/gravel_glacio.json | 7 + .../tfg/blockstates/rock/gravel_mars.json | 7 + .../tfg/blockstates/rock/gravel_mercury.json | 7 + .../tfg/blockstates/rock/gravel_moon.json | 7 + .../rock/gravel_moon_deepslate.json | 7 + .../blockstates/rock/gravel_permafrost.json | 7 + .../blockstates/rock/gravel_red_granite.json | 7 + .../tfg/blockstates/rock/gravel_venus.json | 7 + .../rock/pillar_moon_deepslate.json | 16 + .../blockstates/rock/polished_crackrack.json | 7 + .../rock/polished_moon_deepslate.json | 7 + .../tfg/models/block/loose/crackrack_1.json | 6 + .../tfg/models/block/loose/crackrack_2.json | 6 + .../tfg/models/block/loose/crackrack_3.json | 6 + .../block/rock/bricks_moon_deepslate.json | 6 + .../rock/chiseled_bricks_moon_deepslate.json | 6 + .../models/block/rock/cobble_blackstone.json | 6 + .../models/block/rock/cobble_crackrack.json | 6 + .../models/block/rock/cobble_dripstone.json | 6 + .../models/block/rock/cobble_permafrost.json | 6 + .../rock/cracked_bricks_moon_deepslate.json | 6 + .../models/block/rock/gravel_blackstone.json | 6 + .../models/block/rock/gravel_crackrack.json | 6 + .../models/block/rock/gravel_deepslate.json | 6 + .../models/block/rock/gravel_dripstone.json | 6 + .../tfg/models/block/rock/gravel_glacio.json | 6 + .../tfg/models/block/rock/gravel_mars.json | 6 + .../tfg/models/block/rock/gravel_mercury.json | 6 + .../tfg/models/block/rock/gravel_moon.json | 6 + .../block/rock/gravel_moon_deepslate.json | 6 + .../models/block/rock/gravel_permafrost.json | 6 + .../models/block/rock/gravel_red_granite.json | 6 + .../tfg/models/block/rock/gravel_venus.json | 6 + .../block/rock/pillar_moon_deepslate.json | 7 + .../pillar_moon_deepslate_horizontal.json | 7 + .../models/block/rock/polished_crackrack.json | 6 + .../block/rock/polished_moon_deepslate.json | 6 + .../block/rock/bricks_moon_deepslate.png | Bin 0 -> 753 bytes .../rock/chiseled_bricks_moon_deepslate.png | Bin 0 -> 799 bytes .../textures/block/rock/cobble_crackrack.png | Bin 0 -> 1019 bytes .../textures/block/rock/cobble_dripstone.png | Bin 0 -> 1024 bytes .../block/rock/cobble_moon_deepslate.png | Bin 0 -> 936 bytes .../rock/cracked_bricks_moon_deepslate.png | Bin 0 -> 815 bytes .../textures/block/rock/gravel_blackstone.png | Bin 0 -> 1018 bytes .../textures/block/rock/gravel_crackrack.png | Bin 0 -> 1069 bytes .../textures/block/rock/gravel_deepslate.png | Bin 0 -> 638 bytes .../textures/block/rock/gravel_dripstone.png | Bin 0 -> 1107 bytes .../tfg/textures/block/rock/gravel_glacio.png | Bin 0 -> 1079 bytes .../tfg/textures/block/rock/gravel_mars.png | Bin 0 -> 1041 bytes .../textures/block/rock/gravel_mercury.png | Bin 0 -> 1101 bytes .../tfg/textures/block/rock/gravel_moon.png | Bin 0 -> 1085 bytes .../block/rock/gravel_moon_deepslate.png | Bin 0 -> 1038 bytes .../textures/block/rock/gravel_permafrost.png | Bin 0 -> 1090 bytes .../block/rock/gravel_red_granite.png | Bin 0 -> 1167 bytes .../tfg/textures/block/rock/gravel_venus.png | Bin 0 -> 1064 bytes .../block/rock/pillar_moon_deepslate.png | Bin 0 -> 715 bytes .../block/rock/pillar_moon_deepslate_top.png | Bin 0 -> 748 bytes .../block/rock/polished_crackrack.png | Bin 0 -> 898 bytes .../block/rock/polished_moon_deepslate.png | Bin 0 -> 881 bytes .../textures/item/brick/moon_deepslate.png | Bin 0 -> 811 bytes .../tfg/textures/item/brick/red_granite.png | Bin 0 -> 877 bytes .../tfg/textures/item/loose/crackrack.png | Bin 0 -> 5863 bytes .../tfg/textures/item/loose/red_granite.png | Bin 0 -> 882 bytes .../beneath/loot_tables/blocks/crackrack.json | 2 +- .../blocks/rock/bricks_moon_deepslate.json | 20 + .../rock/chiseled_bricks_moon_deepslate.json | 20 + .../blocks/rock/cobble_blackstone.json | 20 + .../blocks/rock/cobble_crackrack.json | 20 + .../blocks/rock/cobble_dripstone.json | 20 + .../blocks/rock/cobble_moon_deepslate.json | 20 + .../blocks/rock/cobble_permafrost.json | 20 + .../rock/cracked_bricks_moon_deepslate.json | 20 + .../blocks/rock/gravel_blackstone.json | 70 ++++ .../blocks/rock/gravel_crackrack.json | 70 ++++ .../blocks/rock/gravel_deepslate.json | 70 ++++ .../blocks/rock/gravel_dripstone.json | 70 ++++ .../blocks/rock/gravel_glacio.json | 70 ++++ .../loot_tables/blocks/rock/gravel_mars.json | 70 ++++ .../blocks/rock/gravel_mercury.json | 70 ++++ .../loot_tables/blocks/rock/gravel_moon.json | 70 ++++ .../blocks/rock/gravel_moon_deepslate.json | 70 ++++ .../blocks/rock/gravel_permafrost.json | 70 ++++ .../blocks/rock/gravel_red_granite.json | 70 ++++ .../loot_tables/blocks/rock/gravel_venus.json | 70 ++++ .../blocks/rock/pillar_moon_deepslate.json | 20 + .../blocks/rock/polished_crackrack.json | 20 + .../blocks/rock/polished_moon_deepslate.json | 20 + kubejs/server_scripts/gregtech/loot.js | 118 +----- .../gregtech/recipes.removes.js | 10 + kubejs/server_scripts/tfg/recipes.collapse.js | 49 ++- kubejs/server_scripts/tfg/recipes.rocks.js | 198 +++++++++- kubejs/server_scripts/tfg/tags.js | 368 +++++++++++++++++- kubejs/startup_scripts/beneath/constants.js | 1 + kubejs/startup_scripts/tfg/blocks.nether.js | 124 +++++- kubejs/startup_scripts/tfg/blocks.space.js | 198 ++++++++++ kubejs/startup_scripts/tfg/constants.js | 79 +++- kubejs/startup_scripts/tfg/items.js | 4 + 111 files changed, 2462 insertions(+), 132 deletions(-) create mode 100644 kubejs/assets/ad_astra/textures/block/polished_mercury_stone.png create mode 100644 kubejs/assets/tfg/blockstates/loose/crackrack.json create mode 100644 kubejs/assets/tfg/blockstates/rock/bricks_moon_deepslate.json create mode 100644 kubejs/assets/tfg/blockstates/rock/chiseled_bricks_moon_deepslate.json create mode 100644 kubejs/assets/tfg/blockstates/rock/cobble_blackstone.json create mode 100644 kubejs/assets/tfg/blockstates/rock/cobble_crackrack.json create mode 100644 kubejs/assets/tfg/blockstates/rock/cobble_dripstone.json create mode 100644 kubejs/assets/tfg/blockstates/rock/cobble_moon_deepslate.json create mode 100644 kubejs/assets/tfg/blockstates/rock/cobble_permafrost.json create mode 100644 kubejs/assets/tfg/blockstates/rock/cracked_bricks_moon_deepslate.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_blackstone.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_crackrack.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_deepslate.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_dripstone.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_glacio.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_mars.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_mercury.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_moon.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_moon_deepslate.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_permafrost.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_red_granite.json create mode 100644 kubejs/assets/tfg/blockstates/rock/gravel_venus.json create mode 100644 kubejs/assets/tfg/blockstates/rock/pillar_moon_deepslate.json create mode 100644 kubejs/assets/tfg/blockstates/rock/polished_crackrack.json create mode 100644 kubejs/assets/tfg/blockstates/rock/polished_moon_deepslate.json create mode 100644 kubejs/assets/tfg/models/block/loose/crackrack_1.json create mode 100644 kubejs/assets/tfg/models/block/loose/crackrack_2.json create mode 100644 kubejs/assets/tfg/models/block/loose/crackrack_3.json create mode 100644 kubejs/assets/tfg/models/block/rock/bricks_moon_deepslate.json create mode 100644 kubejs/assets/tfg/models/block/rock/chiseled_bricks_moon_deepslate.json create mode 100644 kubejs/assets/tfg/models/block/rock/cobble_blackstone.json create mode 100644 kubejs/assets/tfg/models/block/rock/cobble_crackrack.json create mode 100644 kubejs/assets/tfg/models/block/rock/cobble_dripstone.json create mode 100644 kubejs/assets/tfg/models/block/rock/cobble_permafrost.json create mode 100644 kubejs/assets/tfg/models/block/rock/cracked_bricks_moon_deepslate.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_blackstone.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_crackrack.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_deepslate.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_dripstone.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_glacio.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_mars.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_mercury.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_moon.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_moon_deepslate.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_permafrost.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_red_granite.json create mode 100644 kubejs/assets/tfg/models/block/rock/gravel_venus.json create mode 100644 kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate.json create mode 100644 kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate_horizontal.json create mode 100644 kubejs/assets/tfg/models/block/rock/polished_crackrack.json create mode 100644 kubejs/assets/tfg/models/block/rock/polished_moon_deepslate.json create mode 100644 kubejs/assets/tfg/textures/block/rock/bricks_moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/block/rock/chiseled_bricks_moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/block/rock/cobble_crackrack.png create mode 100644 kubejs/assets/tfg/textures/block/rock/cobble_dripstone.png create mode 100644 kubejs/assets/tfg/textures/block/rock/cobble_moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/block/rock/cracked_bricks_moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_blackstone.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_crackrack.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_deepslate.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_dripstone.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_glacio.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_mars.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_mercury.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_moon.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_permafrost.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_red_granite.png create mode 100644 kubejs/assets/tfg/textures/block/rock/gravel_venus.png create mode 100644 kubejs/assets/tfg/textures/block/rock/pillar_moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/block/rock/pillar_moon_deepslate_top.png create mode 100644 kubejs/assets/tfg/textures/block/rock/polished_crackrack.png create mode 100644 kubejs/assets/tfg/textures/block/rock/polished_moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/item/brick/moon_deepslate.png create mode 100644 kubejs/assets/tfg/textures/item/brick/red_granite.png create mode 100644 kubejs/assets/tfg/textures/item/loose/crackrack.png create mode 100644 kubejs/assets/tfg/textures/item/loose/red_granite.png create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/bricks_moon_deepslate.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/chiseled_bricks_moon_deepslate.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/cobble_blackstone.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/cobble_crackrack.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/cobble_dripstone.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/cobble_moon_deepslate.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/cobble_permafrost.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/cracked_bricks_moon_deepslate.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_blackstone.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_crackrack.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_deepslate.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_dripstone.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_glacio.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_mars.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_mercury.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon_deepslate.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_permafrost.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_red_granite.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/gravel_venus.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/pillar_moon_deepslate.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/polished_crackrack.json create mode 100644 kubejs/data/tfg/loot_tables/blocks/rock/polished_moon_deepslate.json diff --git a/kubejs/assets/ad_astra/textures/block/polished_mercury_stone.png b/kubejs/assets/ad_astra/textures/block/polished_mercury_stone.png new file mode 100644 index 0000000000000000000000000000000000000000..30b5f76907900ec4ae6964d3948c49bc71694737 GIT binary patch literal 938 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(PyKk|?WnhepZ@zp_BVyI!K*2@AJ~MwJ@u{K7rUL`74tuPOWB z!TzJGn!7iz<6GCH@PqM@o`vQvkIw(zT)Ig%7VnPluI}Gm-f&@s!PPfiOsmo)S629( zc@}nbUO0MH&{sZ4(@!S6-n5)Vf)9!BD-=Dj?lIh3%M(wq4 z*PAum^uP2vSGR`cOFpys^<3Y3%zEVw3)N$dRNOyZ7U5!j@V955COgkProGvD`D<(E z*fB`H%KFJ>VZm~&d&=H-AKy8o=l`FV`Sm;V^Twj9%VW3tF)%Q&C3(BMF#HF>1$&oI zW?*38EbxddW?*T)rNu~c*+FwsCZ!CN6Tae_qXrijI(L1MUN$E~2&BR{pJ-z$6ow&W6T>4uZ24B^S z=Prj#`fquwvZYL}cHYK&3(ptVSXlqsE*w0gxKNXefp7bDlid~hXB#rKPF^nFE@Hv( z?zQ%;-LsZW`t!=9ZqBBN>(aZfiYUb{Ge~w`Ai}D9*yyCp(Y}jP2i}KIer?Y5+VHQ1 z?tS61_)D`GRafUQ9;j;Hs>oIIzihJNI!0Bqx;Y;nbMDmFcj#hae(>^V?dJ-cD;kjt zQ@-RmGdO5&6y0D}BN=>sc8;&+!P?rXH;>qDPMy$oJ#cOL}V_KpI$4jxy{AGHDm41=Tg%bC2$pQDcG@hS$(&m zs&@RrKYK34?swR7@2PLh^SL=P{HC$_W(~nY;)Z^S$AooN_3GvXcr8eA-K?E)cEVb& r+P)C`?j=i4K5#m4>uo>F2XX$OFAICF%=yZ|z`)??>gTe~DWM4f$^4(n literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/blockstates/loose/crackrack.json b/kubejs/assets/tfg/blockstates/loose/crackrack.json new file mode 100644 index 000000000..568f8180c --- /dev/null +++ b/kubejs/assets/tfg/blockstates/loose/crackrack.json @@ -0,0 +1,55 @@ +{ + "variants": { + "count=1": [ + { + "model": "tfg:block/loose/crackrack_1", + "y": 90 + }, + { + "model": "tfg:block/loose/crackrack_1" + }, + { + "model": "tfg:block/loose/crackrack_1", + "y": 180 + }, + { + "model": "tfg:block/loose/crackrack_1", + "y": 270 + } + ], + "count=2": [ + { + "model": "tfg:block/loose/crackrack_2", + "y": 90 + }, + { + "model": "tfg:block/loose/crackrack_2" + }, + { + "model": "tfg:block/loose/crackrack_2", + "y": 180 + }, + { + "model": "tfg:block/loose/crackrack_2", + "y": 270 + } + ], + "count=3": [ + { + "model": "tfg:block/loose/crackrack_3", + "y": 90 + }, + { + "model": "tfg:block/loose/crackrack_3" + }, + { + "model": "tfg:block/loose/crackrack_3", + "y": 180 + }, + { + "model": "tfg:block/loose/crackrack_3", + "y": 270 + } + ] + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/bricks_moon_deepslate.json b/kubejs/assets/tfg/blockstates/rock/bricks_moon_deepslate.json new file mode 100644 index 000000000..989f9a714 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/bricks_moon_deepslate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/bricks_moon_deepslate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/chiseled_bricks_moon_deepslate.json b/kubejs/assets/tfg/blockstates/rock/chiseled_bricks_moon_deepslate.json new file mode 100644 index 000000000..f5883f881 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/chiseled_bricks_moon_deepslate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/chiseled_bricks_moon_deepslate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/cobble_blackstone.json b/kubejs/assets/tfg/blockstates/rock/cobble_blackstone.json new file mode 100644 index 000000000..9322f89aa --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/cobble_blackstone.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/cobble_blackstone" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/cobble_crackrack.json b/kubejs/assets/tfg/blockstates/rock/cobble_crackrack.json new file mode 100644 index 000000000..a8af00981 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/cobble_crackrack.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/cobble_crackrack" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/cobble_dripstone.json b/kubejs/assets/tfg/blockstates/rock/cobble_dripstone.json new file mode 100644 index 000000000..7e4bb7c74 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/cobble_dripstone.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/cobble_dripstone" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/cobble_moon_deepslate.json b/kubejs/assets/tfg/blockstates/rock/cobble_moon_deepslate.json new file mode 100644 index 000000000..4f72b9333 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/cobble_moon_deepslate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/cobble_moon_deepslate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/cobble_permafrost.json b/kubejs/assets/tfg/blockstates/rock/cobble_permafrost.json new file mode 100644 index 000000000..56363869d --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/cobble_permafrost.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/cobble_permafrost" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/cracked_bricks_moon_deepslate.json b/kubejs/assets/tfg/blockstates/rock/cracked_bricks_moon_deepslate.json new file mode 100644 index 000000000..c411c524a --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/cracked_bricks_moon_deepslate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/cracked_bricks_moon_deepslate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_blackstone.json b/kubejs/assets/tfg/blockstates/rock/gravel_blackstone.json new file mode 100644 index 000000000..e769228fe --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_blackstone.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_blackstone" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_crackrack.json b/kubejs/assets/tfg/blockstates/rock/gravel_crackrack.json new file mode 100644 index 000000000..c10b6e510 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_crackrack.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_crackrack" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_deepslate.json b/kubejs/assets/tfg/blockstates/rock/gravel_deepslate.json new file mode 100644 index 000000000..640736aee --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_deepslate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_deepslate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_dripstone.json b/kubejs/assets/tfg/blockstates/rock/gravel_dripstone.json new file mode 100644 index 000000000..7a2db502e --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_dripstone.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_dripstone" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_glacio.json b/kubejs/assets/tfg/blockstates/rock/gravel_glacio.json new file mode 100644 index 000000000..e167ee620 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_glacio.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_glacio" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_mars.json b/kubejs/assets/tfg/blockstates/rock/gravel_mars.json new file mode 100644 index 000000000..1185ce5ae --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_mars.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_mars" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_mercury.json b/kubejs/assets/tfg/blockstates/rock/gravel_mercury.json new file mode 100644 index 000000000..8c62c0b65 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_mercury.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_mercury" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_moon.json b/kubejs/assets/tfg/blockstates/rock/gravel_moon.json new file mode 100644 index 000000000..9a5fa93f9 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_moon.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_moon" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_moon_deepslate.json b/kubejs/assets/tfg/blockstates/rock/gravel_moon_deepslate.json new file mode 100644 index 000000000..004ac267c --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_moon_deepslate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_moon_deepslate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_permafrost.json b/kubejs/assets/tfg/blockstates/rock/gravel_permafrost.json new file mode 100644 index 000000000..f8718974d --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_permafrost.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_permafrost" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_red_granite.json b/kubejs/assets/tfg/blockstates/rock/gravel_red_granite.json new file mode 100644 index 000000000..4d87c4591 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_red_granite.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_red_granite" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/gravel_venus.json b/kubejs/assets/tfg/blockstates/rock/gravel_venus.json new file mode 100644 index 000000000..6b76d8654 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/gravel_venus.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/gravel_venus" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/pillar_moon_deepslate.json b/kubejs/assets/tfg/blockstates/rock/pillar_moon_deepslate.json new file mode 100644 index 000000000..ebd02974c --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/pillar_moon_deepslate.json @@ -0,0 +1,16 @@ +{ + "variants": { + "axis=x": { + "model": "tfg:block/rock/pillar_moon_deepslate_horizontal", + "x": 90, + "y": 90 + }, + "axis=y": { + "model": "tfg:block/rock/pillar_moon_deepslate" + }, + "axis=z": { + "model": "tfg:block/rock/pillar_moon_deepslate_horizontal", + "x": 90 + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/polished_crackrack.json b/kubejs/assets/tfg/blockstates/rock/polished_crackrack.json new file mode 100644 index 000000000..35bbb9db2 --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/polished_crackrack.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/polished_crackrack" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/blockstates/rock/polished_moon_deepslate.json b/kubejs/assets/tfg/blockstates/rock/polished_moon_deepslate.json new file mode 100644 index 000000000..ccdcf0f9a --- /dev/null +++ b/kubejs/assets/tfg/blockstates/rock/polished_moon_deepslate.json @@ -0,0 +1,7 @@ +{ + "variants": { + "": { + "model": "tfg:block/rock/polished_moon_deepslate" + } + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/loose/crackrack_1.json b/kubejs/assets/tfg/models/block/loose/crackrack_1.json new file mode 100644 index 000000000..977e3cf5c --- /dev/null +++ b/kubejs/assets/tfg/models/block/loose/crackrack_1.json @@ -0,0 +1,6 @@ +{ + "parent": "tfc:block/rock/loose_igneous_intrusive_1", + "textures": { + "texture": "beneath:block/crackrack" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/loose/crackrack_2.json b/kubejs/assets/tfg/models/block/loose/crackrack_2.json new file mode 100644 index 000000000..1293c8e27 --- /dev/null +++ b/kubejs/assets/tfg/models/block/loose/crackrack_2.json @@ -0,0 +1,6 @@ +{ + "parent": "tfc:block/rock/loose_igneous_intrusive_2", + "textures": { + "texture": "beneath:block/crackrack" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/loose/crackrack_3.json b/kubejs/assets/tfg/models/block/loose/crackrack_3.json new file mode 100644 index 000000000..a0f2061df --- /dev/null +++ b/kubejs/assets/tfg/models/block/loose/crackrack_3.json @@ -0,0 +1,6 @@ +{ + "parent": "tfc:block/rock/loose_igneous_intrusive_3", + "textures": { + "texture": "beneath:block/crackrack" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/bricks_moon_deepslate.json b/kubejs/assets/tfg/models/block/rock/bricks_moon_deepslate.json new file mode 100644 index 000000000..7732302b1 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/bricks_moon_deepslate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/bricks_moon_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/chiseled_bricks_moon_deepslate.json b/kubejs/assets/tfg/models/block/rock/chiseled_bricks_moon_deepslate.json new file mode 100644 index 000000000..55e323eb3 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/chiseled_bricks_moon_deepslate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/chiseled_bricks_moon_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/cobble_blackstone.json b/kubejs/assets/tfg/models/block/rock/cobble_blackstone.json new file mode 100644 index 000000000..ad6cfdcc5 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/cobble_blackstone.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "minecraft:block/blackstone_top" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/cobble_crackrack.json b/kubejs/assets/tfg/models/block/rock/cobble_crackrack.json new file mode 100644 index 000000000..95432bb09 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/cobble_crackrack.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/cobble_crackrack" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/cobble_dripstone.json b/kubejs/assets/tfg/models/block/rock/cobble_dripstone.json new file mode 100644 index 000000000..e6ae2b798 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/cobble_dripstone.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/cobble_dripstone" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/cobble_permafrost.json b/kubejs/assets/tfg/models/block/rock/cobble_permafrost.json new file mode 100644 index 000000000..ff942aee9 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/cobble_permafrost.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "ad_astra:block/permafrost_top" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/cracked_bricks_moon_deepslate.json b/kubejs/assets/tfg/models/block/rock/cracked_bricks_moon_deepslate.json new file mode 100644 index 000000000..421d73f2b --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/cracked_bricks_moon_deepslate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/cracked_bricks_moon_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_blackstone.json b/kubejs/assets/tfg/models/block/rock/gravel_blackstone.json new file mode 100644 index 000000000..d9ee63774 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_blackstone.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_blackstone" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_crackrack.json b/kubejs/assets/tfg/models/block/rock/gravel_crackrack.json new file mode 100644 index 000000000..681590d51 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_crackrack.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_crackrack" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_deepslate.json b/kubejs/assets/tfg/models/block/rock/gravel_deepslate.json new file mode 100644 index 000000000..8ff04f18c --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_deepslate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_dripstone.json b/kubejs/assets/tfg/models/block/rock/gravel_dripstone.json new file mode 100644 index 000000000..9d72e117f --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_dripstone.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_dripstone" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_glacio.json b/kubejs/assets/tfg/models/block/rock/gravel_glacio.json new file mode 100644 index 000000000..644584b76 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_glacio.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_glacio" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_mars.json b/kubejs/assets/tfg/models/block/rock/gravel_mars.json new file mode 100644 index 000000000..f3d68f422 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_mars.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_mars" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_mercury.json b/kubejs/assets/tfg/models/block/rock/gravel_mercury.json new file mode 100644 index 000000000..2b8a2a169 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_mercury.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_mercury" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_moon.json b/kubejs/assets/tfg/models/block/rock/gravel_moon.json new file mode 100644 index 000000000..f87fb5702 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_moon.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_moon" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_moon_deepslate.json b/kubejs/assets/tfg/models/block/rock/gravel_moon_deepslate.json new file mode 100644 index 000000000..d8ab793b1 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_moon_deepslate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_moon_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_permafrost.json b/kubejs/assets/tfg/models/block/rock/gravel_permafrost.json new file mode 100644 index 000000000..af6e7933d --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_permafrost.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_permafrost" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_red_granite.json b/kubejs/assets/tfg/models/block/rock/gravel_red_granite.json new file mode 100644 index 000000000..288781d1e --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_red_granite.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_red_granite" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/gravel_venus.json b/kubejs/assets/tfg/models/block/rock/gravel_venus.json new file mode 100644 index 000000000..d20e4d522 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/gravel_venus.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/gravel_venus" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate.json b/kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate.json new file mode 100644 index 000000000..153a1d6bd --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column", + "textures": { + "end": "tfg:block/rock/pillar_moon_deepslate_top", + "side": "tfg:block/rock/pillar_moon_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate_horizontal.json b/kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate_horizontal.json new file mode 100644 index 000000000..4e3026807 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/pillar_moon_deepslate_horizontal.json @@ -0,0 +1,7 @@ +{ + "parent": "minecraft:block/cube_column_horizontal", + "textures": { + "end": "tfg:block/rock/pillar_moon_deepslate_top", + "side": "tfg:block/rock/pillar_moon_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/polished_crackrack.json b/kubejs/assets/tfg/models/block/rock/polished_crackrack.json new file mode 100644 index 000000000..4ebed1bc8 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/polished_crackrack.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/polished_crackrack" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/models/block/rock/polished_moon_deepslate.json b/kubejs/assets/tfg/models/block/rock/polished_moon_deepslate.json new file mode 100644 index 000000000..2f59b3be5 --- /dev/null +++ b/kubejs/assets/tfg/models/block/rock/polished_moon_deepslate.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "tfg:block/rock/polished_moon_deepslate" + } +} \ No newline at end of file diff --git a/kubejs/assets/tfg/textures/block/rock/bricks_moon_deepslate.png b/kubejs/assets/tfg/textures/block/rock/bricks_moon_deepslate.png new file mode 100644 index 0000000000000000000000000000000000000000..981465dfadc1df69c1749a6b8739b46a2248d1ba GIT binary patch literal 753 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(PyKlBl3{2S?fpy<4uXGTx%y2@AJ~MwJ@u{K7rUL`74tuPOWB z!TzJGn!7iz<6GCH@PqM@o`vQvkIw(zT)Ig%7VnPluI}Gm-f&@s!PPfiOsmo)S629( zc@}nbUO0`XGV$L(eEh0+X!D-)e=UDa*>jR%zK2Zeu0+9nf%AD$ zR?ll6321wAeYE_z#8F(O?#ZqqxRaj z>&+T=`d@mTt6RhJC7)URdamz1X1(%;h3c_JD(;^yi*T_%_}jBjlbz=t)86d7{I#`n z>=-0pW&LEcuwXgXJ!S8^kMA7P^Z(Dw{Q8~w>Y<`@D__(LGcYi)C3(BMF#HF>1$&oI zW?*38EbxddW?|Oqh6e!o{`k#pl1v-`2O-vNiIiZ{xHZ z)#sWoX54<9`XGV$L(eEh0+X!D-)e=UDa*>jR%zK2Zeu0+9nf%AD$ zR?ll6321wAeYE_z#8F(O?#ZqqxRaj z>&+T=`d@mTt6RhJC7)URdamz1X1(%;h3c_JD(;^yi*T_%_}jBjlbz=t)86d7{I#`n z>=-0pW&LEcuwXgXJ!S8^kMA7P^Z(Dw{Q8~w>Y<`@D__(LGcYi)C3(BMF#HF>1$&oI zW?*38EbxddW?&&^HE zD`9XhN=+Eak-ak_Vscm5#*ftLMA-bciia{bMI zyK?`0xs5CnbN>WXADk%5lc*O~w%K@d|MvCo=i5KmVerbFvsq(lW!oqFhLUqaNlXey zia)PYeA*M@CH!b+|KGaMy#fvmciUfC3HNR;TWhubrSFa~y;r4y zj}O>-Fx2!VUyr?9w6j^RZ~yVM9kz?!@$hj!-8A!FRqA@y*Xw1D74GAGu5&GZ{`!w8 zKFOa`cqBGgO*KB4_x+yAwEKG*%~MH&{sZ4(@!S6-n5)Vf)9!BD-=Dj?lIh3%M(wq4 z*PAum^uP2vSGR`cOFpys^<3Y3%zEVw3)N$dRNOyZ7U5!j@V955COgkProGvD`D<(E z*fB`H%KFJ>VZm~&d&=H-AKy8o=l`FV`Sm;V^Twj9%VW3tF)%Q&C3(BMFo3~N=iT)T z3=EtF9+AZi4BWyX%*Zfnjsyb(1AB?5uPggY4p~7KES{AcC+brYH z|30^OyZ-$@j2-5j=GTSoYX3TA@T}arr{bH;{qKx3&ZVx>t?flkvPymTL>#Mnws+p1OIc;xRZoB8nB2BDyIiQI)N;}F zcN*gUOlKD#m(nS2J0`&5TlKcDPx;{LQl~84c_9-bS6^N9j&_^_J|i&ojO5|66}{_Uq1l&HUTt zMbk=`UJI&z@$>zs;DZ}21f-m`b0*$Twb@&9C~NMA1D`Ga*%evHbeMDQ|Frwk)N@m{ zJj^z3o=|pfrM-*j#BzbJU++u1)b6X*kH1|J@oL_Du6yWv YXD>-#FSK{1Gbqt`y85}Sb4q9e03AEZ%>V!Z literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/cobble_dripstone.png b/kubejs/assets/tfg/textures/block/rock/cobble_dripstone.png new file mode 100644 index 0000000000000000000000000000000000000000..8b03e73a0d622eaa8ca05012ad91787182292377 GIT binary patch literal 1024 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(P&MlBlDxN8pKoxo;LJ^)2mk-4Jk#YpvCcm|v{EQj=U2^2VYO9!`oXq#fclRE@YklDU8l$UkIvH1`NxpQ6 zIrB99=)Q0k!D9l)6gw14-I-};}( z&Xl6i11B~%NQHRx$^YT6E6)~NzWmOT0GSuH8{hU9F31`^L6tb%zI%J1$xM zixQskTV?OXi%RYX9+(vr-o5z5_CXQ5MCBz_=b|MHzV#b9_RPO%{`sfOAaX^GgguLd?pMG43Z_T5hc#~ zxw)x%B@E6*sfi`2DGKG8B^e6tp1uL$jeOz^42(BCT^vI!PKQq3xbBvNfNQ_*X(5ic zQB0R@qeb!@I%X+_{!_G{;D7S@(rTg1n3)rfv1O(^Zrj4T#9%l7owpV5&fM8qz9`#R(}`TOddUa~YK8M|w@MtDC-nzd{3nxZR7Vo4j>vzK~sO&veW)pLwq$@6~rzcCru5fp};x(n^8((YRn3wNz zWJ>72J10GKvs<5tzFGe9vA1^IQwL^_EE#_BNt;gn{QX?MY9({)vUg2|MujO>s+Tq0 zWR}Tm%*)F8zFJ?oQp;`Ef#TnX?uy@e%Qa;d>u1${tE0{YTw}Xjvu6LFxSVGPcgejd z+$i|HOvbVGd2|$K;d|bEqs-PNH_qIjRQqUk%6gIRvo;Zu3LncKFe^B=e$-RB;~x1` g!_@C}|4aK6--JZF%X6kNFfcH9y85}Sb4q9e0G@it@&Et; literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/cobble_moon_deepslate.png b/kubejs/assets/tfg/textures/block/rock/cobble_moon_deepslate.png new file mode 100644 index 0000000000000000000000000000000000000000..df7e42b7c5ae9c553b7ae344426e704d3ea0e537 GIT binary patch literal 936 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 R9~}lIGf!7Pmvv4FO#mbn(R}~_ literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/gravel_deepslate.png b/kubejs/assets/tfg/textures/block/rock/gravel_deepslate.png new file mode 100644 index 0000000000000000000000000000000000000000..c8a1bde4032a8abf0bc21adb54e31caaf91517b7 GIT binary patch literal 638 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7*pj^6T^Rm@;DWu&Co?cG za29w(7Bet#3xhBt!>lx;w22YC`Rp6GS4T=VMw{^i}? z_ZgqQd?|_4c{ek>nC~|;gYV`eQQd}Z+wLl-dS0J9aTCh{iRP`-)>$jd$;ovTF0rp< zSfaD>nvzT5RU00829Cf7wfzFDzMEYlvKfme3b4kOvpHzC8nS76zuM*2!L(M}iDQZK zC09+?*z1w59E@wVFEJ$ZD6*{CsUdkF>3OaoV~5-CHuJ94 zZqZuFN9?(MhA=XS1c-~H}P$;KV(EfeDX&91!`J!g5V z%>S}Z;kk#k=U>0(-h5LxXqrc)(bZi}uesh=|C)SUqWQb+Imnv|bP0l+XkKo%a~x literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/gravel_dripstone.png b/kubejs/assets/tfg/textures/block/rock/gravel_dripstone.png new file mode 100644 index 0000000000000000000000000000000000000000..f03870d92e65e7f1acb2d3f49e494cf6e0f5db63 GIT binary patch literal 1107 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(P&MlBlDxN8pKoxo;LJ^)2mk-4Jk#YpvCcm|v{EQj=U2^2VYO9!`oXq#fclRE@YklDU8l$UkIvH1`NxpQ6 zIrB99=)Q0k!D9l)6gw14-I-};}( z&Xl6i11B~%NQHRx$^YT6E6)~NzWmOT0GSuH8{hU9F31`^L6tb%zI%J1$xM zixQskTV?OXi%RYX9+(vr-o5z5_CXQ5MCBz_=b|MHzV#b9_RPO%{&&^HE zD`9XhN=+Z8By z#e2dQ_=zxhN+qvqyZ8Rvf!)W|8LIX#Hfy{0eumF+j$l)UcR}yV*GyAou;QK==rHNn zlby@HTThuH(yjYV_}hZb6Kt;cxo*6%XvvX(4sMJ`le$+*m54ps$`owcadp#@@78<5 z9+c-Byk1MzBYNr62p7j*T+{i+>+Q6 zrm(o-)(qRfd+%F5j&qNcHlC5e7`EDU#dmA=d$x8HmlzsxS)9MWt6DkO^Z~!aflSj- z=Z!avX7+goHGZ?sVE=nRegB0>4qa!iIPD9OCsM4+qSoqfn|QDL;@N#OU#bVUBB-9j=A@F+jPB4#Q1*Q{vT>*XO)r?y&`^BLh`P)? z|E$@0wIJ!{E|o*yem{r|{J&OHEP7Aage8WaQvA$Sk*lW8cz)~cBYFRSk*_Pl+BiUo N(bLt>Wt~$(69BX0^@{)i literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/gravel_glacio.png b/kubejs/assets/tfg/textures/block/rock/gravel_glacio.png new file mode 100644 index 0000000000000000000000000000000000000000..6c9499f250e2c53224156571197620a6bb093aac GIT binary patch literal 1079 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 literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/gravel_moon_deepslate.png b/kubejs/assets/tfg/textures/block/rock/gravel_moon_deepslate.png new file mode 100644 index 0000000000000000000000000000000000000000..ce10141ef965ec3c11746f70974334851c78b372 GIT binary patch literal 1038 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(LD~s5W1jK?7C(rniA_;aH4=2P=?uI;SzBu$J~Rz6bL81W`yXLIDqfX?(z=dM+O z`zDk|KHPIOa_yCf*Yp0gHtyLr>6z8p!Xq17SSAT5E^af@+90qjRQae&*SF-@Ka2b9 zJ@sbBq#6|IEZ`EI^qBpB^ZmQCT4!dOYYH$|#pnD^X8Q1!>FloDdimRBpIJWGF^5Op zj?ZP7=zr;Tu5JknPcF0g^<3Y3%zEVw6V+plRNOyZ65(Qf@V955COgl4roY*F`D<(E z*fB`H%KFJ>VZox-J!S8`r+5FIyZ6ub@~ijkS0@#n3!ky&1p@;ETavfC3xh6$K7+B( zWdlYA1_sUokH}&M25w;xW@MN(M}mQYfxX1j*OmPxhcv&eHUF8N8yFZEBuiW)N}Tg^ zb5rw57@Uhz6H8K46v{J8G8EiBeFMT9`NSC*7@v8%IEGl94xN13PuftVZT~q-IqR1_ zQv{egbS8Z+*R-9R_w3ut zc%jtxAp4rlJ&zkMPMe|DvyCAlozqU>vP*G!xqn}0Vg>tw4DSz&hE*4B`j{D#rc5zT znzHV7W)nZdR*xQ`%PbAE&u%=Iv?XUNT?n^QnferU5;zOEXHGnD@;OI44>cqHF5d(YPouwOQp7XX6uh0WG}ld z`}^?2qyit|vtNIGb6WB=srBNt-Ls`bS_)-0oZDnC<6-&v)2A3gsoX%(mD24GWnb%P zrhjW^KFHp)ZONR~1*ea$%9>QPjM2k#vC`D+zLim$ZXcH?i(argomL$GdR6aZ3xUf= z@^&A#;%=~)4HWFz7PCHI`+xg;{{N=GUhM1&S?4-^(^i%Di+B8vx6kbQuH|%U=cSvu z$rdlVUN3A|D%D+vK^fn~JvHc<^`L_4t9z%8FtM+ z`*FE){(k<@he~;UobSK$9IoCwIVtzU!yX6MtSP5A9x;iHN$`v-Tyn?rvA=s0e~hl# vm%r(MUV8L#F3y#W(AydiqZc-1-+rm5E|CXU9n554U|{fc^>bP0l+XkKy~@!* literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/gravel_permafrost.png b/kubejs/assets/tfg/textures/block/rock/gravel_permafrost.png new file mode 100644 index 0000000000000000000000000000000000000000..f0989b893129368aec506384a9f11aedaed5e3a4 GIT binary patch literal 1090 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(PyKk|?WnhepZ@zp_BVyI!K*2@AJ~MwJ@u{K7rUL`74tuPOWB z!TzJGn!7iz<6GCH@PqM@o`vQvkIw(zT)Ig%7VnPluI}Gm-f&@s!PPfiOsmo)S629( zc@}nbUO0MH&{sZ4(@!S6-n5)Vf)9!BD-=Dj?lIh3%M(wq4 z*PAum^uP2vSGR`cOFpys^<3Y3%zEVw3)N$dRNOyZ7U5!j@V955COgkProGvD`D<(E z*fB`H%KFJ>VZm~&d&=H-AKy8o=l`FV`Sm;V^Twj9%VW3tF)%Q&C3(BMF#HF>1$&oI zW?*38EbxddW?r5`Ik zxpcGP#JU^KkGbZZ3C#b=@%Cc=!|fjyZFx|+F)rrAl*t{l7P;!Ko;3GBkk`f~ht};D z$gx>6+4rdB*@w0FD*yRDefhck=DywSdGkJgd%)2UcRfYo#g90z`V9vJ#5(6Ba&R-; z_m*U{>YNjJvabGQTO;2F!zUcG4J1S#gzoLiG%IZBwaOJ-JoVt}DpB_vDn)D!uS-Ad z6>*MW-JzRwC?Q1W;+3Oct!AVNGdM@I9PHTE5y<}|&P$?4g3W5(b;U`+ZH;}?PDu7` z=zJpb{~>S5=QRln4lw*Z*c7@qDj+;)Ti92viE}2MkepoEY`#8ui>b1y4Nu9g{&xYE z_H38FK9X7dc6W7a9mD0EB#!ReyQOjkFU#wE*gNIaPs8M!k8U1Rb#{)Zrj~;%Ixc<>+H{MrSzW$}O+T*o^eKIfwOKQ@rW!@L zuA6j0$WnPyaLjt=_1R)kQ}tI(JeA>oL*mdP-6XN@)N>2gcv{ZCT2@h6u_;jN=z^H1 zx~`cz`s_+8nblt}mA$n)eCCeDl!vpmlfletl55C#T^5JlAVK4*x!UK4wB-c3yCH-eZp0 x@{{LFoVA)br)Z}peR2r zGbfdSL1SX=L|c!;4l+mMgO4hSvRZd&q^$5O3lzNTCEA^^aEoYEslm=K+_OwnH1+zL zvJW2YKf0>9d-FQJbxjIC7$50bXzudp{O`@Bn`C40?)dKN{@vvb7giWtebdFXDot`_ zh0mF1VMphMvlw(So>5dV4EA3lZu~(e{`-fIU-b@c-gEx1<*zAwPBP5*kV)N@D3~vB zJ}1iRdF>+sZBMR`mLFRj#Z~H_?0WM_`uU>6Oy_wdXI`->?1<1Q+i>ULnv@ksE+0vB zy{Zv^V%M62dym$HWvwao|92=MF50tr?lX=@5l&2=9TNhbB}F4TF07iEq~!YBkpKUN z$NrPN)xsrvWVly2wLbZA@c)DI?P-ZwmwdU7HM|qQ{ZE3qs;n{X?za8?xw|Wwe#~#w zUi)^vS;I~LORsZvYgoSIGmBr(^}WZeSKhEtJ=RFY{nKR;F4hNsd-iFv^W0x)0|Q%$e=Kc%)=_Z;P65M}}w1mf2#= zx6|C4WTS4hRIM=9JeO)T`T0-#^Z!#HoSppp?sob82KB$Kls`($uY1F^A>c&tx@#va zC9ieQPPy!Pr%hqDAJc?lqbaLR@3bX6C{?_^HCXIv7Vm?Yg{e|gv`TpuQraWaWloy} z9QTWC@tXR}l0nfrVp-#D0fsZazLScLQZ9S)CM?(Sn!1Zks-pCDR=BOsVE&059Cv6A=7^G~P6dyXVm39~Y6h`Zx*qHo#43|EGhH!n^~XRqG#``6qhhDYvP zS(2v_o^2Cd(|6~t75h6gmWP4o!rt92xpD8az^21rTxM06I34OR{`^4j;$-_Z;^sT8 zi<=!xKFqRv-+kYLlS#;JPK)6C%t^&Y3>Cie`&Ca`O72G|yvk%%A*!Gt-xM_0kc`4qjfWYIZG5GxU{?$R{gn?$#QAVbyg)`PU?`PZlXK zn|dUd>sPzh+Cz)ytnG>4)iHO|4gqPEM4rT%Y@c?V{WkCTzxT>>+Y2;~6qu|sPMuvi zr_=CI<}U5_PcsxOQVT03ABO$-b6M3);^Nt9nH%aWjue=5-Jc|L%ItFZrJVPbEC)5~ X8AJ3EZgHMXV*mk9S3j3^P6MH&{sZ4(@!S6-n5)Vf)9!BD-=Dj?lIh3%M(wq4 z*PAum^uP2vSGR`cOFpys^<3Y3%zEVw3)N$dRNOyZ7U5!j@V955COgkProGvD`D<(E z*fB`H%KFJ>VZm~&d&=H-AKy8o=l`FV`Sm;V^Twj9%VW3tF)%Q&C3(BMFr+XLV0FMhJw4NZ$Nk>pEv^p6N9IVV~EA+*vSX8Zaav$`nU8t&N|i6 zz~-}MMMu)6!VlY8FWJA?UUGT=i}PFT1GwIO@=jHF&9KR{5^+EG9JHxcsqN#BcQZ#p;6^qxb%KkW&N#SJBsXYs}PwQ^? ze?R~99tMluCfv-kPFZ}sz zYPg$r`T}oW=|&^TU5&}NFGinEjSal>KS|1`Q|wl(-sh(9{P@lGHgkF3txXk54>y@w zc=_nDw`Wa%9~RzycG}abqyIj*Es4Hd_eo2yJiD`BMX9F6 zGnYqL@OV`4w${^obGV-eo6ULMq2j%B&i)6#r{_Ori?`obZCC5K$18A22vgJ^Z=tyS zw=)hn&99sq=b_B{MTh6ZRHbXPnloo~ERV>}O1|^++p}4}7EXcO!NQxb(dYTl07y}@eH0>Z@NzV)SrV>U0Qx0w@=qRQ`++4AJdD< X5XJ2#oDUcn7#KWV{an^LB{Ts5BPihN literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/pillar_moon_deepslate.png b/kubejs/assets/tfg/textures/block/rock/pillar_moon_deepslate.png new file mode 100644 index 0000000000000000000000000000000000000000..543f2ec35831a113cf7a3328889865bdb4ff31d5 GIT binary patch literal 715 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(PyKlBl3{2S?fpy<4uXGTx%y2@AJ~MwJ@u{K7rUL`74tuPOWB z!TzJGn!7iz<6GCH@PqM@o`vQvkIw(zT)Ig%7VnPluI}Gm-f&@s!PPfiOsmo)S629( zc@}nbUO0`XGV$L(eEh0+X!D-)e=UDa*>jR%zK2Zeu0+9nf%AD$ zR?ll6321wAeYE_z#8F(O?#ZqqxRaj z>&+T=`d@mTt6RhJC7)URdamz1X1(%;h3c_JD(;^yi*T_%_}jBjlbz=t)86d7{I#`n z>=-0pW&LEcuwXgXJ!S8^kMA7P^Z(Dw{Q8~w>Y<`@D__(LGcYi)C3(BMF#HF>1$&oI zW?*38EbxddW?a{~EyR;gk1nM6}`!<}}BbiXXujG4HJR?JogTe~DWM4fsh=#Y literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/pillar_moon_deepslate_top.png b/kubejs/assets/tfg/textures/block/rock/pillar_moon_deepslate_top.png new file mode 100644 index 0000000000000000000000000000000000000000..f96def315c6f6848136e1671e086bdf55a8ef3b0 GIT binary patch literal 748 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(PyKlBl3{2S?fpy<4uXGTx%y2@AJ~MwJ@u{K7rUL`74tuPOWB z!TzJGn!7iz<6GCH@PqM@o`vQvkIw(zT)Ig%7VnPluI}Gm-f&@s!PPfiOsmo)S629( zc@}nbUO0`XGV$L(eEh0+X!D-)e=UDa*>jR%zK2Zeu0+9nf%AD$ zR?ll6321wAeYE_z#8F(O?#ZqqxRaj z>&+T=`d@mTt6RhJC7)URdamz1X1(%;h3c_JD(;^yi*T_%_}jBjlbz=t)86d7{I#`n z>=-0pW&LEcuwXgXJ!S8^kMA7P^Z(Dw{Q8~w>Y<`@D__(LGcYi)C3(BMF#HF>1$&oI zW?*38EbxddW?&&^HE zD`9XhN=+Eak-ar$WRZob0`JbQ%H56XSceS779 zeDf8?%VsO)dT=sXmAvru@Tj|UQ)c<+r@w-}o;awpV&OFRRdTC~H|Q)#WMHtFXZ~fw z(T)Xj+zd<%r)mpn^T4?`hh-I2t-@3NQ&zTpN(iWzSgL9pp6#`A?W3rk z$b=~4d_y_EY|C~n<%T)Czb`Cu7uuYlDYUQl`I2doAK2vYrL;*3`lm54Ffe$!`njxgN@xNAj6Xk4 literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/polished_crackrack.png b/kubejs/assets/tfg/textures/block/rock/polished_crackrack.png new file mode 100644 index 0000000000000000000000000000000000000000..1aca6b9f65f3ae60535aaca852bcbedc17c0b60d GIT binary patch literal 898 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(LD~s5W1jK?7C(rniA_;aH4=2P=?uI;SzBu$J~Rz6bL81W`yXLIDqfX?(z=dM+O z`zDk|KHPIOa_yCf*Yp0gHtyLr>6z8p!Xq17SSAT5E^af@+90qjRQae&*SF-@Ka2b9 zJ@sbBq#6|IEZ`EI^qBpB^ZmQCT4!dOYYH$|#pnD^X8Q1!>FloDdimRBpIJWGF^5Op zj?ZP7=zr;Tu5JknPcF0g^<3Y3%zEVw6V+plRNOyZ65(Qf@V955COgl4roY*F`D<(E z*fB`H%KFJ>VZox-J!S8`r+5FIyZ6ub@~ijkS0@#n3!ky&1p@;EXMsm#F#`j)5C}6~ zx?A^$fq_A?#5JPCIX^cyHLrxhxhOTUBsE2$JhLQ2!QIn0AiR-JoPmL{-qXb~#Gu`^%7b%l zN~WKmpZ`Dk@1K9kPuyhgN;br9-TN~?JlArUapkN#+hvbUvDq)P;=R_jqinxlJ(7Kp zqWk-=`-!|OW#vtyX3j={p(r3)*YH5lzi$&DQCnYKD=6|aG`AXkY-I(pzl#2Ts^vsMM=DyS@VDZ^~s>WOF+oKn^ z`QA&1tTR~latNTXF5u zGpnhnaCzEg&^DWC^*4kz~JfX=d#Wz Gp$P!|otU5i literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/block/rock/polished_moon_deepslate.png b/kubejs/assets/tfg/textures/block/rock/polished_moon_deepslate.png new file mode 100644 index 0000000000000000000000000000000000000000..4b5661bbdd4ffaf25539df338980b30910fa6ee7 GIT binary patch literal 881 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQZ%U13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(LD~s5W1jK?7C(rniA_;aH4=2P=?uI;SzBu$J~Rz6bL81W`yXLIDqfX?(z=dM+O z`zDk|KHPIOa_yCf*Yp0gHtyLr>6z8p!Xq17SSAT5E^af@+90qjRQae&*SF-@Ka2b9 zJ@sbBq#6|IEZ`EI^qBpB^ZmQCT4!dOYYH$|#pnD^X8Q1!>FloDdimRBpIJWGF^5Op zj?ZP7=zr;Tu5JknPcF0g^<3Y3%zEVw6V+plRNOyZ65(Qf@V955COgl4roY*F`D<(E z*fB`H%KFJ>VZox-J!S8`r+5FIyZ6ub@~ijkS0@#n3!ky&1p@;ETavfC3xh6$K7+B( zWdlYA1_sUokH}&M25w;xW@MN(M}mQYfxX1j*OmPxhcv%5%li+;+zbp1k|nMYCC>S| zxv6<249-QVi6yBi3gww484B*6z5(HleBulYjGmq@jv*GOYbRX{I%FW=+HcYtC3Qit zE&sCm|H!|LwN3||f}Ol?Uu5^WAySfVG*e}F`TKjbXCGhwJb#@_;2VY+KFjL&Np5y$ z+_P^l!-UjXPs~^sWJk^Vb|QQpv%qRahQKv80sHRGVMzPT8he>7Hf51bxv%sd-gT-w zM30_YZzB0q>1GZ?fb1Im3so`=j7v^(L|=7$ShdxL`AF7_-Cu-vFFQJ;_JGFyyc0&e z4O(5YfouFa_a8c0u*gg8dpW<$#zi{3Sw=IHR{Q(kZv6WEYL(1};@w5_c6qNo9#L4< zbI;!FUe-yUo2!;tMerw`xha}CUAyG}!PZyZ8E5`Eu|Mxy`>Ok5$gG|XP70hi#Ml47 z`G?~i<8|MrQs3^kF9WBk$t=w5Ka%BfS&q5?>D(&^Z|;cG^;bS|!pJvr7DI|zJj>?O mAE&I%`mdYnG3)pY!ITDfl|I9}8#>H8(#>_} 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 Or6*5UKbLh*2~7Y=2_;hi literal 0 HcmV?d00001 diff --git a/kubejs/assets/tfg/textures/item/loose/red_granite.png b/kubejs/assets/tfg/textures/item/loose/red_granite.png new file mode 100644 index 0000000000000000000000000000000000000000..2a68bc48b65c349128eec49ca623a80a13b5a786 GIT binary patch literal 882 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7TQi-V13aCb6$*;-(=u~X z85lGs)=sqbIP4&EG(LE#s}`S_h~UY9xo;LJJqlSB!NR?C?S)m%Czr}QO>R>;dNi;= z*W$;YgZ433b5Ea++kIB71#V&@43*mhyD29it_h`-}wZjM3>EqHFUVDqdd2x zd*`1ni3(Q%WsU@f%|gasQ_>W<&wniCmydtH$maC#JM$NZYtG>L(0RmgnY7qPtB+rn zEiJyM&bN8f5`p=`{n90lkKEUt*4tmGXQ}hy%!Y}+=LOq4j|Q=ymOXQ-&CAABCNQM; zQ|p}5T+emSWi34x_5F!HkLZ@CJl8Y%lp9@DCN^Sj4@q+edD$N>KJ~r7v0Sjx{=7hz`&N|?e4hbKlGXn#IWQl7;iF1B# zZfaf$gL6@8Vo7R>LV0FMhJw4NZ$Nk>pEv^pqo=2fV~EA+vy;8Em>dP#_6r_#@7ES| z^l*_-Ns$m};x6CW*d22)`Ki#nL#_fWfhrucI9ZNu+dNaQSNg1y&*ft_EjdB6m+e}; zZ`H4rZT7R0t@pZpP5Ax2`-G+Rh3pXiy1i~ouPV;$znO9N$;+qV5!cGJ*77kN;udhY zEvvkT!BXl%^Wks<^|klD&F0Ymu`zb{W|2u7nV)1h7|G99xp~s{`qA~*d*UJ)c20Ac zT(MjE-aCz#j33L`8!mC`IGtLzAmoIgr|ZfI)>ji2n|i5FiA|iuIO*(cOIO4CPxJoT zq;oNHgm>M3H&^mu;wO#+Mm2V-gQu&X%Q~loCIFs;fLH(k literal 0 HcmV?d00001 diff --git a/kubejs/data/beneath/loot_tables/blocks/crackrack.json b/kubejs/data/beneath/loot_tables/blocks/crackrack.json index f61cb825e..716ad1ed9 100644 --- a/kubejs/data/beneath/loot_tables/blocks/crackrack.json +++ b/kubejs/data/beneath/loot_tables/blocks/crackrack.json @@ -19,7 +19,7 @@ }, { "type": "minecraft:item", - "name": "beneath:crackrack_rock", + "name": "tfg:loose/crackrack", "functions": [ { "function": "minecraft:set_count", diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/bricks_moon_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/bricks_moon_deepslate.json new file mode 100644 index 000000000..e07b396c5 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/bricks_moon_deepslate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/bricks_moon_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/chiseled_bricks_moon_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/chiseled_bricks_moon_deepslate.json new file mode 100644 index 000000000..3d05a1e33 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/chiseled_bricks_moon_deepslate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/chiseled_bricks_moon_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/cobble_blackstone.json b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_blackstone.json new file mode 100644 index 000000000..c3ede98e4 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_blackstone.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/cobble_blackstone" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/cobble_crackrack.json b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_crackrack.json new file mode 100644 index 000000000..2dafa861e --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_crackrack.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/cobble_crackrack" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/cobble_dripstone.json b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_dripstone.json new file mode 100644 index 000000000..20dda7fce --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_dripstone.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/cobble_dripstone" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/cobble_moon_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_moon_deepslate.json new file mode 100644 index 000000000..6043da7a8 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_moon_deepslate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/cobble_moon_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/cobble_permafrost.json b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_permafrost.json new file mode 100644 index 000000000..da12291a9 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/cobble_permafrost.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/cobble_permafrost" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/cracked_bricks_moon_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/cracked_bricks_moon_deepslate.json new file mode 100644 index 000000000..892601ebf --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/cracked_bricks_moon_deepslate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/cracked_bricks_moon_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_blackstone.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_blackstone.json new file mode 100644 index 000000000..0d20b2d29 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_blackstone.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_blackstone", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_blackstone" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_crackrack.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_crackrack.json new file mode 100644 index 000000000..eddae43a9 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_crackrack.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_crackrack", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_crackrack" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_deepslate.json new file mode 100644 index 000000000..9e5ef2260 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_deepslate.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_deepslate", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_dripstone.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_dripstone.json new file mode 100644 index 000000000..819a92dfd --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_dripstone.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_dripstone", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_dripstone" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_glacio.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_glacio.json new file mode 100644 index 000000000..8e7508ef2 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_glacio.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_glacio", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_glacio" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_mars.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_mars.json new file mode 100644 index 000000000..0c9a1f370 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_mars.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_mars", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_mars" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_mercury.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_mercury.json new file mode 100644 index 000000000..626a1e252 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_mercury.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_mercury", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_mercury" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon.json new file mode 100644 index 000000000..09d2e998b --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_moon", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_moon" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon_deepslate.json new file mode 100644 index 000000000..7e1bf9b63 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_moon_deepslate.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_moon_deepslate", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_moon_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_permafrost.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_permafrost.json new file mode 100644 index 000000000..5267f98d6 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_permafrost.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_permafrost", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_permafrost" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_red_granite.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_red_granite.json new file mode 100644 index 000000000..c4a8d619a --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_red_granite.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_red_granite", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_red_granite" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/gravel_venus.json b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_venus.json new file mode 100644 index 000000000..a4800b69a --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/gravel_venus.json @@ -0,0 +1,70 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_venus", + "conditions": [ + { + "condition": "minecraft:match_tool", + "predicate": { + "enchantments": [ + { + "enchantment": "minecraft:silk_touch", + "levels": { + "min": 1 + } + } + ] + } + } + ] + }, + { + "type": "minecraft:alternatives", + "children": [ + { + "type": "minecraft:item", + "name": "minecraft:flint", + "conditions": [ + { + "condition": "minecraft:table_bonus", + "enchantment": "minecraft:fortune", + "chances": [ + 0.1, + 0.14285715, + 0.25, + 1.0 + ] + } + ] + }, + { + "type": "minecraft:item", + "name": "tfg:rock/gravel_venus" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/pillar_moon_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/pillar_moon_deepslate.json new file mode 100644 index 000000000..836bf83b3 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/pillar_moon_deepslate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/pillar_moon_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/polished_crackrack.json b/kubejs/data/tfg/loot_tables/blocks/rock/polished_crackrack.json new file mode 100644 index 000000000..f0e37b50f --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/polished_crackrack.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/polished_crackrack" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/data/tfg/loot_tables/blocks/rock/polished_moon_deepslate.json b/kubejs/data/tfg/loot_tables/blocks/rock/polished_moon_deepslate.json new file mode 100644 index 000000000..7489475e3 --- /dev/null +++ b/kubejs/data/tfg/loot_tables/blocks/rock/polished_moon_deepslate.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "loot_pool", + "rolls": 1, + "entries": [ + { + "type": "minecraft:item", + "name": "tfg:rock/polished_moon_deepslate" + } + ], + "conditions": [ + { + "condition": "minecraft:survives_explosion" + } + ] + } + ] +} \ No newline at end of file diff --git a/kubejs/server_scripts/gregtech/loot.js b/kubejs/server_scripts/gregtech/loot.js index 4769360d6..70f787b9c 100644 --- a/kubejs/server_scripts/gregtech/loot.js +++ b/kubejs/server_scripts/gregtech/loot.js @@ -22,8 +22,9 @@ const STONE_TYPES_TO_COBBLE = { andesite: 'tfc:rock/cobble/andesite', granite: 'tfc:rock/cobble/granite', deepslate: 'minecraft:cobbled_deepslate', - pyroxenite: 'minecraft:blackstone', - dripstone: 'minecraft:dripstone_block', + pyroxenite: 'tfg:rock/cobble_blackstone', + dripstone: 'tfg:block/rock/cobble_dripstone', + keratophyre: 'tfg:block/rock/cobble_crackrack', moon_stone: 'ad_astra:moon_cobblestone', moon_deepslate: 'ad_astra:moon_sand', mars_stone: 'ad_astra:mars_cobblestone', @@ -36,103 +37,6 @@ const STONE_TYPES_TO_COBBLE = { const registerGTCEULoots = (event) => { // Have to define these here because normal loot table jsons don't support checking for hammers - event.addBlockLootModifier('minecraft:deepslate') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('minecraft:cobbled_deepslate') - - event.addBlockLootModifier('minecraft:blackstone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('tfc:sand/black') - - event.addBlockLootModifier('minecraft:dripstone_block') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('tfc:sand/brown') - - event.addBlockLootModifier('tfg:rock/hardened_blackstone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('tfc:sand/black') - - event.addBlockLootModifier('tfg:rock/hardened_deepslate') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('minecraft:cobbled_deepslate') - - event.addBlockLootModifier('tfg:rock/hardened_dripstone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('tfc:sand/brown') - - event.addBlockLootModifier('minecraft:gilded_blackstone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addSequenceLoot( - LootEntry.of('tfc:sand/black'), - LootEntry.of('tfc:powder/native_gold') - ) - - event.addBlockLootModifier('beneath:crackrack') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('tfc:sand/pink') - - event.addBlockLootModifier('ad_astra:moon_stone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:moon_cobblestone') - - event.addBlockLootModifier('ad_astra:moon_cobblestone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:moon_sand') - - event.addBlockLootModifier('ad_astra:moon_deepslate') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:moon_sand') - - event.addBlockLootModifier('ad_astra:mars_stone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:mars_cobblestone') - - event.addBlockLootModifier('ad_astra:mars_cobblestone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:mars_sand') - - event.addBlockLootModifier('ad_astra:venus_stone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:venus_cobblestone') - - event.addBlockLootModifier('ad_astra:venus_cobblestone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:venus_sand') - - event.addBlockLootModifier('ad_astra:mercury_stone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:mercury_cobblestone') - - event.addBlockLootModifier('ad_astra:mercury_cobblestone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('tfc:sand/red') - - event.addBlockLootModifier('ad_astra:glacio_stone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('ad_astra:glacio_cobblestone') - - event.addBlockLootModifier('ad_astra:glacio_cobblestone') - .matchMainHand('#forge:tools/hammers') - .removeLoot(ItemFilter.ALWAYS_TRUE) - .addLoot('tfc:sand/white') // Crush raw rock into cobble global.TFC_STONE_TYPES.forEach(stoneType => { @@ -142,6 +46,22 @@ const registerGTCEULoots = (event) => { .addLoot(STONE_TYPES_TO_COBBLE[stoneType]); }) + // Defined in kubejs/startup_scripts/tfg/constants.js + global.HAMMERING.forEach(x => { + event.addBlockLootModifier(x.raw) + .matchMainHand('#forge:tools/hammers') + .removeLoot(ItemFilter.ALWAYS_TRUE) + .addLoot(x.hammered) + }) + + event.addBlockLootModifier('minecraft:gilded_blackstone') + .matchMainHand('#forge:tools/hammers') + .removeLoot(ItemFilter.ALWAYS_TRUE) + .addSequenceLoot( + LootEntry.of('tfg:rock/cobble_blackstone'), + LootEntry.of('tfc:powder/native_gold') + ) + // Go through all materials forEachMaterial(material => { if (material.hasProperty(PropertyKey.ORE)) { diff --git a/kubejs/server_scripts/gregtech/recipes.removes.js b/kubejs/server_scripts/gregtech/recipes.removes.js index b668b69c1..4be69d99c 100644 --- a/kubejs/server_scripts/gregtech/recipes.removes.js +++ b/kubejs/server_scripts/gregtech/recipes.removes.js @@ -666,6 +666,16 @@ function removeGTCEURecipes(event) { event.remove({ id: 'gtceu:forming_press/form_purpur_slab_into_pillar' }) event.remove({ id: 'gtceu:rock_breaker/red_granite' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_red_granite_bricks' }) + event.remove({ id: 'gtceu:laser_extruder/extrude_red_granite_bricks' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_red_granite_tile' }) + event.remove({ id: 'gtceu:laser_engraver/gtceu_red_granite_tile' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_red_granite_small_tile' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_red_granite_windmill_a' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_red_granite_windmill_b' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_small_red_granite_bricks' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_square_red_granite_bricks' }) + event.remove({ id: 'gtceu:laser_engraver/engrave_chiseled_red_granite' }) event.remove({ id: 'gtceu:lathe/stone_rod_from_cobblestone' }) diff --git a/kubejs/server_scripts/tfg/recipes.collapse.js b/kubejs/server_scripts/tfg/recipes.collapse.js index 4d2de6a9c..62e039d47 100644 --- a/kubejs/server_scripts/tfg/recipes.collapse.js +++ b/kubejs/server_scripts/tfg/recipes.collapse.js @@ -9,18 +9,28 @@ function registerTFGCollapseRecipes(event) { // #region Nether event.recipes.tfc.collapse('minecraft:cobbled_deepslate', 'minecraft:deepslate') event.recipes.tfc.collapse('minecraft:cobbled_deepslate', 'tfg:rock/hardened_deepslate') - event.recipes.tfc.collapse('minecraft:blackstone', 'minecraft:blackstone') - event.recipes.tfc.collapse('minecraft:blackstone', 'tfg:rock/hardened_blackstone') - event.recipes.tfc.collapse('minecraft:dripstone_block', 'minecraft:dripstone_block') - event.recipes.tfc.collapse('minecraft:dripstone_block', 'tfg:rock/hardened_dripstone') - + event.recipes.tfc.collapse('tfg:rock/cobble_blackstone', 'minecraft:blackstone') + event.recipes.tfc.collapse('tfg:rock/cobble_blackstone', 'tfg:rock/hardened_blackstone') + event.recipes.tfc.collapse('tfg:rock/cobble_dripstone', 'minecraft:dripstone_block') + event.recipes.tfc.collapse('tfg:rock/cobble_dripstone', 'tfg:rock/hardened_dripstone') + event.recipes.tfc.collapse('tfg:rock/cobble_crackrack', 'beneath:crackrack') event.recipes.tfc.collapse('tfc:rock/cobble/basalt', 'minecraft:basalt') + event.recipes.tfc.collapse('minecraft:cobbled_deepslate', '#forge:ores_in_ground/deepslate') - event.recipes.tfc.collapse('minecraft:blackstone', '#forge:ores_in_ground/pyroxenite') - event.recipes.tfc.collapse('minecraft:dripstone_block', '#forge:ores_in_ground/dripstone') + event.recipes.tfc.collapse('tfg:rock/cobble_blackstone', '#forge:ores_in_ground/pyroxenite') + event.recipes.tfc.collapse('tfg:rock/cobble_dripstone', '#forge:ores_in_ground/dripstone') event.recipes.tfc.landslide('tfg:ash_pile', 'tfg:ash_pile') event.recipes.tfc.landslide('minecraft:cobbled_deepslate', 'minecraft:cobbled_deepslate') + event.recipes.tfc.landslide('tfg:rock/cobble_blackstone', 'tfg:rock/cobble_blackstone') + event.recipes.tfc.landslide('tfg:rock/cobble_dripstone', 'tfg:rock/cobble_dripstone') + event.recipes.tfc.landslide('tfg:rock/cobble_crackrack', 'tfg:rock/cobble_crackrack') + + event.recipes.tfc.landslide('tfg:rock/gravel_deepslate', 'tfg:rock/gravel_deepslate') + event.recipes.tfc.landslide('tfg:rock/gravel_blackstone', 'tfg:rock/gravel_blackstone') + event.recipes.tfc.landslide('tfg:rock/gravel_dripstone', 'tfg:rock/gravel_dripstone') + event.recipes.tfc.landslide('tfg:rock/gravel_crackrack', 'tfg:rock/gravel_crackrack') + // #endregion Nether // #region Space @@ -28,44 +38,59 @@ function registerTFGCollapseRecipes(event) { event.recipes.tfc.collapse('ad_astra:moon_cobblestone', 'tfg:rock/hardened_moon_stone') event.recipes.tfc.landslide('ad_astra:moon_cobblestone', 'ad_astra:moon_cobblestone') event.recipes.tfc.collapse('ad_astra:moon_cobblestone', '#forge:ores_in_ground/moon_stone') - event.recipes.tfc.landslide('ad_astra:moon_sand', 'ad_astra:moon_sand') + event.recipes.tfc.landslide('tfg:rock/gravel_moon', 'tfg:rock/gravel_moon') event.recipes.tfc.collapse('ad_astra:moon_deepslate', 'ad_astra:moon_deepslate') event.recipes.tfc.collapse('ad_astra:moon_deepslate', 'tfg:rock/hardened_moon_deepslate') event.recipes.tfc.collapse('ad_astra:moon_deepslate', '#forge:ores_in_ground/moon_deepslate') + event.recipes.tfc.landslide('tfg:rock/cobble_moon_deepslate', 'tfg:rock/cobble_moon_deepslate') + event.recipes.tfc.landslide('tfg:rock/gravel_moon_deepslate', 'tfg:rock/gravel_moon_deepslate') + + event.recipes.tfc.landslide('ad_astra:moon_sand', 'ad_astra:moon_sand') + + event.recipes.tfc.collapse('ad_astra:glacio_cobblestone', 'ad_astra:glacio_stone') + event.recipes.tfc.collapse('ad_astra:glacio_cobblestone', 'tfg:rock/hardened_glacio_stone') + event.recipes.tfc.landslide('ad_astra:glacio_cobblestone', 'ad_astra:glacio_cobblestone') + event.recipes.tfc.collapse('ad_astra:glacio_cobblestone', '#forge:ores_in_ground/glacio_stone') + event.recipes.tfc.landslide('tfg:rock/gravel_glacio', 'tfg:rock/gravel_glacio') event.recipes.tfc.collapse('ad_astra:mars_cobblestone', 'ad_astra:mars_stone') event.recipes.tfc.collapse('ad_astra:mars_cobblestone', 'tfg:rock/hardened_mars_stone') event.recipes.tfc.landslide('ad_astra:mars_cobblestone', 'ad_astra:mars_cobblestone') event.recipes.tfc.collapse('ad_astra:mars_cobblestone', '#forge:ores_in_ground/mars_stone') + event.recipes.tfc.landslide('tfg:rock/gravel_mars', 'tfg:rock/gravel_mars') event.recipes.tfc.landslide('ad_astra:mars_sand', 'ad_astra:mars_sand') event.recipes.tfc.collapse('ad_astra:venus_cobblestone', 'ad_astra:venus_stone') event.recipes.tfc.collapse('ad_astra:venus_cobblestone', 'tfg:rock/hardened_venus_stone') event.recipes.tfc.landslide('ad_astra:venus_cobblestone', 'ad_astra:venus_cobblestone') event.recipes.tfc.collapse('ad_astra:venus_cobblestone', '#forge:ores_in_ground/venus_stone') + event.recipes.tfc.landslide('tfg:rock/gravel_venus', 'tfg:rock/gravel_venus') event.recipes.tfc.landslide('ad_astra:venus_sand', 'ad_astra:venus_sand') event.recipes.tfc.collapse('ad_astra:mercury_cobblestone', 'ad_astra:mercury_stone') event.recipes.tfc.collapse('ad_astra:mercury_cobblestone', 'tfg:rock/hardened_mercury_stone') event.recipes.tfc.landslide('ad_astra:mercury_cobblestone', 'ad_astra:mercury_cobblestone') event.recipes.tfc.collapse('ad_astra:mercury_cobblestone', '#forge:ores_in_ground/mercury_stone') + event.recipes.tfc.landslide('tfg:rock/gravel_mercury', 'tfg:rock/gravel_mercury') - event.recipes.tfc.collapse('ad_astra:glacio_cobblestone', 'ad_astra:glacio_stone') - event.recipes.tfc.collapse('ad_astra:glacio_cobblestone', 'tfg:rock/hardened_glacio_stone') - event.recipes.tfc.landslide('ad_astra:glacio_cobblestone', 'ad_astra:glacio_cobblestone') - event.recipes.tfc.collapse('ad_astra:glacio_cobblestone', '#forge:ores_in_ground/glacio_stone') + event.recipes.tfc.collapse('tfg:rock/cobble_permafrost', 'ad_astra:permafrost') + event.recipes.tfc.landslide('tfg:rock/cobble_permafrost', 'tfg:rock/cobble_permafrost') + event.recipes.tfc.collapse('tfg:rock/cobble_permafrost', '#forge:ores_in_ground/permafrost') + event.recipes.tfc.landslide('tfg:rock/gravel_permafrost', 'tfg:rock/gravel_permafrost') event.recipes.tfc.landslide('minecraft:red_sand', 'minecraft:red_sand') event.recipes.tfc.landslide('gtceu:red_granite_cobblestone', 'gtceu:red_granite_cobblestone') event.recipes.tfc.collapse('gtceu:red_granite_cobblestone', 'gtceu:red_granite') event.recipes.tfc.collapse('gtceu:red_granite_cobblestone', 'tfg:rock/hardened_red_granite') event.recipes.tfc.collapse('gtceu:red_granite_cobblestone', '#forge:ores_in_ground/red_granite') + event.recipes.tfc.landslide('tfg:rock/gravel_red_granite', 'tfg:rock/gravel_red_granite') event.recipes.tfc.landslide('tfg:grass/mars_dirt', 'tfg:grass/mars_dirt') event.recipes.tfc.landslide('tfg:grass/mars_dirt', 'tfg:grass/amber_mycelium') event.recipes.tfc.landslide('tfg:grass/mars_dirt', 'tfg:grass/rusticus_mycelium') event.recipes.tfc.landslide('tfg:grass/mars_dirt', 'tfg:grass/sangnum_mycelium') + event.recipes.tfc.landslide('tfg:grass/mars_clay_dirt', 'tfg:grass/mars_clay_dirt') event.recipes.tfc.landslide('tfg:grass/mars_clay_dirt', 'tfg:grass/amber_clay_mycelium') event.recipes.tfc.landslide('tfg:grass/mars_clay_dirt', 'tfg:grass/rusticus_clay_mycelium') diff --git a/kubejs/server_scripts/tfg/recipes.rocks.js b/kubejs/server_scripts/tfg/recipes.rocks.js index b850e8dad..4b81426f5 100644 --- a/kubejs/server_scripts/tfg/recipes.rocks.js +++ b/kubejs/server_scripts/tfg/recipes.rocks.js @@ -14,18 +14,24 @@ function registerTFGRockRecipes(event) { { loose: 'tfg:loose/deepslate', block: 'minecraft:cobbled_deepslate' }, { loose: 'beneath:blackstone_pebble', block: 'minecraft:blackstone' }, { loose: 'tfg:brick/deepslate', block: '4x minecraft:deepslate_bricks' }, - { loose: 'tfg:loose/dripstone', block: 'minecraft:dripstone_block' }, + { loose: 'tfg:loose/dripstone', block: 'tfg:rock/cobble_dripstone' }, + { loose: 'tfg:loose/crackrack', block: 'tfg:rock/cobble_crackrack' }, { loose: 'tfg:loose/moon_stone', block: 'ad_astra:moon_cobblestone' }, { loose: 'tfg:brick/moon_stone', block: '4x ad_astra:moon_stone_bricks' }, + { loose: 'tfg:loose/moon_deepslate', block: 'tfg:rock/cobble_moon_deepslate' }, + { loose: 'tfg:brick/moon_deepslate', block: '4x tfg:rock/bricks_moon_deepslate' }, { loose: 'tfg:loose/moon_deepslate', block: 'ad_astra:moon_deepslate' }, { loose: 'tfg:loose/mars_stone', block: 'ad_astra:mars_cobblestone' }, { loose: 'tfg:brick/mars_stone', block: '4x ad_astra:mars_stone_bricks' }, { loose: 'tfg:loose/venus_stone', block: 'ad_astra:venus_cobblestone' }, { loose: 'tfg:brick/venus_stone', block: '4x ad_astra:venus_stone_bricks' }, + { loose: 'tfg:loose/red_granite', block: 'gtceu:red_granite_cobblestone' }, + { loose: 'tfg:brick/red_granite', block: '4x gtceu:red_granite_bricks' }, { loose: 'tfg:loose/mercury_stone', block: 'ad_astra:mercury_cobblestone' }, { loose: 'tfg:brick/mercury_stone', block: '4x ad_astra:mercury_stone_bricks' }, { loose: 'tfg:loose/glacio_stone', block: 'ad_astra:glacio_cobblestone' }, { loose: 'tfg:brick/glacio_stone', block: '4x ad_astra:glacio_stone_bricks' }, + { loose: 'tfg:loose/permafrost', block: 'tfg:rock/cobble_permafrost' }, { loose: 'tfg:brick/permafrost', block: '4x ad_astra:permafrost_bricks' }, { loose: 'minecraft:popped_chorus_fruit', block: '4x minecraft:purpur_block' } ] @@ -49,11 +55,49 @@ function registerTFGRockRecipes(event) { .EUt(2) }) + // Cobble to loose + + const COBBLE_TO_LOOSE = [ + { cobble: 'minecraft:blackstone', loose: 'beneath:blackstone_pebble' }, + { cobble: 'tfg:rock/cobble_dripstone', loose: 'tfg:loose/dripstone' }, + { cobble: 'tfg:rock/cobble_crackrack', loose: 'tfg:loose/crackrack' }, + { cobble: 'tfg:rock/cobble_moon_deepslate', loose: 'tfg:loose/moon_deepslate' }, + { cobble: 'gtceu:red_granite_cobblestone', loose: 'tfg:brick/red_granite' }, + { cobble: 'tfg:rock/cobble_permafrost', loose: 'tfg:loose/permafrost' }, + ] + + COBBLE_TO_LOOSE.forEach(x => { + event.shapeless(`4x ${x.loose}`, [x.cobble]) + }) + + // loose to gravel + + const LOOSE_TO_GRAVEL = [ + { loose: 'tfg:loose/deepslate', gravel: 'tfg:rock/gravel_deepslate' }, + { loose: 'beneath:blackstone_pebble', gravel: 'tfg:rock/gravel_blackstone' }, + { loose: 'tfg:loose/dripstone', gravel: 'tfg:rock/gravel_dripstone' }, + { loose: 'tfg:loose/crackrack', gravel: 'tfg:rock/gravel_crackrack' }, + { loose: 'tfg:loose/moon_stone', gravel: 'tfg:rock/gravel_moon' }, + { loose: 'tfg:loose/moon_deepslate', gravel: 'tfg:rock/gravel_moon_deepslate' }, + { loose: 'tfg:loose/glacio_stone', gravel: 'tfg:rock/gravel_glacio' }, + { loose: 'tfg:loose/mars_stone', gravel: 'tfg:rock/gravel_mars' }, + { loose: 'tfg:loose/venus_stone', gravel: 'tfg:rock/gravel_venus' }, + { loose: 'tfg:loose/mercury_stone', gravel: 'tfg:rock/gravel_mercury' }, + { loose: 'tfg:loose/permafrost', gravel: 'tfg:rock/gravel_permafrost' } + ] + + LOOSE_TO_GRAVEL.forEach(x => { + event.shapeless(x.gravel, [`4x ${x.loose}`]) + event.shapeless(`16x ${x.loose}`, [`4x ${x.gravel}`]) + }) + // loose to bricks const LOOSE_TO_BRICKS = [ { loose: 'tfg:loose/deepslate', brick: 'tfg:brick/deepslate' }, + { loose: 'tfg:loose/crackrack', brick: 'minecraft:nether_brick' }, { loose: 'tfg:loose/moon_stone', brick: 'tfg:brick/moon_stone' }, + { loose: 'tfg:loose/moon_deepslate', brick: 'tfg:brick/moon_deepslate' }, { loose: 'tfg:loose/mars_stone', brick: 'tfg:brick/mars_stone' }, { loose: 'tfg:loose/venus_stone', brick: 'tfg:brick/venus_stone' }, { loose: 'tfg:loose/mercury_stone', brick: 'tfg:brick/mercury_stone' }, @@ -76,35 +120,90 @@ function registerTFGRockRecipes(event) { // raw to polished const RAW_TO_POLISHED = [ + // Beneath { raw: 'minecraft:deepslate', polished: 'minecraft:polished_deepslate' }, - { raw: 'minecraft:blackstone', polished: 'minecraft:polished_blackstone' }, + { raw: 'tfg:rock/hardened_deepslate', polished: 'minecraft:polished_deepslate' }, { raw: 'minecraft:deepslate_bricks', polished: 'minecraft:deepslate_tiles' }, { raw: 'minecraft:deepslate_tiles', polished: 'minecraft:chiseled_deepslate' }, + { raw: 'minecraft:chiseled_deepslate', polished: 'minecraft:deepslate_bricks' }, + + { raw: 'minecraft:blackstone', polished: 'minecraft:polished_blackstone' }, + { raw: 'tfg:rock/hardened_blackstone', polished: 'minecraft:polished_blackstone' }, { raw: 'minecraft:polished_blackstone_bricks', polished: 'minecraft:chiseled_polished_blackstone' }, + { raw: 'minecraft:chiseled_polished_blackstone', polished: 'minecraft:polished_blackstone_bricks' }, + + { raw: 'minecraft:dripstone_block', polished: 'create:polished_cut_dripstone' }, + { raw: 'tfg:rock/hardened_dripstone', polished: 'create:polished_cut_dripstone' }, + { raw: 'create:cut_dripstone_bricks', polished: 'create:small_dripstone_bricks' }, + { raw: 'create:small_dripstone_bricks', polished: 'create:cut_dripstone_bricks' }, + + { raw: 'beneath:crackrack', polished: 'tfg:rock/polished_crackrack' }, + { raw: 'minecraft:basalt', polished: 'minecraft:smooth_basalt' }, { raw: 'minecraft:smooth_basalt', polished: 'minecraft:polished_basalt' }, + + // Moon { raw: 'ad_astra:moon_stone', polished: 'ad_astra:polished_moon_stone' }, + { raw: 'tfg:rock/hardened_moon_stone', polished: 'ad_astra:polished_moon_stone' }, { raw: 'ad_astra:moon_stone_bricks', polished: 'ad_astra:chiseled_moon_stone_bricks' }, + { raw: 'ad_astra:chiseled_moon_stone_bricks', polished: 'ad_astra:moon_stone_bricks' }, + + { raw: 'ad_astra:moon_deepslate', polished: 'tfg:rock/polished_moon_deepslate' }, + { raw: 'tfg:rock/hardened_moon_deepslate', polished: 'tfg:rock/polished_moon_deepslate' }, + { raw: 'tfg:rock/bricks_moon_deepslate', polished: 'tfg:rock/chiseled_bricks_moon_deepslate' }, + { raw: 'tfg:rock/chiseled_bricks_moon_deepslate', polished: 'tfg:rock/bricks_moon_deepslate' }, + + { raw: 'ad_astra:glacio_stone', polished: 'ad_astra:polished_glacio_stone' }, + { raw: 'tfg:rock/hardened_glacio_stone', polished: 'ad_astra:polished_glacio_stone' }, + { raw: 'ad_astra:glacio_stone_bricks', polished: 'ad_astra:chiseled_glacio_stone_bricks' }, + { raw: 'ad_astra:chiseled_glacio_stone_bricks', polished: 'ad_astra:glacio_stone_bricks' }, + + // Mars { raw: 'ad_astra:mars_stone', polished: 'ad_astra:polished_mars_stone' }, + { raw: 'tfg:rock/hardened_mars_stone', polished: 'ad_astra:polished_mars_stone' }, { raw: 'ad_astra:mars_stone_bricks', polished: 'ad_astra:chiseled_mars_stone_bricks' }, + { raw: 'ad_astra:chiseled_mars_stone_bricks', polished: 'ad_astra:mars_stone_bricks' }, + { raw: 'ad_astra:venus_stone', polished: 'ad_astra:polished_venus_stone' }, + { raw: 'tfg:rock/hardened_venus_stone', polished: 'ad_astra:polished_venus_stone' }, { raw: 'ad_astra:venus_stone_bricks', polished: 'ad_astra:chiseled_venus_stone_bricks' }, { raw: 'ad_astra:venus_sandstone', polished: 'ad_astra:venus_sandstone_bricks' }, + { raw: 'ad_astra:venus_sandstone_bricks', polished: 'ad_astra:venus_sandstone' }, + + { raw: 'gtceu:red_granite', polished: 'gtceu:polished_red_granite' }, + { raw: 'tfg:rock/hardened_red_granite', polished: 'gtceu:polished_red_granite' }, + { raw: 'gtceu:red_granite_bricks', polished: 'gtceu:red_granite_tile' }, + { raw: 'gtceu:red_granite_tile', polished: 'gtceu:square_red_granite_bricks' }, + { raw: 'gtceu:square_red_granite_bricks', polished: 'gtceu:red_granite_windmill_a' }, + { raw: 'gtceu:red_granite_windmill_a', polished: 'gtceu:red_granite_windmill_b' }, + { raw: 'gtceu:red_granite_windmill_b', polished: 'gtceu:small_red_granite_bricks' }, + { raw: 'gtceu:small_red_granite_bricks', polished: 'gtceu:red_granite_small_tile' }, + { raw: 'gtceu:red_granite_small_tile', polished: 'gtceu:chiseled_red_granite' }, + { raw: 'gtceu:chiseled_red_granite', polished: 'gtceu:red_granite_bricks' }, + + // Mercury { raw: 'ad_astra:mercury_stone', polished: 'ad_astra:polished_mercury_stone' }, + { raw: 'tfg:rock/hardened_mercury_stone', polished: 'ad_astra:polished_mercury_stone' }, { raw: 'ad_astra:mercury_stone_bricks', polished: 'ad_astra:chiseled_mercury_stone_bricks' }, - { raw: 'ad_astra:glacio_stone', polished: 'ad_astra:polished_glacio_stone' }, - { raw: 'ad_astra:glacio_stone_bricks', polished: 'ad_astra:chiseled_glacio_stone_bricks' }, - { raw: 'ad_astra:conglomerate', polished: 'ad_astra:polished_conglomerate' }, + { raw: 'ad_astra:chiseled_mercury_stone_bricks', polished: 'ad_astra:mercury_stone_bricks' }, + + // Europa { raw: 'ad_astra:permafrost', polished: 'ad_astra:polished_permafrost' }, { raw: 'ad_astra:permafrost_bricks', polished: 'ad_astra:chiseled_permafrost_bricks' }, { raw: 'ad_astra:chiseled_permafrost_bricks', polished: 'ad_astra:permafrost_tiles' }, + { raw: 'ad_astra:permafrost_tiles', polished: 'ad_astra:chiseled_permafrost_bricks' }, + + // Misc { raw: 'ae2:sky_stone_block', polished: 'ae2:smooth_sky_stone_block' }, { raw: 'ae2:smooth_sky_stone_block', polished: 'ae2:sky_stone_brick' }, { raw: 'ae2:sky_stone_brick', polished: 'ae2:sky_stone_small_brick' }, - { raw: 'gtceu:certus_quartz_block', polished: 'ae2:cut_quartz_block' }, + { raw: 'ae2:sky_stone_small_brick', polished: 'ae2:smooth_sky_stone_block' }, + { raw: 'gtceu:certus_quartz_block', polished: 'ae2:cut_quartz_block' } ] RAW_TO_POLISHED.forEach(x => { + event.recipes.tfc.chisel(`${x.polished}`, `${x.raw}`, 'smooth') + event.recipes.tfc.damage_inputs_shapeless_crafting(event.recipes.minecraft.crafting_shapeless( x.polished, [x.raw, '#tfc:chisels'] )) @@ -125,6 +224,49 @@ function registerTFGRockRecipes(event) { //}).id(`tfg:vi/laser/tfg/${x.raw.replace(/:/g, '_')}_to_${x.polished.replace(/:/g, '_')}`) }) + // Stone Cutter Sets + const red_granite_cutter_set = Ingredient.of('#tfg:red_granite_cutter_set').itemIds.toArray().map(String); + red_granite_cutter_set.forEach(block => { + event.stonecutting(block, + Ingredient.of('#tfg:red_granite_cutter_set').subtract(block) + ).id(`tfg:stonecutter/${block.replace(/:/g, "/")}`) + + }) + + const moon_deepslate_cutter_set = Ingredient.of('#tfg:moon_deepslate_cutter_set').itemIds.toArray().map(String); + moon_deepslate_cutter_set.forEach(block => { + event.stonecutting(block, + Ingredient.of('#tfg:moon_deepslate_cutter_set').subtract(block) + ).id(`tfg:stonecutter/${block.replace(/:/g, "/")}`) + + }) + + // pillar shaped recipes + event.shaped( + Item.of('create:deepslate_pillar', 2), [ ' A ', ' A ' ], { A: 'minecraft:polished_deepslate' } + ) + event.shaped( + Item.of('create:layered_deepslate', 2), [ 'AA ' ], { A: 'minecraft:polished_deepslate' } + ) + + event.shaped( + Item.of('create:dripstone_pillar', 2), [ ' A ', ' A ' ], { A: 'create:polished_cut_dripstone' } + ) + event.shaped( + Item.of('create:layered_dripstone', 2), [ 'AA ' ], { A: 'create:polished_cut_dripstone' } + ) + + event.shaped( + Item.of('create:dripstone_pillar', 2), [ ' A ', ' A ' ], { A: 'create:polished_cut_dripstone' } + ) + event.shaped( + Item.of('create:layered_dripstone', 2), [ 'AA ' ], { A: 'create:polished_cut_dripstone' } + ) + + event.shaped( + Item.of('tfg:rock/pillar_moon_deepslate', 2), [ ' A ', ' A ' ], { A: 'tfg:rock/bricks_moon_deepslate' } + ) + // cracked bricks const CRACKING = [ @@ -134,9 +276,12 @@ function registerTFGRockRecipes(event) { { raw: 'ad_astra:mars_stone_bricks', cracked: 'ad_astra:cracked_mars_stone_bricks' }, { raw: 'ad_astra:venus_stone_bricks', cracked: 'ad_astra:cracked_venus_stone_bricks' }, { raw: 'ad_astra:venus_sandstone_bricks', cracked: 'ad_astra:cracked_venus_sandstone_bricks' }, + { raw: 'gtceu:red_granite_bricks', cracked: 'gtceu:cracked_red_granite_bricks' }, { raw: 'ad_astra:mercury_stone_bricks', cracked: 'ad_astra:cracked_mercury_stone_bricks' }, { raw: 'ad_astra:glacio_stone_bricks', cracked: 'ad_astra:cracked_glacio_stone_bricks' }, - { raw: 'ad_astra:permafrost_bricks', cracked: 'ad_astra:cracked_permafrost_bricks' } + { raw: 'ad_astra:permafrost_bricks', cracked: 'ad_astra:cracked_permafrost_bricks' }, + { raw: 'tfg:rock/bricks_moon_deepslate', cracked: 'tfg:rock/cracked_bricks_moon_deepslate' } + ] CRACKING.forEach(x => { @@ -155,8 +300,7 @@ function registerTFGRockRecipes(event) { .id(`greate:pressing/${x.raw}_to_${x.cracked}`.replace(/:/g, '_')) }) - // forge hammer - + // forge hammer / mechanical press const HAMMERING = [ { raw: 'minecraft:deepslate', hammered: 'minecraft:cobbled_deepslate', duration: 10, eu: 16 }, { raw: 'minecraft:cobbled_deepslate', hammered: 'tfc:sand/black', duration: 20*3.5, eu: 2 }, @@ -185,7 +329,8 @@ function registerTFGRockRecipes(event) { { raw: 'ad_astra:permafrost', hammered: '4x gtceu:ice_dust', duration: 20, eu: 2 } ] - HAMMERING.forEach(x => { + // Defined in kubejs/startup_scripts/tfg/constants.js + global.HAMMERING.forEach(x => { event.recipes.gtceu.forge_hammer(`${x.raw}_to_${x.hammered}`.replace(/[: ]/g, '_')) .itemInputs(x.raw) .itemOutputs(x.hammered) @@ -641,7 +786,11 @@ function registerTFGRockRecipes(event) { 'minecraft:deepslate', 'minecraft:cobbled_deepslate', 'minecraft:blackstone', + 'tfg:rock/cobble_blackstone', 'minecraft:dripstone_block', + 'tfg:rock/cobble_dripstone', + 'beneath:crackrack', + 'tfg:rock/cobble_crackrack', 'minecraft:basalt' ] @@ -673,6 +822,13 @@ function registerTFGRockRecipes(event) { .duration(16) .EUt(7) .dimension('ad_astra:moon') + + event.recipes.gtceu.rock_breaker('tfg:moon_deepslate_cobblestone') + .notConsumable('tfg:rock/cobble_moon_deepslate') + .itemOutputs('tfg:rock/cobble_moon_deepslate') + .duration(16) + .EUt(7) + .dimension('ad_astra:moon') event.recipes.gtceu.rock_breaker('tfg:glacio_stone') .notConsumable('ad_astra:glacio_stone') @@ -743,6 +899,21 @@ function registerTFGRockRecipes(event) { .duration(16) .EUt(7) .dimension('ad_astra:mercury') + + event.recipes.gtceu.compressor('tfg:permafrost') + .itemInputs('4x tfg:loose/permafrost') + .itemOutputs('ad_astra:permafrost') + .duration(40*20) + .EUt(2) + .dimension('ad_astra:glacio') + + event.recipes.gtceu.rock_breaker('tfg:permafrost_cobblestone') + .notConsumable('tfg:rock/cobble_permafrost') + .itemOutputs('tfg:rock/cobble_permafrost') + .duration(16) + .EUt(7) + .dimension('ad_astra:glacio') + // #endregion // #region sandstone @@ -752,12 +923,7 @@ function registerTFGRockRecipes(event) { .itemOutputs('ad_astra:venus_sandstone') .duration(40*20) .EUt(2) - - event.recipes.gtceu.compressor('tfg:permafrost') - .itemInputs('4x tfg:loose/permafrost') - .itemOutputs('ad_astra:permafrost') - .duration(40*20) - .EUt(2) + .dimension('ad_astra:mars') // #endregion diff --git a/kubejs/server_scripts/tfg/tags.js b/kubejs/server_scripts/tfg/tags.js index 9fd5f17a4..10c75cd65 100644 --- a/kubejs/server_scripts/tfg/tags.js +++ b/kubejs/server_scripts/tfg/tags.js @@ -319,7 +319,372 @@ const registerTFGItemTags = (event) => { event.add('tfg:cannot_launch_in_railgun', 'create_factory_logistics:copper_jar_package_8x8') //#endregion + // #region Nether blocks + + // Deepslate (Migmatite) + const create_deepslate_blocks = Ingredient.of('#create:stone_types/deepslate').itemIds.toArray().map(String); + create_deepslate_blocks.forEach(block => { + event.add('tfc:metamorphic_items', block) + }) + + event.add('tfc:metamorphic_items', 'minecraft:deepslate') + + event.add('tfc:metamorphic_items', 'minecraft:cobbled_deepslate') + + event.add('forge:smooth_stone', 'minecraft:polished_deepslate') + event.add('tfc:metamorphic_items', 'minecraft:polished_deepslate') + event.add('tfc:rock/smooth', 'minecraft:polished_deepslate') + event.add('create:stone_types/deepslate', 'minecraft:polished_deepslate') + + event.add('forge:stone_bricks', 'minecraft:deepslate_bricks') + event.add('tfc:metamorphic_items', 'minecraft:deepslate_bricks') + event.add('tfc:rock/bricks', 'minecraft:deepslate_bricks') + + event.add('forge:stone_bricks', 'minecraft:deepslate_tiles') + event.add('tfc:metamorphic_items', 'minecraft:deepslate_tiles') + event.add('tfc:rock/bricks', 'minecraft:deepslate_tiles') + event.add('tfc:rock/chiseled_bricks', 'minecraft:deepslate_tiles') + + event.add('forge:stone_bricks', 'minecraft:chiseled_deepslate') + event.add('tfc:metamorphic_items', 'minecraft:chiseled_deepslate') + event.add('tfc:rock/bricks', 'minecraft:chiseled_deepslate') + event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_deepslate') + + // Blackstone (Pyroxenite) + event.remove('tfc:metamorphic_rock', 'beneath:blackstone_pebble') + event.add('tfc:igneous_intrusive_rock', 'beneath:blackstone_pebble') + event.add('rnr:loose_rock_items', 'beneath:blackstone_pebble') + + event.add('tfc:igneous_intrusive_items', 'beneath:blackstone_brick') + + event.add('forge:stone', 'minecraft:blackstone') + event.add('tfc:igneous_intrusive_items', 'minecraft:blackstone') + + event.add('tfc:igneous_intrusive_items', 'minecraft:gilded_blackstone') + + event.add('forge:smooth_stone', 'minecraft:polished_blackstone') + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone') + event.add('tfc:rock/smooth', 'minecraft:polished_blackstone') + + event.add('forge:stone_bricks', 'minecraft:polished_blackstone_bricks') + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_bricks') + event.add('tfc:rock/bricks', 'minecraft:polished_blackstone_bricks') + + event.add('forge:stone_bricks', 'minecraft:cracked_blackstone_bricks') + event.add('tfc:igneous_intrusive_items', 'minecraft:cracked_blackstone_bricks') + event.add('tfc:rock/bricks', 'minecraft:cracked_blackstone_bricks') + event.add('tfc:rock/cracked_bricks', 'minecraft:cracked_blackstone_bricks') + + event.add('forge:stone_bricks', 'minecraft:polished_blackstone_bricks') + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_bricks') + event.add('tfc:rock/bricks', 'minecraft:polished_blackstone_bricks') + + event.add('forge:stone_bricks', 'minecraft:polished_blackstone_bricks') + event.add('tfc:igneous_intrusive_items', 'minecraft:chiseled_polished_blackstone_bricks') + event.add('tfc:rock/bricks', 'minecraft:chiseled_polished_blackstone_bricks') + event.add('tfc:rock/chiseled_bricks', 'minecraft:chiseled_polished_blackstone_bricks') + + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_stairs') + event.add('tfg:rock_stairs', 'minecraft:polished_blackstone_stairs') + + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_brick_slab') + event.add('tfg:rock_slabs', 'minecraft:polished_blackstone_slab') + + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_wall') + event.add('tfg:rock_walls', 'minecraft:polished_blackstone_wall') + + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_brick_stairs') + event.add('tfg:brick_stairs', 'minecraft:polished_blackstone_brick_stairs') + + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_brick_slab') + event.add('tfg:brick_slabs', 'minecraft:polished_blackstone_brick_slab') + + event.add('tfc:igneous_intrusive_items', 'minecraft:polished_blackstone_brick_wall') + event.add('tfg:brick_walls', 'minecraft:polished_blackstone_brick_wall') + + event.add('tfc:igneous_intrusive_items', 'beneath:blackstone_aqueduct') + + // Dripstone (Travertine) + const create_dripstone_blocks = Ingredient.of('#create:stone_types/dripstone').itemIds.toArray().map(String); + create_dripstone_blocks.forEach(block => { + event.add('tfc:sedimentary_items', block) + }) + + event.add('forge:stone', 'minecraft:dripstone_block') + event.add('tfc:sedimentary_items', 'minecraft:dripstone_block') + + event.add('forge:smooth_stone', 'create:cut_dripstone') + event.add('tfc:sedimentary_items', 'create:cut_dripstone') + event.add('tfc:rock/smooth', 'create:cut_dripstone') + + event.add('forge:stone_bricks', 'create:cut_dripstone_bricks') + event.add('tfc:igneous_intrusive_items', 'create:cut_dripstone_bricks') + event.add('tfc:rock/bricks', 'create:cut_dripstone_bricks') + + event.add('forge:stone_bricks', 'create:small_dripstone_bricks') + event.add('tfc:igneous_intrusive_items', 'create:small_dripstone_bricks') + event.add('tfc:rock/bricks', 'create:small_dripstone_bricks') + event.add('tfc:rock/chiseled_bricks', 'create:small_dripstone_bricks') + + event.add('forge:smooth_stone', 'ad_astra:polished_mars_stone') + event.add('tfc:rock/smooth', 'create:polished_cut_dripstone') + + // Crackrack (Keratophyre) + event.add('forge:stone', 'beneath:crackrack') + event.add('tfc:igneous_intrusive_items', 'beneath:crackrack') + event.add('tfc:igneous_intrusive_items', 'minecraft:nether_brick') + + event.add('forge:stone_bricks', 'minecraft:nether_bricks') + event.add('tfc:igneous_intrusive_items', 'minecraft:nether_bricks') + event.add('tfc:rock/bricks', 'minecraft:nether_bricks') + + // Basalt + event.add('forge:stone', 'minecraft:basalt') + event.add('tfc:igneous_extrusive_items', 'minecraft:basalt') + + event.add('forge:smooth_stone', 'minecraft:smooth_basalt') + event.add('tfc:igneous_extrusive_items', 'minecraft:smooth_basalt') + event.add('tfc:rock/smooth', 'minecraft:smooth_basalt') + + event.add('forge:smooth_stone', 'minecraft:polished_basalt') + event.add('tfc:igneous_extrusive_items', 'minecraft:polished_basalt') + event.add('tfc:rock/smooth', 'minecraft:polished_basalt') + // #endregion + // #region Space blocks + // Moon Stone (Anorthosite) + event.add('forge:stone', 'ad_astra:moon_stone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:moon_stone') + + event.add('forge:cobblestone', 'ad_astra:moon_stone') + event.add('forge:cobblestone/normal', 'ad_astra:moon_stone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:moon_cobblestone') + + event.add('forge:smooth_stone', 'ad_astra:polished_moon_stone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:polished_moon_stone') + event.add('tfc:rock/smooth', 'ad_astra:polished_moon_stone') + + event.add('forge:stone_bricks', 'ad_astra:moon_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:moon_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:moon_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:cracked_moon_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:cracked_moon_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:cracked_moon_stone_bricks') + event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_moon_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:chiseled_moon_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:chiseled_moon_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:chiseled_moon_stone_bricks') + event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_moon_stone_bricks') + + event.add('tfc:igneous_intrusive_items', 'ad_astra:moon_pillar') + + + // Moon Deepslate (Norite) + event.add('forge:stone', 'ad_astra:moon_deepslate') + event.add('tfc:igneous_intrusive_items', 'ad_astra:moon_deepslate') + + // Glacio Stone (Phonolite) + event.add('forge:stone', 'ad_astra:glacio_stone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:glacio_stone') + + event.add('forge:cobblestone', 'ad_astra:glacio_cobblestone') + event.add('forge:cobblestone/normal', 'ad_astra:glacio_cobblestone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:glacio_cobblestone') + + event.add('forge:smooth_stone', 'ad_astra:polished_glacio_stone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:polished_glacio_stone') + event.add('tfc:rock/smooth', 'ad_astra:polished_glacio_stone') + + event.add('forge:stone_bricks', 'ad_astra:glacio_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:glacio_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:glacio_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:cracked_glacio_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:cracked_glacio_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:cracked_glacio_stone_bricks') + event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_glacio_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:chiseled_glacio_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:chiseled_glacio_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:chiseled_glacio_stone_bricks') + event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_glacio_stone_bricks') + + // Mars Stone (Argillite) + event.add('forge:stone', 'ad_astra:mars_stone') + event.add('tfc:sedimentary_items', 'ad_astra:mars_stone') + + event.add('forge:cobblestone', 'ad_astra:mars_cobblestone') + event.add('forge:cobblestone/normal', 'ad_astra:mars_cobblestone') + event.add('tfc:sedimentary_items', 'ad_astra:mars_cobblestone') + + event.add('forge:smooth_stone', 'ad_astra:polished_mars_stone') + event.add('tfc:sedimentary_items', 'ad_astra:polished_mars_stone') + event.add('tfc:rock/smooth', 'ad_astra:polished_mars_stone') + + event.add('forge:stone_bricks', 'ad_astra:mars_stone_bricks') + event.add('tfc:sedimentary_items', 'ad_astra:mars_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:mars_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:cracked_mars_stone_bricks') + event.add('tfc:sedimentary_items', 'ad_astra:cracked_mars_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:cracked_mars_stone_bricks') + event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_mars_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:chiseled_mars_stone_bricks') + event.add('tfc:sedimentary_items', 'ad_astra:chiseled_mars_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:chiseled_mars_stone_bricks') + event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_mars_stone_bricks') + + // Venus Stone (Trachyte) + event.add('forge:stone', 'ad_astra:venus_stone') + event.add('tfc:igneous_extrusive_items', 'ad_astra:venus_stone') + + event.add('forge:cobblestone', 'ad_astra:venus_cobblestone') + event.add('forge:cobblestone/normal', 'ad_astra:venus_cobblestone') + event.add('tfc:igneous_extrusive_items', 'ad_astra:venus_cobblestone') + + event.add('forge:smooth_stone', 'ad_astra:polished_venus_stone') + event.add('tfc:igneous_extrusive_items', 'ad_astra:polished_venus_stone') + event.add('tfc:rock/smooth', 'ad_astra:polished_venus_stone') + + event.add('forge:stone_bricks', 'ad_astra:venus_stone_bricks') + event.add('tfc:igneous_extrusive_items', 'ad_astra:venus_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:venus_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:cracked_venus_stone_bricks') + event.add('tfc:igneous_extrusive_items', 'ad_astra:cracked_venus_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:cracked_venus_stone_bricks') + event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_venus_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:chiseled_venus_stone_bricks') + event.add('tfc:igneous_extrusive_items', 'ad_astra:chiseled_venus_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:chiseled_venus_stone_bricks') + event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_venus_stone_bricks') + + // Red Granite + event.add('forge:stone', 'gtceu:red_granite') + event.add('tfc:igneous_intrusive_items', 'gtceu:red_granite') + + event.add('forge:cobblestone', 'gtceu:red_granite_cobblestone') + event.add('forge:cobblestone/normal', 'gtceu:red_granite_cobblestone') + event.add('tfc:igneous_intrusive_items', 'gtceu:red_granite_cobblestone') + + event.add('forge:cobblestone', 'gtceu:mossy_red_granite_cobblestone') + event.add('forge:cobblestone/normal', 'gtceu:mossy_red_granite_cobblestone') + event.add('tfc:igneous_intrusive_items', 'gtceu:mossy_red_granite_cobblestone') + + event.add('forge:smooth_stone', 'gtceu:polished_red_granite') + event.add('tfc:igneous_intrusive_items', 'gtceu:polished_red_granite') + event.add('tfc:rock/smooth', 'gtceu:polished_red_granite') + + event.add('forge:stone_bricks', 'gtceu:red_granite_bricks') + event.add('tfc:igneous_intrusive_items', 'gtceu:red_granite_bricks') + event.add('tfc:rock/bricks', 'gtceu:red_granite_bricks') + event.add('tfg:red_granite_cutter_set', 'gtceu:red_granite_bricks') + + event.add('forge:stone_bricks', 'gtceu:mossy_red_granite_bricks') + event.add('tfc:igneous_intrusive_items', 'gtceu:mossy_red_granite_bricks') + event.add('tfc:rock/bricks', 'gtceu:mossy_red_granite_bricks') + event.add('tfc:rock/mossy_bricks', 'gtceu:mossy_red_granite_bricks') + + event.add('forge:stone_bricks', 'gtceu:cracked_red_granite_bricks') + event.add('tfc:igneous_intrusive_items', 'gtceu:cracked_red_granite_bricks') + event.add('tfc:rock/bricks', 'gtceu:cracked_red_granite_bricks') + event.add('tfc:rock/cracked_bricks', 'gtceu:cracked_red_granite_bricks') + + event.add('forge:stone_bricks', 'gtceu:red_granite_tile') + event.add('tfc:igneous_intrusive_items', 'gtceu:red_granite_tile') + event.add('tfc:rock/bricks', 'gtceu:red_granite_tile') + event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_tile') + event.add('tfg:red_granite_cutter_set', 'gtceu:red_granite_tile') + + event.add('forge:stone_bricks', 'gtceu:square_red_granite_bricks') + event.add('tfc:igneous_intrusive_items', 'gtceu:square_red_granite_bricks') + event.add('tfc:rock/bricks', 'gtceu:square_red_granite_bricks') + event.add('tfc:rock/chiseled_bricks', 'gtceu:square_red_granite_bricks') + event.add('tfg:red_granite_cutter_set', 'gtceu:square_red_granite_bricks') + + event.add('forge:stone_bricks', 'gtceu:red_granite_windmill_a') + event.add('tfc:igneous_intrusive_items', 'gtceu:red_granite_windmill_a') + event.add('tfc:rock/bricks', 'gtceu:red_granite_windmill_a') + event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_windmill_a') + event.add('tfg:red_granite_cutter_set', 'gtceu:red_granite_windmill_a') + + event.add('forge:stone_bricks', 'gtceu:red_granite_windmill_b') + event.add('tfc:igneous_intrusive_items', 'gtceu:red_granite_windmill_b') + event.add('tfc:rock/bricks', 'gtceu:red_granite_windmill_b') + event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_windmill_b') + event.add('tfg:red_granite_cutter_set', 'gtceu:red_granite_windmill_b') + + event.add('forge:stone_bricks', 'gtceu:small_red_granite_bricks') + event.add('tfc:igneous_intrusive_items', 'gtceu:small_red_granite_bricks') + event.add('tfc:rock/bricks', 'gtceu:small_red_granite_bricks') + event.add('tfc:rock/chiseled_bricks', 'gtceu:small_red_granite_bricks') + event.add('tfg:red_granite_cutter_set', 'gtceu:small_red_granite_bricks') + + event.add('forge:stone_bricks', 'gtceu:red_granite_small_tile') + event.add('tfc:igneous_intrusive_items', 'gtceu:red_granite_small_tile') + event.add('tfc:rock/bricks', 'gtceu:red_granite_small_tile') + event.add('tfc:rock/chiseled_bricks', 'gtceu:red_granite_small_tile') + event.add('tfg:red_granite_cutter_set', 'gtceu:red_granite_small_tile') + + event.add('forge:stone_bricks', 'gtceu:chiseled_red_granite') + event.add('tfc:igneous_intrusive_items', 'gtceu:chiseled_red_granite') + event.add('tfc:rock/bricks', 'gtceu:chiseled_red_granite') + event.add('tfc:rock/chiseled_bricks', 'gtceu:chiseled_red_granite') + event.add('tfg:red_granite_cutter_set', 'gtceu:chiseled_red_granite') + + // Mercury Stone (Komatiite) + event.add('forge:stone', 'ad_astra:mercury_stone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:mercury_stone') + + event.add('forge:cobblestone', 'ad_astra:mercury_cobblestone') + event.add('forge:cobblestone/normal', 'ad_astra:mercury_cobblestone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:mercury_cobblestone') + + event.add('forge:smooth_stone', 'ad_astra:polished_mercury_stone') + event.add('tfc:igneous_intrusive_items', 'ad_astra:polished_mercury_stone') + event.add('tfc:rock/smooth', 'ad_astra:polished_mercury_stone') + + event.add('forge:stone_bricks', 'ad_astra:mercury_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:mercury_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:mercury_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:cracked_mercury_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:cracked_mercury_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:cracked_mercury_stone_bricks') + event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_mercury_stone_bricks') + + event.add('forge:stone_bricks', 'ad_astra:chiseled_mercury_stone_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:chiseled_mercury_stone_bricks') + event.add('tfc:rock/bricks', 'ad_astra:chiseled_mercury_stone_bricks') + event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_mercury_stone_bricks') + + // Permafrost (???) + event.add('forge:stone', 'ad_astra:permafrost') + event.add('tfc:sedimentary_items', 'ad_astra:permafrost') + + event.add('forge:smooth_stone', 'ad_astra:polished_permafrost') + event.add('tfc:sedimentary_items', 'ad_astra:polished_permafrost') + event.add('tfc:rock/smooth', 'ad_astra:polished_permafrost') + + event.add('forge:stone_bricks', 'ad_astra:permafrost_bricks') + event.add('tfc:sedimentary_items', 'ad_astra:permafrost_bricks') + event.add('tfc:rock/bricks', 'ad_astra:permafrost_bricks') + + event.add('forge:stone_bricks', 'ad_astra:cracked_permafrost_bricks') + event.add('tfc:sedimentary_items', 'ad_astra:cracked_permafrost_bricks') + event.add('tfc:rock/bricks', 'ad_astra:cracked_permafrost_bricks') + event.add('tfc:rock/cracked_bricks', 'ad_astra:cracked_permafrost_bricks') + + event.add('forge:stone_bricks', 'ad_astra:chiseled_permafrost_bricks') + event.add('tfc:igneous_intrusive_items', 'ad_astra:chiseled_permafrost_bricks') + event.add('tfc:rock/bricks', 'ad_astra:chiseled_permafrost_bricks') + event.add('tfc:rock/chiseled_bricks', 'ad_astra:chiseled_permafrost_bricks') + + // Dirt event.add('tfg:moon_plants', 'tfg:lunar_roots') event.add('tfg:moon_plants', 'tfg:lunar_sprouts') @@ -333,6 +698,7 @@ const registerTFGItemTags = (event) => { event.add('minecraft:mineable/shovel', 'tfg:grass/amber_mycelium') event.add('minecraft:mineable/shovel', 'tfg:grass/rusticus_mycelium') event.add('minecraft:mineable/shovel', 'tfg:grass/sangnum_mycelium') + // #endregion // Mars stone dust @@ -549,7 +915,7 @@ const registerTFGBlockTags = (event) => { event.add('minecraft:base_stone_nether', 'tfg:rock/hardened_dripstone') event.add('tfc:rock/hardened', 'tfg:rock/hardened_dripstone') // #endregion - + // #region Mars blocks event.add('minecraft:dirt', 'tfg:grass/mars_dirt') event.add('minecraft:dirt', 'tfg:grass/mars_clay_dirt') diff --git a/kubejs/startup_scripts/beneath/constants.js b/kubejs/startup_scripts/beneath/constants.js index 86a0d999d..69fcec829 100644 --- a/kubejs/startup_scripts/beneath/constants.js +++ b/kubejs/startup_scripts/beneath/constants.js @@ -3,6 +3,7 @@ global.BENEATH_DISABLED_ITEMS = [ "beneath:cobblerack", + "beneath:crackrack_rock", "beneath:lost_page", "beneath:ore/slimed_netherrack", "beneath:raw_slime", diff --git a/kubejs/startup_scripts/tfg/blocks.nether.js b/kubejs/startup_scripts/tfg/blocks.nether.js index a63cafe7d..7e2026d03 100644 --- a/kubejs/startup_scripts/tfg/blocks.nether.js +++ b/kubejs/startup_scripts/tfg/blocks.nether.js @@ -2,6 +2,7 @@ function registerTFGNetherBlocks(event) { + // Hardened stones event.create('tfg:rock/hardened_deepslate') .soundType('deepslate') .property(BlockProperties.AXIS) @@ -12,6 +13,7 @@ function registerTFGNetherBlocks(event) { .tagBlock('tfc:can_carve') .tagBoth('forge:stone') .tagBoth('tfc:rock/hardened') + .tagBoth('tfc:metamorphic_items') .tagBlock('minecraft:mineable/pickaxe') .mapColor('terracotta_grey') .fullBlock(true) @@ -26,7 +28,8 @@ function registerTFGNetherBlocks(event) { .tagBlock('tfc:can_carve') .tagBoth('forge:stone') .tagBoth('tfc:rock/hardened') - .mapColor('terracotta_grey') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('color_black') .tagBlock('minecraft:mineable/pickaxe') .fullBlock(true) .opaque(true) @@ -41,14 +44,17 @@ function registerTFGNetherBlocks(event) { .tagBlock('tfc:can_carve') .tagBoth('forge:stone') .tagBoth('tfc:rock/hardened') - .mapColor('terracotta') + .tagBoth('tfc:sedimentary_items') .tagBlock('minecraft:mineable/pickaxe') + .mapColor('terracotta') .fullBlock(true) .opaque(true) + // Spikes event.create('tfg:spike/dripstone_spike', 'tfc:rock_spike') .textureAll('minecraft:block/dripstone_block') .soundType('dripstone_block') + .tagBoth('tfc:sedimentary_items') .hardness(0.8) .resistance(0.8) .requiresTool(true) @@ -57,6 +63,7 @@ function registerTFGNetherBlocks(event) { event.create('tfg:spike/deepslate_spike', 'tfc:rock_spike') .textureAll('minecraft:block/deepslate') .soundType('deepslate') + .tagBoth('tfc:metamorphic_items') .hardness(0.8) .resistance(0.8) .requiresTool(true) @@ -65,11 +72,13 @@ function registerTFGNetherBlocks(event) { event.create('tfg:spike/blackstone_spike', 'tfc:rock_spike') .textureAll('minecraft:block/blackstone') .stoneSoundType() + .tagBoth('tfc:igneous_intrusive_items') .hardness(0.8) .resistance(0.8) .requiresTool(true) .tagBlock('minecraft:mineable/pickaxe') + // Loose rocks event.create('tfg:loose/deepslate', 'tfc:loose_rock') .itemTexture('tfg:item/loose/deepslate') .rockTypeModel('metamorphic') @@ -92,6 +101,117 @@ function registerTFGNetherBlocks(event) { .tagItem('tfc:sedimentary_rock') .tagItem("rnr:loose_rock_items") + event.create('tfg:loose/crackrack', 'tfc:loose_rock') + .itemTexture('tfg:item/loose/crackrack') + .rockTypeModel('igneous_intrusive') + .soundType('basalt') + .translationKey("block.tfg.loose.crackrack") + .tagBlock('tfc:loose_rocks') + .tagItem('tfc:any_knapping') + .tagItem('tfc:rock_knapping') + .tagItem('tfc:igneous_intrusive_rock') + .tagItem("rnr:loose_rock_items") + + // Cobblestones + event.create('tfg:rock/cobble_blackstone') + .soundType('stone') + .model('tfg:block/rock/cobble_blackstone') + .tagBoth('forge:cobblestone') + .tagBoth('forge:cobblestone/normal') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('color_black') + .tagBlock('minecraft:mineable/pickaxe') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/cobble_dripstone') + .soundType('dripstone_block') + .model('tfg:block/rock/cobble_dripstone') + .tagBoth('forge:cobblestone') + .tagBoth('forge:cobblestone/normal') + .tagBoth('tfc:sedimentary_items') + .mapColor('terracotta') + .tagBlock('minecraft:mineable/pickaxe') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/cobble_crackrack') + .soundType('netherrack') + .model('tfg:block/rock/cobble_crackrack') + .tagBoth('forge:cobblestone') + .tagBoth('forge:cobblestone/normal') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('crimson_stem') + .tagBlock('minecraft:mineable/pickaxe') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + // Smooth Stones + + event.create('tfg:rock/polished_crackrack') + .soundType('basalt') + .model('tfg:block/rock/polished_crackrack') + .tagBoth('forge:smooth_stone') + .tagBoth('tfc:igneous_intrusive_items') + .tagBoth('tfc:rock/smooth') + .mapColor('crimson_stem') + .tagBlock('minecraft:mineable/pickaxe') + .fullBlock(true) + .opaque(true) + + // Gravels + event.create('tfg:rock/gravel_deepslate') + .soundType('gravel') + .model('tfg:block/rock/gravel_deepslate') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:metamorphic_items') + .mapColor('terracotta_grey') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_blackstone') + .soundType('gravel') + .model('tfg:block/rock/gravel_blackstone') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('color_black') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_dripstone') + .soundType('gravel') + .model('tfg:block/rock/gravel_dripstone') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:sedimentary_items') + .mapColor('terracotta') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_crackrack') + .soundType('gravel') + .model('tfg:block/rock/gravel_crackrack') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('crimson_stem') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + // Plants event.create('tfg:mushroom_roots', 'tfg:decorative_plant') .soundType('nether_wart') .tagItem('tfc:plants') diff --git a/kubejs/startup_scripts/tfg/blocks.space.js b/kubejs/startup_scripts/tfg/blocks.space.js index cfcf8a0cc..efc0014d9 100644 --- a/kubejs/startup_scripts/tfg/blocks.space.js +++ b/kubejs/startup_scripts/tfg/blocks.space.js @@ -51,6 +51,7 @@ function registerTFGSpaceBlocks(event) { .tagBlock('tfc:can_carve') .tagBoth('forge:stone') .tagBoth('tfc:rock/hardened') + .tagBoth('tfc:igneous_intrusive_items') .tagBlock('minecraft:mineable/pickaxe') .mapColor('terracotta_cyan') .fullBlock(true) @@ -65,6 +66,7 @@ function registerTFGSpaceBlocks(event) { .tagBlock('tfc:can_carve') .tagBoth('forge:stone') .tagBoth('tfc:rock/hardened') + .tagBoth('tfc:igneous_intrusive_items') .tagBlock('minecraft:mineable/pickaxe') .mapColor('terracotta_blue') .fullBlock(true) @@ -280,6 +282,202 @@ function registerTFGSpaceBlocks(event) { .requiresTool(true) .tagBlock('minecraft:mineable/pickaxe') + // Cobblestones + + event.create('tfg:rock/cobble_moon_deepslate') + .soundType('deepslate') + .model('tfg:block/rock/cobble_moon_deepslate') + .tagBoth('forge:cobblestone') + .tagBoth('forge:cobblestone/normal') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_blue') + .tagBlock('minecraft:mineable/pickaxe') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/cobble_permafrost') + .soundType('stone') + .model('tfg:block/rock/cobble_permafrost') + .tagBoth('forge:cobblestone') + .tagBoth('forge:cobblestone/normal') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('snow') + .tagBlock('minecraft:mineable/pickaxe') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + // Gravels + + event.create('tfg:rock/gravel_moon') + .soundType('gravel') + .model('tfg:block/rock/gravel_moon') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_cyan') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_moon_deepslate') + .soundType('gravel') + .model('tfg:block/rock/gravel_moon_deepslate') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_blue') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_glacio') + .soundType('gravel') + .model('tfg:block/rock/gravel_glacio') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_light_blue') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_mars') + .soundType('gravel') + .model('tfg:block/rock/gravel_mars') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_orange') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_venus') + .soundType('gravel') + .model('tfg:block/rock/gravel_venus') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_yellow') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_mercury') + .soundType('gravel') + .model('tfg:block/rock/gravel_mercury') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_purple') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_permafrost') + .soundType('gravel') + .model('tfg:block/rock/gravel_permafrost') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('snow') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/gravel_red_granite') + .soundType('gravel') + .model('tfg:block/rock/gravel_red_granite') + .tagBoth('forge:gravel') + .tagBoth('tfc:rock/gravel') + .tagBoth('tfc:igneous_intrusive_items') + .mapColor('terracotta_red') + .tagBlock('minecraft:mineable/shovel') + .tagBlock('tfc:can_landslide') + .fullBlock(true) + .opaque(true) + + // Smooth Stones + + event.create('tfg:rock/polished_moon_deepslate') + .soundType('deepslate') + .model('tfg:block/rock/polished_moon_deepslate') + .tagBoth('forge:smooth_stone') + .tagBoth('tfc:igneous_intrusive_items') + .tagBoth('tfc:rock/smooth') + .tagBoth('tfg:brick_index') + .mapColor('terracotta_blue') + .tagBlock('minecraft:mineable/pickaxe') + .fullBlock(true) + .opaque(true) + + // Decorative + + event.create('tfg:rock/bricks_moon_deepslate') + .soundType('deepslate') + .model('tfg:block/rock/bricks_moon_deepslate') + .tagBoth('minecraft:stone_bricks') + .tagBoth('forge:stone_bricks') + .tagBoth('tfc:rock/bricks') + .tagBoth('tfc:igneous_intrusive_items') + .tagBoth('tfg:brick_index') + .tagBoth('tfg:moon_deepslate_cutter_set') + .mapColor('terracotta_blue') + .tagBlock('minecraft:mineable/pickaxe') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/cracked_bricks_moon_deepslate') + .soundType('deepslate') + .model('tfg:block/rock/cracked_bricks_moon_deepslate') + .tagBoth('minecraft:stone_bricks') + .tagBoth('forge:stone_bricks') + .tagBoth('tfc:rock/bricks') + .tagBoth('tfc:rock/cracked_bricks') + .tagBoth('tfc:igneous_intrusive_items') + .tagBoth('tfg:brick_index') + .tagBoth('tfg:moon_deepslate_cutter_set') + .mapColor('terracotta_blue') + .tagBlock('minecraft:mineable/pickaxe') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/chiseled_bricks_moon_deepslate') + .soundType('deepslate') + .model('tfg:block/rock/chiseled_bricks_moon_deepslate') + .tagBoth('minecraft:stone_bricks') + .tagBoth('forge:stone_bricks') + .tagBoth('tfc:rock/bricks') + .tagBoth('tfc:rock/chiseled_bricks') + .tagBoth('tfc:igneous_intrusive_items') + .tagBoth('tfg:brick_index') + .tagBoth('tfg:moon_deepslate_cutter_set') + .mapColor('terracotta_blue') + .tagBlock('minecraft:mineable/pickaxe') + .fullBlock(true) + .opaque(true) + + event.create('tfg:rock/pillar_moon_deepslate') + .property(BlockProperties.AXIS) + .placementState(event => event.set(BlockProperties.AXIS, event.clickedFace.axis)) + .soundType('deepslate') + .tagBoth('tfc:igneous_intrusive_items') + .tagBoth('tfg:moon_deepslate_cutter_set') + .mapColor('terracotta_blue') + .tagBlock('minecraft:mineable/pickaxe') + .fullBlock(true) + .opaque(true) + + // #region Plants /* diff --git a/kubejs/startup_scripts/tfg/constants.js b/kubejs/startup_scripts/tfg/constants.js index 4a7f24965..808e98b57 100644 --- a/kubejs/startup_scripts/tfg/constants.js +++ b/kubejs/startup_scripts/tfg/constants.js @@ -167,6 +167,83 @@ global.FOOD_FRUIT = [ {name: 'shadow_berry', id: 'betterend:shadow_berry_cooked', saturation: 1, water: 5, fruit: 1.5, decay: 2 } ]; +/** @type {Hammering[]} */ +global.HAMMERING = [ + // Beneath + { raw: 'minecraft:deepslate', hammered: 'minecraft:cobbled_deepslate', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_deepslate', hammered: 'minecraft:cobbled_deepslate', duration: 10, eu: 16 }, + { raw: 'minecraft:cobbled_deepslate', hammered: 'tfg:rock/gravel_deepslate', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_deepslate', hammered: 'tfc:sand/black', duration: 70, eu: 2 }, + + { raw: 'minecraft:blackstone', hammered: 'tfg:rock/cobble_blackstone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_blackstone', hammered: 'tfg:rock/cobble_blackstone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/cobble_blackstone', hammered: 'tfg:rock/gravel_blackstone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_blackstone', hammered: 'tfc:sand/black', duration: 70, eu: 2 }, + + { raw: 'minecraft:dripstone_block', hammered: 'tfg:rock/cobble_dripstone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_dripstone', hammered: 'tfg:rock/cobble_dripstone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/cobble_dripstone', hammered: 'tfg:rock/gravel_dripstone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_dripstone', hammered: 'tfc:sand/brown', duration: 70, eu: 2 }, + + { raw: 'beneath:crackrack', hammered: 'tfg:rock/cobble_crackrack', duration: 10, eu: 16 }, + { raw: 'tfg:rock/cobble_crackrack', hammered: 'tfg:rock/gravel_crackrack', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_crackrack', hammered: 'tfc:sand/pink', duration: 70, eu: 2 }, + + { raw: 'minecraft:basalt', hammered: 'tfc:rock/cobble/basalt', duration: 10, eu: 16 }, + + // Moon + { raw: 'ad_astra:moon_stone', hammered: 'ad_astra:moon_cobblestone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_moon_stone', hammered: 'ad_astra:moon_cobblestone', duration: 10, eu: 16 }, + { raw: 'ad_astra:moon_cobblestone', hammered: 'tfg:rock/gravel_moon', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_moon', hammered: 'ad_astra:moon_sand', duration: 70, eu: 2 }, + + { raw: 'ad_astra:moon_deepslate', hammered: 'tfg:rock/cobble_moon_deepslate', duration: 10, eu: 16 }, + { raw: 'ad_astra:hardened_moon_deepslate', hammered: 'tfg:rock/cobble_moon_deepslate', duration: 10, eu: 16 }, + { raw: 'tfg:rock/cobble_moon_deepslate', hammered: 'tfg:rock/gravel_moon_deepslate', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_moon_deepslate', hammered: 'ad_astra:moon_sand', duration: 10, eu: 16 }, + + { raw: 'ad_astra:glacio_stone', hammered: 'ad_astra:glacio_cobblestone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_glacio_stone', hammered: 'ad_astra:glacio_cobblestone', duration: 10, eu: 16 }, + { raw: 'ad_astra:glacio_cobblestone', hammered: 'tfg:rock/gravel_glacio', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_glacio', hammered: 'tfc:sand/white', duration: 70, eu: 2 }, + + // Mars + { raw: 'ad_astra:mars_stone', hammered: 'ad_astra:mars_cobblestone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_mars_stone', hammered: 'ad_astra:mars_cobblestone', duration: 10, eu: 16 }, + { raw: 'ad_astra:mars_cobblestone', hammered: 'tfg:rock/gravel_mars', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_mars', hammered: 'ad_astra:mars_sand', duration: 70, eu: 2 }, + + { raw: 'minecraft:red_sandstone', hammered: '4x minecraft:red_sand', duration: 10, eu: 16 }, + + { raw: 'gtceu:red_granite', hammered: 'gtceu:red_granite_cobblestone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_red_granite', hammered: 'gtceu:red_granite_cobblestone', duration: 10, eu: 16 }, + { raw: 'gtceu:red_granite_cobblestone', hammered: 'tfg:rock/gravel_red_granite', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_red_granite', hammered: 'minecraft:red_sand', duration: 70, eu: 2 }, + + // Venus + { raw: 'ad_astra:venus_stone', hammered: 'ad_astra:venus_cobblestone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_venus_stone', hammered: 'ad_astra:venus_cobblestone', duration: 10, eu: 16 }, + { raw: 'ad_astra:venus_cobblestone', hammered: 'tfg:rock/gravel_mars', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_mars', hammered: 'ad_astra:venus_sand', duration: 70, eu: 2 }, + + { raw: 'ad_astra:venus_sandstone', hammered: '4x ad_astra:venus_sand', duration: 70, eu: 2 }, + + // Mercury + { raw: 'ad_astra:mercury_stone', hammered: 'ad_astra:mercury_cobblestone', duration: 10, eu: 16 }, + { raw: 'tfg:rock/hardened_mercury_stone', hammered: 'ad_astra:mercury_cobblestone', duration: 10, eu: 16 }, + { raw: 'ad_astra:mercury_cobblestone', hammered: 'tfg:rock/gravel_mars', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_mars', hammered: 'tfc:sand/red', duration: 70, eu: 2 }, + + // Europa + { raw: 'ad_astra:permafrost', hammered: 'tfg:rock/cobble_permafrost', duration: 10, eu: 16 }, + { raw: 'tfg:rock/cobble_permafrost', hammered: 'tfg:rock/gravel_permafrost', duration: 10, eu: 16 }, + { raw: 'tfg:rock/gravel_permafrost', hammered: '4x gtceu:ice_dust', duration: 70, eu: 2 }, + + // Misc + { raw: 'ad_astra:conglomerate', hammered: 'tfc:rock/gravel/conglomerate', duration: 10, eu: 16 } + + ] + global.COOLING_FOODS = [ 'firmalife:food/vanilla_ice_cream', 'firmalife:food/chocolate_ice_cream', @@ -185,4 +262,4 @@ global.WARMING_FOODS = [ 'tfc:food/vegetables_soup', 'tfc:food/protein_soup', 'tfc:food/dairy_soup' -]; \ No newline at end of file +]; diff --git a/kubejs/startup_scripts/tfg/items.js b/kubejs/startup_scripts/tfg/items.js index 32a12587d..8a84d7294 100644 --- a/kubejs/startup_scripts/tfg/items.js +++ b/kubejs/startup_scripts/tfg/items.js @@ -86,6 +86,10 @@ const registerTFGItems = (event) => { .translationKey('item.tfg.brick.glacio_stone') event.create('tfg:brick/permafrost') .translationKey('item.tfg.brick.permafrost') + event.create('tfg:brick/red_granite') + .translationKey('item.tfg.red_granite') + event.create('tfg:brick/moon_deepslate') + .translationKey('item.tfg.moon_deepslate') // #endregion // #region Primitive rubber gloves