diff --git a/build.gradle b/build.gradle index d4ee1fb4..c9feddde 100644 --- a/build.gradle +++ b/build.gradle @@ -78,6 +78,7 @@ dependencies { implementation "top.theillusivec4.curios:curios-neoforge:${curios_version}+1.21" implementation "curse.maven:jade-324717:5729884" implementation "curse.maven:modonomicon-538392:5717209" + implementation "curse.maven:durability-display-1009842:5599487" compileOnly "mezz.jei:jei-${minecraft_version}-common-api:${jei_version}" compileOnly "mezz.jei:jei-${minecraft_version}-neoforge-api:${jei_version}" diff --git a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e index 5ea34165..db7c14e9 100644 --- a/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e +++ b/src/generated/resources/.cache/9fb1092f32d4fcbf9e061ffd718d4ec689c6c95e @@ -1,9 +1,9 @@ -// 1.21.1 2024-09-29T10:20:47.3671384 Recipes +// 1.21.1 2024-09-29T14:38:28.371719627 Recipes 11639f08778ec1107c05d822f9beaa1f90e3bb32 data/minecraft/advancement/recipes/misc/cast_iron_ingot_blasting.json 5f305b97f7366fc61918bd266d0bacfa386b16c1 data/minecraft/advancement/recipes/misc/cast_iron_nugget_to_ingot.json c01db9d69b288d37c769cf605b945ebf60a08e21 data/minecraft/advancement/recipes/misc/diving_chestplate.json 36b0d6b627495be6eaf8d6e567f9c95bdb744f14 data/minecraft/advancement/recipes/misc/diving_chestplate_oxygen.json -e83432cfbd30246a5c90a4dadb7cddc68eb41776 data/minecraft/recipe/cast_iron_ingot_blasting.json +1f708c5dccdbb5a569e215ac0621ef2c3daa085d data/minecraft/recipe/cast_iron_ingot_blasting.json 5d8fdeabdc238a5b557a2a159a9ccb30e723703b data/minecraft/recipe/cast_iron_nugget_to_ingot.json 83753bf5ab777551fde11d26262c5f2b947f4a64 data/minecraft/recipe/diving_chestplate.json d9bd5ed8d761638f07ac753459c333be5e11032b data/minecraft/recipe/diving_chestplate_oxygen.json @@ -11,7 +11,6 @@ d9bd5ed8d761638f07ac753459c333be5e11032b data/minecraft/recipe/diving_chestplate 1d373a9d6f1d9a44589095bc5b67e5e237fe7075 data/minecraft/recipe/drowned_lung.json 8476e4500001a8b1e18c57e5add46ab9b1f43493 data/minecraft/recipe/guardian_eye_augment.json 95a4e3198eb7336208d8b7154d8cc815b49ab307 data/nautec/advancement/recipes/misc/aquarine_steel_axe.json -7953df32ac7bac0e74d06ec2c88bdc31d3dd0327 data/nautec/advancement/recipes/misc/aquarine_steel_block.json 258ad51beb8603bf4731f299aba3d55537bad429 data/nautec/advancement/recipes/misc/aquarine_steel_boots.json e20dff21299a723c25fe2e3350808d40529d7f21 data/nautec/advancement/recipes/misc/aquarine_steel_chestplate.json 8f2aba847de10d1a879ff6e4a156fe2390120df5 data/nautec/advancement/recipes/misc/aquarine_steel_compound.json @@ -26,6 +25,7 @@ d105bf1507d29e8c1a25eea476d5566745ca84a9 data/nautec/advancement/recipes/misc/aq 4892a02e14ac5f73378727582505c2c6f671e254 data/nautec/advancement/recipes/misc/augmentation_station.json b52be24dd909e8a30bc3be0e4b48f5336cc80fab data/nautec/advancement/recipes/misc/augmentation_station_extension.json 0a69ce6ebf4eb3fdd0643da2840333fb3e81731d data/nautec/advancement/recipes/misc/brown_polymer.json +d954dfc419cb2d5ab0e183b4899d93dae7a32422 data/nautec/advancement/recipes/misc/cast_iron_ingot_from_blasting.json d6a6420d783a5714529e18ba05f0382124f3c4e0 data/nautec/advancement/recipes/misc/cast_iron_nugget.json 939b8a71fa717c6f77dc521309a69952dd701da4 data/nautec/advancement/recipes/misc/cast_iron_rod.json 80c335c97a3e51847dd873dc952a31379bb96d95 data/nautec/advancement/recipes/misc/charger.json @@ -45,27 +45,27 @@ e8c7d011fc8d7584ae12c127a368e794c349cc43 data/nautec/advancement/recipes/misc/la fa6493a3ef0380850872951ce297171d1708ce63 data/nautec/advancement/recipes/misc/mixer.json 94885315f77dd2362883172287de15e80f1a6e7b data/nautec/advancement/recipes/misc/nautec_guide.json 8c227a8c475e21c750c907230ff6420791f780d6 data/nautec/advancement/recipes/misc/polished_prismarine.json +8b0963164bc58a64ef675d369ac6f4221b8cbebb data/nautec/advancement/recipes/misc/prism_monocle.json 03abc1a326810daa2cccf6acf1d21a55d776bd8b data/nautec/advancement/recipes/misc/prismarine_laser_relay.json 1eb85648ed5c154f0a465c787ef1cfd4542c3572 data/nautec/advancement/recipes/misc/prismatic_battery.json -8b0963164bc58a64ef675d369ac6f4221b8cbebb data/nautec/advancement/recipes/misc/prism_monocle.json df1f62063c751d0d6939426505f6bb14f6ae7382 data/nautec/advancement/recipes/misc/whisk.json -2edaf56a3e57123c7fea16bceccd4e1b956d7679 data/nautec/recipe/aquarine_steel_axe.json -ac856492b21e9245de0ba2edcbeda8bc2b06c7fd data/nautec/recipe/aquarine_steel_block.json +83490bc77ed0236455b903949d3ef5ee0430d7ed data/nautec/recipe/aquarine_steel_axe.json 2705880f2aec0f82cf5d58ffa1736dbeea7b7452 data/nautec/recipe/aquarine_steel_boots.json 46d7aad5f5ba6a71f021d3ecdc47ec5078ccbd59 data/nautec/recipe/aquarine_steel_chestplate.json c4fdc4aa2913699bef2463d5c929bc4724d180ae data/nautec/recipe/aquarine_steel_compound.json 3b232c689a28fd2cd108b9eede46708b9b851a5b data/nautec/recipe/aquarine_steel_helmet.json -d049fd8d89899cc0acf35826d38877b6f5f96b52 data/nautec/recipe/aquarine_steel_hoe.json +0236a4740a86925405b8bfddf145edbf77c97e52 data/nautec/recipe/aquarine_steel_hoe.json 1e8f331795a5b23402f372dcefa418c258ae6cc6 data/nautec/recipe/aquarine_steel_leggings.json -6b07cd78327f0407cfa06acdbb853f00bc8e042e data/nautec/recipe/aquarine_steel_pickaxe.json -6860ea83a5f2e2456e3c354312504dfa0b71c45e data/nautec/recipe/aquarine_steel_shovel.json -926024e7a8d5a04b41c23abb433648dc81ccf699 data/nautec/recipe/aquarine_steel_sword.json +4f09212df595932bc8949182e8f75fce8414b666 data/nautec/recipe/aquarine_steel_pickaxe.json +7d292436e361119714329a5ae730048a2a6f2e28 data/nautec/recipe/aquarine_steel_shovel.json +c99f07ec9ec3b3e570ab81f9f6b5890fdcf3930f data/nautec/recipe/aquarine_steel_sword.json 78c4da26cb8c9f272043276502bbd017b1c163ea data/nautec/recipe/aquarine_steel_wrench.json e5b299cdc66cfaa5d495fc6677a39188d7e05304 data/nautec/recipe/aquatic_catalyst.json a60abd473ea054db8b2b484be6948f74ef64abd7 data/nautec/recipe/aquatic_catalyst_channeling/kelp.json bea82f431ae6dd57d20317ed174d13f15bdf51a2 data/nautec/recipe/augmentation_station.json 9c2bc24537825f94866e46c4d37cd820f1f59cc3 data/nautec/recipe/augmentation_station_extension.json b2cb1d73b9e1e2104af451250ff4464197c45531 data/nautec/recipe/brown_polymer.json +ac856492b21e9245de0ba2edcbeda8bc2b06c7fd data/nautec/recipe/cast_iron_ingot_from_blasting.json 0e7ac319099e484ba772e18754213fe7009a42cd data/nautec/recipe/cast_iron_nugget.json 54fa00f5e878d9324e9c7d03d3e521da24bcd65f data/nautec/recipe/cast_iron_rod.json a1104a2fca829ca101471417232e05510e405423 data/nautec/recipe/charger.json @@ -87,11 +87,11 @@ bfb697fd87f2fb761866405c2a58df7aef434ae2 data/nautec/recipe/item_transformation/ a4bdb97abe0834d405f7584452f78242585e02ff data/nautec/recipe/item_transformation/burnt_coil_to_laser_channeling_coil.json 3ff56013c9c1926be24f71bdb57c93527ef7ee28 data/nautec/recipe/laser_junction.json 11d23344db3f6e98c1520328fd6c883bccd8ca57 data/nautec/recipe/long_distance_laser.json -3c72510dc295062631bc9b6634d4a009e2b8f952 data/nautec/recipe/mixer.json +4925f952a200ae56a4e1ad04a45897be4988aad4 data/nautec/recipe/mixer.json 35a2d38352317596d0e56958db954ee65944fd30 data/nautec/recipe/mixing/dried_kelp_slime_ball_prismarine_crystals_seagrass.json 674df651148d747a200794f496996b82ca94e72f data/nautec/recipe/nautec_guide.json cd9bfbdf0f0468399cc4700d0c360b8283253c96 data/nautec/recipe/polished_prismarine.json +4fe8f6115c759c654e132afedec76d846f0a89d5 data/nautec/recipe/prism_monocle.json ac628b97c097227e3af94f13cbe35a2cf3ee3124 data/nautec/recipe/prismarine_laser_relay.json 4745c9855337a311cb5b7211168927a61645d193 data/nautec/recipe/prismatic_battery.json -4fe8f6115c759c654e132afedec76d846f0a89d5 data/nautec/recipe/prism_monocle.json 266c89a0698de108847ad3b60be50d230822cee4 data/nautec/recipe/whisk.json diff --git a/src/generated/resources/.cache/c622617f6fabf890a00b9275cd5f643584a8a2c8 b/src/generated/resources/.cache/c622617f6fabf890a00b9275cd5f643584a8a2c8 index dc85854e..cd60c97f 100644 --- a/src/generated/resources/.cache/c622617f6fabf890a00b9275cd5f643584a8a2c8 +++ b/src/generated/resources/.cache/c622617f6fabf890a00b9275cd5f643584a8a2c8 @@ -1,2 +1,2 @@ -// 1.21.1 2024-09-29T11:46:44.5605123 Languages: en_us -91c6589fa90a72ca33838d000724025553316a4f assets/nautec/lang/en_us.json +// 1.21.1 2024-09-29T14:52:20.347042837 Languages: en_us +6eb0118b20ee186d4285b221b6ebef41b66ee6c2 assets/nautec/lang/en_us.json diff --git a/src/generated/resources/.cache/eb748cc26e43de416ad491bd48ccca24d169a651 b/src/generated/resources/.cache/eb748cc26e43de416ad491bd48ccca24d169a651 index a45ff079..5add3949 100644 --- a/src/generated/resources/.cache/eb748cc26e43de416ad491bd48ccca24d169a651 +++ b/src/generated/resources/.cache/eb748cc26e43de416ad491bd48ccca24d169a651 @@ -1,13 +1,19 @@ -// 1.21.1 2024-09-29T11:52:01.6465265 Books: nautec +// 1.21.1 2024-09-29T14:55:02.530995873 Books: nautec 6d944fd1b3f4f8d8baf18317dbdea1e50476ed05 data/nautec/modonomicon/books/nautec_guide/book.json ea5fe754ad19a1903e7a9d19f39e3b1488e59cfe data/nautec/modonomicon/books/nautec_guide/categories/getting_started.json +3b186e166ff5703903304a77e793b8364cd2a0b7 data/nautec/modonomicon/books/nautec_guide/categories/laser_chemistry.json 840e237eb35798d6695b2c42abbeead5128626f3 data/nautec/modonomicon/books/nautec_guide/entries/getting_started/diving_gear.json -33d4b677fbd132b7845a456bfd7982547349c587 data/nautec/modonomicon/books/nautec_guide/entries/getting_started/etching.json +e29501f9e540790de1b926ec2c269c0b8906c5b6 data/nautec/modonomicon/books/nautec_guide/entries/getting_started/etching.json 3025c1f954bcbae17b5500c8814af26ccda6cf0a data/nautec/modonomicon/books/nautec_guide/entries/getting_started/introduction.json 331ded6d67b46405edf0f82e7a74e5160530c1ca data/nautec/modonomicon/books/nautec_guide/entries/getting_started/item_transformation.json -836ca05eab6d177f97c092588df2c03e27021d66 data/nautec/modonomicon/books/nautec_guide/entries/getting_started/laser_manipulation.json -7c1359fceaa3b513a15df94a5eb6811d624a1ad4 data/nautec/modonomicon/books/nautec_guide/entries/getting_started/laser_power.json -307bdce415e37b7c8f8298389c0978afdb36815c data/nautec/modonomicon/books/nautec_guide/entries/getting_started/mixer.json +e3f1343172316670fa2248134771f053cdd7ce5e data/nautec/modonomicon/books/nautec_guide/entries/getting_started/laser_power.json 45e26701a17f09bdc7b1cb6883e95df5488f6d54 data/nautec/modonomicon/books/nautec_guide/entries/getting_started/monocle.json 208abc52b3b1a594abae2333834da891aef78ac1 data/nautec/modonomicon/books/nautec_guide/entries/getting_started/structures.json f8a4b84b6a937e6fbc1566d38f1bb6aa2642174d data/nautec/modonomicon/books/nautec_guide/entries/getting_started/utilities.json +531bb6789f8f941f0e6ba585d0383b9c440105bc data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/charger.json +f73cdc2c1f05a1e877cfa8ce982bcd0ff5bf94fb data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/chemistry_introduction.json +d8ccf0bdb2ccc6ddc9bcac854c96f5555e1df640 data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/crystal_shards.json +5b6835fd9e5ac147325e9c28f05459f5620c8f9c data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/drain.json +65716fa85df9020bd445a8da037a326dd41e4887 data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/laser_manipulation.json +0cf50c5fd68f67b000d5be4828c096618ef8d0c1 data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/mixer.json +3aac42d28a66d8153bcc92410d7b62075eb65147 data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/tools.json diff --git a/src/generated/resources/assets/nautec/lang/en_us.json b/src/generated/resources/assets/nautec/lang/en_us.json index 8df63ad9..ef17608a 100644 --- a/src/generated/resources/assets/nautec/lang/en_us.json +++ b/src/generated/resources/assets/nautec/lang/en_us.json @@ -45,17 +45,10 @@ "book.nautec.nautec_guide.getting_started.item_transformation.item_transformation.text": "Item transformation works by shooting lasers at items to transform them into other items.\n\\\n\\\nSome recipes may require a certain level of purity so be sure to check before crafting.\n", "book.nautec.nautec_guide.getting_started.item_transformation.item_transformation.title": "Item Transformation", "book.nautec.nautec_guide.getting_started.item_transformation.name": "Item Transformation", - "book.nautec.nautec_guide.getting_started.laser_manipulation.description": "Playing with Lasers !", - "book.nautec.nautec_guide.getting_started.laser_manipulation.laser_manipulation.text": "The Prismarine Laser Relay is a block that allows you to extend the range of your lasers.\n Make sure to point the arrow to the right direction!\n\\\nIt is crafted using 6 Polish Prismarine blocks.\n\\\n\\\nThe Laser Junction is a block that allows you to split a laser beam into multiple directions.\nWhile the recipe is quite expensive, it is a very useful block to have.\n", - "book.nautec.nautec_guide.getting_started.laser_manipulation.laser_manipulation.title": "Laser Manipulation", - "book.nautec.nautec_guide.getting_started.laser_manipulation.name": "Laser Manipulation", "book.nautec.nautec_guide.getting_started.laser_power.description": "Whoooooooosh", "book.nautec.nautec_guide.getting_started.laser_power.intro.text": "Lasers are a mysterious technology. Nobody really knows\nexactly how to create them. However using some prismarine\nboth dark and light, one is able to create an Aquatic Catalyst.\n\\\nWhile this block itself does not possesses the ability to channel\nenergy into a laser.\n", "book.nautec.nautec_guide.getting_started.laser_power.intro.title": "An Introduction to Laser Power", "book.nautec.nautec_guide.getting_started.laser_power.name": "Laser Power", - "book.nautec.nautec_guide.getting_started.mixer.description": "Mixing my way through the ocean", - "book.nautec.nautec_guide.getting_started.mixer.mixer.text": "The Mixer is a powerful machine that can mix and combine items in a variety of ways.\n\\\nIt requires laser power to operate. To display informations about the ongoing process, you can use the Monocle.\n\\\nIts main purpose is to craft the Electrolyte Algae Serum, used to infuse tools to unlock their full potential.\n", - "book.nautec.nautec_guide.getting_started.mixer.name": "The Mixer", "book.nautec.nautec_guide.getting_started.monocle.description": "The Third Eye of the Sea", "book.nautec.nautec_guide.getting_started.monocle.monocle.text": "The Prism Monocle is a useful tool that allows you to display informations about the block you are looking at.\n\\\n\\\nIt is particularly useful to know how pure is a laser beam.\n\\\n\\\nIf some informations are missing, we recommend using the Jade mod as it has a more extensive support for Nautec.\n", "book.nautec.nautec_guide.getting_started.monocle.monocle.title": "Prism Monocle", @@ -71,6 +64,36 @@ "book.nautec.nautec_guide.getting_started.utilities.name": "Tools and Utilities", "book.nautec.nautec_guide.getting_started.utilities.utilities.text": "The Aquarine Steel Wrench, can be used to rotate blocks and change modes on machinery, it can be crafted using 4 Aquarine Steel Ingots.\n\\\n\\\nThe crowbar is another useful tool that will allow you to open the many crates you will find in the ocean.\n", "book.nautec.nautec_guide.getting_started.utilities.utilities.title": "Tools and Utilities", + "book.nautec.nautec_guide.laser_chemistry.charger.charger.text": "Charging...\n", + "book.nautec.nautec_guide.laser_chemistry.charger.charger.title": "Charger", + "book.nautec.nautec_guide.laser_chemistry.charger.description": "Bzzzzzz", + "book.nautec.nautec_guide.laser_chemistry.charger.name": "Charger", + "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.chemistry.text": "Chemistry is a powerful concept that while mysterious is\nalso quite interesting. An observation i have made is that chemistry\nis heavily focused around the ocean and mainly uses plants\nor magical crystals as ingredients for substances.\n\\\n\\\nEven though all of this might sound foreign, you have already\ncome across a chemical substance, Etching Acid.\nWhile not typical in its structure, it is still considered a chemical fluid\ndue to its transforming abilities.\n", + "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.chemistry.title": "Introduction to chemistry", + "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.description": "It's not gregtech, I swear", + "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.eas.text": "Electrolyte Algae Serum (EAS) is on of the first chemicals\nyou will come across. It is known for\nits transforming abilities that can empower\nitems and entities.\n\\\nYou might have already discovered that it uses another liquid: Salt Water\n\\\nSalt water can be obtained by filling a bucket of water in an ocean biome which\nwill turn it into salt water. In the future there are even more powerful ways\nto gather it, so stay tuned!\n", + "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.eas.title": "Electrolyte Algae Serum", + "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.name": "Introduction to Chemistry", + "book.nautec.nautec_guide.laser_chemistry.crystal_shards.description": "Don't underestimate them", + "book.nautec.nautec_guide.laser_chemistry.crystal_shards.name": "Prismarine Crystal Shards", + "book.nautec.nautec_guide.laser_chemistry.crystal_shards.prismarine_crystal_shards.text": "Crystal shards are end of chapter :3\n", + "book.nautec.nautec_guide.laser_chemistry.crystal_shards.prismarine_crystal_shards.title": "Prismarine Crystal Shard", + "book.nautec.nautec_guide.laser_chemistry.drain.description": "Sucks in everything", + "book.nautec.nautec_guide.laser_chemistry.drain.drain.text": "Drain much salt wata...\n", + "book.nautec.nautec_guide.laser_chemistry.drain.drain.title": "Deep Sea Drain", + "book.nautec.nautec_guide.laser_chemistry.drain.name": "Deep Sea Drain", + "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.description": "Playing with Lasers !", + "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.laser_manipulation.text": "The Prismarine Laser Relay is a block that allows you to extend the range of your lasers.\nMake sure to point the arrow to the right direction!\n\\\nIt is crafted using 6 Polish Prismarine blocks.\n\\\n\\\nThe Laser Junction is a block that allows you to split a laser beam into multiple directions.\nWhile the recipe is quite expensive, it is a very useful block to have.\n", + "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.laser_manipulation.title": "Laser Manipulation", + "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.name": "Laser Manipulation", + "book.nautec.nautec_guide.laser_chemistry.mixer.description": "Mixing my way through the ocean", + "book.nautec.nautec_guide.laser_chemistry.mixer.mixer.text": "The Mixer is a powerful machine that can mix and combine items in a variety of ways.\n\\\nIt requires laser power to operate. To display informations about the ongoing process, you can use the Monocle.\n\\\nIts main purpose is to craft the Electrolyte Algae Serum, used to infuse tools to unlock their full potential.\n", + "book.nautec.nautec_guide.laser_chemistry.mixer.name": "The Mixer", + "book.nautec.nautec_guide.laser_chemistry.name": "Laser Chemistry", + "book.nautec.nautec_guide.laser_chemistry.tools.basic_tools.text": "Tools...\n", + "book.nautec.nautec_guide.laser_chemistry.tools.basic_tools.title": "Aquarine Steel Tools", + "book.nautec.nautec_guide.laser_chemistry.tools.description": "Innocent looking", + "book.nautec.nautec_guide.laser_chemistry.tools.name": "Aquarine Steel Tools", "book.nautec.nautec_guide.name": "Nautec Guide", "book.nautec.nautec_guide.tooltip": "Nautec Guide Tooltip", "curios.identifier.battery": "Battery", diff --git a/src/generated/resources/data/minecraft/recipe/cast_iron_ingot_blasting.json b/src/generated/resources/data/minecraft/recipe/cast_iron_ingot_blasting.json index 924e5ca5..5c4a3f29 100644 --- a/src/generated/resources/data/minecraft/recipe/cast_iron_ingot_blasting.json +++ b/src/generated/resources/data/minecraft/recipe/cast_iron_ingot_blasting.json @@ -1,8 +1,8 @@ { "type": "minecraft:blasting", "category": "misc", - "cookingtime": 10, - "experience": 2.0, + "cookingtime": 100, + "experience": 0.2, "ingredient": { "tag": "c:ingots/iron" }, diff --git a/src/generated/resources/data/nautec/advancement/recipes/misc/aquarine_steel_block.json b/src/generated/resources/data/nautec/advancement/recipes/misc/aquarine_steel_block.json deleted file mode 100644 index 2425421a..00000000 --- a/src/generated/resources/data/nautec/advancement/recipes/misc/aquarine_steel_block.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "parent": "minecraft:recipes/root", - "criteria": { - "has_item": { - "conditions": { - "items": [ - { - "items": "nautec:aquarine_steel_ingot" - } - ] - }, - "trigger": "minecraft:inventory_changed" - }, - "has_the_recipe": { - "conditions": { - "recipe": "nautec:aquarine_steel_block" - }, - "trigger": "minecraft:recipe_unlocked" - } - }, - "requirements": [ - [ - "has_the_recipe", - "has_item" - ] - ], - "rewards": { - "recipes": [ - "nautec:aquarine_steel_block" - ] - } -} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/advancement/recipes/misc/cast_iron_ingot_from_blasting.json b/src/generated/resources/data/nautec/advancement/recipes/misc/cast_iron_ingot_from_blasting.json index c56ac114..7e43dd8d 100644 --- a/src/generated/resources/data/nautec/advancement/recipes/misc/cast_iron_ingot_from_blasting.json +++ b/src/generated/resources/data/nautec/advancement/recipes/misc/cast_iron_ingot_from_blasting.json @@ -5,7 +5,7 @@ "conditions": { "items": [ { - "items": "minecraft:iron_ingot" + "items": "nautec:aquarine_steel_ingot" } ] }, diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/categories/laser_chemistry.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/categories/laser_chemistry.json new file mode 100644 index 00000000..8f52dc57 --- /dev/null +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/categories/laser_chemistry.json @@ -0,0 +1,18 @@ +{ + "background": "modonomicon:textures/gui/dark_slate_seamless.png", + "background_height": 512, + "background_parallax_layers": [], + "background_texture_zoom_multiplier": 1.0, + "background_width": 512, + "description": "", + "display_mode": "node", + "entry_textures": "modonomicon:textures/gui/entry_textures.png", + "icon": { + "item": "nautec:eas_vial" + }, + "max_scroll_x": 512, + "max_scroll_y": 512, + "name": "book.nautec.nautec_guide.laser_chemistry.name", + "show_category_button": true, + "sort_number": 1 +} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/etching.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/etching.json index cd997e38..c167caca 100644 --- a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/etching.json +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/etching.json @@ -41,7 +41,7 @@ } ], "show_when_any_parent_unlocked": false, - "sort_number": 8, + "sort_number": 7, "x": 2, "y": 2 } \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/charger.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/charger.json new file mode 100644 index 00000000..8f619fc6 --- /dev/null +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/charger.json @@ -0,0 +1,28 @@ +{ + "background_u_index": 0, + "background_v_index": 0, + "category": "laser_chemistry", + "description": "book.nautec.nautec_guide.laser_chemistry.charger.description", + "hide_while_locked": false, + "icon": { + "item": "nautec:charger" + }, + "name": "book.nautec.nautec_guide.laser_chemistry.charger.name", + "pages": [ + { + "type": "modonomicon:text", + "anchor": "", + "condition": { + "type": "modonomicon:none" + }, + "show_title_separator": true, + "text": "book.nautec.nautec_guide.laser_chemistry.charger.charger.text", + "title": "book.nautec.nautec_guide.laser_chemistry.charger.charger.title", + "use_markdown_in_title": false + } + ], + "show_when_any_parent_unlocked": false, + "sort_number": 2, + "x": 0, + "y": 2 +} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/chemistry_introduction.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/chemistry_introduction.json new file mode 100644 index 00000000..354593b1 --- /dev/null +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/chemistry_introduction.json @@ -0,0 +1,48 @@ +{ + "background_u_index": 0, + "background_v_index": 0, + "category": "laser_chemistry", + "description": "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.description", + "hide_while_locked": false, + "icon": { + "item": "nautec:eas_bucket" + }, + "name": "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.name", + "pages": [ + { + "type": "modonomicon:text", + "anchor": "", + "condition": { + "type": "modonomicon:none" + }, + "show_title_separator": true, + "text": "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.chemistry.text", + "title": "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.chemistry.title", + "use_markdown_in_title": false + }, + { + "type": "modonomicon:spotlight", + "anchor": "", + "condition": { + "type": "modonomicon:none" + }, + "item": { + "item": "nautec:salt_water_bucket" + }, + "text": "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.eas.text", + "title": "book.nautec.nautec_guide.laser_chemistry.chemistry_introduction.eas.title" + } + ], + "parents": [ + { + "draw_arrow": true, + "entry": "laser_chemistry/mixer", + "line_enabled": true, + "line_reversed": false + } + ], + "show_when_any_parent_unlocked": false, + "sort_number": 3, + "x": 2, + "y": 0 +} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/crystal_shards.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/crystal_shards.json new file mode 100644 index 00000000..860c9f88 --- /dev/null +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/crystal_shards.json @@ -0,0 +1,36 @@ +{ + "background_u_index": 0, + "background_v_index": 0, + "category": "laser_chemistry", + "description": "book.nautec.nautec_guide.laser_chemistry.crystal_shards.description", + "hide_while_locked": false, + "icon": { + "item": "nautec:prismarine_crystal_shard" + }, + "name": "book.nautec.nautec_guide.laser_chemistry.crystal_shards.name", + "pages": [ + { + "type": "modonomicon:text", + "anchor": "", + "condition": { + "type": "modonomicon:none" + }, + "show_title_separator": true, + "text": "book.nautec.nautec_guide.laser_chemistry.crystal_shards.prismarine_crystal_shards.text", + "title": "book.nautec.nautec_guide.laser_chemistry.crystal_shards.prismarine_crystal_shards.title", + "use_markdown_in_title": false + } + ], + "parents": [ + { + "draw_arrow": true, + "entry": "laser_chemistry/tools", + "line_enabled": true, + "line_reversed": false + } + ], + "show_when_any_parent_unlocked": false, + "sort_number": 5, + "x": 6, + "y": 0 +} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/drain.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/drain.json new file mode 100644 index 00000000..96f89193 --- /dev/null +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/drain.json @@ -0,0 +1,36 @@ +{ + "background_u_index": 0, + "background_v_index": 0, + "category": "laser_chemistry", + "description": "book.nautec.nautec_guide.laser_chemistry.drain.description", + "hide_while_locked": false, + "icon": { + "item": "nautec:deep_sea_drain" + }, + "name": "book.nautec.nautec_guide.laser_chemistry.drain.name", + "pages": [ + { + "type": "modonomicon:text", + "anchor": "", + "condition": { + "type": "modonomicon:none" + }, + "show_title_separator": true, + "text": "book.nautec.nautec_guide.laser_chemistry.drain.drain.text", + "title": "book.nautec.nautec_guide.laser_chemistry.drain.drain.title", + "use_markdown_in_title": false + } + ], + "parents": [ + { + "draw_arrow": true, + "entry": "laser_chemistry/mixer", + "line_enabled": true, + "line_reversed": false + } + ], + "show_when_any_parent_unlocked": false, + "sort_number": 6, + "x": 4, + "y": -2 +} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/laser_manipulation.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/laser_manipulation.json similarity index 64% rename from src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/laser_manipulation.json rename to src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/laser_manipulation.json index a9443d39..b447e1fa 100644 --- a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/laser_manipulation.json +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/laser_manipulation.json @@ -1,13 +1,13 @@ { "background_u_index": 0, "background_v_index": 0, - "category": "getting_started", - "description": "book.nautec.nautec_guide.getting_started.laser_manipulation.description", + "category": "laser_chemistry", + "description": "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.description", "hide_while_locked": false, "icon": { "item": "nautec:laser_junction" }, - "name": "book.nautec.nautec_guide.getting_started.laser_manipulation.name", + "name": "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.name", "pages": [ { "type": "modonomicon:text", @@ -16,8 +16,8 @@ "type": "modonomicon:none" }, "show_title_separator": true, - "text": "book.nautec.nautec_guide.getting_started.laser_manipulation.laser_manipulation.text", - "title": "book.nautec.nautec_guide.getting_started.laser_manipulation.laser_manipulation.title", + "text": "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.laser_manipulation.text", + "title": "book.nautec.nautec_guide.laser_chemistry.laser_manipulation.laser_manipulation.title", "use_markdown_in_title": false }, { @@ -33,16 +33,8 @@ "title2": "Laser Junction" } ], - "parents": [ - { - "draw_arrow": true, - "entry": "getting_started/laser_power", - "line_enabled": true, - "line_reversed": false - } - ], "show_when_any_parent_unlocked": false, - "sort_number": 7, - "x": 4, + "sort_number": 0, + "x": 0, "y": -2 } \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/mixer.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/mixer.json similarity index 51% rename from src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/mixer.json rename to src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/mixer.json index fce8f0e9..c3491a36 100644 --- a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/getting_started/mixer.json +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/mixer.json @@ -1,13 +1,13 @@ { "background_u_index": 0, "background_v_index": 0, - "category": "getting_started", - "description": "book.nautec.nautec_guide.getting_started.mixer.description", + "category": "laser_chemistry", + "description": "book.nautec.nautec_guide.laser_chemistry.mixer.description", "hide_while_locked": false, "icon": { "item": "nautec:mixer" }, - "name": "book.nautec.nautec_guide.getting_started.mixer.name", + "name": "book.nautec.nautec_guide.laser_chemistry.mixer.name", "pages": [ { "type": "modonomicon:text", @@ -16,8 +16,8 @@ "type": "modonomicon:none" }, "show_title_separator": true, - "text": "book.nautec.nautec_guide.getting_started.mixer.mixer.text", - "title": "book.nautec.nautec_guide.getting_started.mixer.mixer.title", + "text": "book.nautec.nautec_guide.laser_chemistry.mixer.mixer.text", + "title": "book.nautec.nautec_guide.laser_chemistry.mixer.mixer.title", "use_markdown_in_title": false }, { @@ -32,22 +32,8 @@ "title2": "" } ], - "parents": [ - { - "draw_arrow": true, - "entry": "getting_started/laser_power", - "line_enabled": true, - "line_reversed": false - }, - { - "draw_arrow": true, - "entry": "getting_started/item_transformation", - "line_enabled": true, - "line_reversed": false - } - ], "show_when_any_parent_unlocked": false, - "sort_number": 9, - "x": 6, - "y": 2 + "sort_number": 1, + "x": 0, + "y": 0 } \ No newline at end of file diff --git a/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/tools.json b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/tools.json new file mode 100644 index 00000000..5b5cf05c --- /dev/null +++ b/src/generated/resources/data/nautec/modonomicon/books/nautec_guide/entries/laser_chemistry/tools.json @@ -0,0 +1,42 @@ +{ + "background_u_index": 0, + "background_v_index": 0, + "category": "laser_chemistry", + "description": "book.nautec.nautec_guide.laser_chemistry.tools.description", + "hide_while_locked": false, + "icon": { + "item": "nautec:aquarine_steel_axe" + }, + "name": "book.nautec.nautec_guide.laser_chemistry.tools.name", + "pages": [ + { + "type": "modonomicon:text", + "anchor": "", + "condition": { + "type": "modonomicon:none" + }, + "show_title_separator": true, + "text": "book.nautec.nautec_guide.laser_chemistry.tools.basic_tools.text", + "title": "book.nautec.nautec_guide.laser_chemistry.tools.basic_tools.title", + "use_markdown_in_title": false + } + ], + "parents": [ + { + "draw_arrow": true, + "entry": "laser_chemistry/chemistry_introduction", + "line_enabled": true, + "line_reversed": false + }, + { + "draw_arrow": true, + "entry": "laser_chemistry/charger", + "line_enabled": true, + "line_reversed": false + } + ], + "show_when_any_parent_unlocked": false, + "sort_number": 4, + "x": 4, + "y": 0 +} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/recipe/aquarine_steel_axe.json b/src/generated/resources/data/nautec/recipe/aquarine_steel_axe.json index 7d2ffe17..3eb3d0a3 100644 --- a/src/generated/resources/data/nautec/recipe/aquarine_steel_axe.json +++ b/src/generated/resources/data/nautec/recipe/aquarine_steel_axe.json @@ -5,12 +5,15 @@ "A": { "item": "nautec:aquarine_steel_ingot" }, + "G": { + "item": "nautec:gear" + }, "R": { "item": "nautec:cast_iron_rod" } }, "pattern": [ - "AA ", + "AG ", "AR ", " R " ], diff --git a/src/generated/resources/data/nautec/recipe/aquarine_steel_block.json b/src/generated/resources/data/nautec/recipe/aquarine_steel_block.json deleted file mode 100644 index 9bc0ce57..00000000 --- a/src/generated/resources/data/nautec/recipe/aquarine_steel_block.json +++ /dev/null @@ -1,37 +0,0 @@ -{ - "type": "minecraft:crafting_shapeless", - "category": "misc", - "ingredients": [ - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - }, - { - "item": "nautec:aquarine_steel_ingot" - } - ], - "result": { - "count": 1, - "id": "nautec:aquarine_steel_block" - } -} \ No newline at end of file diff --git a/src/generated/resources/data/nautec/recipe/aquarine_steel_hoe.json b/src/generated/resources/data/nautec/recipe/aquarine_steel_hoe.json index 098157bc..4b6f9abe 100644 --- a/src/generated/resources/data/nautec/recipe/aquarine_steel_hoe.json +++ b/src/generated/resources/data/nautec/recipe/aquarine_steel_hoe.json @@ -5,13 +5,16 @@ "A": { "item": "nautec:aquarine_steel_ingot" }, + "C": { + "item": "nautec:laser_channeling_coil" + }, "R": { "item": "nautec:cast_iron_rod" } }, "pattern": [ "AA ", - " R ", + " C ", " R " ], "result": { diff --git a/src/generated/resources/data/nautec/recipe/aquarine_steel_pickaxe.json b/src/generated/resources/data/nautec/recipe/aquarine_steel_pickaxe.json index 02fc546e..9e2909c0 100644 --- a/src/generated/resources/data/nautec/recipe/aquarine_steel_pickaxe.json +++ b/src/generated/resources/data/nautec/recipe/aquarine_steel_pickaxe.json @@ -5,13 +5,19 @@ "A": { "item": "nautec:aquarine_steel_ingot" }, + "C": { + "item": "nautec:laser_channeling_coil" + }, + "G": { + "item": "nautec:gear" + }, "R": { "item": "nautec:cast_iron_rod" } }, "pattern": [ - "AAA", - " R ", + "AGA", + " C ", " R " ], "result": { diff --git a/src/generated/resources/data/nautec/recipe/aquarine_steel_shovel.json b/src/generated/resources/data/nautec/recipe/aquarine_steel_shovel.json index 6f3704eb..526d73c8 100644 --- a/src/generated/resources/data/nautec/recipe/aquarine_steel_shovel.json +++ b/src/generated/resources/data/nautec/recipe/aquarine_steel_shovel.json @@ -5,13 +5,16 @@ "A": { "item": "nautec:aquarine_steel_ingot" }, + "G": { + "item": "nautec:gear" + }, "R": { "item": "nautec:cast_iron_rod" } }, "pattern": [ " A ", - " R ", + " G ", " R " ], "result": { diff --git a/src/generated/resources/data/nautec/recipe/aquarine_steel_sword.json b/src/generated/resources/data/nautec/recipe/aquarine_steel_sword.json index b9649526..ea32bb3a 100644 --- a/src/generated/resources/data/nautec/recipe/aquarine_steel_sword.json +++ b/src/generated/resources/data/nautec/recipe/aquarine_steel_sword.json @@ -5,14 +5,14 @@ "A": { "item": "nautec:aquarine_steel_ingot" }, - "R": { - "item": "nautec:cast_iron_rod" + "C": { + "item": "nautec:laser_channeling_coil" } }, "pattern": [ " A ", " A ", - " R " + " C " ], "result": { "count": 1, diff --git a/src/generated/resources/data/nautec/recipe/cast_iron_ingot_from_blasting.json b/src/generated/resources/data/nautec/recipe/cast_iron_ingot_from_blasting.json index 5c4a3f29..9bc0ce57 100644 --- a/src/generated/resources/data/nautec/recipe/cast_iron_ingot_from_blasting.json +++ b/src/generated/resources/data/nautec/recipe/cast_iron_ingot_from_blasting.json @@ -1,13 +1,37 @@ { - "type": "minecraft:blasting", + "type": "minecraft:crafting_shapeless", "category": "misc", - "cookingtime": 100, - "experience": 0.2, - "ingredient": { - "tag": "c:ingots/iron" - }, + "ingredients": [ + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + }, + { + "item": "nautec:aquarine_steel_ingot" + } + ], "result": { "count": 1, - "id": "nautec:cast_iron_ingot" + "id": "nautec:aquarine_steel_block" } } \ No newline at end of file diff --git a/src/generated/resources/data/nautec/recipe/mixer.json b/src/generated/resources/data/nautec/recipe/mixer.json index 2dd61aff..59e00ded 100644 --- a/src/generated/resources/data/nautec/recipe/mixer.json +++ b/src/generated/resources/data/nautec/recipe/mixer.json @@ -8,6 +8,9 @@ "D": { "item": "nautec:polished_prismarine" }, + "G": { + "item": "nautec:gear" + }, "P": { "item": "nautec:polished_prismarine" }, @@ -16,7 +19,7 @@ } }, "pattern": [ - "D D", + "DGD", "PWP", "PAP" ], diff --git a/src/main/java/com/portingdeadmods/nautec/Nautec.java b/src/main/java/com/portingdeadmods/nautec/Nautec.java index 4ca06628..2dfc350a 100644 --- a/src/main/java/com/portingdeadmods/nautec/Nautec.java +++ b/src/main/java/com/portingdeadmods/nautec/Nautec.java @@ -1,6 +1,7 @@ package com.portingdeadmods.nautec; import com.mojang.logging.LogUtils; +import com.portingdeadmods.nautec.compat.duradisplay.DuraDisplayCompat; import com.portingdeadmods.nautec.content.items.BatteryItem; import com.portingdeadmods.nautec.content.items.PrismMonocleItem; import com.portingdeadmods.nautec.data.NTDataAttachments; @@ -10,6 +11,7 @@ import net.minecraft.core.component.DataComponents; import net.neoforged.bus.api.IEventBus; import net.neoforged.fml.ModContainer; +import net.neoforged.fml.ModList; import net.neoforged.fml.common.Mod; import net.neoforged.fml.config.ModConfig; import net.neoforged.neoforge.registries.NewRegistryEvent; @@ -51,5 +53,9 @@ public Nautec(IEventBus modEventBus, ModContainer modContainer) { modEventBus.addListener(BatteryItem::registerCapabilities); modContainer.registerConfig(ModConfig.Type.COMMON, NTConfig.SPEC); + + if (ModList.get().isLoaded("duradisplay")) { + DuraDisplayCompat.register(); + } } } diff --git a/src/main/java/com/portingdeadmods/nautec/compat/duradisplay/DuraDisplayCompat.java b/src/main/java/com/portingdeadmods/nautec/compat/duradisplay/DuraDisplayCompat.java new file mode 100644 index 00000000..683b6e1b --- /dev/null +++ b/src/main/java/com/portingdeadmods/nautec/compat/duradisplay/DuraDisplayCompat.java @@ -0,0 +1,36 @@ +package com.portingdeadmods.nautec.compat.duradisplay; + +import com.portingdeadmods.duradisplay.DuraDisplay; +import com.portingdeadmods.duradisplay.KeyBinds; +import com.portingdeadmods.duradisplay.compat.BuiltinCompat; +import com.portingdeadmods.nautec.Nautec; +import com.portingdeadmods.nautec.capabilities.NTCapabilities; +import com.portingdeadmods.nautec.capabilities.power.IPowerStorage; +import com.portingdeadmods.nautec.content.items.tools.AquarineAxeItem; +import com.portingdeadmods.nautec.data.NTDataComponents; +import com.portingdeadmods.nautec.data.components.ComponentPowerStorage; +import com.portingdeadmods.nautec.registries.NTItems; +import net.minecraft.SharedConstants; +import net.neoforged.neoforge.capabilities.Capabilities; +import net.neoforged.neoforge.energy.IEnergyStorage; + +import java.util.Collections; + +public class DuraDisplayCompat { + public static void register() { + if (SharedConstants.IS_RUNNING_IN_IDE) { + KeyBinds.ForgeClient.modEnabled = false; + } + + registerCompat(itemStack -> { + IPowerStorage powerStorage = itemStack.getCapability(NTCapabilities.PowerStorage.ITEM); + return powerStorage != null + ? Collections.singletonList(new BuiltinCompat((double)powerStorage.getPowerStored() / (double)powerStorage.getPowerCapacity() * 100.0, itemStack.getItem().getBarColor(itemStack), itemStack.isBarVisible())) + : null; + }); + } + + private static void registerCompat(BuiltinCompat.CompatSupplier supplier) { + DuraDisplay.BUILTIN_COMPATS.add(supplier); + } +} diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/NautecGuide.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/NautecGuide.java index e2066965..610883bd 100644 --- a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/NautecGuide.java +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/NautecGuide.java @@ -4,6 +4,7 @@ import com.klikli_dev.modonomicon.api.datagen.SingleBookSubProvider; import com.portingdeadmods.nautec.Nautec; import com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.GettingStartedCategory; +import com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.LaserChemistryCategory; public class NautecGuide extends SingleBookSubProvider { public NautecGuide(ModonomiconLanguageProvider defaultLang) { @@ -17,6 +18,7 @@ protected void registerDefaultMacros() { @Override protected void generateCategories() { add(new GettingStartedCategory(this).generate()); + add(new LaserChemistryCategory(this).generate()); } @Override diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/GettingStartedCategory.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/GettingStartedCategory.java index 9bb29283..d50fef58 100644 --- a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/GettingStartedCategory.java +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/GettingStartedCategory.java @@ -40,15 +40,9 @@ protected void generateEntries() { BookEntryModel utilitiesEntry = new UtilitiesEntry(this) .generate(new Vec2(6, -2)); add(utilitiesEntry.withParent(itemTransformationEntry)); - BookEntryModel laserManipulationEntry = new LaserManipulationEntry(this) - .generate(new Vec2(4, -2)); - add(laserManipulationEntry.withParent(laserPowerEntry)); BookEntryModel cratesEtching = new CratesEtchingEntry(this) .generate(new Vec2(2, 2)); add(cratesEtching.withParent(structuresEntry)); - BookEntryModel mixerEntry = new MixerEntry(this) - .generate(new Vec2(6, 2)); - add(mixerEntry.withParent(laserPowerEntry).withParent(itemTransformationEntry)); } @Override diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/LaserAugmentation.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/LaserAugmentation.java new file mode 100644 index 00000000..61071753 --- /dev/null +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/LaserAugmentation.java @@ -0,0 +1,37 @@ +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide; + +import com.klikli_dev.modonomicon.api.datagen.CategoryProvider; +import com.klikli_dev.modonomicon.api.datagen.ModonomiconProviderBase; +import com.klikli_dev.modonomicon.api.datagen.book.BookIconModel; +import com.portingdeadmods.nautec.registries.NTItems; + +public class LaserAugmentation extends CategoryProvider { + public LaserAugmentation(ModonomiconProviderBase parent) { + super(parent); + } + + @Override + protected String[] generateEntryMap() { + return new String[0]; + } + + @Override + protected void generateEntries() { + + } + + @Override + protected String categoryName() { + return "Laser Augmentation"; + } + + @Override + protected BookIconModel categoryIcon() { + return BookIconModel.create(NTItems.CLAW_ROBOT_ARM); + } + + @Override + public String categoryId() { + return "laser_augmentation"; + } +} diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/LaserChemistryCategory.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/LaserChemistryCategory.java index c4298fea..32120bd9 100644 --- a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/LaserChemistryCategory.java +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/LaserChemistryCategory.java @@ -2,8 +2,15 @@ import com.klikli_dev.modonomicon.api.datagen.CategoryProvider; import com.klikli_dev.modonomicon.api.datagen.ModonomiconProviderBase; +import com.klikli_dev.modonomicon.api.datagen.book.BookEntryModel; +import com.klikli_dev.modonomicon.api.datagen.book.BookEntryParentModel; import com.klikli_dev.modonomicon.api.datagen.book.BookIconModel; +import com.portingdeadmods.nautec.Nautec; +import com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry.*; import com.portingdeadmods.nautec.registries.NTItems; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.phys.Vec2; +import org.apache.logging.log4j.core.util.NameUtil; public class LaserChemistryCategory extends CategoryProvider { public LaserChemistryCategory(ModonomiconProviderBase parent) { @@ -17,7 +24,27 @@ protected String[] generateEntryMap() { @Override protected void generateEntries() { - + BookEntryModel laserManipulationEntry = new LaserManipulationEntry(this) + .generate(new Vec2(0, -2)); + add(laserManipulationEntry); + BookEntryModel mixerEntry = new MixerEntry(this) + .generate(new Vec2(0, 0)); + add(mixerEntry); + BookEntryModel chargerEntry = new ChargerEntry(this) + .generate(new Vec2(0, 2)); + add(chargerEntry); + BookEntryModel chemistryIntroductionEntry = new ChemistryIntroductionEntry(this) + .generate(new Vec2(2, 0)); + add(chemistryIntroductionEntry.withParent(mixerEntry)); + BookEntryModel toolsEntry = new ToolsEntry(this) + .generate(new Vec2(4, 0)); + add(toolsEntry.withParent(chemistryIntroductionEntry).withParent(chargerEntry)); + BookEntryModel crystalShardsEntry = new CrystalShardsEntry(this) + .generate(new Vec2(6, 0)); + add(crystalShardsEntry.withParent(toolsEntry)); + BookEntryModel drainEntry = new DrainEntry(this) + .generate(new Vec2(4, -2)); + add(drainEntry.withParent(mixerEntry)); } @Override @@ -34,4 +61,9 @@ protected BookIconModel categoryIcon() { public String categoryId() { return "laser_chemistry"; } + + @Override + protected BookEntryParentModel parent(BookEntryModel parentEntry) { + return BookEntryParentModel.create(ResourceLocation.fromNamespaceAndPath(Nautec.MODID, "getting_started")); + } } diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ChargerEntry.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ChargerEntry.java new file mode 100644 index 00000000..50c03f5f --- /dev/null +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ChargerEntry.java @@ -0,0 +1,52 @@ +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry; + +import com.klikli_dev.modonomicon.api.datagen.CategoryProviderBase; +import com.klikli_dev.modonomicon.api.datagen.EntryBackground; +import com.klikli_dev.modonomicon.api.datagen.EntryProvider; +import com.klikli_dev.modonomicon.api.datagen.book.BookIconModel; +import com.klikli_dev.modonomicon.api.datagen.book.page.BookTextPageModel; +import com.mojang.datafixers.util.Pair; +import com.portingdeadmods.nautec.registries.NTBlocks; +import com.portingdeadmods.nautec.registries.NTItems; + +public class ChargerEntry extends EntryProvider { + public ChargerEntry(CategoryProviderBase parent) { + super(parent); + } + + @Override + protected void generatePages() { + this.page("charger", () -> BookTextPageModel.create() + .withTitle(this.context().pageTitle()) + .withText(this.context().pageText())); + this.pageTitle("Charger"); + this.pageText(""" + Charging... + """); + } + + @Override + protected String entryName() { + return "Charger"; + } + + @Override + protected String entryDescription() { + return "Bzzzzzz"; + } + + @Override + protected Pair entryBackground() { + return EntryBackground.DEFAULT; + } + + @Override + protected BookIconModel entryIcon() { + return BookIconModel.create(NTBlocks.CHARGER); + } + + @Override + protected String entryId() { + return "charger"; + } +} diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ChemistryIntroductionEntry.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ChemistryIntroductionEntry.java new file mode 100644 index 00000000..0eb7d15d --- /dev/null +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ChemistryIntroductionEntry.java @@ -0,0 +1,79 @@ +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry; + +import com.klikli_dev.modonomicon.api.datagen.CategoryProviderBase; +import com.klikli_dev.modonomicon.api.datagen.EntryBackground; +import com.klikli_dev.modonomicon.api.datagen.EntryProvider; +import com.klikli_dev.modonomicon.api.datagen.book.BookIconModel; +import com.klikli_dev.modonomicon.api.datagen.book.page.BookSpotlightPageModel; +import com.klikli_dev.modonomicon.api.datagen.book.page.BookTextPageModel; +import com.mojang.datafixers.util.Pair; +import com.portingdeadmods.nautec.registries.NTItems; + +public class ChemistryIntroductionEntry extends EntryProvider { + public ChemistryIntroductionEntry(CategoryProviderBase parent) { + super(parent); + } + + @Override + protected void generatePages() { + this.page("chemistry", () -> BookTextPageModel.create() + .withTitle(this.context().pageTitle()) + .withText(this.context().pageText())); + this.pageTitle("Introduction to chemistry"); + this.pageText(""" + Chemistry is a powerful concept that while mysterious is + also quite interesting. An observation i have made is that chemistry + is heavily focused around the ocean and mainly uses plants + or magical crystals as ingredients for substances. + \\ + \\ + Even though all of this might sound foreign, you have already + come across a chemical substance, Etching Acid. + While not typical in its structure, it is still considered a chemical fluid + due to its transforming abilities. + """); + this.page("eas", () -> BookSpotlightPageModel.create() + .withTitle(this.context().pageTitle()) + .withItem(NTItems.EAS_BUCKET.get()) + .withText(this.context().pageText())) + .withItem(NTItems.SALT_WATER_BUCKET); + this.pageTitle("Electrolyte Algae Serum"); + this.pageText(""" + Electrolyte Algae Serum (EAS) is on of the first chemicals + you will come across. It is known for + its transforming abilities that can empower + items and entities. + \\ + You might have already discovered that it uses another liquid: Salt Water + \\ + Salt water can be obtained by filling a bucket of water in an ocean biome which + will turn it into salt water. In the future there are even more powerful ways + to gather it, so stay tuned! + """); + } + + @Override + protected String entryName() { + return "Introduction to Chemistry"; + } + + @Override + protected String entryDescription() { + return "It's not gregtech, I swear"; + } + + @Override + protected Pair entryBackground() { + return EntryBackground.DEFAULT; + } + + @Override + protected BookIconModel entryIcon() { + return BookIconModel.create(NTItems.EAS_BUCKET.get()); + } + + @Override + protected String entryId() { + return "chemistry_introduction"; + } +} diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/CrystalShardsEntry.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/CrystalShardsEntry.java new file mode 100644 index 00000000..f3f60f30 --- /dev/null +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/CrystalShardsEntry.java @@ -0,0 +1,51 @@ +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry; + +import com.klikli_dev.modonomicon.api.datagen.CategoryProviderBase; +import com.klikli_dev.modonomicon.api.datagen.EntryBackground; +import com.klikli_dev.modonomicon.api.datagen.EntryProvider; +import com.klikli_dev.modonomicon.api.datagen.book.BookIconModel; +import com.klikli_dev.modonomicon.api.datagen.book.page.BookTextPageModel; +import com.mojang.datafixers.util.Pair; +import com.portingdeadmods.nautec.registries.NTItems; + +public class CrystalShardsEntry extends EntryProvider { + public CrystalShardsEntry(CategoryProviderBase parent) { + super(parent); + } + + @Override + protected void generatePages() { + this.page("prismarine_crystal_shards", () -> BookTextPageModel.create() + .withTitle(this.context().pageTitle()) + .withText(this.context().pageText())); + this.pageTitle("Prismarine Crystal Shard"); + this.pageText(""" + Crystal shards are end of chapter :3 + """); + } + + @Override + protected String entryName() { + return "Prismarine Crystal Shards"; + } + + @Override + protected String entryDescription() { + return "Not an amethyst rextexture!"; + } + + @Override + protected Pair entryBackground() { + return EntryBackground.DEFAULT; + } + + @Override + protected BookIconModel entryIcon() { + return BookIconModel.create(NTItems.PRISMARINE_CRYSTAL_SHARD.get()); + } + + @Override + protected String entryId() { + return "crystal_shards"; + } +} diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/DrainEntry.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/DrainEntry.java new file mode 100644 index 00000000..47a95429 --- /dev/null +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/DrainEntry.java @@ -0,0 +1,52 @@ +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry; + +import com.klikli_dev.modonomicon.api.datagen.CategoryProviderBase; +import com.klikli_dev.modonomicon.api.datagen.EntryBackground; +import com.klikli_dev.modonomicon.api.datagen.EntryProvider; +import com.klikli_dev.modonomicon.api.datagen.book.BookIconModel; +import com.klikli_dev.modonomicon.api.datagen.book.page.BookTextPageModel; +import com.mojang.datafixers.util.Pair; +import com.portingdeadmods.nautec.registries.NTBlocks; +import com.portingdeadmods.nautec.registries.NTItems; + +public class DrainEntry extends EntryProvider { + public DrainEntry(CategoryProviderBase parent) { + super(parent); + } + + @Override + protected void generatePages() { + this.page("drain", () -> BookTextPageModel.create() + .withTitle(this.context().pageTitle()) + .withText(this.context().pageText())); + this.pageTitle("Deep Sea Drain"); + this.pageText(""" + Drain much salt wata... + """); + } + + @Override + protected String entryName() { + return "Deep Sea Drain"; + } + + @Override + protected String entryDescription() { + return "Sucks in everything"; + } + + @Override + protected Pair entryBackground() { + return EntryBackground.DEFAULT; + } + + @Override + protected BookIconModel entryIcon() { + return BookIconModel.create(NTBlocks.DRAIN); + } + + @Override + protected String entryId() { + return "drain"; + } +} diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/getting_started/LaserManipulationEntry.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/LaserManipulationEntry.java similarity index 95% rename from src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/getting_started/LaserManipulationEntry.java rename to src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/LaserManipulationEntry.java index c6541ddc..635ca1f3 100644 --- a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/getting_started/LaserManipulationEntry.java +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/LaserManipulationEntry.java @@ -1,4 +1,4 @@ -package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.getting_started; +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry; import com.klikli_dev.modonomicon.api.datagen.CategoryProviderBase; import com.klikli_dev.modonomicon.api.datagen.EntryBackground; @@ -22,7 +22,7 @@ protected void generatePages() { this.pageTitle("Laser Manipulation"); this.pageText(""" The Prismarine Laser Relay is a block that allows you to extend the range of your lasers. - Make sure to point the arrow to the right direction! + Make sure to point the arrow to the right direction! \\ It is crafted using 6 Polish Prismarine blocks. \\ diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/getting_started/MixerEntry.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/MixerEntry.java similarity index 98% rename from src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/getting_started/MixerEntry.java rename to src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/MixerEntry.java index acfde2b2..782103f4 100644 --- a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/getting_started/MixerEntry.java +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/MixerEntry.java @@ -1,4 +1,4 @@ -package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.getting_started; +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry; import com.klikli_dev.modonomicon.api.datagen.CategoryProviderBase; import com.klikli_dev.modonomicon.api.datagen.EntryBackground; diff --git a/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ToolsEntry.java b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ToolsEntry.java new file mode 100644 index 00000000..cd84293b --- /dev/null +++ b/src/main/java/com/portingdeadmods/nautec/compat/modonomicon/datagen/book/nautec_guide/laser_chemistry/ToolsEntry.java @@ -0,0 +1,52 @@ +package com.portingdeadmods.nautec.compat.modonomicon.datagen.book.nautec_guide.laser_chemistry; + +import com.klikli_dev.modonomicon.api.datagen.CategoryProviderBase; +import com.klikli_dev.modonomicon.api.datagen.EntryBackground; +import com.klikli_dev.modonomicon.api.datagen.EntryProvider; +import com.klikli_dev.modonomicon.api.datagen.book.BookIconModel; +import com.klikli_dev.modonomicon.api.datagen.book.page.BookTextPageModel; +import com.klikli_dev.modonomicon.book.BookIcon; +import com.mojang.datafixers.util.Pair; +import com.portingdeadmods.nautec.registries.NTItems; + +public class ToolsEntry extends EntryProvider { + public ToolsEntry(CategoryProviderBase parent) { + super(parent); + } + + @Override + protected void generatePages() { + this.page("basic_tools", () -> BookTextPageModel.create() + .withTitle(this.context().pageTitle()) + .withText(this.context().pageText())); + this.pageTitle("Aquarine Steel Tools"); + this.pageText(""" + Tools... + """); + } + + @Override + protected String entryName() { + return "Aquarine Steel Tools"; + } + + @Override + protected String entryDescription() { + return "Innocent looking"; + } + + @Override + protected Pair entryBackground() { + return EntryBackground.DEFAULT; + } + + @Override + protected BookIconModel entryIcon() { + return BookIconModel.create(NTItems.AQUARINE_AXE); + } + + @Override + protected String entryId() { + return "tools"; + } +} diff --git a/src/main/java/com/portingdeadmods/nautec/datagen/RecipesProvider.java b/src/main/java/com/portingdeadmods/nautec/datagen/RecipesProvider.java index f782715b..915210a4 100644 --- a/src/main/java/com/portingdeadmods/nautec/datagen/RecipesProvider.java +++ b/src/main/java/com/portingdeadmods/nautec/datagen/RecipesProvider.java @@ -254,48 +254,53 @@ private static void ancientItemsRecipes(@NotNull RecipeOutput pRecipeOutput) { private static void aquarineSteelToolsRecipes(@NotNull RecipeOutput pRecipeOutput) { ShapedRecipeBuilder.shaped(RecipeCategory.MISC, NTItems.AQUARINE_PICKAXE.get().getDefaultInstance()) - .pattern("AAA") - .pattern(" R ") + .pattern("AGA") + .pattern(" C ") .pattern(" R ") .unlockedBy("has_item", has(NTItems.AQUARINE_STEEL_INGOT.get())) .define('A', NTItems.AQUARINE_STEEL_INGOT.get()) .define('R', NTItems.CAST_IRON_ROD.get()) + .define('G', NTItems.GEAR.get()) + .define('C', NTItems.LASER_CHANNELING_COIL.get()) .save(pRecipeOutput); ShapedRecipeBuilder.shaped(RecipeCategory.MISC, NTItems.AQUARINE_SHOVEL.get().getDefaultInstance()) .pattern(" A ") - .pattern(" R ") + .pattern(" G ") .pattern(" R ") .unlockedBy("has_item", has(NTItems.AQUARINE_STEEL_INGOT.get())) .define('A', NTItems.AQUARINE_STEEL_INGOT.get()) + .define('G', NTItems.GEAR.get()) .define('R', NTItems.CAST_IRON_ROD.get()) .save(pRecipeOutput); ShapedRecipeBuilder.shaped(RecipeCategory.MISC, NTItems.AQUARINE_AXE.get().getDefaultInstance()) - .pattern("AA ") + .pattern("AG ") .pattern("AR ") .pattern(" R ") .unlockedBy("has_item", has(NTItems.AQUARINE_STEEL_INGOT.get())) .define('A', NTItems.AQUARINE_STEEL_INGOT.get()) + .define('G', NTItems.GEAR.get()) .define('R', NTItems.CAST_IRON_ROD.get()) .save(pRecipeOutput); ShapedRecipeBuilder.shaped(RecipeCategory.MISC, NTItems.AQUARINE_HOE.get().getDefaultInstance()) .pattern("AA ") - .pattern(" R ") + .pattern(" C ") .pattern(" R ") .unlockedBy("has_item", has(NTItems.AQUARINE_STEEL_INGOT.get())) .define('A', NTItems.AQUARINE_STEEL_INGOT.get()) .define('R', NTItems.CAST_IRON_ROD.get()) + .define('C', NTItems.LASER_CHANNELING_COIL.get()) .save(pRecipeOutput); ShapedRecipeBuilder.shaped(RecipeCategory.MISC, NTItems.AQUARINE_SWORD.get().getDefaultInstance()) .pattern(" A ") .pattern(" A ") - .pattern(" R ") + .pattern(" C ") .unlockedBy("has_item", has(NTItems.AQUARINE_STEEL_INGOT.get())) .define('A', NTItems.AQUARINE_STEEL_INGOT.get()) - .define('R', NTItems.CAST_IRON_ROD.get()) + .define('C', NTItems.LASER_CHANNELING_COIL.get()) .save(pRecipeOutput); ShapedRecipeBuilder.shaped(RecipeCategory.MISC, NTItems.AQUARINE_WRENCH.get().getDefaultInstance())