diff --git a/src/generated/resources/.cache/cache b/src/generated/resources/.cache/cache index 885909a0..d657f885 100644 --- a/src/generated/resources/.cache/cache +++ b/src/generated/resources/.cache/cache @@ -11,8 +11,8 @@ bb73faa9d55b67fdb02debffaae62416598e40a7 assets/hexcasting/blockstates/akashic_p ea33831e4b98afbde82a2f82ce8851b026ba2770 assets/hexcasting/blockstates/akashic_record.json 3b6141e92e099e2ba73f31915e5c76ea35c92564 assets/hexcasting/blockstates/akashic_tile.json 760234cb7550850a909444ac36da0ce1c850e007 assets/hexcasting/blockstates/akashic_trapdoor.json -1633eb43059b740bdc8790dfd0b23fd8e172ac06 assets/hexcasting/blockstates/akashic_wood.json -fad16f4762ede9660433702101f7d2f294e624ad assets/hexcasting/blockstates/akashic_wood_stripped.json +31130f9b78b23eba8997d50c96cefc7205cc2c50 assets/hexcasting/blockstates/akashic_wood.json +17713e2208639f3a39bd36adfb1a1ff0e45a1244 assets/hexcasting/blockstates/akashic_wood_stripped.json 6467be85f85137aa17be8b03ee96c224839a9e25 assets/hexcasting/blockstates/amethyst_dust_block.json 1d17548d44b3169d43663d1cbc7699d75ccc8a54 assets/hexcasting/blockstates/amethyst_sconce.json aed50918bad8a7b00cd26e45d67eb509a04c9f6c assets/hexcasting/blockstates/amethyst_tiles.json @@ -65,9 +65,9 @@ f3a7403c673a4816d421f22e69a5458670694aac assets/hexcasting/models/block/akashic_ b2ac7229c89bd2d8dd8f6e42e18bab1d993b38e3 assets/hexcasting/models/block/akashic_leaves1.json 998f003703e97667a90603ac4c8436e7c9e4c8de assets/hexcasting/models/block/akashic_leaves2.json edb9388b709f0494414fe19ae334e82d0a7df706 assets/hexcasting/models/block/akashic_leaves3.json -a6e381a6feacb382c09726c14722af6a2956a4c5 assets/hexcasting/models/block/akashic_log.json +fe031acc66f113fee6f1c62ed96b1856c3f590c5 assets/hexcasting/models/block/akashic_log.json 127bd87945186bd50ce30120d595f76e1cca0050 assets/hexcasting/models/block/akashic_log_horizontal.json -5be06a63f9dc170b4296171e08bdab34ab4d7fa6 assets/hexcasting/models/block/akashic_log_stripped.json +2ce7f7607c05d0f74a599558ec6d627126f9224e assets/hexcasting/models/block/akashic_log_stripped.json a8b318998bccc81362a2a6c3c8fccc5723edd1ca assets/hexcasting/models/block/akashic_log_stripped_horizontal.json 1c54badd0919b1f314f24d011c295607a7fe01cc assets/hexcasting/models/block/akashic_panel.json a5bea93e08e787b2c8cdce00c78b79a8d0eccb23 assets/hexcasting/models/block/akashic_planks1.json @@ -78,6 +78,8 @@ a5bea93e08e787b2c8cdce00c78b79a8d0eccb23 assets/hexcasting/models/block/akashic_ ca9e25d900c15888fa6562091f265db0e7cb0866 assets/hexcasting/models/block/akashic_trapdoor_bottom.json c4ac5b4b39c0c364a783c22eccb3d71cc911b3e5 assets/hexcasting/models/block/akashic_trapdoor_open.json 7dd49520e7b38c676a4b91bb4aad88267e01bb81 assets/hexcasting/models/block/akashic_trapdoor_top.json +ae64faa4b9e60f27d1df999748d3bae5bacc2518 assets/hexcasting/models/block/akashic_wood.json +db390313c28127d1437d7bb0cd4a0d7d1bb68c68 assets/hexcasting/models/block/akashic_wood_stripped.json de50477d8d34bbd69db98249cc6c878be8bc80f3 assets/hexcasting/models/block/amethyst_dust_block.json df994438c20d9dec9009c9c56de74860a847681b assets/hexcasting/models/block/amethyst_tiles.json 4e65ad75eeee22fa1d2c899fc86ac8b7b9a43701 assets/hexcasting/models/block/ancient_scroll_paper.json @@ -177,8 +179,8 @@ d10518ab5c588c8e3fe03ecdcf69f2eb8c35fe3a assets/hexcasting/models/item/akashic_p d904d1cbd8ea36d41ef8a53cfbbe77646f3b12f4 assets/hexcasting/models/item/akashic_record.json e740b40ab8a69f564abb708f256f2ef71157d15a assets/hexcasting/models/item/akashic_tile.json a63540e7a9f733c3e1f01532651b4d169b205641 assets/hexcasting/models/item/akashic_trapdoor.json -f86e2b4c4ecb5bd62cebdc369ea8fb292abd1b60 assets/hexcasting/models/item/akashic_wood.json -ea8dc7e5d852da7fa0da886ddca0bfd279ead164 assets/hexcasting/models/item/akashic_wood_stripped.json +463750dd2491be70761f4e2c669edb9880889c6e assets/hexcasting/models/item/akashic_wood.json +bcabe9b75a068d06b0f4b824e2c79e5413f1cdd1 assets/hexcasting/models/item/akashic_wood_stripped.json eb78f6a2b68dd772a5016fc5a3db10488a65abfa assets/hexcasting/models/item/amethyst_dust.json 6a60e6e92414f63e7e045f2893e5cd7b503d08dd assets/hexcasting/models/item/amethyst_dust_block.json 0d0695c9a96cadec55d905a42d0ba966f8697c41 assets/hexcasting/models/item/amethyst_sconce.json @@ -275,10 +277,13 @@ eeaa26fe380975188cd2d6a93bd5e324dc509767 assets/hexcasting/models/item/trinket_f c534699d2cd118163b43d4a2557f2a7b1e5cc0b6 assets/hexcasting/models/item/uuid_colorizer.json 5847c79fce9ef3fd26b03b80d586beed6ff4c354 assets/hexcasting/models/item/wand.json 637e118fc7c371db684d0d831a46833b5851e582 data/forge/loot_modifiers/global_loot_modifiers.json +4d4caaea035ae4ee878843dd2455042b299b4e5e data/forge/tags/items/dusts/amethyst.json +05e86742a71afd740f47639be62f93bc9898fcde data/forge/tags/items/gems.json b6593ea802a692c29b5032292df31beb84878ad8 data/hexcasting/advancements/aaa_wasteful_cast.json 4f4c94021adfb296e3ef3dce1acc46f724f38f92 data/hexcasting/advancements/aab_big_cast.json a165e3959b7d0c37bea586d0e94609b483255569 data/hexcasting/advancements/enlightenment.json eb6393ffc79966e4b5983a68157742b78cd12414 data/hexcasting/advancements/opened_eyes.json +03ec2bfeaf811d7dfa5c54f1e5690802e757ec36 data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_connector.json 7e93886be31c3762a5b70e56a7214d19f64d58a8 data/hexcasting/advancements/recipes/brainsweep/brainsweep/budding_amethyst.json 12d9101d43c907f08b0f94747240678d53e4c1fb data/hexcasting/advancements/recipes/brainsweep/brainsweep/directrix_redstone.json ed6ce219b2ee65d69ea45a43fb9a71b1f5da88bb data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_look.json @@ -286,6 +291,12 @@ d225f90cc1e3b8200014106cd2d3bede9c783817 data/hexcasting/advancements/recipes/br c966b7ab46808f86bdb7bbd07049146f0dfb24ec data/hexcasting/advancements/recipes/brainsweep/brainsweep/impetus_storedplayer.json 47000a9b5a409038e369dbef156a72ec93cb51db data/hexcasting/advancements/recipes/hexcasting/abacus.json 5a17fa9a1496f5fbedd0362f94a5231e0e5ebbfc data/hexcasting/advancements/recipes/hexcasting/ageing_scroll_paper_lantern.json +c498998fcffe3d1a0b6dfd6459db64e9389f5c15 data/hexcasting/advancements/recipes/hexcasting/akashic_bookshelf.json +d9f9fc153bf8e8861f79f982b185d2e4c7048067 data/hexcasting/advancements/recipes/hexcasting/akashic_connector.json +149179e18b1b8db5dc3fb96e6faa6cb6ffaecb75 data/hexcasting/advancements/recipes/hexcasting/akashic_panel.json +4f852507d843f82dce1512f55abfb205b9829ed4 data/hexcasting/advancements/recipes/hexcasting/akashic_planks.json +99aae9efc13ff2b8a4612579b2f865ed2fbe8985 data/hexcasting/advancements/recipes/hexcasting/akashic_tile.json +55dded121a8dddb2ee7fb1f3ffcdcd1ada4afbd5 data/hexcasting/advancements/recipes/hexcasting/akashic_wood.json ddd7bd92b9e1586cebd2cee658315a9336a80a76 data/hexcasting/advancements/recipes/hexcasting/amethyst_dust_packing.json e5ae652aee1567ac2e626fa0f88f160993a6f9a5 data/hexcasting/advancements/recipes/hexcasting/amethyst_dust_unpacking.json 337c4370fd24b66a6b4b3f6c296a33d9a799034e data/hexcasting/advancements/recipes/hexcasting/amethyst_sconce.json @@ -344,13 +355,21 @@ d31956749bebbcb3f0d3c37f89b569642ac8c2fb data/hexcasting/advancements/root.json 739cbdf7f204132f2acfab4df8d21c6197aa1456 data/hexcasting/advancements/y_u_no_cast_angy.json 70a8f77d38affa642afbfceebe129358737b09ac data/hexcasting/loot_modifiers/amethyst_cluster_charged.json f746acc6b3e798d3b95f4ceb463c648b1f3ae8c3 data/hexcasting/loot_modifiers/amethyst_cluster_dust.json -3d98b650b5b60889404a9ae45e9bb2014a17c346 data/hexcasting/loot_modifiers/amethyst_cluster_shard_reducer.json +a783e00f46a9ff0206e2495c15cea8ba57bdff31 data/hexcasting/loot_modifiers/amethyst_cluster_shard_reducer.json e04be385fa9daa422e41a38ddd70fdd065107968 data/hexcasting/loot_modifiers/scroll_bastion.json 6569766d1579114149eb0a1154d05ec3c964b2a3 data/hexcasting/loot_modifiers/scroll_cartographer.json afecba3144e00505977a4ab4de7940f949ab7818 data/hexcasting/loot_modifiers/scroll_dungeon.json 0e8c8a56161586a4021487b27059ca151465af67 data/hexcasting/loot_modifiers/scroll_jungle.json 50e7ad657a0ab43f3bd632120e09f109791aaf34 data/hexcasting/loot_modifiers/scroll_shipwreck.json 7ffa361bd8a108b504fe450749b42997dc898e5e data/hexcasting/loot_modifiers/scroll_stronghold_library.json +9f900c50680a155c876080a039ed9dce1d84d457 data/hexcasting/loot_tables/blocks/akashic_door.json +4b0b1c0a353b8768c1c56d8dc4764a10c2cd7c5f data/hexcasting/loot_tables/blocks/akashic_log.json +ff25315e494e3b79667a1fa90d22a80d0eb6d208 data/hexcasting/loot_tables/blocks/akashic_log_stripped.json +7400ffa5214a5d7ed34be2ac2ffcc2b50cdf299c data/hexcasting/loot_tables/blocks/akashic_panel.json +0ddb27503a7266d126661bad496047a069a07670 data/hexcasting/loot_tables/blocks/akashic_tile.json +659b7e6d539474357532c1207b21354e19cbd4b1 data/hexcasting/loot_tables/blocks/akashic_trapdoor.json +1590fee356080d4dd3f4e0718d87269bdd7f3519 data/hexcasting/loot_tables/blocks/akashic_wood.json +58e51963cfde913d799a89ae8e0701407c488a14 data/hexcasting/loot_tables/blocks/akashic_wood_stripped.json 41d666145104483214c0256958b14724e60a036b data/hexcasting/loot_tables/blocks/amethyst_dust_block.json 967b64670e7d98b6c46779da68c245ee539ba375 data/hexcasting/loot_tables/blocks/amethyst_sconce.json 79421f4528355837d12fbfcccb19e08a1eb40bff data/hexcasting/loot_tables/blocks/amethyst_tiles.json @@ -368,6 +387,12 @@ fd662ce6977b96065bd438ff332bc5b9f62560e6 data/hexcasting/loot_tables/blocks/scro 33b4d5e6928828898fea92523f7cb81f9b4eac36 data/hexcasting/loot_tables/blocks/slate_block.json 6b4459635b3d53cc2b6836fa97d29244a65b412d data/hexcasting/recipes/abacus.json 1f0c9a98d97fb81e1f504cdb6619a3dfab52ba5f data/hexcasting/recipes/ageing_scroll_paper_lantern.json +fa04d5bc32f5646cd67bc8e8b572bdb7849b735e data/hexcasting/recipes/akashic_bookshelf.json +2c542a616b312e41537fb25a2362877dd50d2692 data/hexcasting/recipes/akashic_connector.json +f74f8389f1e8bdb77a92ecfb8d7d7d6f4418d818 data/hexcasting/recipes/akashic_panel.json +ce9ca7b98a89540996f2ad18eea98e31df7974b5 data/hexcasting/recipes/akashic_planks.json +ac285195e958804bcbd0b87e443d2851fd3a4856 data/hexcasting/recipes/akashic_tile.json +a84bf48a188d7b250db5c971a6d9b63d82279ba3 data/hexcasting/recipes/akashic_wood.json ef016ca292fa4edc7496b64e6f2931f4e7d90636 data/hexcasting/recipes/amethyst_dust_packing.json 91bb341776ce64a68e1c4200aa8f5b2fa6669820 data/hexcasting/recipes/amethyst_dust_unpacking.json 4b3f5fe572ec06feab786e3ba93b0d80b145dd69 data/hexcasting/recipes/amethyst_sconce.json @@ -375,6 +400,7 @@ e5c835d3866e8f5ecfb03c9e7c2c134a50951d67 data/hexcasting/recipes/amethyst_tiles. 0662d191ec9416e2c3c86962628d3bfbd11bc01f data/hexcasting/recipes/ancient_scroll_paper.json 3f9756b2c5137b285c4faa88ab43c4996b6b2bb6 data/hexcasting/recipes/ancient_scroll_paper_lantern.json 6e6e4d01097c10316892e274f33cb0faaf9dc0df data/hexcasting/recipes/artifact.json +2d1a4b4b9756ebe52b81cbbf3cf8713b145ffbde data/hexcasting/recipes/brainsweep/akashic_connector.json 30f81e0537c625a4cafcdec75314926569291171 data/hexcasting/recipes/brainsweep/budding_amethyst.json 9f7a9ba332e1018098d21a5ec474440fca7f6c73 data/hexcasting/recipes/brainsweep/directrix_redstone.json 5861845c3cd84021c7c19ac4f5b3bcc8e1bd3916 data/hexcasting/recipes/brainsweep/impetus_look.json @@ -428,7 +454,12 @@ d14cf2f8f0895a5b6dc09b7582c0abf1c2514adf data/hexcasting/recipes/sub_sandwich.js 67b16cdb26f40234a7d4e49357724f24c197580a data/hexcasting/recipes/trinket.json 14d6be5d47b54676a349564ea32c045c76c39b45 data/hexcasting/recipes/uuid_colorizer.json 0521d57838cb3e9795fc02ce47aa58db3b0188f9 data/hexcasting/recipes/wand.json +f3c6b6917e504e1c3d5d8875f7cce6f311e791d2 data/hexcasting/tags/blocks/akashic_logs.json +b596d96eebb4f7bad5930f4eebc589f292b59c98 data/hexcasting/tags/blocks/akashic_planks.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/hexcasting/tags/items/akashic_logs.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/hexcasting/tags/items/akashic_planks.json f930dbc5b41d42150d388e39b29b940229658809 data/minecraft/tags/blocks/crystal_sound_blocks.json +556d2e6068965e90c307a435b372ae761cd1c606 data/minecraft/tags/blocks/doors.json c25784941d6416744fb2ca2d43a3203e5c3e7c8a data/minecraft/tags/blocks/leaves.json f3c6b6917e504e1c3d5d8875f7cce6f311e791d2 data/minecraft/tags/blocks/logs.json f3c6b6917e504e1c3d5d8875f7cce6f311e791d2 data/minecraft/tags/blocks/logs_that_burn.json @@ -436,3 +467,13 @@ b82b77e12cb853aae355a5fabcad7c57b7becc3e data/minecraft/tags/blocks/mineable/axe c25784941d6416744fb2ca2d43a3203e5c3e7c8a data/minecraft/tags/blocks/mineable/hoe.json eb4bfbd7fc7632a5c16aa1d50d6090a1f466069b data/minecraft/tags/blocks/mineable/pickaxe.json f55afc2c05d93b5a44bc9fd73c5e81e71b183965 data/minecraft/tags/blocks/mineable/shovel.json +b596d96eebb4f7bad5930f4eebc589f292b59c98 data/minecraft/tags/blocks/planks.json +b8b58bbaf1ddca3514896af14db83f304e415305 data/minecraft/tags/blocks/trapdoors.json +556d2e6068965e90c307a435b372ae761cd1c606 data/minecraft/tags/blocks/wooden_doors.json +b8b58bbaf1ddca3514896af14db83f304e415305 data/minecraft/tags/blocks/wooden_trapdoors.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/minecraft/tags/items/doors.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/minecraft/tags/items/leaves.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/minecraft/tags/items/logs.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/minecraft/tags/items/logs_that_burn.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/minecraft/tags/items/planks.json +74700d556ca80c7a1db5fd4efb09c3ddb26cad66 data/minecraft/tags/items/wooden_doors.json diff --git a/src/generated/resources/assets/hexcasting/blockstates/akashic_wood.json b/src/generated/resources/assets/hexcasting/blockstates/akashic_wood.json index c107191c..16c5f1e8 100644 --- a/src/generated/resources/assets/hexcasting/blockstates/akashic_wood.json +++ b/src/generated/resources/assets/hexcasting/blockstates/akashic_wood.json @@ -1,7 +1,7 @@ { "variants": { "": { - "model": "hexcasting:block/akashic_log" + "model": "hexcasting:block/akashic_wood" } } } \ No newline at end of file diff --git a/src/generated/resources/assets/hexcasting/blockstates/akashic_wood_stripped.json b/src/generated/resources/assets/hexcasting/blockstates/akashic_wood_stripped.json index 0000a4e7..26613ae2 100644 --- a/src/generated/resources/assets/hexcasting/blockstates/akashic_wood_stripped.json +++ b/src/generated/resources/assets/hexcasting/blockstates/akashic_wood_stripped.json @@ -1,7 +1,7 @@ { "variants": { "": { - "model": "hexcasting:block/akashic_log_stripped" + "model": "hexcasting:block/akashic_wood_stripped" } } } \ No newline at end of file diff --git a/src/generated/resources/assets/hexcasting/models/block/akashic_log.json b/src/generated/resources/assets/hexcasting/models/block/akashic_log.json index 046256ea..6e3c09bd 100644 --- a/src/generated/resources/assets/hexcasting/models/block/akashic_log.json +++ b/src/generated/resources/assets/hexcasting/models/block/akashic_log.json @@ -1,8 +1,7 @@ { - "parent": "minecraft:block/cube_all", + "parent": "minecraft:block/cube_column", "textures": { "side": "hexcasting:block/akashic/log", - "end": "hexcasting:block/akashic/log_end", - "all": "hexcasting:block/akashic/log" + "end": "hexcasting:block/akashic/log_end" } } \ No newline at end of file diff --git a/src/generated/resources/assets/hexcasting/models/block/akashic_log_stripped.json b/src/generated/resources/assets/hexcasting/models/block/akashic_log_stripped.json index bedae01b..fa05103f 100644 --- a/src/generated/resources/assets/hexcasting/models/block/akashic_log_stripped.json +++ b/src/generated/resources/assets/hexcasting/models/block/akashic_log_stripped.json @@ -1,8 +1,7 @@ { - "parent": "minecraft:block/cube_all", + "parent": "minecraft:block/cube_column", "textures": { "side": "hexcasting:block/akashic/log_stripped", - "end": "hexcasting:block/akashic/log_end_stripped", - "all": "hexcasting:block/akashic/log_stripped" + "end": "hexcasting:block/akashic/log_end_stripped" } } \ No newline at end of file diff --git a/src/generated/resources/assets/hexcasting/models/block/akashic_wood.json b/src/generated/resources/assets/hexcasting/models/block/akashic_wood.json new file mode 100644 index 00000000..107a126a --- /dev/null +++ b/src/generated/resources/assets/hexcasting/models/block/akashic_wood.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/akashic/log" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/hexcasting/models/block/akashic_wood_stripped.json b/src/generated/resources/assets/hexcasting/models/block/akashic_wood_stripped.json new file mode 100644 index 00000000..cc0742c8 --- /dev/null +++ b/src/generated/resources/assets/hexcasting/models/block/akashic_wood_stripped.json @@ -0,0 +1,6 @@ +{ + "parent": "minecraft:block/cube_all", + "textures": { + "all": "hexcasting:block/akashic/log_stripped" + } +} \ No newline at end of file diff --git a/src/generated/resources/assets/hexcasting/models/item/akashic_wood.json b/src/generated/resources/assets/hexcasting/models/item/akashic_wood.json index 3c9909a6..55ebc7e5 100644 --- a/src/generated/resources/assets/hexcasting/models/item/akashic_wood.json +++ b/src/generated/resources/assets/hexcasting/models/item/akashic_wood.json @@ -1,3 +1,3 @@ { - "parent": "hexcasting:block/akashic_log" + "parent": "hexcasting:block/akashic_wood" } \ No newline at end of file diff --git a/src/generated/resources/assets/hexcasting/models/item/akashic_wood_stripped.json b/src/generated/resources/assets/hexcasting/models/item/akashic_wood_stripped.json index c3fef971..32afc30a 100644 --- a/src/generated/resources/assets/hexcasting/models/item/akashic_wood_stripped.json +++ b/src/generated/resources/assets/hexcasting/models/item/akashic_wood_stripped.json @@ -1,3 +1,3 @@ { - "parent": "hexcasting:block/akashic_log_stripped" + "parent": "hexcasting:block/akashic_wood_stripped" } \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/dusts/amethyst.json b/src/generated/resources/data/forge/tags/items/dusts/amethyst.json new file mode 100644 index 00000000..8fa008d0 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/dusts/amethyst.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "hexcasting:amethyst_dust" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/forge/tags/items/gems.json b/src/generated/resources/data/forge/tags/items/gems.json new file mode 100644 index 00000000..e153c829 --- /dev/null +++ b/src/generated/resources/data/forge/tags/items/gems.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "hexcasting:charged_amethyst" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_connector.json b/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_connector.json new file mode 100644 index 00000000..a1864d25 --- /dev/null +++ b/src/generated/resources/data/hexcasting/advancements/recipes/brainsweep/brainsweep/akashic_connector.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "hexcasting:brainsweep/akashic_connector" + ] + }, + "criteria": { + "enlightenment": { + "trigger": "hexcasting:overcast", + "conditions": { + "health_used": { + "min": 17.95 + }, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "min": 0.1, + "max": 2.05 + } + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "hexcasting:brainsweep/akashic_connector" + } + } + }, + "requirements": [ + [ + "enlightenment", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_bookshelf.json b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_bookshelf.json new file mode 100644 index 00000000..f9a06f32 --- /dev/null +++ b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_bookshelf.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "hexcasting:akashic_bookshelf" + ] + }, + "criteria": { + "enlightenment": { + "trigger": "hexcasting:overcast", + "conditions": { + "health_used": { + "min": 17.95 + }, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "min": 0.1, + "max": 2.05 + } + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "hexcasting:akashic_bookshelf" + } + } + }, + "requirements": [ + [ + "enlightenment", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_connector.json b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_connector.json new file mode 100644 index 00000000..ab717d35 --- /dev/null +++ b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_connector.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "hexcasting:akashic_connector" + ] + }, + "criteria": { + "enlightenment": { + "trigger": "hexcasting:overcast", + "conditions": { + "health_used": { + "min": 17.95 + }, + "mojang_i_am_begging_and_crying_please_add_an_entity_health_criterion": { + "min": 0.1, + "max": 2.05 + } + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "hexcasting:akashic_connector" + } + } + }, + "requirements": [ + [ + "enlightenment", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_panel.json b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_panel.json new file mode 100644 index 00000000..3a8e51aa --- /dev/null +++ b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_panel.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "hexcasting:akashic_panel" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "hexcasting:akashic_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "hexcasting:akashic_panel" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_planks.json b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_planks.json new file mode 100644 index 00000000..513c61c9 --- /dev/null +++ b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_planks.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "hexcasting:akashic_planks" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "hexcasting:akashic_logs" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "hexcasting:akashic_planks" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_tile.json b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_tile.json new file mode 100644 index 00000000..47ad99d2 --- /dev/null +++ b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_tile.json @@ -0,0 +1,32 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "hexcasting:akashic_tile" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "tag": "hexcasting:akashic_planks" + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "hexcasting:akashic_tile" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_wood.json b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_wood.json new file mode 100644 index 00000000..1aebc161 --- /dev/null +++ b/src/generated/resources/data/hexcasting/advancements/recipes/hexcasting/akashic_wood.json @@ -0,0 +1,34 @@ +{ + "parent": "minecraft:recipes/root", + "rewards": { + "recipes": [ + "hexcasting:akashic_wood" + ] + }, + "criteria": { + "has_item": { + "trigger": "minecraft:inventory_changed", + "conditions": { + "items": [ + { + "items": [ + "hexcasting:akashic_log" + ] + } + ] + } + }, + "has_the_recipe": { + "trigger": "minecraft:recipe_unlocked", + "conditions": { + "recipe": "hexcasting:akashic_wood" + } + } + }, + "requirements": [ + [ + "has_item", + "has_the_recipe" + ] + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster_shard_reducer.json b/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster_shard_reducer.json index cd0e5062..d4846240 100644 --- a/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster_shard_reducer.json +++ b/src/generated/resources/data/hexcasting/loot_modifiers/amethyst_cluster_shard_reducer.json @@ -18,6 +18,6 @@ } } ], - "modifier": 0.5, + "modifier": -2.0, "type": "hexcasting:amethyst_shard_reducer" -} +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_door.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_door.json new file mode 100644 index 00000000..d6e17fc1 --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_door.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_door", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_door" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_log.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_log.json new file mode 100644 index 00000000..041e110a --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_log.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_log", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_log" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_log_stripped.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_log_stripped.json new file mode 100644 index 00000000..34e1a65a --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_log_stripped.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_log_stripped", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_log_stripped" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_panel.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_panel.json new file mode 100644 index 00000000..8095c8b3 --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_panel.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_panel", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_panel" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_tile.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_tile.json new file mode 100644 index 00000000..77b5405c --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_tile.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_tile", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_tile" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_trapdoor.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_trapdoor.json new file mode 100644 index 00000000..233b2e37 --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_trapdoor.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_trapdoor", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_trapdoor" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_wood.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_wood.json new file mode 100644 index 00000000..cb15bc23 --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_wood.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_wood", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_wood" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_wood_stripped.json b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_wood_stripped.json new file mode 100644 index 00000000..0b2acb92 --- /dev/null +++ b/src/generated/resources/data/hexcasting/loot_tables/blocks/akashic_wood_stripped.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:block", + "pools": [ + { + "name": "akashic_wood_stripped", + "rolls": 1.0, + "bonus_rolls": 0.0, + "entries": [ + { + "type": "minecraft:item", + "name": "hexcasting:akashic_wood_stripped" + } + ] + } + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json b/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json new file mode 100644 index 00000000..27ee85e9 --- /dev/null +++ b/src/generated/resources/data/hexcasting/recipes/akashic_bookshelf.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "LPL", + "CCC", + "LPL" + ], + "key": { + "L": { + "tag": "hexcasting:akashic_logs" + }, + "P": { + "tag": "hexcasting:akashic_planks" + }, + "C": { + "item": "minecraft:book" + } + }, + "result": { + "item": "hexcasting:akashic_bookshelf" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/recipes/akashic_connector.json b/src/generated/resources/data/hexcasting/recipes/akashic_connector.json new file mode 100644 index 00000000..ee2908db --- /dev/null +++ b/src/generated/resources/data/hexcasting/recipes/akashic_connector.json @@ -0,0 +1,22 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "LPL", + "CCC", + "LPL" + ], + "key": { + "L": { + "tag": "hexcasting:akashic_logs" + }, + "P": { + "tag": "hexcasting:akashic_planks" + }, + "C": { + "item": "hexcasting:charged_amethyst" + } + }, + "result": { + "item": "hexcasting:akashic_connector" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/recipes/akashic_panel.json b/src/generated/resources/data/hexcasting/recipes/akashic_panel.json new file mode 100644 index 00000000..9c312a44 --- /dev/null +++ b/src/generated/resources/data/hexcasting/recipes/akashic_panel.json @@ -0,0 +1,20 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "DCD", + "C C", + "DCD" + ], + "key": { + "C": { + "tag": "hexcasting:akashic_planks" + }, + "D": { + "tag": "hexcasting:akashic_planks" + } + }, + "result": { + "item": "hexcasting:akashic_panel", + "count": 8 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/recipes/akashic_planks.json b/src/generated/resources/data/hexcasting/recipes/akashic_planks.json new file mode 100644 index 00000000..19038846 --- /dev/null +++ b/src/generated/resources/data/hexcasting/recipes/akashic_planks.json @@ -0,0 +1,12 @@ +{ + "type": "minecraft:crafting_shapeless", + "ingredients": [ + { + "tag": "hexcasting:akashic_logs" + } + ], + "result": { + "item": "hexcasting:akashic_planks", + "count": 4 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/recipes/akashic_tile.json b/src/generated/resources/data/hexcasting/recipes/akashic_tile.json new file mode 100644 index 00000000..fd8461d2 --- /dev/null +++ b/src/generated/resources/data/hexcasting/recipes/akashic_tile.json @@ -0,0 +1,17 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "WW ", + "W W", + " WW" + ], + "key": { + "W": { + "tag": "hexcasting:akashic_planks" + } + }, + "result": { + "item": "hexcasting:akashic_tile", + "count": 6 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/recipes/akashic_wood.json b/src/generated/resources/data/hexcasting/recipes/akashic_wood.json new file mode 100644 index 00000000..fccb3707 --- /dev/null +++ b/src/generated/resources/data/hexcasting/recipes/akashic_wood.json @@ -0,0 +1,16 @@ +{ + "type": "minecraft:crafting_shaped", + "pattern": [ + "WW", + "WW" + ], + "key": { + "W": { + "item": "hexcasting:akashic_log" + } + }, + "result": { + "item": "hexcasting:akashic_wood", + "count": 3 + } +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_connector.json b/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_connector.json new file mode 100644 index 00000000..2441974e --- /dev/null +++ b/src/generated/resources/data/hexcasting/recipes/brainsweep/akashic_connector.json @@ -0,0 +1,14 @@ +{ + "type": "hexcasting:brainsweep", + "blockIn": { + "type": "block", + "block": "hexcasting:akashic_connector" + }, + "villagerIn": { + "profession": "minecraft:librarian", + "minLevel": 5 + }, + "result": { + "name": "minecraft:budding_amethyst" + } +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/tags/blocks/akashic_logs.json b/src/generated/resources/data/hexcasting/tags/blocks/akashic_logs.json new file mode 100644 index 00000000..ddbb2120 --- /dev/null +++ b/src/generated/resources/data/hexcasting/tags/blocks/akashic_logs.json @@ -0,0 +1,9 @@ +{ + "replace": false, + "values": [ + "hexcasting:akashic_log", + "hexcasting:akashic_log_stripped", + "hexcasting:akashic_wood", + "hexcasting:akashic_wood_stripped" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/tags/blocks/akashic_planks.json b/src/generated/resources/data/hexcasting/tags/blocks/akashic_planks.json new file mode 100644 index 00000000..4ac6cc92 --- /dev/null +++ b/src/generated/resources/data/hexcasting/tags/blocks/akashic_planks.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "hexcasting:akashic_planks", + "hexcasting:akashic_panel", + "hexcasting:akashic_tile" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/tags/items/akashic_logs.json b/src/generated/resources/data/hexcasting/tags/items/akashic_logs.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/hexcasting/tags/items/akashic_logs.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/generated/resources/data/hexcasting/tags/items/akashic_planks.json b/src/generated/resources/data/hexcasting/tags/items/akashic_planks.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/hexcasting/tags/items/akashic_planks.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/blocks/doors.json b/src/generated/resources/data/minecraft/tags/blocks/doors.json new file mode 100644 index 00000000..364c4e00 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/blocks/doors.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "hexcasting:akashic_door" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/blocks/planks.json b/src/generated/resources/data/minecraft/tags/blocks/planks.json new file mode 100644 index 00000000..4ac6cc92 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/blocks/planks.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "hexcasting:akashic_planks", + "hexcasting:akashic_panel", + "hexcasting:akashic_tile" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json b/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json new file mode 100644 index 00000000..3c2590c6 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/blocks/trapdoors.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "hexcasting:akashic_trapdoor" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json b/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json new file mode 100644 index 00000000..364c4e00 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/blocks/wooden_doors.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "hexcasting:akashic_door" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json b/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json new file mode 100644 index 00000000..3c2590c6 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/blocks/wooden_trapdoors.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "hexcasting:akashic_trapdoor" + ] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/items/doors.json b/src/generated/resources/data/minecraft/tags/items/doors.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/items/doors.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/items/leaves.json b/src/generated/resources/data/minecraft/tags/items/leaves.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/items/leaves.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/items/logs.json b/src/generated/resources/data/minecraft/tags/items/logs.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/items/logs.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json b/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/items/logs_that_burn.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/items/planks.json b/src/generated/resources/data/minecraft/tags/items/planks.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/items/planks.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/generated/resources/data/minecraft/tags/items/wooden_doors.json b/src/generated/resources/data/minecraft/tags/items/wooden_doors.json new file mode 100644 index 00000000..5e8aecc9 --- /dev/null +++ b/src/generated/resources/data/minecraft/tags/items/wooden_doors.json @@ -0,0 +1,4 @@ +{ + "replace": false, + "values": [] +} \ No newline at end of file diff --git a/src/main/java/at/petrak/hexcasting/common/blocks/HexBlockTags.java b/src/main/java/at/petrak/hexcasting/common/blocks/HexBlockTags.java index e7a7d4ed..905ca710 100644 --- a/src/main/java/at/petrak/hexcasting/common/blocks/HexBlockTags.java +++ b/src/main/java/at/petrak/hexcasting/common/blocks/HexBlockTags.java @@ -2,9 +2,15 @@ package at.petrak.hexcasting.common.blocks; import at.petrak.hexcasting.HexMod; import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.TagKey; +import net.minecraft.world.level.block.Block; public class HexBlockTags { - private static ResourceLocation modLoc(String name) { - return new ResourceLocation(HexMod.MOD_ID, name); + public static final TagKey AKASHIC_LOGS = create("akashic_logs"); + public static final TagKey AKASHIC_PLANKS = create("akashic_planks"); + + private static TagKey create(String name) { + return BlockTags.create(new ResourceLocation(HexMod.MOD_ID, name)); } } diff --git a/src/main/java/at/petrak/hexcasting/common/items/HexItemTags.java b/src/main/java/at/petrak/hexcasting/common/items/HexItemTags.java new file mode 100644 index 00000000..57020fc5 --- /dev/null +++ b/src/main/java/at/petrak/hexcasting/common/items/HexItemTags.java @@ -0,0 +1,18 @@ +package at.petrak.hexcasting.common.items; + +import at.petrak.hexcasting.HexMod; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.tags.ItemTags; +import net.minecraft.tags.TagKey; +import net.minecraft.world.item.Item; + +public class HexItemTags { + public static final TagKey AKASHIC_LOGS = create("akashic_logs"); + public static final TagKey AKASHIC_PLANKS = create("akashic_planks"); + + public static final TagKey AMETHYST_DUST = ItemTags.create(new ResourceLocation("forge", "dusts/amethyst")); + + private static TagKey create(String name) { + return ItemTags.create(new ResourceLocation(HexMod.MOD_ID, name)); + } +} diff --git a/src/main/java/at/petrak/hexcasting/datagen/HexBlockStatesAndModels.java b/src/main/java/at/petrak/hexcasting/datagen/HexBlockStatesAndModels.java index bac7857f..fd07e9a3 100644 --- a/src/main/java/at/petrak/hexcasting/datagen/HexBlockStatesAndModels.java +++ b/src/main/java/at/petrak/hexcasting/datagen/HexBlockStatesAndModels.java @@ -170,13 +170,14 @@ public class HexBlockStatesAndModels extends PaucalBlockStateAndModelProvider { cubeBlockAndItem(HexBlocks.AMETHYST_TILES.get(), "amethyst_tiles"); cubeBlockAndItem(HexBlocks.SCROLL_PAPER.get(), "scroll_paper"); cubeBlockAndItem(HexBlocks.ANCIENT_SCROLL_PAPER.get(), "ancient_scroll_paper"); - + blockAndItem(HexBlocks.SCROLL_PAPER_LANTERN.get(), models().cubeBottomTop("scroll_paper_lantern", - modLoc("block/scroll_paper_lantern_side"), - modLoc("block/scroll_paper_lantern_bottom"), - modLoc("block/scroll_paper_lantern_top"))); - - blockAndItem(HexBlocks.ANCIENT_SCROLL_PAPER_LANTERN.get(), models().cubeBottomTop("ancient_scroll_paper_lantern", + modLoc("block/scroll_paper_lantern_side"), + modLoc("block/scroll_paper_lantern_bottom"), + modLoc("block/scroll_paper_lantern_top"))); + + blockAndItem(HexBlocks.ANCIENT_SCROLL_PAPER_LANTERN.get(), + models().cubeBottomTop("ancient_scroll_paper_lantern", modLoc("block/ancient_scroll_paper_lantern_side"), modLoc("block/ancient_scroll_paper_lantern_bottom"), modLoc("block/ancient_scroll_paper_lantern_top"))); @@ -185,9 +186,9 @@ public class HexBlockStatesAndModels extends PaucalBlockStateAndModelProvider { axisBlock(HexBlocks.AKASHIC_LOG_STRIPPED.get(), modLoc("block/akashic/log_stripped"), modLoc("block/akashic/log_end_stripped")); - blockAndItem(HexBlocks.AKASHIC_WOOD.get(), models().cubeAll("akashic_log", modLoc("block/akashic/log"))); + blockAndItem(HexBlocks.AKASHIC_WOOD.get(), models().cubeAll("akashic_wood", modLoc("block/akashic/log"))); blockAndItem(HexBlocks.AKASHIC_WOOD_STRIPPED.get(), - models().cubeAll("akashic_log_stripped", modLoc("block/akashic/log_stripped"))); + models().cubeAll("akashic_wood_stripped", modLoc("block/akashic/log_stripped"))); blockAndItem(HexBlocks.AKASHIC_PANEL.get(), models().cubeAll("akashic_panel", modLoc("block/akashic/panel"))); blockAndItem(HexBlocks.AKASHIC_TILE.get(), models().cubeAll("akashic_tile", modLoc("block/akashic/tile"))); diff --git a/src/main/java/at/petrak/hexcasting/datagen/HexBlockTagProvider.java b/src/main/java/at/petrak/hexcasting/datagen/HexBlockTagProvider.java index 077a7533..bbae8ddc 100644 --- a/src/main/java/at/petrak/hexcasting/datagen/HexBlockTagProvider.java +++ b/src/main/java/at/petrak/hexcasting/datagen/HexBlockTagProvider.java @@ -1,6 +1,7 @@ package at.petrak.hexcasting.datagen; import at.petrak.hexcasting.HexMod; +import at.petrak.hexcasting.common.blocks.HexBlockTags; import at.petrak.hexcasting.common.blocks.HexBlocks; import net.minecraft.data.DataGenerator; import net.minecraft.data.tags.BlockTagsProvider; @@ -39,6 +40,9 @@ public class HexBlockTagProvider extends BlockTagsProvider { tag(BlockTags.CRYSTAL_SOUND_BLOCKS) .add(HexBlocks.CONJURED.get(), HexBlocks.AMETHYST_TILES.get(), HexBlocks.SCONCE.get()); + tag(HexBlockTags.AKASHIC_LOGS) + .add(HexBlocks.AKASHIC_LOG.get(), HexBlocks.AKASHIC_LOG_STRIPPED.get(), + HexBlocks.AKASHIC_WOOD.get(), HexBlocks.AKASHIC_WOOD_STRIPPED.get()); tag(BlockTags.LOGS) .add(HexBlocks.AKASHIC_LOG.get(), HexBlocks.AKASHIC_LOG_STRIPPED.get(), HexBlocks.AKASHIC_WOOD.get(), HexBlocks.AKASHIC_WOOD_STRIPPED.get()); @@ -48,5 +52,17 @@ public class HexBlockTagProvider extends BlockTagsProvider { tag(BlockTags.LEAVES) .add(HexBlocks.AKASHIC_LEAVES1.get(), HexBlocks.AKASHIC_LEAVES2.get(), HexBlocks.AKASHIC_LEAVES3.get()); + tag(BlockTags.PLANKS) + .add(HexBlocks.AKASHIC_PLANKS.get(), HexBlocks.AKASHIC_PANEL.get(), HexBlocks.AKASHIC_TILE.get()); + tag(HexBlockTags.AKASHIC_PLANKS) + .add(HexBlocks.AKASHIC_PLANKS.get(), HexBlocks.AKASHIC_PANEL.get(), HexBlocks.AKASHIC_TILE.get()); + tag(BlockTags.DOORS) + .add(HexBlocks.AKASHIC_DOOR.get()); + tag(BlockTags.WOODEN_DOORS) + .add(HexBlocks.AKASHIC_DOOR.get()); + tag(BlockTags.TRAPDOORS) + .add(HexBlocks.AKASHIC_TRAPDOOR.get()); + tag(BlockTags.WOODEN_TRAPDOORS) + .add(HexBlocks.AKASHIC_TRAPDOOR.get()); } } diff --git a/src/main/java/at/petrak/hexcasting/datagen/HexDataGenerators.java b/src/main/java/at/petrak/hexcasting/datagen/HexDataGenerators.java index 7ab03128..ef7923ac 100644 --- a/src/main/java/at/petrak/hexcasting/datagen/HexDataGenerators.java +++ b/src/main/java/at/petrak/hexcasting/datagen/HexDataGenerators.java @@ -16,10 +16,12 @@ public class HexDataGenerators { gen.addProvider(new HexBlockStatesAndModels(gen, efh)); } if (ev.includeServer()) { + HexBlockTagProvider blockTagProvider = new HexBlockTagProvider(gen, efh); gen.addProvider(new HexRecipes(gen)); gen.addProvider(new HexLootModifiers(gen)); gen.addProvider(new HexAdvancements(gen, efh)); - gen.addProvider(new HexBlockTagProvider(gen, efh)); + gen.addProvider(new HexItemTagProvider(gen, blockTagProvider, efh)); + gen.addProvider(blockTagProvider); gen.addProvider(new HexLootTables(gen)); } } diff --git a/src/main/java/at/petrak/hexcasting/datagen/HexItemTagProvider.java b/src/main/java/at/petrak/hexcasting/datagen/HexItemTagProvider.java new file mode 100644 index 00000000..70251607 --- /dev/null +++ b/src/main/java/at/petrak/hexcasting/datagen/HexItemTagProvider.java @@ -0,0 +1,36 @@ +package at.petrak.hexcasting.datagen; + +import at.petrak.hexcasting.HexMod; +import at.petrak.hexcasting.common.blocks.HexBlockTags; +import at.petrak.hexcasting.common.items.HexItemTags; +import at.petrak.hexcasting.common.items.HexItems; +import net.minecraft.data.DataGenerator; +import net.minecraft.data.tags.BlockTagsProvider; +import net.minecraft.data.tags.ItemTagsProvider; +import net.minecraft.tags.BlockTags; +import net.minecraft.tags.ItemTags; +import net.minecraftforge.common.Tags; +import net.minecraftforge.common.data.ExistingFileHelper; +import org.jetbrains.annotations.Nullable; + +public class HexItemTagProvider extends ItemTagsProvider { + public HexItemTagProvider(DataGenerator pGenerator, BlockTagsProvider pBlockTagsProvider, + @Nullable ExistingFileHelper existingFileHelper) { + super(pGenerator, pBlockTagsProvider, HexMod.MOD_ID, existingFileHelper); + } + + @Override + protected void addTags() { + tag(Tags.Items.GEMS).add(HexItems.CHARGED_AMETHYST.get()); + tag(HexItemTags.AMETHYST_DUST).add(HexItems.AMETHYST_DUST.get()); + + this.copy(HexBlockTags.AKASHIC_LOGS, HexItemTags.AKASHIC_LOGS); + this.copy(HexBlockTags.AKASHIC_PLANKS, HexItemTags.AKASHIC_PLANKS); + this.copy(BlockTags.LOGS_THAT_BURN, ItemTags.LOGS_THAT_BURN); + this.copy(BlockTags.LOGS, ItemTags.LOGS); + this.copy(BlockTags.PLANKS, ItemTags.PLANKS); + this.copy(BlockTags.DOORS, ItemTags.DOORS); + this.copy(BlockTags.WOODEN_DOORS, ItemTags.WOODEN_DOORS); + this.copy(BlockTags.LEAVES, ItemTags.LEAVES); + } +} diff --git a/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java b/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java index 8b787fe6..1c8b017a 100644 --- a/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java +++ b/src/main/java/at/petrak/hexcasting/datagen/HexLootTables.java @@ -28,7 +28,11 @@ public class HexLootTables extends PaucalLootTableProvider { HexBlocks.DIRECTRIX_REDSTONE, HexBlocks.EMPTY_DIRECTRIX, HexBlocks.SLATE_BLOCK, HexBlocks.AMETHYST_DUST_BLOCK, HexBlocks.AMETHYST_TILES, HexBlocks.SCROLL_PAPER, HexBlocks.ANCIENT_SCROLL_PAPER, HexBlocks.SCROLL_PAPER_LANTERN, HexBlocks.ANCIENT_SCROLL_PAPER_LANTERN, - HexBlocks.SCONCE); + HexBlocks.SCONCE, + HexBlocks.AKASHIC_LOG, HexBlocks.AKASHIC_LOG_STRIPPED, HexBlocks.AKASHIC_WOOD, + HexBlocks.AKASHIC_WOOD_STRIPPED, + HexBlocks.AKASHIC_TILE, HexBlocks.AKASHIC_PANEL, + HexBlocks.AKASHIC_DOOR, HexBlocks.AKASHIC_TRAPDOOR); var slatePool = LootPool.lootPool().name("slate"). setRolls(ConstantValue.exactly(1)) diff --git a/src/main/java/at/petrak/hexcasting/datagen/HexRecipes.java b/src/main/java/at/petrak/hexcasting/datagen/HexRecipes.java index 2e6d7690..1fbd1c17 100644 --- a/src/main/java/at/petrak/hexcasting/datagen/HexRecipes.java +++ b/src/main/java/at/petrak/hexcasting/datagen/HexRecipes.java @@ -3,6 +3,7 @@ package at.petrak.hexcasting.datagen; import at.petrak.hexcasting.HexMod; import at.petrak.hexcasting.common.advancement.OvercastTrigger; import at.petrak.hexcasting.common.blocks.HexBlocks; +import at.petrak.hexcasting.common.items.HexItemTags; import at.petrak.hexcasting.common.items.HexItems; import at.petrak.hexcasting.common.recipe.SealFocusRecipe; import at.petrak.hexcasting.common.recipe.ingredient.StateIngredientHelper; @@ -10,12 +11,15 @@ import at.petrak.hexcasting.common.recipe.ingredient.VillagerIngredient; import at.petrak.hexcasting.datagen.recipebuilders.BrainsweepRecipeBuilder; import at.petrak.paucal.api.datagen.PaucalRecipeProvider; import net.minecraft.advancements.critereon.EntityPredicate; +import net.minecraft.advancements.critereon.InventoryChangeTrigger; +import net.minecraft.advancements.critereon.ItemPredicate; import net.minecraft.advancements.critereon.MinMaxBounds; import net.minecraft.core.Registry; import net.minecraft.data.DataGenerator; import net.minecraft.data.recipes.*; import net.minecraft.resources.ResourceLocation; import net.minecraft.tags.ItemTags; +import net.minecraft.tags.TagKey; import net.minecraft.world.item.DyeColor; import net.minecraft.world.item.DyeItem; import net.minecraft.world.item.Item; @@ -209,6 +213,28 @@ public class HexRecipes extends PaucalRecipeProvider { Ingredient.of(Tags.Items.INGOTS_COPPER)) .unlockedBy("has_item", has(HexItems.CHARGED_AMETHYST.get())).save(recipes); + ShapelessRecipeBuilder.shapeless(HexBlocks.AKASHIC_PLANKS.get(), 4) + .requires(HexItemTags.AKASHIC_LOGS) + .unlockedBy("has_item", has(HexItemTags.AKASHIC_LOGS)).save(recipes); + ShapedRecipeBuilder.shaped(HexBlocks.AKASHIC_WOOD.get(), 3) + .define('W', HexBlocks.AKASHIC_LOG.get()) + .pattern("WW") + .pattern("WW") + .unlockedBy("has_item", has(HexBlocks.AKASHIC_LOG.get())).save(recipes); + ShapedRecipeBuilder.shaped(HexBlocks.AKASHIC_WOOD_STRIPPED.get(), 3) + .define('W', HexBlocks.AKASHIC_LOG_STRIPPED.get()) + .pattern("WW") + .pattern("WW") + .unlockedBy("has_item", has(HexBlocks.AKASHIC_LOG_STRIPPED.get())).save(recipes); + ring(HexBlocks.AKASHIC_PANEL.get(), 8, HexItemTags.AKASHIC_PLANKS, null) + .unlockedBy("has_item", has(HexItemTags.AKASHIC_PLANKS)).save(recipes); + ShapedRecipeBuilder.shaped(HexBlocks.AKASHIC_TILE.get(), 6) + .define('W', HexItemTags.AKASHIC_PLANKS) + .pattern("WW ") + .pattern("W W") + .pattern(" WW") + .unlockedBy("has_item", has(HexItemTags.AKASHIC_PLANKS)).save(recipes); + var enlightenment = new OvercastTrigger.Instance(EntityPredicate.Composite.ANY, MinMaxBounds.Ints.ANY, // add a little bit of slop here @@ -235,19 +261,39 @@ public class HexRecipes extends PaucalRecipeProvider { .pattern("SSC") .unlockedBy("enlightenment", enlightenment).save(recipes); + ShapedRecipeBuilder.shaped(HexBlocks.AKASHIC_BOOKSHELF.get()) + .define('L', HexItemTags.AKASHIC_LOGS) + .define('P', HexItemTags.AKASHIC_PLANKS) + .define('C', Items.BOOK) + /*this is the*/.pattern("LPL") // and what i have for you today is + .pattern("CCC") + .pattern("LPL") + .unlockedBy("enlightenment", enlightenment).save(recipes); + ShapedRecipeBuilder.shaped(HexBlocks.AKASHIC_CONNECTOR.get()) + .define('L', HexItemTags.AKASHIC_LOGS) + .define('P', HexItemTags.AKASHIC_PLANKS) + .define('C', HexItems.CHARGED_AMETHYST.get()) + .pattern("LPL") + .pattern("CCC") + .pattern("LPL") + .unlockedBy("enlightenment", enlightenment).save(recipes); + + new BrainsweepRecipeBuilder(StateIngredientHelper.of(Blocks.AMETHYST_BLOCK), + new VillagerIngredient(null, null, 3), + Blocks.BUDDING_AMETHYST.defaultBlockState()) + .unlockedBy("enlightenment", enlightenment) + .save(recipes, modLoc("brainsweep/budding_amethyst")); new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.EMPTY_IMPETUS.get()), new VillagerIngredient(new ResourceLocation("toolsmith"), null, 2), HexBlocks.IMPETUS_RIGHTCLICK.get().defaultBlockState()) .unlockedBy("enlightenment", enlightenment) .save(recipes, modLoc("brainsweep/impetus_rightclick")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.EMPTY_IMPETUS.get()), new VillagerIngredient(new ResourceLocation("fletcher"), null, 2), HexBlocks.IMPETUS_LOOK.get().defaultBlockState()) .unlockedBy("enlightenment", enlightenment) .save(recipes, modLoc("brainsweep/impetus_look")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.EMPTY_IMPETUS.get()), new VillagerIngredient(new ResourceLocation("cleric"), null, 2), HexBlocks.IMPETUS_STOREDPLAYER.get().defaultBlockState()) @@ -260,15 +306,20 @@ public class HexRecipes extends PaucalRecipeProvider { .unlockedBy("enlightenment", enlightenment) .save(recipes, modLoc("brainsweep/directrix_redstone")); - new BrainsweepRecipeBuilder(StateIngredientHelper.of(Blocks.AMETHYST_BLOCK), - new VillagerIngredient(null, null, 3), + new BrainsweepRecipeBuilder(StateIngredientHelper.of(HexBlocks.AKASHIC_CONNECTOR.get()), + new VillagerIngredient(new ResourceLocation("librarian"), null, 5), Blocks.BUDDING_AMETHYST.defaultBlockState()) .unlockedBy("enlightenment", enlightenment) - .save(recipes, modLoc("brainsweep/budding_amethyst")); + .save(recipes, modLoc("brainsweep/akashic_connector")); } protected void specialRecipe(Consumer consumer, SimpleRecipeSerializer serializer) { var name = Registry.RECIPE_SERIALIZER.getKey(serializer); SpecialRecipeBuilder.special(serializer).save(consumer, prefix("dynamic/" + name.getPath()).toString()); } + + // why is this private waa + protected static InventoryChangeTrigger.TriggerInstance has(TagKey pTag) { + return inventoryTrigger(ItemPredicate.Builder.item().of(pTag).build()); + } }